关于机器学习:PLC自动纠正数据集噪声来洗洗数据集吧-ICLR-2021-Spotlight

 论文提出了更通用的特色相干噪声类别PMD,基于此类噪声构建了数据校准策略PLC来帮忙模型更好地收敛,在生成数据集和实在数据集上的试验证实了其算法的有效性。论文提出的计划实践证实齐备,利用起来非常简略,值得尝试

起源:晓飞的算法工程笔记 公众号

论文: Learning with Feature-Dependent Label Noise: A Progressive Approach

  • 论文地址:https://arxiv.org/abs/2103.07756v3
  • 论文代码:https://github.com/pxiangwu/PLC

Introduction


 在大型数据集中,因为标签的歧义以及标注者的粗心,谬误的标注是不可避免的。因为噪声对有监督训练的影响很大,所以在理论利用中钻研如何处理错误的标注是至关重要的。
 一些经典办法对噪声进行独立同散布(i.i.d.)的假如,认为噪声与数据特色无关,有其本身的法则。这些办法要么间接预测噪声散布来分辨噪声,要么引入额定的正则项/损失项来分辨噪声。而另外一些办法则证实,罕用的损失项自身就可能抵制这些独立同散布的噪声,不须要关怀。
 这些办法尽管有实践保障,但理论中体现都不佳,因为独立同散布的噪声假如是不实在的。这意味着,数据集的噪声是多样的,而且与数据特色相干,比方表面含糊的猫有可能被误认为狗。在光线有余或遮挡的状况下,图片失去了重要的视觉分辨线索,很容易被误标注。为了应答这个事实中的挑战,应答噪声的解决办法不仅须要无效,其通用性也是十分必要的。
 SOTA办法少数采纳数据从新校准(data-recalibrating)的策略来适应各种各样的数据噪声,该策略逐渐确认可信的数据或逐渐校对标签,而后应用这些数据进行训练。随着数据集更加精确,模型的准确率也会逐步进步,最终收敛到高准确率。该策略很好地利用了深度网络的学习能力,在实践中取得不错的成果。
 但目前这些策略的外在机制都没有齐备的实践证实,解释为何这些策略能够使得模型收敛到现实的状态。这意味着这些策略都是case by case的,须要很小心地调整超参数,难以通用。

 基于下面的剖析,论文定义了更为常见的PMD噪声族(Polynomial Margin Dimishing Noise Family),蕴含除了不言而喻的谬误之外的任意类型噪声,更合乎事实场景。基于PMD噪声族,论文提出了有实践保障的数据校准办法,依据噪声分类器的置信度逐渐校准数据的标签。流程如图1所示,先从高置信度的数据开始,应用噪声分类器的预测后果校准这些数据,而后应用校准后的数据晋升模型,交替进行标签校准和模型晋升直到模型收敛。

Method


 先定义一些数学符号,这里以二分类工作为例:

  • 定义特色空间$\mathcal{X}$,数据$(x,y)$均从散布$D=\mathcal{X}\times\{0,1\}$采样而来。
  • 定义$\eta(x)=\mathbb{P}[y=1|x]$为后验概率,值越大代表正标签越显著,而值越小则代表负标签越显著。
  • 定义噪声函数$\tau_{0,1}(x)=\mathbb{P}=[\tilde{y}=1 | y=0, x]$和$\tau_{1,0}(x)=\mathbb{P}=[\tilde{y}=0 | y=1, x]$,其中$\tilde{y}$为谬误标签。假如数据$x$的实在标签为$y=0$,则有$\tau_{0,1}(x)$概率谬误地标注为1。
  • 定义$\tilde{\eta}(x)=\mathbb{P}[\tilde{y}=1|x]$为噪声后验概率。
  • 定义$\eta^{*}(x)=\mathbb{I}_{\eta(x)\ge\frac{1}{2}}$为贝叶斯最优分类器,当A为真时$\mathbb{I}_A=1$,否则为0。
  • 定义$f(x):\mathcal{X}\to [0,1]$为分类器打分函数,个别是网络的softmax输入。

Poly-Margin Diminishing Noise

 PMD噪声只将噪声函数$\tau$束缚在特定的$\eta(x)$两头区域,区域内的噪声函数$\tau$的值多大都无所谓。这样的模式不仅可能笼罩特色无关的场景,也能泛化到之前的一些噪声钻研的特定场景中。

 PMD噪声的定义如上所示,$t_0$可认为是左右两边的距离(margin)。PMD条件只要求$\tau$的上界是多项式的并且在贝叶斯分类器相信的区域枯燥递加,而$\tau_{0,1}(x)$和$\tau_{1,0}(x)$在$\{ x:|\eta(x)-\frac{1}{2}| < t_0 \}$区域内可为任意值。

 后面的PMD噪声形容可能比拟形象,论文提供了可视化图片来帮忙大家了解:

  • 图a是贝叶斯最优分类器的后果,即正确标签。从上面的$\eta(x)$曲线能够看出,两边数据的二分类概率差异较大,是容易辨别的。而两头的数据的二分类概率比拟靠近,有较大的误标注的可能,也是咱们须要重点关注的。
  • 图b是平均噪声,该噪声认为误分概率与特色无关,每个数据点都有雷同的概率被误分。上图中彩色的是被认为是正确的数据,红色则是被认为属于噪声的数据,能够看到,通过平均噪声解决后,数据分布比拟乱。
  • 图c是BCN噪声,噪声值随着$\eta^{*}(x)$的相信而降落。从上图能够看出,解决后的噪声数据根本都落在两头区域,也就是容易误辨认的中央。但因为BCN噪声的边界与$\eta^{*}(x)$高度相干,而实际中个别要用模型的输入来近似$\eta^{*}(x)$,在噪声水平较大的场景显然会有较大的出入。
  • 图d是PMD噪声,束缚噪声在$\eta^{*}(x)$的两头区域,区域内的噪声值随便。这样做的益处在于,能够通过调控区域大小来应答不同的噪声水平,只有不是不言而喻的谬误都能够(即在$\eta$较高和较低的中央标注谬误)实用。从上图能够看出,解决后的洁净数据根本都散布在两边,也就是比拟相信的中央。

The Progressive Correction Algorithm

 基于PMD噪声,论文提出逐渐训练和纠正标签的PLC(Progressive Label Correction)算法。该算法首先应用原数据集进行warm-up阶段的训练,失去一个尚未拟合噪声的初步网络。接着,应用warm-up失去的初步网络对高置信度的数据进行标签的纠正,论文认为(也实践证实了)噪声分类器$f$的高置信度预测能与贝叶斯最优分类器$\eta^{*}$保持一致。
 纠正标签时,先抉择一个高阈值$\theta$。如果$f$预测标签跟标注标签$\tilde{y}$不同且预测置信度高于阈值,即$|f(x)-1/2|>\theta$,则将$\tilde{y}$纠正为$f$的预测标签。反复进行标签的纠正以及用纠正的数据集进行模型的从新训练,直到没有标签被纠正为止。
 接着,略微升高阈值$\theta$,应用升高的阈值进反复上述的步骤,直到模型收敛。为了不便前面的实践剖析,论文定义了一个间断递增阈值$T$,让$\theta=1/2-T$,具体逻辑如算法1所示。

  • Generalizing to the multi-class scenario

     下面的形容都是二分类的场景,在多分类场景中,先定义$f_i(x)$为分类器对标签$i$的预测概率,$h_x=argmax_if_i(x)$为分类器预测的标签。将$|f(x)-\frac{1}{2}|$的判断批改为|$f_{h_x}(x)-f_{\tilde{y}}(x)|$,当后果大于阈值$\theta$时,将标签$\tilde{y}$批改为标签$h_x$。在实际过程中,将差值判断加上对数会更加鲁棒。

Analysis


 这一块是论文的外围,次要从实践的角度验证论文提出办法的通用性和正确性。这里咱们就不持续解说了,有趣味的能够去看看原文,咱们只须要晓得这个算法的用法就够了。

Experiment


 数据集噪声问题目前还没有公开的数据集,所以须要生成数据集进行试验,论文次要在CIFAR-10和CIFAR-100上进行数据生成和试验。先在原数据上训练一个网络,用该网络的预测概率近似实在的后验概率$\eta$。基于$\eta$从新采样数据$x$的标签$y_x\sim\eta(x)$作为洁净数据集,后面训练失去的网络作为贝叶斯最优分类器$\eta^{*}:\mathcal{X}\to\{1,\cdots,C\}$,其中$C$为类别数。须要留神的是,多类别场景中,$\eta(x)$输入为向量,$\eta_i(x)$对应向量的第$i$个元素。
 对于噪声的生成,有特色相干噪声和独立同散布噪声(i.d.d)两种:

  • 对于特色相干噪声,为了减少噪声的挑战难度,每个数据$x$依据噪声函数均可能从最高相信分类$u_x$变为第二相信分类$s_x$,其中噪声函数与$\eta(x)$的概率相干。$s_x$对于$\eta^{*}(x)$是混同度最高的类别,最能影响模型的性能。另外,因为$y_x$是从$\eta(x)$采样而来的,是置信度最高的类别,所以可认为$y_x$就是$u_x$。总体而言,对于数据$x$,生成数据时要么变为$s_x$,要么放弃$u_x$。特色相干噪声有以下三种PMD噪声族内的噪声函数:

    因为$\eta(x)$是无奈批改的,为了可能管制噪声水平,惟一能做的就是为噪声函数$\tau_{u_x,s_x}$加上常量因子,使得最终的噪声比例合乎预期。对于PMD噪声,35%和70%的噪声水平即代表35%和70%的洁净数据被批改成噪声。
  • 独立同散布噪声通过构建噪声转换矩阵$T$来进行标签的批改,其中$T_{ij}=P(\tilde{y}=j|y=i)=\tau_{ij}$为实在标签$y=i$转换为标签$j$的概率。对于标签为$i$的数据,将其标签批改为从矩阵$T$的第$i$行的概率分布采样而来的标签。论文采纳了常见两种独立同散布噪声:1)平均噪声(Uniform noise),实在标签$i$转换成其它标签的概率雷同,即$T_{ij}=\tau/(C-1)$,其中$i\ne j$,$T_{ii}=1-\tau$,$\tau$为噪声水平。2)非对称噪声(Asymmetric noise),实在标签$i$有概率$T_{ij}=\tau$概率转换成标签$j$,或$T_{ii}=1-\tau$概率放弃不变。

 在试验的时候,局部试验会组合特色相干噪声和独立同散布噪声进行噪声数据集生成和试验,最初的验证规范取模型在验证集上的准确率。训练时,采纳128 batch size、0.01学习率和SGD优化器,共训练180周期保障收敛,反复3次取均值和标准差。

 PMD噪声测试,在35%和70%噪声水平下的性能比照。

 混合噪声测试,在50%-70%噪声水平下的性能比照。

 超参数比照试验。

 在实在数据集上的性能比照。

Conclusion


 论文提出了更通用的特色相干噪声类别PMD,基于此类噪声构建了数据校准策略PLC来帮忙模型更好地收敛,在生成数据集和实在数据集上的试验证实了其算法的有效性。论文提出的计划实践证实齐备,利用起来非常简略,值得尝试。



如果本文对你有帮忙,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理