【发布时间】:2019-06-04 23:29:32
【问题描述】:
我正在使用卷积网络对图像进行分类。多类问题(得到 12 类)
我的训练集是 3500 张图片,类不平衡(例如 A 类 =1200 张图片,B 类 = 50 张图片)。我使用类权重来对抗不平衡和数据增强
edit 数据增强是使用 keras 功能,只做旋转和翻转。我只增加训练集
由于我的一些班级的数据非常少,我制作了一个拆分 60% 训练/20% 验证/20% 测试集(即对于 B 类,我有 30 个训练数据/10 个验证数据/10 个测试数据)
然后我做了不同的拆分,每次都有不同的训练/验证和测试数据 结果稳定 => 我的指标(微 F1 分数)不会因不同的拆分而发生很大变化,并且混淆矩阵显示没有类效应:不同的拆分并不意味着给定类的不同结果
现在,我将我的模型应用到没有标签的集合上。大约 10 000 张图像。 结果很差:当我在测试集上获得 B 类 60% 的精度分数时,我的精度在没有标签的集合中约为 5%
我的问题:
会不会过拟合?当我停止训练模型时,训练损失 = 0.3/训练 F1 = 95%。验证损失 = 0.7/验证 F1=80% 我不这么认为,因为验证损失没有增加(我在模型增加之前停止模型)
我可以调查什么来了解为什么我的结果在具有 10 000 个数据的新数据集上如此糟糕(当我说我的结果时,我说的是精度,因为这是我可以轻松计算某些类的唯一一个指标)
【问题讨论】:
标签: python machine-learning keras conv-neural-network