如何在验证集加噪声_噪声标签学习——DivideMix与SELF论文浅析

b2ff62dd91a506a0f21ae23e654cd415.png

对于监督学习来说,如何获取大量带有标签的数据无疑是一个关键的问题,人工标注的方式费时费力,而一些自动化的方式(比如直接利用社交网络上带有标签的图片)虽然可以快速得到海量的样本,但是却无法保证标签是准确的,往往会带有一些噪声,将这样的数据集直接用于DNN,会令模型对噪声样本过拟合,导致其泛化性能变差。因此,如果能够针对这个问题设计一个框架,使得它对含有噪声标签的数据集是鲁棒的,那么就能很好地减轻工业中的数据标注困难。

这次准备介绍的DivideMix和SELF两篇论文均来自于ICLR2020,它们各自从不同的角度解决了噪声标签的问题,接下来我们就开始对它们一一介绍。

DivideMix

核心思想:模型将它认为是噪声标签的样本分离出来,把它们作为无标签样本,然后用半监督学习(semi-supervised learning, SSL)来对有标签+无标签样本进行学习

Co-divide

首先是对于噪声样本的判别,这里用到了高斯混合模型(Gaussian Mixture Model, GMM),具体来说对于训练集样本

,权重参数为
的模型输出的softmax概率为
,那么其交叉熵损失为:

这样我们就得到了N个样本loss变量,我们认为这N个变量是由两个高斯分布的混合分布产生的,其中均值较大的那个分布是噪声样本,均值较小的是干净样本,那么接下来基于该设定,我们就可以根据每个样本的loss,分别求出它属于干净样本的概率

(可以用Expectation-Maximization, 即EM算法迭代计算,对这部分不了解同学可以看一下相关资料)。

得到

之后,我们就可以按照设定的阈值
将训练数据分为有标签和无标签两类,然后再用半监督学习的方法进行训练。然而,这样做会带来一个问题,那就是 confirmation bias——如果模型在最初的时候把噪声样本误划入干净样本中,那么在之后的训练过程中它就会对该错误的样本过拟合,使得模型在错误的道路上越走越远。也就是说,单独的模型用这样的方法会变得过度“自信”,因此我们在这里需要用 两个网络来协同划分(co-divide)数据,让一个网络为另一个网络划分数据,两个网络的参数、训练过程都不同,从而可以很好地缓解单个模型的过度“自信”现象。

Confidence Penalty

为了让模型收敛,我们需要在划分数据之前ÿ

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值