我想使用张量流将矩阵的每一行与另一个矩阵相乘。例如:
A = [1,2,3 ; 4,5,6]
B = [1,1,1 ; 2,2,2 ; 3,3,3]
将A的每一行与整个矩阵B相乘,则所得张量应为
C = [[1,2,3 ; 2,4,6 ; 3,6,9],
[4,8,12 ; 5,10,15 ; 6,12,18]]
谢谢。
答案 0 :(得分:0)
阵列广播是您想要的:
A2 = tf.reshape(A, (2, 3, 1))
B2 = tf.reshape(tf.transpose(B), (1, 3, 3))
C = A2 * B2
任何长度为1的维度都将自动广播到适当的长度,以进行逐元素乘法,因此C
的形状为(2, 3, 3)
。
我不是100%不确定如何解释您的符号,因此我可能混淆了轴顺序,在这种情况下,请处理顺序和/或除去移调。