MNIST教程中的Tensorflow tf.matmul

MNIST教程中的Tensorflow tf.matmul,tensorflow,mnist,Tensorflow,Mnist,我对使用tensorflow是新手。我的问题是: 在MNIST教程中: 首先,我们用表达式tf.matmulx,W乘以x,这与我们在方程中乘以它们时的情况相反,这里有Wx,作为一个小技巧来处理x是具有多个输入的二维张量。然后添加b,最后应用tf.nn.softmax 我的问题是: 为什么b被初始化为向量:b=tf.Variabletf.zeros[10] 而不是 b=tf.Variabletf.zeros[None,10]或b=tf.Variabletf.zeros[1,10] 因为x*W+b的

我对使用tensorflow是新手。我的问题是:

在MNIST教程中:

首先,我们用表达式tf.matmulx,W乘以x,这与我们在方程中乘以它们时的情况相反,这里有Wx,作为一个小技巧来处理x是具有多个输入的二维张量。然后添加b,最后应用tf.nn.softmax

我的问题是:

为什么b被初始化为向量:b=tf.Variabletf.zeros[10]

而不是 b=tf.Variabletf.zeros[None,10]或b=tf.Variabletf.zeros[1,10]

因为x*W+b的形状是:[None,784]*[784,10]+[None,10]


感谢您的回答。

这是因为,我们对批次中的每个图像应用相同的操作,而不是对批次应用相同的操作。因此x*W+b不是

但是你

results = merge(None, [784] * [784, 10] + [10])

谢谢你的回答:
results = merge(None, [784] * [784, 10] + [10])