【问题标题】:Why there are 128 nodes in second layer of keras neural network in Fashion MNIST problem of TensorFlow为什么TensorFlow的Fashion MNIST问题中keras神经网络第二层有128个节点
【发布时间】:2020-02-15 23:23:05
【问题描述】:

为什么FASHION MNIST问题的keras模型第二层正好有128个节点?

https://colab.research.google.com/github/tensorflow/docs/blob/master/site/en/tutorials/keras/classification.ipynb#scrollTo=9ODch-OFCaW4

model = keras.Sequential([
    keras.layers.Flatten(input_shape=(28, 28)),
    keras.layers.Dense(128, activation='relu'),
    keras.layers.Dense(10, activation='softmax')
])

【问题讨论】:

  • 您期待什么样的答案?它是一个经过调整的参数。
  • 我是 TensorFlow 的初学者,所以我期待推理,即为什么正好有 128 个节点???

标签: python tensorflow keras


【解决方案1】:

在本教程中,我们只是制作一个简单的神经网络,所以 128 个节点就足够了,一些神经网络建议如果神经元或节点的数量是 2 的幂,那么很容易计算 128 是 2 的幂(2^7) 因为它不会太小或太大,因此对于简单的神经网络来说已经足够了。

但是您也可以尝试任何其他数字,更正式地说,节点的数量取决于数据大小,您可以给它任何数字,但如果您为更大的数据提供更大的量级,则有可能过度拟合。

过拟合: 当一个模型接受如此多的数据训练时,它开始从我们数据集中的噪声和不准确的数据条目中学习。那么模型没有正确分类数据,因为太多的细节和噪音。

参考:https://www.geeksforgeeks.org/underfitting-and-overfitting-in-machine-learning/

【讨论】:

  • 过拟合是什么意思?
  • 过拟合:当一个模型用如此多的数据训练时,它开始从我们数据集中的噪声和不准确的数据条目中学习。然后模型没有正确分类数据,因为太多的细节和噪音。参考:geeksforgeeks.org/…
【解决方案2】:

基本上你可以为它指定任何数字,前提是结果(准确性、延迟等)对你来说足够好,并且你的硬件也可以运行它。

【讨论】:

    猜你喜欢
    • 2017-05-15
    • 2018-11-05
    • 2018-03-21
    • 2020-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-28
    • 2015-08-31
    相关资源
    最近更新 更多