我正在尝试在相当不平衡的数据上使用SVM构建预测模型。我的标签/输出有三个类别,正,中性和负。我会说正面的例子约占我数据的10-20%,中立的约占50-60%,负数约占30-40%。我正在尝试平衡类,因为与类之间的错误预测相关的成本并不相同。一种方法是对训练数据进行重采样并生成一个相等的数据集,该数据集比原始数据集更大。有趣的是,当我这样做时,我倾向于对其他类别做出更好的预测(例如,当我平衡数据时,我增加了正面类别的示例数量,但在样本预测之外,负面类别的表现更好)。任何人都可以大致解释为什么会这样吗?如果我增加否定类别的榜样数量,我会从样本预测(例如更好的预测)中得到与肯定类别相似的东西吗?
关于如何通过对错误分类施加不同的成本或使用LibSVM中的类权重来解决不平衡数据的其他想法也非常开放,尽管我不确定如何正确选择/调整那些数据。