对于真正的小类,过采样是否会导致比类权重更多的过拟合?

机器算法验证 机器学习 数据增强
2022-04-01 18:24:46

假设我有几千只母鸡,我想将它们分为那些从不下蛋的母鸡和那些在生命中某个时刻会下蛋的母鸡。假设已经完美运行。

现在有几只母鸡会下蛋,但在某些时候不会在几年内下蛋。那些母鸡是极少数——比如说一百只。

现在,我希望我的网络对一只母鸡进行分类,该母鸡在某些时候会下蛋,但在几年内不会下蛋,作为第三类。

我的直觉告诉我,如果我对少数类别进行过采样,我的模型将简单地记住这数百个示例而无法进行泛化。

然而,当使用权重时,我的直觉会告诉我,我的模型无法记住这些样本,因为它没有足够频繁地遇到它们——有点像更高的学习率会导致更好的泛化,但由于粗略的步骤,拟合效果会更差。

然而,CrossValidated 上的所有帖子实际上都说过采样效果更好——但为什么呢?像我这样的小班也是如此吗?

1个回答

这至少在一定程度上取决于所使用的模型。大多数情况下,简单的过采样渐近等效于使用类权重:整数权重w在数据点上对损失计算的影响与复制数据点相同w次。那么过采样只是类加权的离散版本,因此它们应该是等价的,但对于小样本大小,离散版本是否应该导致一致或多或少的过度拟合似乎并不明确。

但是,如果您的模型进行任何装袋,情况就会发生变化:通过过采样,您可能会包含一个点的重复项的子集,而当对子集进行加权时,则发生在权重起作用之前。但是,我仍然不清楚最终效果在过度拟合的意义上是积极的还是消极的。(除非您还计划使用袋外分数,在这种情况下,这将非常糟糕,与交叉验证中的重新采样前拆分非常相似。)