平衡数据集对构建模型的影响

来源:10-2 精准率和召回率

慕雪9580269

2020-06-27

波波老师好

我最近构建利用平衡数据集构建了一个机器学习算法,而后采用独立数据集验证模型的性能,我发现一个问题,若独立数据集也是平衡的,则算法性能较好,若独立数据集非平衡,也算法结果特别差。这可能是什么原因造成的?

谢谢波波老师。

写回答

2回答

liuyubobobo

2020-06-28

目测对于非平衡的独立数据集,数据量大的那个分类的出错率比较高,所以导致同样的模型,如果数据集非平衡,有巨大的正确率变化。


实际用你的数据观察一下是不是如此?


如果是如此,说明你的训练数据对于其中一个分类结果不够好,最直接的方式是想办法获得这个分类的更优的数据最训练。


继续加油!:)

0
0

慕雪9580269

提问者

2020-06-28

波波老师,我没太理解,那我碰到这种问题应该怎么办?本来用来训练的数据集就是平衡数据集,我无法预测将来的独立数据集是平衡的,还是非平衡的?

0
1
liuyubobobo
说明你的训练数据集中,对于某一个分类,特征的表征不够,导致对这个分类的鉴别产生了大量错误。比如你的分类任务是区分猫还是狗。辨别出猫的正确率很高,但辨别出狗的正确率很低。导致如果你的测试数据集有很多狗的照片,整体正确率就下来了。这说明你的模型对狗的辨别率很低。或者做更多的特征工程,让你的数据特征能很好地分别出狗;或者可能你的训练数据集中,关于狗的数据不够理想,导致新的数据中的狗分别不出来。寻找更多更典型的狗的数据。
2020-06-28
共1条回复

Python3入门机器学习 经典算法与应用  

Python3+sklearn,兼顾原理、算法底层实现和框架使用。

5839 学习 · 2437 问题

查看课程