模型优化的熵与不平衡学习

模型优化的熵与不平衡学习

在统计机器学习里,我们经常会遇到一个数据分布不平衡的问题,在我们训练这种数据的时候,往往都会发现分类器会倾向于样本多的那一类,所以说在统计机器学习里,也是会遵循少数服从多数原则的。

不平衡学习,是统计机器学习里非常常见的一类问题,而不平衡学习所反映出来的优化模型的倾向,也说明了现在的机器学习,本质上就是一种数据拟合,哪类的数据多,那么模型就会偏向于数据多的那类,不平衡学习往往也是因为有的数据不容易收集,有的数据又非常冗余,比如我们常见的图像分类问题,有些图像非常常见,有些图像却很少见,这就会导致每个类别的样本量不一样。

我们先以简单的二分类问题为例来看看不平衡学习的问题,分类问题,我们一般都会用交叉熵来建立损失函数, 假设一共有 m m m 个样本,则总的损失函数可以写成:

L = − ∑ i = 1 m ( y log ⁡ p + ( 1 − y ) log ⁡ ( 1 − p ) ) L = - \sum_{i=1}^{m} ( y \log p + (1 - y) \log (1 - p)) L=i=1m(ylogp+(1y)log(1p))

一般情况下,我们假设 y = 1 y=1 y=1 表示正样本, y = 0 y=0 y=0 表示负样本,如果正负样本数量差不多一致,则两者在损失函数中占的比重是差不多的,模型优化的时候,会取一个比较平衡的分类面,如果正样本很少,而负样本很多,比如正负样本是 1:1000, 1个正样本,对应 1000 个负样本,前面我们说过,数据拟合,是朝着熵减小的方向拟合,现在我们有 1000 个负样本,而只有 1 个正样本,我们看看正负样本的 loss,假设正负样本预测错误的概率是一样的,比如说都是 0.1,也就是说我们有 10% 的概率会预测错误,那么 1000 个负样本就会有 100 个被预测错误,而 1 个正样本,最后其实也只有 0.1 个被预测错误,所以这种情况下,如果模型取得一个折中的分类面的话,也就是说对正负样本预测错误的概率大致一样,那么整个系统的熵其实是很大的,那么为了保证系统的熵进一步减少,那么模型必然要保证对负样本的预测损失要远远小于正样本的预测损失,也就是说,负样本可能预测错误的概率要到千分之一,甚至更低,这种情况,最后也就造成模型倾向于预测成负样本,因为把正样本预测成负样本的熵,比把负样本预测成正样本的熵要低。

这也就是不平衡学习为什么容易倾向于样本多的那一类的原因。

那么,我们该如何减轻这种不平衡学习带来的模型倾向问题呢,我们还是要回到损失函数的熵来看,我们看上面的损失函数,发现正负样本的损失前面都有一个默认的系数 1,

L = − ∑ i = 1 m ( 1 × y log ⁡ p + 1 × ( 1 − y ) log ⁡ ( 1 − p ) ) L = - \sum_{i=1}^{m} ( 1 \times y \log p + 1 \times (1 - y) \log (1 - p)) L=i=1m(1×ylogp+1×(1y)log(1p))

这也就是我们常说的一种不平衡学习的技巧,通过改变损失的权重,来调整模型的倾向,还是以前面的例子来说,正负样本是 1:1000,那正样本损失在整个损失函数里的权重只有千分之一,为了提升正样本的损失权重,我们可以改变正样本损失前面的系数:

L = − ∑ i = 1 m ( α × y log ⁡ p + ( 1 − α ) × ( 1 − y ) log ⁡ ( 1 − p ) ) L = - \sum_{i=1}^{m} ( \alpha \times y \log p + (1-\alpha) \times (1 - y) \log (1 - p)) L=i=1m(α×ylogp+(1α)×(1y)log(1p))

假设我们取 α = 0.99 \alpha = 0.99 α=0.99,正负样本的损失权重比就是 99:1, 那么预测错误一个正样本的代价和预测错误 99 个负样本的代价是一样的,这就相当于一个正样本抵得上 99 个负样本,如果我们把系数再调大,那么损失函数就不敢轻易放弃这一个正样本了,这就像我们常说的,虽然数量少,但是分量重,所以说,少数服从多数是一种现象,还有一种现象就是真理掌握在少数人手里。

调整损失权重,是一种抑制模型不平衡倾向的方式,另外一种方式,就是增加数量,这就可以用到我们常说的数据增广,正样本不是数量少吗,那我七十二变,变出很多的正样本来,让损失函数不敢轻易偏心。

数据拟合的本质是朝着熵减少的方向去拟合,在不平衡学习中,模型容易倾向于样本量多的类别,因为这样可以保证系统的熵最小,但是这样带来的问题就是样本少的那个类别,可能就被忽略了。为了减少这种倾向,通常来说有两种策略,一种是改变权重,让样本少的类别损失权重变大,另外一种就是数据增广,或者重采样,让样本少的数据变得更多。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值