【问题标题】:Interpretation of Neural Network (CNN) Result / Accuracy神经网络(CNN)结果/准确性的解释
【发布时间】:2016-05-30 09:18:23
【问题描述】:

我对这个主题有点陌生,并基于谷歌的 tensorflow 构建了一个卷积神经网络。我想对属于 10 个类别的图片的测试数据集进行分类。我的 CNN 设置与 tensorflow 教程保持一致,并进行了一些修改以满足我的图像大小。 我在 500 张图像的随机样本上重复运行训练步骤 20 次,然后在大小为 500 的不同样本上重复该步骤 50 次。我使用 200 个样本作为验证数据集(在所有运行中保持这个固定)。结果,我得到了大约 35% 的准确率,这在我看来还算不错,因为我没有进行任何优化,而且图像很难分配给人类的单一类别。

所以这是我的问题:

  • 在同一批次上运行一个步骤 20 次真的有意义吗? (我这样做是因为它是关于适合 RAM 的内容,并且加载新批次需要相当长的时间 - 所以我可以在更短的时间内获得更多的运行)
  • 在训练准确度图表(见下文)中,在步骤 120-130 附近的某个点有一个跳跃。从那时起,对于同一随机批次的每 20 次运行,准确率上升接近 100%。这种跳跃在网络结构/学习方面意味着什么?

【问题讨论】:

    标签: image-processing neural-network tensorflow


    【解决方案1】:

    您的峰值可能是由于网络过度拟合您反复展示它的批次,而没有真正学到一般有用的东西。这也回答了你的第一个问题——在这种情况下,它没有意义。

    【讨论】:

    • 感谢您的回答,您的观点对我来说绝对有意义。尽管如此,在我看来,我的设置(重复 20 次)是有道理的,并且网络正在按预期改进,直到步骤 130 没有过度拟合。我在这里误解了什么吗?在第 130 步,网络发生了什么,以至于它突然改变了它的行为?
    猜你喜欢
    • 2015-02-18
    • 2017-08-31
    • 2012-08-30
    • 1970-01-01
    • 2020-01-14
    • 2020-06-03
    • 1970-01-01
    • 2017-11-17
    • 2016-08-02
    相关资源
    最近更新 更多