论文提出了更通用的特征相关噪声类别PMD,基于此类噪声构建了数据校准策略PLC来帮助模型更好地收敛,在生成数据集和真实数据集上的实验证明了其算法的有效性。论文提出的方案理论证明完备,应用起来十分简单,值得尝试 来源:晓飞的算法工程笔记 公众号
论文: Learning with Feature-Dependent Label Noise: A Progressive Approach
在大型数据集中,由于标签的歧义以及标注者的大意,错误的标注是不可避免的。由于噪声对有监督训练的影响很大,所以在实际应用中研究如何处理错误的标注是至关重要的。
一些经典方法对噪声进行独立同分布(i.i.d.)的假设,认为噪声与数据特征无关,有其自身的规律。这些方法要么直接预测噪声分布来分辨噪声,要么引入额外的正则项/损失项来分辨噪声。而另外一些方法则证明,常用的损失项本身就能够抵抗这些独立同分布的噪声,不需要关心。
这些方法虽然有理论保证,但实际中表现都不佳,因为独立同分布的噪声假设是不真实的。这意味着,数据集的噪声是多样的,而且与数据特征相关,比如外表模糊的猫有可能被误认为狗。在光线不足或遮挡的情况下,图片失去了重要的视觉分辨线索,很容易被误标注。为了应对这个现实中的挑战,应对噪声的处理方法不仅需要有效,其通用性也是十分必要的。
SOTA方法多数采用数据重新校准(data-recalibrating)的策略来适应各种各样的数据噪声,该策略逐步确认可信的数据或逐步校正标签,然后使用这些数据进行训练。随着数据集更加准确,模型的准确率也会逐渐提高,最终收敛到高准确率。该策略很好地利用了深度网络的学习能力,在实践中获得不错的效果。
但目前这些策略的内在机制都没有完备的理论证明,解释为何这些策略可以使得模型收敛到理想的状态。这意味着这些策略都是case by case的,需要很小心地调整超参数,难以通用。
基于上面的分析,论文定义了更为常见的PMD噪声族(Polynomial Margin Dimishing Noise Family),包含除了显而易见的错误之外的任意类型噪声,更符合现实场景。基于PMD噪声族,论文提出了有理论保证的数据校准方法,根据噪声分类器的置信度逐步校准数据的标签。流程如图1所示,先从高置信度的数据开始,使用噪声分类器的预测结果校准这些数据,然后使用校准后的数据提升模型,交替进行标签校准和模型提升直到模型收敛。
先定义一些数学符号,这里以二分类任务为例:
PMD噪声只将噪声函数$\tau$约束在特定的$\eta(x)$中间区域,区域内的噪声函数$\tau$的值多大都无所谓。这样的形式不仅能够覆盖特征无关的场景,也能泛化到之前的一些噪声研究的特定场景中。
PMD噪声的定义如上所示,$t0$可认为是左右两边的间隔(margin)。PMD条件只要求$\tau$的上界是多项式的并且在贝叶斯分类器置信的区域单调递减,而$\tau{0,1}(x)$和$\tau_{1,0}(x)$在${ x:|\eta(x)-\frac{1}{2}| < t_0 }$区域内可为任意值。
前面的PMD噪声描述可能比较抽象,论文提供了可视化图片来帮助大家理解:
基于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所示。
这一块是论文的核心,主要从理论的角度验证论文提出方法的通用性和正确性。这里我们就不继续讲解了,有兴趣的可以去看看原文,我们只需要知道这个算法的用法就够了。
数据集噪声问题目前还没有公开的数据集,所以需要生成数据集进行实验,论文主要在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)两种:
在实验的时候,部分实验会组合特征相关噪声和独立同分布噪声进行噪声数据集生成和实验,最后的验证标准取模型在验证集上的准确率。训练时,采用128 batch size、0.01学习率和SGD优化器,共训练180周期保证收敛,重复3次取均值和标准差。
PMD噪声测试,在35%和70%噪声程度下的性能对比。
混合噪声测试,在50%-70%噪声程度下的性能对比。
超参数对比实验。
在真实数据集上的性能对比。
论文提出了更通用的特征相关噪声类别PMD,基于此类噪声构建了数据校准策略PLC来帮助模型更好地收敛,在生成数据集和真实数据集上的实验证明了其算法的有效性。论文提出的方案理论证明完备,应用起来十分简单,值得尝试。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。