我有兩個大小的張量
A <tf.Tensor 'sequential_12/my_layer_56/add:0' shape=(?, 300, 2) dtype=float32>
和 B <tf.Tensor 'input_82:0' shape=(?, 2, 2) dtype=float32>
現在,我想在通常的矩陣行列乘積的意義上將它們相乘以獲得
A * B 的大小 (?, 300, 2),所以我只會在第二維和第三維上做矩陣乘積。我怎樣才能做到這一點?
我嘗試將 tf.tensordot 與不同的軸規格一起使用,但到目前為止它不起作用。例如我試過
tf.tensordot(A,B,axes=[[2], [0]])
但這會產生以下形式的張量
<tf.Tensor 'Tensordot_10:0' shape=(?, 300, 2, 2) dtype=float32>
uj5u.com熱心網友回復:
也許嘗試tf.matmul:
import tensorflow as tf
samples = 1
A = tf.random.normal((samples, 300, 2))
B = tf.random.normal((samples, 2, 2))
print(tf.matmul(A, B).shape)
# (1, 300, 2)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/459062.html
上一篇:將無序串列(<ul>)轉換為HTML格式的表格(<table>)
下一篇:從張量流資料集中提取元素
