如何使用逻辑回归 (logistic regression)来解决多类别分类问题,通过一个叫做"一对多" (one-vs-all) 的分类算法
eg1:假如说你现在需要一个学习算法能自动地将邮件归类到不同的文件夹里,或者说可以自动地加上标签,那么,你也许需要一些不同的文件夹,或者不同的标签来完成这件事,来区分开来自工作的邮件、来自朋友的邮件、来自家人的邮件或者是有关兴趣爱好的邮件,那么,我们就有了这样一个分类问题:其类别有四个,分别用来代表
对于一个二分零、多类分类问题,我们的数据集或许看起来像这样
现在我们有一个训练集,好比上图表示的有3个类别,我们用三角形表示 ,方框表示,叉叉表示
先从用三角形代表的类别1开始,实际上我们可以创建一个,新的"伪"训练集,类型2和类型3定为负类,类型1设定为正类,我们创建一个新的训练集,如下图所示的那样,我们要拟合出一个合适的分类器。
为了能实现这样的转变,我们将多个类中的一个类标记为正向类,然后将其他所有类都标记为负向类,这个模型记作。接着,类似地第我们选择另一个类标记为正向类,再将其它类都标记为负向类,将这个模型记作 ,依此类推。 最后我们得到一系列的模型简记为:
在我们需要做预测时,我们将所有的分类机都运行一遍,然后对每一个输入变量,都选择最高可能性的输出变量。
要做的就是训练这个逻辑回归分类器: , 其中 对应每一个可能的 ,最后,为了做出预测,我们给出输入一个新的 值,用这个做预测。我们要做的就是在我们三个分类器里面输入 ,然后我们选择一个让 最大的,即。
网友评论