zl程序教程

您现在的位置是:首页 >  硬件

当前栏目

机器学习中多分类问题处理成二分类问题的四种拆分策略

机器学习 处理 策略 分类 四种 拆分 问题
2023-09-27 14:20:38 时间

在机器学习中经常将多分类问题处理成二分类问题,给出三种以上的拆分策略

  1. 1) 一对一(One vs. One, 简称OvO)
    OvO将N个类别两两配对,从而产生N(N-1)/2个二分类任务。在测试阶段,新样本将同时提交给所有分类器,得到N(N-1)/2个分类结果,最终结果可由投票产生,或根据各分类器的预测置信度等信息进行集成。
  2. 2) 一对其余(One vs. Rest, 简称OvR)
    OvR每次将一个类的样例作为正例、所有其他类的样例作为反例来训练N个分类器。在测试时若只有一个分类器预测为正类,则对应的类别标记作为最终分类结果。若有多个分类器预测为正类,则通常考虑各分类器的预测置信度,选择置信度最大的类别标记作为分类结果。
  3. 3) 多对多(Many vs. Many, 简称MvM)
    MvM是每次将若干个类作为正类,若干个其他类作为反类。OvO和OvR是MvM的特例。MvM的正、反类构造最常用的MvM技术:“纠错输出码”(Error Correcting Output Codes,简称ECOC)。
    ECOC过程主要分为两步:
    1.编码:对N个类别做M次划分,每次划分将一部分类别划为正类,一部分划为反类,从而形成一个二分类训练集;这样一共产生M个训练集,可训练出M个分类器。
    2.解码:M个分类器分别对测试样本进行预测,这些预测标记组成一个编码。将这个预测编码与每个类别各自的编码进行比较,返回其中距离最小的类别作为最终预测结果。
  4. 4) 层次分类法
    层次分类器的定义包括类别层次和分类器两部分,类别层次决定多类问题的分解,层次分类器在类别层次的基础上进行组织。类别层次一般使用“树(Tree)”或“有向无环图(Directed Acyclic Graph, DAG)”结构存储,将类别划分表达成树形结构,每个结点对应于一个二分类分类器。

各自的优劣:

1.OvR训练的是N个分类器,而OvO训练的是N(N-1)/2个分类器。因此OvR的存储开销和测试时间都比OvO小。2.从训练时每个学习器使用的样本数来看:OvR每个学习器使用了所有的样本,而OvO的每个学习器只用到两个类别的样本。因此在类别很多时,OvO的训练时间往往会比OvR小。3. 多对多MvM,对于同一个学习任务,ECOC编码越长,纠错能力越强。但是,这意味着所需要的分类器就越多,开销就越大;另一方面,对有限类别数,可能的组合数目是有限的,码长超过一定的范围后就失去了意义。4. 层次分类法对于分类问题的规模越来越大,样本数目、特征维数和类别数量大的分类问题的分类效果较好。

机器学习中多分类问题处理成二分类问题的四种拆分策略_多分类问题可分解为多个二分类问题_雨田yu的博客-CSDN博客

 机器学习之——多类分类问题_郭三亿的博客-CSDN博客