如何处理SVM中的数据不平衡问题?

6

如果我在大型的训练集上训练 SVM,且类变量为 True 或 False,则在训练集中 True 值较少与 False 值相比会影响训练模型/结果吗?它们应该是相等的吗?如果我的训练集没有一个相等的 True 和 False 分布,如何处理才能使我的训练尽可能有效?

2个回答

3
有不平衡的数据是可以接受的,因为SVM应该能够将更大的惩罚分配给与较不可能出现的实例(例如,在您的情况下为“真实”)相关的错误分类,而不是分配相等的错误权重,从而导致将所有内容都分配给大多数的不良分类器。但是,使用平衡数据可能会获得更好的结果。这完全取决于您的数据。
您可以人为地扭曲数据以获得更平衡的数据。为什么不查看这篇论文:http://pages.stern.nyu.edu/~fprovost/Papers/skew.PDF

2

我的经验是标准的SVM分类器在不平衡的数据上并不好用。我遇到了C-SVM的情况,而nu-SVM更糟糕。也许你想看看P-SVM,它提供了一个特别适合处理不平衡数据的模式。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接