最近开始使用tensorflow,我对feed_dict的功能非常困惑。混淆张量流feed_dict的工作原理
望着从tensorflow网站MNIST例子,x是一个象征性的占位符,将充满了新一批的每个训练迭代的图片,因此“无”在这里也可能是“的batch_size”
x = tf.placeholder(tf.float32, shape=[None, 784])
在本教程的卷积部分看时
,有从它的扁平1x784形状回2D图像28x28形状
x_image = tf.reshape(x, [-1,28,28,1])
训练循环期间
是重塑X的命令时,x为通过命令供给
train_step.run(feed_dict={x: batch[0], y_: batch[1], keep_prob: 0.5})
我的问题是,当我们向x输入数值时,tensorflow会自动将每个涉及x的操作向量化吗?因此,例如,当我们定义操作时,
h_conv1 = tf.nn.relu(conv2d(x_image, W_conv1) + b_conv1)
这会自动在整个批次中工作吗?
如果x是ndarray,每行都是一个扁平化图像,因为我们在x占位符tensorflow中指定了形状'None'会自动知道将每一行用作单独的训练样本,并矢量化所有后续操作?
啊,我想我明白了,从张量流api:“卷积运算扫描一批图像上的二维滤波器。”这并不是说tensorflow自动将操作矢量化,就像conv2d本身能够批量操作一样。 – beeCwright