逻辑回归做二分类任务有个基本假设,那就是不同类别额训练样本数目相当。如果差别很大,训练出来的学习器将没有价值。毕竟只要输出占比多的结果,正确率就不会太低。
再缩放
用m+表示正例数目,m-表示负例数目,则观测几率是m+/m-
在“训练集是真实样本总体的无偏采样”的前提下,观测j几率可以代表真实几率
所以进行rescaling
通常采用的是,直接基于原始训练集进行学习,在预测前,把该式嵌入到决策过程中,这称为阈值移动(threshold-moving)
欠采样
假如反例100W个,正例100个
**思路一:**我们直选出100个正例和100负例训练。
优点:开销小。缺点:可能丢失丢失信息
**思路二:**利用集成学习,将反例划分为若干个集合,供不同学习器使用,对每个学习器来看是进行了欠采样,但对于全局来讲不会丢是重要信息。
过采样
通过一些方法使正反例数目接近。
注意,不能简单地对正例样本重复采样,会过拟合。
可以采用SMOTE数据生成策略
就是对每一个少类样本点,首先找到离其最近的同类样本,然后在他们的距离上取0-1之间随机数作为比例,加到原始数据点上。
主要过程:
1.对于少类样本x,以欧氏距离为标准,得到其近邻样本
2.根据样本不平衡比例确定采样倍率N,对于每一个少数样本x,从其近邻开始一次选择N个样本
3.对于每个新样本,按照如下公式构建样本数据