【发布时间】:2019-01-16 08:01:21
【问题描述】:
我已将数据集(大约 28K 图像)拆分为 75% 的训练集和 25% 的测试集。然后我随机抽取了 15% 的训练集和 15% 的测试集来创建验证集。目标是将图像分为两类。无法共享确切的图像样本。但它与所附的相似。我正在使用这个模型:带有 imagenet 权重的 VGG19,最后两层可训练并附加了 4 个密集层。我也在使用 ImageDataGenerator 来增强图像。我对模型进行了 30 个 epoch 的训练,发现训练准确度为 95%,验证准确度为 96%,当在测试数据集上训练时,它大幅下降到仅 75%。
我已经尝试过正则化和 dropout 来解决过度拟合问题。我还做了一件事,看看如果我使用测试集作为验证集并在同一个测试集上测试模型会发生什么。结果是:Trainset Acc = 96% 和 Validation ACC = 96.3% 和 testAcc = 68%。我不明白我该怎么办?
【问题讨论】:
-
检查类不平衡。即检查您是否有一个在测试用例中但既不在训练集也不在验证集中的类。
-
没有班级余额,我查过了。
-
为什么有人反对我的问题?问题有什么问题?
-
@HarshVardhan 你找到解决方案了吗?我有类似的问题
-
@ManInMoon 如果你和我的一样,那么网络没有问题。我忘记在测试时对图像进行标准化。你也做了吗?检查一下。
标签: machine-learning keras deep-learning computer-vision conv-neural-network