Sal*_*ire 1 machine-learning dataset sampling random-forest scikit-learn
我一直在使用烂番茄电影评论数据集进行情感分析预测.数据集有5个类{0,1,2,3,4},其中0表示非常负,4表示非常正数数据集非常不平衡,
total samples = 156061
'0': 7072 (4.5%),
'1': 27273 (17.4%),
'2': 79583 (50.9%),
'3': 32927 (21%),
'4': 9206 (5.8%)
正如你所看到的,课程2
有近50%的样本,0
并且5
贡献了约10%的训练集
因此,课堂上有很强的偏见,2
从而降低了课堂0
和课堂分类的准确性4
.
我该怎么做才能平衡数据集?一种解决方案是通过将每个类别的样本减少到7072来获得相同数量的样本,但它会大大减少数据集!如何在不影响整体分类准确性的情况下优化和平衡数据集?
您不应该平衡数据集,您应该以平衡的方式训练分类器.几乎所有现有的分类器都可以通过一些成本敏感的目标进行训练.例如 - SVM可让您"加权"样品,只需对较小类的样品进行加权.同样,朴素贝叶斯有班级先辈 - 改变他们!随机森林,神经网络,Logistic回归,它们都让你以某种方式"加权"样本,它是获得更均衡结果的核心技术.
归档时间: |
|
查看次数: |
794 次 |
最近记录: |