TensorFlow如何处理任何形状?

问题描述 投票:0回答:1

我正在尝试实现一个简单的计算图框架,并使用简单的神经网络对其进行测试,主要是通过TensorFlow学习。现在我想清楚TensorFlow如何处理无形状张量。

this exampleX有形状[None, n_input]weights['h1']有形状[n_input, n_hidden_1]biases['b1']有形状[n_hidden_1]。当它试图这样做:layer_1 = tf.add(tf.matmul(x, weights['h1']), biases['b1'])tf.matmul(x, weights['h1'])应该有形状[None, n_hidden_1],TensorFlow究竟如何用biases['b1']添加它?基于documentationtf.add仅在2个操作数具有相同形状时才起作用。如果我们使用10号批量运行,tf.matmul(x, weights['h1'])将具有形状[10, n_hidden_1],并且它不应该与biases['b1']一起添加。

tensorflow
1个回答
0
投票

[None, n_input]理想地指的是:None指的是Batch_size,它可以由我们给出,n_input指的是要分析的特征的数量。

所以n_input指的是784像素数据。所以我们实际尝试做X.W+b意味着X[None, 784])乘以[784, 256]模型输出[None, 256]现在增加偏差,这里+也被称为广播加上理想情况下需要为256个隐藏单元添加256个偏差

© www.soinside.com 2019 - 2024. All rights reserved.