一、单标签多分类

1、单标签二分类算法原理

1、单标签二分类这种问题是我们最常见的算法问题,主要是指label 标签的取值只有两种,并且算法中只有一个需要预测的label标签; 直白来讲就是每个实例的可能类别只有两种(A or B);此时的分类 算法其实是在构建一个分类线将数据划分为两个类别。
2、常见的算法:Logistic、SVM、KNN、决策树等

2、单标签多分类算法原理

1、单标签多分类问题其实是指待预测的label标签只有一个,但是 label标签的取值可能有多种情况;直白来讲就是每个实例的可能类别有K种(t1,t2,...tk,k≥3);
2、常见算法:Softmax、SVM、KNN、决策树(集成学习 ----RF(Bagging)、Boosting(Adaboost、GBDT);XGBoost) 
3、是一个多分类的问题,我们可以将这个待 求解的问题转换为二分类算法的延伸,即将多分类任务拆分为若 干个二分类任务求解,具体的策略如下:• One-Versus-One(ovo):一对一 • One-Versus-All / One-Versus-the-Rest(ova/ovr): 一对多 • Error  Correcting Output codes(纠错码机制):多对多

3、单标签多分类算法原理-ovo

• 原理:将K个类别中的两两类别数据进行组合,然后使用组合后的 数据训练出来一个模型,从而产生K(K-1)/2个分类器,将这些分类器的结果进行融合,并将分类器的预测结果使用多数投票的方式 输出最终的预测结果值。 

4、单标签多分类算法原理-ovr

1、ovr与softmax的区别:① softmax 始终训练一个模型,Ovr 训练 n 类别个模型② ovr 每一次是代入所有的训练集数据来训练子模型,取出结果为正例的类别(多个正例取最大值)。

5、OvO和OvR的区别

6、单标签多分类算法原理-Error  Correcting

• 原理:将模型构建应用分为两个阶段:编码阶段和解码阶段;编 码阶段中对K个类别中进行M次划分,每次划分将一部分数据分 为正类,一部分数据分为反类,每次划分都构建出来一个模型, 模型的结果是在空间中对于每个类别都定义了一个点;解码阶段 中使用训练出来的模型对测试样例进行预测,将预测样本对应的 点和类别之间的点求距离,选择距离最近的类别作为最终的预测 类别。

二、多标签多分类

1、多标签多分类这类问题的解决方案可以分为两大类:1) 转换策略(Problem Transformation Methods);• Binary Relevance(first-order)           --------- y标签之间相互独立• Classifier Chains(high-order)           --------- y标签之间相互依赖(链式)• Calibrated Label Ranking(second-order)  --------- 了解2) 算法适应(Algorithm Adaptation)。• ML-kNN • ML-DT

1、 转换策略(Problem Transformation Methods)

1、转换策略思想:将多标签多分类问题转化为多个单标签二分类(通过哑编码转换 >>>>>>> -1 , +1 )的子模型,将这些子模型的结果合并。
  •        多标签多分类问题 

  •        转化为多个单标签二分类 

  •       Binary Relevance 与 Classifier Chains区别

---------------------------------------------------------------------------------------------
• Binary Relevance方式的优点如下: • 实现方式简单,容易理解; • 当y值之间不存在相关的依赖关系的时候,模型的效果不错。
• 缺点如下: • 如果y直接存在相互的依赖关系,那么最终构建的模型的泛化能力比较 弱; • 需要构建q个二分类器,q为待预测的y值数量,当q比较大的时候,需 要构建的模型会比较多。
---------------------------------------------------------------------------------------------
• Classifier Chains方式的优点如下: • 实现方式相对比较简单,容易理解; • 考虑标签之间的依赖关系,最终模型的泛化能力相对于Binary Relevance方 式构建的模型效果要好。
• 缺点如下: • 很难找到一个比较适合的标签依赖关系。
---------------------------------------------------------------------------------------------
• Calibrated Label Ranking 方式的优点如下: • 考虑了标签两两组合的情况,最终的模型相对来讲泛化能力比较好。
• 缺点如下: • 只考虑两两标签的组合,没有考虑到标签与标签之间的所有依赖关系。

2、算法适应性

1、ML-kNN的思想:对于每一个实例来讲,先获取距离它最近的k个实例,然 后使用这些实例的标签集合,通过最大后验概率(MAP)来断这个实例的 预测标签集合的值。
2、最大后验概率估计(MAP)贝叶斯估计 与 最大似然估计(MLE)区别?答:最大后验概率(MAP)贝叶斯估计:其实就是在最大似然估计(MLE,样本划分目标属性Y的概率不是处处相等)中加入了这个要估计量的先验概率分布(即样本划分目标属性Y的概率不是处处相等)。

三、API的使用

1、单标签多分类

from sklearn.multiclass import OneVsRestClassifier,OneVsOneClassifier,OutputCodeClassifierclass sklearn.multiclass.OneVsRestClassifier(estimator, n_jobs=1)
'''estimator             ------- 子模型n_jobs=1              ------- CPU使用
'''class sklearn.multiclass.OneVsOneClassifier(estimator, n_jobs=1)class sklearn.multiclass.OutputCodeClassifier(estimator, code_size=1.5, random_state=None, n_jobs=1)

2、多标签多分类

from sklearn.multiclass import XXXclass sklearn.multioutput.MultiOutputClassifier(estimator, n_jobs=1)     ----- 没有依赖关系的多标签多分类class sklearn.multioutput.MultiOutputRegressor(estimator, n_jobs=1)

多分类及多标签分类算法相关推荐

  1. 二分类、多分类、多标签分类等

    分类一般分为三种情况:二分类.多分类和多标签分类.多标签分类比较直观的理解是,一个样本可以同时拥有几个类别标签,比如一张图片含有车子.房子等,那么它的标签可以是房子.车子等,一部电影的标签可以是动作. ...

  2. 分类家族:二分类、多分类、多标签分类、多输出分类

    分类家族:二分类.多分类.多标签分类.多输出分类 目录 分类家族:二分类.多分类.多标签分类.多输出分类 二分类

  3. 如何用softmax和sigmoid来做多类分类和多标签分类

    首先,说下多类分类和多标签分类的区别 多标签分类: 一个样本可以属于多个类别(或标签),不同类之间是有关联的,比如一个文本被被划分成"人物"和"体育人物"两个标 ...

  4. 机器学习之深度学习 二分类、多分类、多标签分类、多任务分类

    多任务学习可以运用到许多的场景. 首先,多任务学习可以学到多个任务的共享表示,这个共享表示具有较强的抽象能力,能够适应多个不同但相关的目标,通常可以使主任务获取更好的泛化能力. 此外,由于使用了共享表 ...

  5. 多标签分类_多标签分类文献阅读(8)

    使用堆叠式自动编码器和极限学习机的级联进行多标签分类 摘要 本文介绍了用于多标签数据分类的一系列神经网络.两种类型的网络,即堆叠式自动编码器(SAE)和极限学习机(ELM)已被合并到建议的系统中.EL ...

  6. 文本多标签分类python_Scikitlearn多标签分类

    我正在尝试使用Scikit学习来学习文本的多标签分类,我正在尝试调整Scikit附带的一个初始示例教程,用于使用wikipedia文章作为培训数据对语言进行分类.我试图在下面实现这一点,但代码仍然为每 ...

  7. 二分类、多分类和多标签分类

    1.基本概念 二分类:表示分类任务中有两个类别,比如我们想识别一幅图片是不是猫.也就是说,训练一个分类器,输入一幅图片,用特征向量x表示,输出是不是猫,用y=0或1表示.二类分类是假设每个样本都被设置 ...

  8. One-Error多标签分类_多分类及多标签分类算法

    一.单标签多分类 1.单标签二分类算法原理 1.单标签二分类这种问题是我们最常见的算法问题,主要是指label 标签的取值只有两种,并且算法中只有一个需要预测的label标签: 直白来讲就是每个实例的 ...

  9. 多标签分类方法总结——实现方法、评价指标、损失函数

    目录 一.两种思想总结 1.问题转换 2.算法改编 二.深度网络多标签分类 三.多标签分类评价指标 四.多标签分类的损失函数 1.二分类和多分类 2.多标签分类 五.参考文章 注:本文为总结性文章,应 ...

最新文章

  1. 爱逛街的爱购物的看看哦
  2. linux script $,linux的script命令
  3. prototype极速应用1
  4. mysql添加表字段_mysql命令添加表字段
  5. 面试官 | 什么是 Lambda?该如何使用?
  6. python同时注释多行代码_python怎么同时对多行代码进行注释
  7. linux mysql安装及密码相关问题(2)和navicat整合连接
  8. MQTT 控制报文 - SUBSCRIBE订阅报文,SUBACK,UNSUBSCRIBE,UNSUBACK - 第5章
  9. git学习(二)查看log历史记录
  10. 0.05‱的人生赢家!我们昨天仰视的学霸,今天又成了千亿富豪!
  11. 蚁群算法原理及python实现
  12. matlab三相逆变电路仿真,matlab三相逆变电路设计与仿真介绍.doc
  13. 51单片机蜂鸣器演奏《我和我的祖国》
  14. 前端传参日期只有年月日,后台给日期设置23时59分59秒和0时0分0秒
  15. linux443端口无法建立连接,无法通过端口443连接到ssh
  16. 未来已来,云上安全SaaS化势不可挡
  17. windows系统切换用户(通过cmd切换用户)
  18. 停止使用 IE 11,微软将用 Edge 全面替换 IE
  19. MySQL 报错:Could not acquire management access for administration 不能正确登录怎么办?
  20. vue-router路由有几种模式?说说它们的区别?

热门文章

  1. 计算机中year函数怎么使用,在excel中year函数的使用方法
  2. 软件保护工具VMProtect将许可系统集成到应用程序(7)——黑名单中的序列号
  3. html页面实现视频播放器,实现简易html视频播放器的方法
  4. 【Three.js】雪花圣诞树
  5. 社群运营:社群管理的分级分层,最好的管理机制
  6. 线上AUC与线下AUC
  7. 【机器学习实战】KNN算法的两个经典例子(电影类型判断,约会网站的改进)
  8. 基于冲突搜索的多机器人路径规划(Matlab代码实现)
  9. Eslint 配置及规则说明
  10. 计算机网络几种常见的协议