Keras 中的张量乘法
Tensor multiplication in Keras
我有两个大小为
的张量
A
和
B
现在,我想将它们在通常的矩阵行列乘积的意义上相乘得到
A * B 大小为 (?, 300, 2),所以我将只在第二和第三维上进行矩阵乘积。我怎样才能做到这一点?
我尝试使用 tf.tensordot 不同的轴规格,但目前还没有成功。例如我试过
tf.tensordot(A,B,axes=[[2], [0]])
但这会产生以下形式的张量
也许试试 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)
我有两个大小为
的张量A
和
B
现在,我想将它们在通常的矩阵行列乘积的意义上相乘得到
A * B 大小为 (?, 300, 2),所以我将只在第二和第三维上进行矩阵乘积。我怎样才能做到这一点?
我尝试使用 tf.tensordot 不同的轴规格,但目前还没有成功。例如我试过
tf.tensordot(A,B,axes=[[2], [0]])
但这会产生以下形式的张量
也许试试 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)