将矩阵与向量(元素)张量流相乘



我不确定如何将这个问题放入标题中。但是将展示一个关于我在使用Tensorflow时需要帮助的示例。

举个例子:

matrix_1 shape = [4,2]
matrix_2 shape  = [4,1]
matrix_1 * matrix 2
[[1,2],
[3,4],
[5,6],
[7,8]]
*
[[0.1],
[0.2],
[0.3],
[0.4]]
= [[0.1,0.2],
[0.6,0.8],
[1.5,1.8],
[2.8,3.2]]

有没有算法来实现这一点?

谢谢

这是我从上面的简化问题示例中得到的错误:

ValueError:维度必须相等,但对于输入形状的"mul_13"(操作:"Mul")为 784 和 100:[100,784]、[100]

标准的tf.multiply(matrix_1, matrix_2)操作(或速记语法matrix_1 * matrix_2)将完全执行您想要的计算matrix_1matrix_2

但是,看起来您看到的错误消息是因为matrix_2具有形状[100],而必须[100, 1]才能获得元素广播行为。使用tf.reshape(matrix_2, [100, 1])tf.expand_dims(matrix_2, 1)将其转换为正确的形状。

最新更新