在张量流中乘以多维矩阵

Multiplying multidimensional matrices in tensorflow

当我尝试使用 tf.matmul 将两个矩阵与形状相乘时 [41,22,512] & [512] 我收到以下错误:

ValueError: Shape must be rank 2 but is rank 3 for 'MatMul' (op: 'MatMul') 
with input shapes: [41,22,512], [512]..

我通常认为这样的乘法会输出形状为 [41,22,1] 或 [41,22] 的张量。

Matmul 不会起作用,因为内部维度不是有效的矩阵乘法参数,相反你可以这样做:

tf.reduce_sum(x * y, axis=2)