为什么说非平衡(倾斜)的数据不好?

  统计/机器学习 监督式学习 数据预处理 开放问题    浏览次数:820        分享
1

在面经里经常看到考官问数据非平衡、倾斜、正负比例相差很大,该怎么办,需要哪些预处理。

但是我还不是很清楚为什么非平衡的数据不好?它给模型训练带来了哪些麻烦呢?

 

zzzz   2018-09-09 12:13



   2个回答 
8

举个简单的例子,如果数据集中正例远多于负例(比如说99:1),那么我们的模型即使什么都不学习,只要预测数据为正例,就可以得到很高的准确率(比如说99%),但是这并不是一个好模型,因为它无法识别出负例,这种极端的情况下,我们通常直观上的一些评价标准并不适用这种模型。需要引用F1-Score这样的评价方法。而且在模型的训练过程中,比如说卷积神经网络,过多正例使其Loss在整个Loss中占主导地位,从而容易忽略了负例的Loss,很难收敛到一个很好的结果,通常要在Loss中加入权重,比如说Focal Loss的方法。

SofaSofa数据科学社区DS面试题库 DS面经

nlceyes   2018-09-10 16:24

谢谢!如果对于逻辑回归(它用的logloss),非平衡数据对模型有影响吗? - zzzz   2018-09-12 00:59
客气客气,我觉得有影响,正例远多于负例的情况下,对loss函数最小化的优化方向很有可能是overfitting训练集的正例,因为这样才能最有效地最小化loss函数。即使模型学习到了负例的特征从而使loss中负例部分减小,但是其所占比例太低,对于最终loss函数的值影响太小。这只是个人的理解,我也在入门学习中,应该还有很多纰漏。 - nlceyes   2018-09-13 21:06
3

机器学算法在不平衡数据上表现往往会下降

原因有:

1. 目标变量的分布不均匀使得算法精度下降,对于小类的预测精度会很低,因为学习样本不够多

2. 如果算法本身是精度驱动的,即该模型的目标是最小化总体误差,而小类对于总体误差的贡献很低

3. 有些算法本身的前提假设就是数据集的类分布均衡,同时它们也可能假定不同类别的误差带来相同的损失

SofaSofa数据科学社区DS面试题库 DS面经

tbh   2018-12-29 10:12



  相关主题

训练集中重复的样本需要被删除吗?   3回答

拟合数据的Z-score规范化怎么进行操作?   2回答

数据一样,y却不一样的样本该怎么处理?   2回答

对于数值型变量模型怎么知道是连续变量还是离散变量?   2回答

离散变量和连续变量可以一起放入机器学习的分类器中吗?   1回答

为什么bias-variance一定会trade off?   2回答

哪些机器学习分类模型适用于小数据?   3回答

Probit model和Logit model的区别是什么?   1回答

在训练前数据处理的时候,怎么剔除异常值?   2回答

dummy variable是n个还是n-1个   3回答

怎么对特征做标准化使得数值都是正数?   3回答

z-score标准化不适用于处理什么样的数据?   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!