尽管 Multi-class 与 Multi-label 分类不同,但在 Multi-class 中添加 One vs All 有什么区别。
编辑 1: http ://scikit-learn.org/stable/modules/multiclass.html#multilabel-learning
在此链接中,它在 Multiclass 的项目符号下提到支持的分类器为 One-Vs-All 和 Support Multilabel 的部分令人困惑。
尽管 Multi-class 与 Multi-label 分类不同,但在 Multi-class 中添加 One vs All 有什么区别。
编辑 1: http ://scikit-learn.org/stable/modules/multiclass.html#multilabel-learning
在此链接中,它在 Multiclass 的项目符号下提到支持的分类器为 One-Vs-All 和 Support Multilabel 的部分令人困惑。
在多类分类中,每个类都是互斥的,但在多标签分类中,每个类基本上代表不同的二元分类任务。
一个例子。
多类:可能包含狗、猫或青蛙的图像。每个图像仅包含一种动物。
对比
多标签:基于海报图像的电影类型分类。您有电影的海报图像,并想确定该电影是戏剧、动作片还是惊悚片等。一部电影可能属于这些类型中的多个。
因此,为了回答您的问题,多标签分类中的一对多策略基本上将 k 个二元分类任务分开。因此,使用上面的示例,您将有 k 个二进制分类器,其中每个分类器基本上代表每种类型。所以你会有一个用于戏剧的二元分类器,一个用于动作,一个用于惊悚等。
假设您有 K 个类别,您的多标签分类模型输出输入属于每个 K 个类别的概率:
另一种方法是训练 K 个二元分类器并将它们专门用于识别一个类,因此一个仅识别类 k 的分类器,其输出将是一个唯一概率:
该方法在以下方面有所不同:
一对一你训练 K 个分类器,在多标签方法中你训练 1 个分类器。
当您看到第 k 类的标签时,您将拥有 K 个不同的训练数据集,一个与所有分类器作为带有标签的输入数据:“k”或“not k”。
您在 one vs all 方法中的最终分类结果是:
在多类分类中,您可以训练一个分类器来预测一组可能的类中的类。
但是,您也可以为每个类训练一个二元分类器,其中每个分类器都经过训练以预测元素是否属于关联的类。在推理时,您使用所有二元分类器进行预测,然后将信息组合到一个预测中。这是多类一对全。它允许将任何二进制分类算法转换为多类分类算法。