【问题标题】:Validation accuracy dropping in CNN ChainerCNN Chainer 中的验证准确度下降
【发布时间】:2019-01-08 13:10:50
【问题描述】:

我在 Chainer 中使用 CNN 对细胞图像进行分类。模型的验证精度随着主/训练精度的提高而下降。我想知道为什么验证准确度会下降,以及有什么方法可以提高验证准确度。

数据形状是(32, 3, 60, 80),其中32是batchsize,3是channel,60和80分别是height和width。

我已在除最后一层之外的所有层中应用了 relu 和 dropout。在该模型中,即使在 50 个 epoch 之后,训练和验证的准确性也没有变化。 下面给出的模型显示主/训练准确度从 0.78 逐渐增加到 0.98,验证准确度在 100 个 epoch 后从 0.79 变化到 0.66。

model = Sequential(
    L.Convolution2D(None, 128, 3, 2),
    F.relu,
    L.Convolution2D(128, 64, 3, 2),
    F.relu,
    L.Convolution2D(64, 32, 3, 2),
    F.relu,
    L.Linear(None, 16),
    F.dropout,
    L.Linear(16, 4)
)

【问题讨论】:

    标签: python-3.x conv-neural-network chainer


    【解决方案1】:

    这不是意外行为,它被称为“过拟合”。 在训练期间,机器学习模型将与验证数据一起适应训练数据(提高训练准确度),但从某些时候开始,模型只适合训练数据,因此不适合验证数据(降低验证准确度) .

    其他参考请见Overfitting

    【讨论】:

      猜你喜欢
      • 2019-11-24
      • 2017-11-12
      • 2020-09-01
      • 1970-01-01
      • 2022-01-12
      • 2012-02-15
      • 2018-12-01
      • 2023-03-16
      • 1970-01-01
      相关资源
      最近更新 更多