conv(relu) --> conv(relu) --> dense(relu) --> dense(relu) --> dense(sigmoid)
我在8:2之前将数据集分为训练集和验证集,这是我的训练配置:
batch_size = 16
epochs = 200
learning_rate = 0.0001
我的控制台窗口显示:
epoch 1: loss 0.34, validation accuracy 96%
epoch 2: loss 0.12, validation accuracy 98%
epoch 3: loss 0.09, validation accuracy 98.5%
epoch 4: loss 0.06, validation accuracy 99%
epoch 5: loss 0.04, validation accuracy 99.7%
...
一切似乎都很好,我的训练损失正在减少,同时验证集的准确性也在增加。
但是,当在相似但不同数据集上进行测试时,第一个时期之后的模型的准确性比第5个(10、20、100等)时期之后的模型好得多
在检查了this个问题之后,看来我的学习任务太简单了,训练更多的时期会导致过度拟合问题。
所以:
感谢您的帮助。
答案 0 :(得分:0)
是的,您过拟合。您需要对来自同一分布的数据进行训练,验证和测试,否则无法对错误进行任何假设。