0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何利用二分类学习器来解决多分类问题

Dbwd_Imgtec 来源:CSDN 作者:CSDN 2019-12-03 11:09 次阅读

现实中常遇到多分类学习任务。有些二分类学习方法可直接推广到多分类,如LR。但在更多情形下,我们是基于一些基本策略,利用二分类学习器来解决多分类问题。所以多分类问题的根本方法依然是二分类问题。

具体来说,有以下三种策略:

一、一对一 (OvO)

假如某个分类中有N个类别,我们将这N个类别进行两两配对(两两配对后转化为二分类问题)。那么我们可以得到个二分类器。(简单解释一下,相当于在N个类别里面抽2个)

之后,在测试阶段,我们把新样本交给这个二分类器。于是我们可以得到个分类结果。把预测的最多的类别作为预测的结果。

下面,我给一个具体的例子来理解一下。

上图的意思其实很明显,首先把类别两两组合(6种组合)。组合完之后,其中一个类别作为正类,另一个作为负类(这个正负只是相对而言,目的是转化为二分类)。然后对每个二分类器进行训练。可以得到6个二分类器。然后把测试样本在6个二分类器上面进行预测。从结果上可以看到,类别1被预测的最多,故测试样本属于类别1。

二、一对其余 (OvR)

一对其余其实更加好理解,每次将一个类别作为正类,其余类别作为负类。此时共有(N个分类器)。在测试的时候若仅有一个分类器预测为正类,则对应的类别标记为最终的分类结果。例如下面这个例子。

大概解释一下,就是有当有4个类别的时候,每次把其中一个类别作为正类别,其余作为负类别,共有4种组合,对于这4种组合进行分类器的训练,我们可以得到4个分类器。对于测试样本,放进4个分类器进行预测,仅有一个分类器预测为正类,于是取这个分类器的结果作为预测结果,分类器2预测的结果是类别2,于是这个样本便属于类别2。

其实,有人会有疑问,那么预测为负类的分类器就不用管了吗?是的,因为预测为负类的时候有多种可能,无法确定,只有预测为正类的时候才能唯一确定属于哪一类。比如对于分类器3,分类结果是负类,但是负类有类别1,类别2,类别4三种,到底属于哪一种?

OvO和OvR有何优缺点?

容易看出,OvR只需训练N个分类器,而OvO需训练N(N - 1)/2个分类器, 因此,OvO的存储开销和测试时间开销通常比OvR更大。但在训练时,OvR的每个分类器均使用全部训练样例,而OvO的每个分类器仅用到两个类的样例,因此,在类别很多时,OvO的训练时间开销通常比OvR更小。至于预测性能,则取决于具体的数据分布,在多数情形下两者差不多。

综上:
OvO的优点是,在类别很多时,训练时间要比OvR少。缺点是,分类器个数多。
OvR的优点是,分类器个数少,存储开销和测试时间比OvO少。缺点是,类别很多时,训练时间长。

三、多对多(MvM)

MvM是每次将若干个类作为正类,若干个其他类作为反类。显然,OvO和OvR是MvM的特例。MvM的正、反类构造必须有特殊的设计,不能随意选取。这里我们介绍一种最常用的MvM技术"纠错输出码" (Error Correcting Output Codes,简称 ECOC)

ECOC是将编码的思想引入类别拆分,并尽可能在解码过程中具有容错性。

ECOC工作过程主要分为两步:

编码:对N个类别做M次划分,每次划分将一部分类别划为正类,一部分划为反类,从而形成一个二分类训练集。这样一共产生M个训练集,可训练出M个分类器。

解码:M 个分类器分别对测试样本进行预测,这些预测标记组成一个编码。将这个预测编码与每个类别各自的编码进行比较,返回其中距离最小的类别作为最终预测结果。

类别划分通过"编码矩阵"指定。编码矩阵有多种形式,常见的主要有二元码和三元码。前者将每个类别分别指定为正类和反类,后者在正、反类之外,还可指定"停用类"。图3.5给出了一个示意图,在图 3.5(a) 中,分类器f2将Cl类和C3类的样例作为正例,C2类和C4类的样例作为反例;在图3.5(b)中,分类器f4将C1类和C4类的样例作为正例,C3 类的样例作为反例。在解码阶段,各分类器的预测结果联合起来形成了测试示例的编码,该编码与各类所对应的编码进行比较,将距离最小的编码所对应的类别作为预测结果。

例如在图 3.5(a) 中,若基于欧式距离,预测结果将是 C3。也就是一个测试样本,经过分类器f1,f2,f3,f4,f5分别预测成了(-1,-1,+1,-1,+1),与C1相比较,海明距离为0+1+1+1+0=3,欧式距离为,对C2,C3,C4都进行比较即可。

为什么称为"纠错输出码"呢?

这是因为在测试阶段,ECOC编码对分类器的错误有一定的容忍和修正能力。例如图3.5(a) 中对测试示例的正确预测编码是(-1,+1,+1,-1,+1),假设在预测时某个分类器出错了,例如 h 出错从而导致了错误编码(-1,-1,+1,-1,+1),但基于这个编码仍能产生正确的最终分类结果C3。一般来说,对同一个学习任务,ECOC编码越长,纠错能力越强。

EOCO编码长度越长,纠错能力越强,那长度越长越好吗?

NO!编码越长,意味着所需训练的分类器越多,计算、存储开销都会增大;另一方面,对有限类别数,可能的组合数目是有限的,码长超过一定范围后就失去了意义。

对同等长度的编码,理论上来说,任意两个类别之间的编码距离越远,则纠错能力越强。因此,在码长较小时可根据这个原则计算出理论最优编码。然而,码长稍大一些就难以有效地确定最优编码,事实上这是 NP 难问题。不过,通常我们并不需获得理论最优编码,因为非最优编码在实践中往往己能产生足够好的分类器。另一方面,并不是编码的理论性质越好,分类性能就越好,因为机器学习问题涉及很多因素,例如将多个类拆解为两个“类别子集”,不同拆解方式所形成的两个类别子集的区分难度往往不同,即其导致的二分类问题的难度不同。于是一个理论纠错性质很好、但导致的二分类问题较难的编码,与另一个理论纠错性质差一些、但导致的二分类问题较简单的编码,最终产生的模型性能孰强孰弱很难说。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 分类器
    +关注

    关注

    0

    文章

    152

    浏览量

    13113
  • 机器学习
    +关注

    关注

    66

    文章

    8122

    浏览量

    130562

原文标题:机器学习中的多分类任务详解

文章出处:【微信号:Imgtec,微信公众号:Imagination Tech】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    产品信息分类

    今天利用时间完善新注册的一个平台,完善产品信息后,接下来要做的就是先做产品信息分类,于是我把我单位的产品都统一分类了,其实之前在各大平台发布产品信息在
    发表于 09-27 17:06

    线性分类

    对应不同分类的得分,是通过使用内积(也叫点积)来比较图像和模板,然后找到和哪个模板最相似。从这个角度来看,线性分类就是在利用学习到的模板,
    发表于 10-09 09:40

    Keras之ML~P:基于Keras中建立的简单的二分类问题的神经网络模型

    Keras之ML~P:基于Keras中建立的简单的二分类问题的神经网络模型(根据200个数据样本预测新的5个样本)——概率预测
    发表于 12-20 10:44

    基于Keras中建立的简单的二分类问题的神经网络模型(根据200个数据样本预测新的5+1个样本)—类别预测

    Keras之ML~P:基于Keras中建立的简单的二分类问题的神经网络模型(根据200个数据样本预测新的5+1个样本)——类别预测
    发表于 12-24 11:45

    基于逻辑回归算法的乳腺癌肿瘤二分类预测

    ML之LoR:基于LoR(逻辑回归)算法对乳腺癌肿瘤进行二分类预测(良恶性)
    发表于 06-18 07:06

    STM32分类命名方法

    STM32分类命名方法选择合适的MCU1. 如何分配原理图上的IO引脚2. 如何寻找IO的功能说明参考手册(Reference Manual)数据手册(Data Sheet)数据手册主要用于芯片选型和设计原理图,参考手册主要用于编程...
    发表于 02-14 07:53

    集成学习多分类器动态组合方法

    为了提高数据的分类性能,提出一种集成学习多分类器动态组合方法(DEA)。该方法在多个UCI标准数据集上进行测试,并与文中使用的基于Adaboost算法训练出的各个成员分类器的
    发表于 04-08 08:58 19次下载

    基于主动学习不平衡多分类AdaBoost改进算法

    针对不平衡分类中小类样本识别率低问题,提出一种基于主动学习不平衡多分类AdaBoost改进算法。首先,利用主动学习方法通过多次迭代抽样,选取
    发表于 11-30 17:12 3次下载

    一种多分类的AdaBoost算法

    多类指数损失函数逐步添加模型( SAMME)是一种多分类的AdaBoost算法,为进一步提升SAMME算法的性能,针对使用加权概率和伪损失对算法的影响进行研究,在此基础上提出了一种基于基分类器对样本
    发表于 12-01 16:50 1次下载

    基于集成多标记学习的蛋白质多亚细胞定位预测方法

    学习系统框架结构,该框架将学习算法和分类器进行了层次性分类,并把二分类学习多分类学习、多标记
    发表于 12-13 15:49 0次下载
    基于集成多标记<b class='flag-5'>学习</b>的蛋白质多亚细胞定位预测方法

    多分类孪生支持向量机研究进展

    孪生支持向量机因其简单的模型、快速的训练速度和优秀的性能而受到广泛关注.该算法最初是为解决二分类问题而提出的。不能直接用于解决现实生活中普遍存在的多分类问题.近来,学者们致力于将二分类孪生支持向量
    发表于 12-19 11:32 0次下载

    基于可能性二均值聚类的二分类支持向量机

    提出基于可能性二均值聚类(Possibilistic Two Means, P2M)的二分类支持向量机(Support Vector Machine,SVM)。该算法先用P2M对未知类别的二分类数据
    发表于 01-09 10:45 0次下载

    多核学习支持向量机应用音乐流派自动分类

    针对不同特征向量下选择最优核函数的学习方法问题,将多核学习支持向量机( MK-SVM)应用于音乐流派自动分类中,提出了将最优核函数进行加权组合构成合成核函数进行流派分类的方法。多核
    发表于 01-09 15:25 2次下载
    多核<b class='flag-5'>学习</b>支持向量机应用音乐流派自动<b class='flag-5'>分类</b>

    改进多分类决策策略的RVM在液压汞故障诊断中的应用

    针对传统多分类相关向量机( relevance vector machine,RVM)采用最大票数赢(MVW)决策策略的不足,为了提升相关向量机的多分类能力,首先改进了RVM的多分类决策策略,并
    发表于 01-17 17:54 0次下载
    改进<b class='flag-5'>多分类</b>决策策略的RVM在液压汞故障诊断中的应用

    如何使用数字语音取证算法设计一个多分类器的详细资料说明

    的归一化梅尔频率倒谱系数(MFCC)统计矩特征;然后通过多个二分类器对特征进行训练,并组合投票得到多分类器;最后使用该多分类器对待测语音进行分类。在TIMIT以及UME语音库上的实验结
    发表于 09-10 17:16 5次下载
    如何使用数字语音取证算法设计一个<b class='flag-5'>多分类</b>器的详细资料说明