【问题标题】:Dimensions of this neural network i.e (4 inputs, 2 hidden layer with X neurons each, etc)该神经网络的维度,即(4 个输入,2 个隐藏层,每个隐藏层有 X 个神经元,等等)
【发布时间】:2023-07-16 03:50:01
【问题描述】:

我正在查看 Aymeric Damien (https://github.com/aymericdamien/TensorFlow-Examples/blob/master/examples/3_NeuralNetworks/multilayer_perceptron.py) 的 tensorflow 示例,在 multilayer_perceptron.py 中,他使用神经网络对 MNIST 数字进行分类。我认为他使用的神经网络有 784 个输入,有 2 个隐藏层,每个隐藏层有 256 个神经元,以及 10 个输出。我对么? layer_perceptron.py 中weightsbiases 中的矩阵维度如何与ANN“维度”(#inputs、#hidden layers、#output、每个隐藏层中的#neurons 等)对应? em> 谢谢!

【问题讨论】:

    标签: machine-learning neural-network tensorflow artificial-intelligence mnist


    【解决方案1】:

    这是一个 3 层神经网络(2 个隐藏层和一个输出层)。

    第一个隐藏层的输入之间的连接具有 784 x 256 权重和 256 个偏差。这种配置是因为 784 个输入中的每一个都与 256 个隐藏层节点完全连接,并且每个隐藏层节点都有 1 个偏差。

    由于层之间的完全连通性,第一个隐藏层与第二个隐藏层之间的连接具有 256 x 256 的权重。第二层的 256 个节点,每个节点都有 1 个偏差。

    第二个隐藏层和输出层之间的连接是相似的。权重为 256 x 10(对于第二个隐藏层的 256 个节点和输出层的 10 个节点),每个输出节点有 1 个偏差。

    因此有 785*256 + 256*256 + 256*10 = 269,056 个权重和 256 + 256 + 10 = 522 个偏差。

    下图应该能解释清楚。

    【讨论】:

      最近更新 更多