python使⽤imbalanced-learn的RandomOverSampler⽅法
进。。。
python使⽤imbalanced-learn的RandomOverSampler⽅法进⾏上采样处理数据不平衡问题
机器学习中常常会遇到数据的类别不平衡(class imbalance),也叫数据偏斜(class skew)。以常见
的⼆分类问题为例,我们希望预测病⼈是否得了某种罕见疾病。但在历史数据中,阳性的⽐例可能很低(如百分之0.1)。在这种情况下,学习出好的分类器是很难的,⽽且在这种情况下得到结论往往也是很具迷惑性的。
以上⾯提到的场景来说,如果我们的分类器总是预测⼀个⼈未患病,即预测为反例,那么我们依然有⾼达99.9%的预测准确率。然⽽这种结果是没有意义的,对于这种情况该如何去评估模型如何去训练模型或者调整数据集?
所谓的不平衡数据集指的是数据集各个类别的样本量极不均衡。以⼆分类问题为例,假设正类的样本数量远⼤于负类的样本数量,通常情况下通常情况下把多数类样本的⽐例接近100:1这种情况下的数据称为不平衡数据。不平衡数据的学习即需要在分布不均匀的数据集中学习到有⽤的信息。
为什么类不平衡是不好的
从模型的训练过程来看
从训练模型的⾓度来说,如果某类的样本数量很少,那么这个类别所提供的“信息”就太少。
random python使⽤经验风险(模型在训练集上的平均损失)最⼩化作为模型的学习准则。设损失函数为0-1 loss(这是⼀种典型的均等代价的损失函
数)&
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论