利用二分类学习器解决多分类问题(常用)
对问题进行拆分,为拆出的每个二分类任务训练一个分类器
对于每个分类器的预测结果进行集成以获得最终的多分类结果
(2)拆分策略
一对一(One vs. One, OvO)
一对其余(One vs. Rest, OvR)
多对多(Many vs. Many, MvM)
2. 多分类学习 – 一对一
一对一:one-against-one, or pairwise classification
设训练集数据共M个类,one-against-one方法是在每两个类之间都构造一个binary SVM。
对第i类数据和第j类数据,训练一个binary SVM,即求解下列二次规划问题。
测试阶段:投票策略(voting strategy)
每个binary SVM根据其决策函数对新数据xnew有一个预测(投票),以i类和j类之间binary SVM为例,若对xnew的预测为i类,则i类得票加1;否则j类加1;
最终得票最多的类别就是对xnew的预测;
若出现平票的情况,(虽然可能不是一个好方法),简单地选择索引较小的那个类别作为对xnew的分类。
3. 多分类学习 – 一对多余
****一对多:****one-against-all, or one-against-the-rest
对于每一个类,将其作为+1类,而其余M-1个类的所有样本作为-1类,构造一个binary SVM。
4. 一对多 VS 一对其余
一对一 | 一对其余 |
训练M(M-1)/2个分类器,存储开销和测试时间大 训练只用两个类的样例,训练时间短 | 训练M个分类器,存储开销和测试时间小 训练用到全部训练样例,训练时间长 |
预测性能取决于具体数据分布,多数情况下两者差不多
5. 多分类学习 – 多对多
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!