入门小菜鸟,希望像做笔记记录自己学的东西,也希望能帮助到同样入门的人,更希望大佬们帮忙纠错啦~侵权立删。
目录
一、问题定义
分类任务中不同类别的训练样本数目差别很大的情况。
二、问题的解决方案
1、解决方法引入
在线性分类器中,我们用对新样本进行分类时,我们是以一个阈值与预测的y值进行比较。通常我们选取0.5为阈值(认为真实正反例可能性相同),即:
时,预测为正例。
2、理想解决方案
但当训练集中正反例的数目不同时,观测几率为,其中
为正例数量,
为反例数量。通常我们假设训练集是真实样本总体的无偏采样,则观测几率代表真实几率。故有:
时,预测为正例,反之为反例。
即:,这就是类别不平衡学习中的一个基本策略“再缩放”(类似代价敏感学习
代替
,其中
为正类被误分为反类的代价)。
3、实际解决方案
上述解决方案成立的假设为“训练集是真实样本总体的无偏采样”,但这个假设不一定成立,即很难从观测几率中推出真实几率。
因此实际处理方案有以下这三种:
(1)直接对训练集里的反类样本进行欠采样,即去除一些反类样本,使正反类样本数量接近(可以进行多次随机欠采样,训练多个分类器,测试结果为这多个分类器的预测结果中最多的那类,这样丢失的信息就没有那么多)
(2)对训练集中的正类样本进行过采样,即增加一些正类样本,使正反类样本数量接近(过采样——可以采用对正类样本进行插值来产生额外的样本,不能单纯地重复样本,这样很容易过拟合)
(3)使用上面的理想解决方案——阈值移动
欢迎大家在评论区批评指正,谢谢啦~