这是一个过度拟合的案例吗?

数据挖掘 图像分类 过拟合 vgg16
2022-01-21 15:00:03

我是一名新程序员,这是我第一个用于现实世界应用的神经网络。

这是交易,我使用的是无顶部预训练的 VGG-16,上面有一些密集层。(用于图像分类问题)

但无论我改变什么超参数,我总是得到与这些相似的图。

在此处输入图像描述

在此处输入图像描述

所以我的问题是我们可以认为模型训练有什么损失(val_loss)?

如果我输入 VGG-16 的图像是 RGB/255,会不会有问题?

如果有人可以解释验证损失有多高(即使验证准确度很高)会影响模型?

感谢您花时间回答我,如果这些问题看起来很愚蠢,但我在其他地方搜索时没有找到答案,我很抱歉。

2个回答

您的模型确实过拟合。发生这种情况的原因可能有很多——你训练了多少张图像?你不是在使用正则化,使用随机裁剪或翻转来增强数据吗,为了防止过度拟合而丢弃?

所以我的问题是我们可以认为模型训练有什么损失(val_loss)?

当验证损失不再减少时,我们通常可以停止训练。这通常通过定义一个变量来完成,例如:n = 5 并检查在运行 n 个 epoch 后验证损失是否减少。如果您正在解决一个众所周知的问题(MNIST、Fashion-MNIST、CIFAR-10 等),您可以检查模型可实现的最佳分数/损失并调整您的模型(添加或删除层、防止过度拟合等) ) 达到分数。

如果我输入 VGG-16 的图像是 RGB/255,会不会有问题?

您应该预处理图像以加快训练速度,并从输入中减去用于训练预训练网络的图像的平均 RGB 像素值(如果使用 imagenet 数据训练预训练网络,则从输入图像中减去 imagenet 数据集的平均 RGB 像素值)图片。在这里你可以阅读 keras preprocessing_input 方法。

如果有人可以解释验证损失有多高(即使验证准确度很高)会影响模型?

验证损失衡量您的模型对看不见的数据的泛化程度。如果你的训练损失和验证损失在训练期间没有改善,那么你就欠拟合了。如果您的训练损失很低,但您的验证损失停滞或增加,那么您就是过度拟合,这意味着您的模型正在学习不需要的噪声或模式,这有助于它学习或记忆训练数据,但在看不见的验证集上无法推广.

是一个使用预训练网络解释数据预处理、增强、迁移学习的链接。

事实上,高验证损失会严重影响模型与测试数据的准确性。在这种情况下,绝对过拟合正在发生,在机器学习文献中也被视为高方差问题。过度拟合限制了模型的泛化。