支持向量机SVM—实现多分类问题的解决方案
前言
众所周知,支持向量机SVM是机器学习中典型的二值分类算法。但现实生活中,有很多实际应用是没有办法用简单的二值分类器去完成分类的。因此,为了拓展支持向量机SVM的应用场景,必须考虑在多分类情况下的算法实现。
一、支持向量机SVM如何应用在多分类问题中?
原本应用在二值分类上的SVM算法是否可以应用在多分类问题上呢?答案是肯定的。
通过重新构造后。SVM算法便可以应用到多分类问题中去。具体的解决方案主要有两大类,第一类是直接法,这种方法的核心是直接修改目标函数,将多分类问题中的多个参数整合到一个函数中,。这种方法看似简单,但其计算复杂度比较高,实现起来比较困难,只适合用于小型问题中。另一类是间接法,主要是通过组合多个二分类器来实现多分类器的构造,常见的方法有one-against-one和one-against-all两种。
二、解决方案
1.One-Versus-Rest(一对多)
训练时依次把某个类别的样本归为一类,其他剩余的样本归为另一类,这样k个类别的样本就构造出了k个SVM。分类时将未知样本分类为具有最大分类函数值的那类。
拿文章分类举例,比如我们有5个文章类别&