tensorflow多維張量計算例項
阿新 • • 發佈:2020-02-11
兩個三維矩陣的乘法怎樣計算呢?我通過實驗發現,tensorflow把前面的維度當成是batch,對最後兩維進行普通的矩陣乘法。也就是說,最後兩維之前的維度,都需要相同。
首先計算shape為(2,2,3)乘以shape為(2,3,2)的張量。
import tensorflow as tf import numpy as np a = tf.constant(np.arange(1,13,dtype=np.float32),shape=[2,3]) b = tf.constant(np.arange(1,2]) c = tf.matmul(a,b) # c = tf.matmul(a,b) sess = tf.Session() print("a*b = ",sess.run(c)) c1 = tf.matmul(a[0,:,:],b[0,:]) print("a[1]*b[1] = ",sess.run(c1))
執行結果:
計算結果表明,兩個三維矩陣相乘,對應位置的最後兩個維度的矩陣乘法。
再驗證高維的張量乘法:
import tensorflow as tf import numpy as np a = tf.constant(np.arange(1,36,shape=[3,sess.run(c1))
執行結果:
以上這篇tensorflow多維張量計算例項就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。