机器学习05——多分类学习与类别不平衡(一对一、一对其余、多对多)
上一章:机器学习04——决策树
下一章:机器学习06——支持向量机
机器学习实战项目:【从 0 到 1 落地】机器学习实操项目目录:覆盖入门到进阶,大学生就业 / 竞赛必备
文章目录
- 一、多分类学习
- (一)一对一(One vs. One, OvO)
- (二)一对其余(One vs. Rest, OvR)
- (三)两种策略的比较
- (四)多对多(Many vs. Many, MvM)
- 二、类别不平衡问题
- (一)再缩放(Rescaling)
- (二)采样方法
- (三)阈值移动(Threshold-moving)
- (四)方法选择
一、多分类学习
多分类学习旨在解决类别数大于2的分类问题,核心思路是通过任务拆分将多分类问题转化为多个二分类问题,再集成二分类器的结果得到最终分类。常见的拆分策略包括一对一、一对其余和多对多。
(一)一对一(One vs. One, OvO)
- 任务拆分:将N个类别两两配对,生成N(N−1)/2N(N-1)/2N(N−1)/2个二分类任务(如类别C1C_1C1与C2C_2C2、C1C_1C1与C3C_3C3等),每个任务仅使用对应两个类别的样本训练分类器,最终得到N(N−1)/2N(N-1)/2N(N−1)/2个分类器。
- 测试阶段:将新样本输入所有分类器,每个分类器会判定样本属于两个类别中的一个,通过“投票”机制确定最终类别——被预测次数最多的类别即为结果。
- 特点:每个分类器的训练仅使用两个类的样本,训练时间较短,但需训练和存储的分类器数量多(如10个类别需45个分类器),存储和测试开销较大。
(二)一对其余(One vs. Rest, OvR)
- 任务拆分:为每个类别构建一个二分类任务,将该类别视为“正例”,其余所有类别视为“反例”,共生成N个二分类任务,训练得到N个分类器。
- 测试阶段:将新样本输入所有分类器,每个分类器会输出样本属于其对应“正例”类别的置信度,选择置信度最大的类别作为最终结果。
- 特点:分类器数量少(N个),存储和测试开销小,但每个分类器的训练需使用全部样本(正例少、反例多),训练时间较长,且可能因类别不平衡影响单个分类器性能。
(三)两种策略的比较
- 性能:在多数情况下,OvO和OvR的预测性能相近,具体取决于数据分布。
- 效率:OvO的训练时间更短(单个分类器样本少),但存储和测试开销更大;OvR则相反,适合类别数较多的场景。
(四)多对多(Many vs. Many, MvM)
- 核心思想:通过预设的“类别子集”划分任务,每个任务将一部分类别作为正例,另一部分作为反例(如利用纠错输出码机制,为每个类别分配唯一的二进制编码,通过多个二分类器学习编码的每一位)。
- 特点:能更好地利用类别间的关联信息,抗噪声能力较强,但任务设计较复杂,实际应用中不如OvO和OvR广泛。
二、类别不平衡问题
类别不平衡指训练集中不同类别的样本数量相差悬殊(如正例仅占10%,反例占90%),可能导致分类器偏向多数类,忽视少数类。常见解决方法包括再缩放、采样和阈值移动。
(一)再缩放(Rescaling)
- 原理:基于贝叶斯决策理论,调整分类阈值。对于二分类问题,若正例先验概率为p+p_+p+、反例为p−p_-p−,最优决策应满足y1−y>p−p+\frac{y}{1-y} > \frac{p_-}{p_+}1−yy>p+p−(其中yyy为样本属于正例的预测概率)。当训练集类别不平衡时(如正例样本数m+m^+m+、反例m−m^-m−),可用m−m+\frac{m^-}{m^+}m+m−近似p−p+\frac{p_-}{p_+}p+p−,调整决策阈值。
(二)采样方法
- 欠采样(Undersampling):通过移除部分多数类(反例)样本,使正反例数量接近。例如EasyEnsemble算法,多次随机采样多数类样本与少数类组成训练集,训练多个分类器后集成,避免因单次采样丢失重要信息。
- 过采样(Oversampling):通过增加少数类(正例)样本,平衡类别比例。例如SMOTE算法,基于少数类样本的近邻生成“虚拟样本”,避免简单复制样本导致的过拟合。
(三)阈值移动(Threshold-moving)
- 原理:不改变训练数据,直接调整分类器的决策阈值。例如,当正例样本少而反例多时,降低正例的判定阈值(如将默认的0.5调整为0.3),使分类器更“容易”将样本判定为正例,从而平衡对少数类的识别率。
(四)方法选择
- 小规模数据集优先考虑过采样(避免信息丢失);
- 大规模数据集可采用欠采样(减少计算开销);
- 阈值移动常与采样结合使用,进一步优化分类器对少数类的敏感性。
上一章:机器学习04——决策树
下一章:机器学习06——支持向量机
机器学习实战项目:【从 0 到 1 落地】机器学习实操项目目录:覆盖入门到进阶,大学生就业 / 竞赛必备