将6级模型重新排列为6个2级模型。它会改善吗?

时间:2015-12-10 20:20:08

标签: machine-learning svm libsvm

我有一个由6个类和19个特征组成的SVM模型。效果很好,准确率高达95%。 我正在评估,如何获得最后5%。我的想法是创建具有其他功能的其他模型,训练实例。 另一个想法是将现有模型从6个类重新排列为6个模型,每个模型有2个类,其中一个类为正,另外5个类为负。功能将保持不变。它会带来任何新的分类结果,还是只是一个冗余模型?

谢谢!

2 个答案:

答案 0 :(得分:1)

SVM实际上只能进行二进制分类。多类改编使用了几个模型,并在一对一方案中对类应该是什么进行投票。

快速举例:

class1 vs class2 
class2 vs class3
class1 vs class3

将全部用于3级SVM,然后模型将投票决定观察应该是什么类。 one-vs-all是另一种在多分类场景中使用SVM的流行方式。要回答你的问题,这已经是幕后发生的事情了。有可能建立更多的模型可以帮助提高你的准确性,所以如果你感到无聊并希望看到它是否有帮助它值得一试

答案 1 :(得分:1)

  

我的想法是创建具有其他功能的其他模型,训练   实例

是的,这是一个好主意。检查数据上其他模型的性能。

  

另一个想法是将现有模型从6个类重新排列为6个   每个模型有2个类,其中一个类是正数,另一个类   5个班级是否定的。

由于SVM是二元分类器。多类SVM分类器在内部使用One-Vs-All or One-vs-One。你所暗示的是一对一。因为libsvm使用One-vs-One技术。你可以使用one-vs-all,但这通常不会提高准确性,因为一对一使用更多的分类器。