Vowpal Wabbit:不平衡的类

Posted

技术标签:

【中文标题】Vowpal Wabbit:不平衡的类【英文标题】:Vowpal Wabbit: unbalanced classes 【发布时间】:2016-02-08 12:36:24 【问题描述】:

我想使用 Vowpal Wabbit 执行逻辑回归。如何处理不平衡的类(例如 1000/50000)?我知道我可以使用重要性加权,但我不确定在这种情况下这是最好的选择。还有一些算法,比如 SMOTE,但我不知道如何在 Vowpal Wabbit 中使用它们。

【问题讨论】:

【参考方案1】:

是的,重要性加权是 Vowpal Wabbit 中不平衡类的解决方案。最重要的问题是你的最终评价标准是什么。是 RO 曲线下的面积(又名 ROC,AUC)吗?请参阅 Calculating AUC when using Vowpal Wabbit 和 How to perform logistic regression using vowpal wabbit on very imbalanced dataset(在此处查看两个答案)。

SMOTE 似乎是对少数类的过采样和对多数类的欠采样的组合,其中过采样是通过从例如生成合成示例来完成的。 5 个最近邻示例,它们随机混合在一起。此方法在 Vowpal Wabbit 中没有实现,并且与在线学习不兼容(因为最近的邻居)。它可能以某种方式以在线方式近似。

【讨论】:

可能是 F1 分数和 AUC。我还将使用提升图表。那么,只有在线学习情况下的重要性加权? 如果正确完成,过采样(和欠采样)应该与重要性加权非常相似。在这两种方法中,您都需要找到最佳常数,例如通过交叉验证。生成的合成示例应该减少variance。 Bagging (--bootstrap M) 可用于相同目的(参见***.com/questions/30008991/…)。

以上是关于Vowpal Wabbit:不平衡的类的主要内容,如果未能解决你的问题,请参考以下文章

Vowpal Wabbit 的梯度提升

Vowpal Wabbit 模型在使用像素 RGB 值对图像进行多类分类时效果不佳

Vowpal Wabbit Logistic 回归

vowpal-wabbit:使用多次通过、保持和保持期来避免过度拟合?

使用 Vowpal wabbit 的上下文强盗

Vowpal Wabbit 如何表示分类特征