不均衡数据集的处理

1. 数据方面(aspect of data)

  • 降采样(Down sampling) & 多采样(Up sampling) [重复(Repeat) /数据增强(Augmentation)]
    • Rotation / Perspective / Translation / Scale / Noise / Blur / Occlusion / Color / Brightness / …
  • GAN网络的使用

2. 损失函数方面(aspect of loss)

2.1 加权交叉熵损失函数(Weight Cross Entropy Loss)

  • 对交叉熵损失函数加权,针对数据本身类别做均衡
  • 公式
    不均衡数据集的处理_第1张图片
2.1.1 交叉熵损失函数(Cross entropy)
  • 交叉熵损失函数用于二分类损失函数的计算,其公式为:
    cressEntroy1.png

  • 其中y为真值,y’为估计值.当真值y为1时,
    crossEntropy2.png
    函数图形:
    不均衡数据集的处理_第2张图片
    可见此时y’越接近1损失函数的值越小,越接近0损失函数的值越大.

  • 当真值y为0时,
    crossEntropy4.png
    函数图形:
    不均衡数据集的处理_第3张图片
    可见此时y’越接近0损失函数的值越小,越接近1损失函数的值越大.

损失函数应用计算及其应用代码详解可参考这里

2.2 Focal Loss

  1. 针对样本本身的训练难易程度做均衡,更加关注难训练的样本

样本分类

  • 正样本:
    则是我们想要正确分类出的类别所对应的样本,例如,我们要对一张图片进行分类,以确定其是否属于汽车,那么在训练的时候,汽车的图片则为正样本
  • 负样本:
    原则上可以选取上个例子任何不是汽车的其他图片,
    不均衡数据集的处理_第4张图片
    正常样本比例为:
    正难训练样本 > 负难训练样本 > 正易训练样本 > 负易训练样本
  1. 公式

不均衡数据集的处理_第5张图片

  • 公式是Focal Loss的计算方法。pt是不同类别的分类概率,r是个大于0的值,at是个[0,1]间的小数,r和at都是固定值,不参与训练。从表达式可以看出:
    • 无论是前景类还是背景类,pt越大,权重(1-pt)r就越小。也就是说简单样本可以通过权重进行抑制;
    • at用于调节正样本和负样本的比例,前景类别使用at时,对应的背景类别使用1-at
  • r和at的最优值是相互影响的,所以在评估准确度时需要把两者组合起来调节。作者在论文中给出r=2、at=0.25时,ResNet-101+FPN作为backbone的结构有最优的性能。

最后

原文链接

你可能感兴趣的:(深度学习,数据处理)