当前位置:   article > 正文

Deep Self-Learning From Noisy Labels_self traing自训练与噪音标签

self traing自训练与噪音标签

全文翻译如下:

摘要

卷积神经网络在从干净数据中训练时取得了不错的效果,但是从噪声标签中学习会显著降低性能,并且仍然具有挑战性。不同于以往的工作受到很多条件的限制,使其无法适用于真实的噪声情况,本文提出了一种新颖的深度自学习框架,在没有额外监督的情况下,在真实的噪声数据集上训练一个鲁棒的网络。所提出的方法有几个有吸引力的好处。( 1 )与大多数现有工作不同,它不依赖于噪声标签分布的任何假设,使得它对真实噪声具有鲁棒性。( 2 )不需要额外的清洁监督或辅助网络来帮助培训。( 3 )提出了一种自学习框架,以端到端迭代的方式训练网络,具有有效性和高效性。在Clothing1M和Food101 - N等具有挑战性的基准测试中进行的大量实验表明,我们的方法在所有经验设置中都优于同类方法。

1 .引言

深度神经网络( Deep Neural Networks,DNNs )在图像识别[ 13、33、34]、语义分割[ 22、40、24]、目标检测[ 5、30、27、18]和跨模态任务[ 20、21、41]等计算机视觉任务上取得了令人印象深刻的效果。然而,其中许多任务需要具有可靠且干净标注的大规模数据集来训练DNN,如Image Net [ 2 ]和MS - COCO [ 19 ]。但是,收集具有精确标注的大规模数据集是昂贵和耗时的,这阻碍了DNNs在现实世界中的应用。而且,大多数"真实标注"来自人工标注者,他们也会犯错误,增加数据的偏见。
另一种解决方案是通过使用不同的图像级标签作为查询从互联网上收集数据。这些标签可以看作是采集图像的标签。这种解决方案比人工标注更便宜、更省时,但收集到的标签可能包含噪声。大量的前期工作表明,噪声标签导致DNNs [ 38,23,26]的性能明显下降。因此,如何提高DNN对噪声标签的鲁棒性成为研究热点。
以往的方法试图通过在损失函数中引入一个转移矩阵[ 25、9]来校正噪声标签,或者通过增加额外的层来估计噪声[ 6、32]。这些方法大多遵循一个简单的假设来简化问题:噪声标签和真实标签之间存在一个单一的转移概率,并且这个概率与个体样本无关。但在实际情况中,每个样本的出现与否对其能否被错误分类影响很大。由于这个假设,虽然这些方法在手工制作的噪声数据集(如CIFAR10 [ 12 ] )上效果很好,但在真实的噪声数据集(如Clothing1M [ 38 ]和Food101 - N [ 15 ] )上表现有限。
此外,噪声容忍损失函数[ 35、39]已被开发用于对抗标签噪声,但它们与上述噪声校正方法有类似的假设。因此,它们对于现实世界的噪声数据集也是不可行的。不仅如此,[ 15、17、37]的许多方法都是通过增加监督来解决这个问题。例如,他们中的一些人手动选择了一部分样本,并要求人工标记来清理这些嘈杂的标签。通过使用额外的监督,这些方法可以提高深度网络对噪声的鲁棒性。这些方法的主要缺点是需要额外的干净样本,使得它们在大规模的现实世界场景中应用成本很高。
其中,Clean Net [ 15 ]在真实数据集如Clothing1M [ 38 ]上取得了目前最好的性能。CleanNet使用"类原型" (即具有代表性的样本)来表示每个类类别,通过与原型的比较来判断样本的标签是否正确。然而,CleanNet也需要额外的信息或监督来训练。
为了解决上述问题,我们提出了一种新颖的多原型自学习( Self-Learning with Multi- Prototypes,SMP )框架,旨在在没有额外监督的真实噪声数据集上训练一个鲁棒的网络。通过观察同一噪声类别中样本的特征,我们猜测这些样本具有广泛分布。单一的类原型很难代表一个类别的所有特征。应该使用更多的原型来获得更好的特征表示。图1展示了案例并在实验中进行了进一步的探索。此外,额外的信息(监督)在实践中并不一定可用。
提出的SMP以迭代的方式训练,包含两个阶段:第一阶段是用第二阶段生成的原始噪声标签和修正标签训练网络。第二阶段利用第一阶段训练好的网络选择若干原型。这些原型用于生成第一阶段的校正标签。该框架不依赖于对噪声分布的任何假设,这使得它对现实世界的噪声是可行的。它也不使用辅助神经网络,也不需要额外的监督,提供了一种有效且高效的训练方案。
本文的主要贡献如下。( 1 )我们提出了一个迭代学习框架SMP来重打标号噪声样本,并在真实的噪声数据集上训练ConvNet,而不使用额外的干净监督。重打标号ing和训练阶段都只包含一个ConvNet,可以跨不同阶段共享,使得SMP有效且高效地进行训练。( 2 ) SMP从噪声数据中学习得到了有趣的发现。例如,与以前的工作[ 15 ]不同,我们证明了单个原型可能不足以表示噪声类。通过为一个类别抽取多个原型,我们证明了更多的原型会得到一个类别更好的表示,从而获得更好的标签校正结果。( 3 )大量实验验证了SMP在不同真实噪声数据集上的有效性。我们在所有这些数据集上展示了最新的性能。

在这里插入图片描述

见图1。利用不同数量的原型解决两类分类问题的实例。左:原始数据分布。具有相同颜色的数据点属于同一类。右上角:每个类使用单个原型得到的决策边界。右下角:每个类由两个原型得到的决策边界。每个类的两个原型导致更好的决策边界。

2 .相关工作

**噪声数据上的学习。**卷积神经网络在使用干净数据进行训练时取得了巨大的成功。然而,卷积神经网络在对带有噪声标签[ 23、26]的数据进行训练时,性能不可避免地下降。人类标注者在亚马逊土耳其机器人[ 10 ]等网站上提供的标注也会引入偏见和错误标注。由于标注大规模的干净无偏数据集代价高昂且耗时长,因此许多工作致力于提高卷积神经网络在噪声数据集上训练的鲁棒性。大致可以概括为以下三个部分。
首先,转移矩阵被广泛用于捕捉噪声标签与真实标签之间的转移概率,即具有真实标签 y y y的样本有一定概率被误标记为噪声标签 y ~ \tilde{y} y~。苏赫巴托尔等人在[ 32 ]中增加了一个额外的线性层来建模真实标签和损坏标签之间的转换关系。帕特里尼等人[ 25 ]提供了一种损失修正方法,利用在噪声数据集上训练的深度网络来估计转移矩阵。利用[ 9 ]中干净标记数据的子集估计转移矩阵。上述方法均假设类间转移概率相同且与个体图像无关。因此,这些方法在人类有意创建的带有标签翻转的噪声数据集上表现良好,例如噪声版本的CIFAR10 [ 12 ]。然而,当这些方法应用于真实数据集如Clothing1M [ 38 ]时,由于上述假设不再成立,它们的性能受到了限制。
其次,另一个场景是探索对抗标签噪声的鲁棒损失函数。文献[ 4 ]探究了均匀标签噪声下不同损失函数的容忍度。Zhang和萨本久[ 39 ]发现平均绝对损失函数比交叉熵损失函数更鲁棒,但存在其他缺点。然后他们提出了一个新的损失函数,使两者都受益。然而,这些鲁棒损失函数存在一定的约束,使得它们在真实的噪声数据集上表现不佳。
第三,CleanNet [ 15 ]设计了一个额外的网络来决定标签是否有噪声。网络训练时每个样本的权重由CleanNet产生,以减少噪声标签在优化中的影响。Ren等[ 29 ]和Li等[ 16 ]尝试通过元学习解决噪声标签训练问题。一些基于课程学习的方法[ 7、11]也被开发用于对抗标签噪声。CNN - CRF模型由Vahdat [ 36 ]提出,用来表示噪声标签和干净标签之间的关系。然而,这些方法大多需要额外的干净样本作为额外的信息或者采用复杂的训练过程。相比之下,SMP不仅能在不使用额外的干净监督的情况下纠正有噪声的标签,还能以有效的端到端方式训练网络,在Clothing1M [ 38 ]和Food101 - N [ 15 ]基准测试集上都取得了最先进的性能。当附加少量信息时,SMP进一步提高了t时刻的精度
**通过伪标注进行自学习。**伪标记[ 3、35、14]属于自学习场景,常被用于半监督学习中,即数据集中有少量标记数据,大部分数据为无标记数据。在这种情况下,伪标注通过使用在有标签数据上预训练的模型的预测来给无标签数据。相比之下,当从噪声数据集中学习时,所有数据都有标签,但它们可能是不正确的。Reed等[ 28 ]提出联合训练噪声和伪标注。然而,文献[ 28 ]提出的方法过度简化了噪声分布的假设,导致了次优的结果。Joint Optimization [ 35 ]使用伪标注完全替代了所有标签。然而,文献[ 35 ]舍弃了原始噪声标签中的有用信息。在这项工作中,我们使用SMP预测伪标注,并在自学习方案中同时使用原始标签和伪标注训练深度网络。

我们的方法

**概述。**设 D \mathcal{D} D 为噪声标记数据集, D = \mathcal{D}= D= { X , Y } = { ( x 1 , y 1 ) , … , ( x N , y N ) } \{\mathbf{X}, Y\}=\left\{\left(\mathrm{x}_{1}, y_{1}\right), \ldots,\left(\mathrm{x}_{N}, y_{N}\right)\right\} {X,Y}={(x1,y1),,(xN,yN)},包含 N N N个样本, y i ∈ { 1 , 2 , … , K } y_{i} \in\{1,2, \ldots, K\} yi{1,2,,K}为图像$\mathbf{x}_{i} 对应的噪声标记。 对应的噪声标记。 对应的噪声标记。K 为数据集中的类别数。由于标签是有噪声的,它们将是不正确的,阻碍模型训练。为此,定义一个参数为 为数据集中的类别数。由于标签是有噪声的,它们将是不正确的,阻碍模型训练。为此,定义一个参数为 为数据集中的类别数。由于标签是有噪声的,它们将是不正确的,阻碍模型训练。为此,定义一个参数为\theta$的神经网络 F ( θ ) \mathcal{F}(\theta) F(θ),将图像 x \mathrm{x} x转换为标签概率分布 F ( θ , x ) \mathcal{F}(\theta, \mathrm{x}) F(θ,x)。在干净标记的数据集上训练时,定义一个优化问题为
θ ∗ = argmin ⁡ θ L ( Y , F ( θ , X ) ) \theta^{*}=\operatorname{argmin}_{\theta} \mathcal{L}(Y, \mathcal{F}(\theta, \mathbf{X})) θ=argminθL(Y,F(θ,X))
其中, L \mathcal{L} L表示经验风险。然而,当 Y Y Y含有噪声时,上式的解将是次优的。当标签噪声存在时,以前所有提高模型鲁棒性的工作都可以视为调整方程中的项。( 1 ) .在本工作中,我们提出以自训练的方式获得校正后的标签 Y ^ ( X , X s ) \hat{Y}\left(\mathbf{X}, \mathbf{X}_{s}\right) Y^(X,Xs),其中 X s \mathbf{X}_{s} Xs表示一组类原型来表示类的分布。我们的优化目标为:
θ ∗ = argmin ⁡ θ L ( Y , Y ^ ( X , X s ) , F ( θ , X ) ) \theta^{*}=\operatorname{argmin}_{\theta} \mathcal{L}\left(Y, \hat{Y}\left(\mathbf{X}, \mathbf{X}_{s}\right), \mathcal{F}(\theta, \mathbf{X})\right) θ=argminθL(Y,Y^(X,Xs),F(θ,X))
虽然校正后的标签 Y ^ ( X , X s ) \hat{Y}\left(\mathbf{X}, \mathbf{X}_{s}\right) Y^(X,Xs)比原始标签 Y Y Y更精确,但我们认为仍有可能将硬样本误分类为噪声。因此,我们在上述目标函数中保留原始的噪声标签 Y Y Y作为监督的一部分。
图像 x i \mathbf{x}_{i} xi 的校正标签 y ^ i ( x i , X s ) ∈ Y ^ ( X , X s ) \hat{y}_{i}\left(\mathbf{x}_{i}, \mathbf{X}_{s}\right) \in \hat{Y}\left(\mathbf{X}, \mathbf{X}_{s}\right) y^i(xi,Xs)Y^(X,Xs) 由图像 x i \mathbf{x}_{i} xi 与原型集合 X s \mathbf{X}_{s} Xs之间的相似性度量给出。由于每个类别的数据分布复杂,单个原型很难代表整个类别的分布。我们声称使用多原型可以获得更好的分布表示,从而导致更好的标签校正。
在接下来的章节中,我们详细介绍了迭代自学习框架,其中一个深度网络从原始噪声数据集中学习,然后训练它来修正图像的噪声标签。修正后的标签将迭代地监督训练过程。

3 . 1 .迭代自学习

流水线。总体框架如图2所示。它包含两个阶段,训练阶段和标签校正阶段。在训练阶段,训练一个参数为 θ \theta θ的神经网络 F \mathcal{F} F,将图像 x \mathrm{x} x作为输入,产生相应的标签预测 F ( θ , x ) \mathcal{F}(\theta, \mathrm{x}) F(θ,x)。监督信号由两个分支组成,( 1 )图像 x \mathrm{x} x对应的原始噪声标签 y y y和( 2 )标签校正第二阶段产生的校正标签 y ^ \hat{y} y^
在标签校正阶段,利用第一阶段训练好的网络 G \mathcal{G} G提取训练集中图像的深层特征。然后我们探索了一种选择方案,为每个类选择若干个类原型。之后,我们根据原型的深层特征的相似性为每个样本修正标签。修正后的标签在第一个训练阶段作为监督的一部分。第一阶段和第二阶段迭代进行,直到训练收敛。

3 . 2 .训练阶段

训练阶段的流程如图2 ( a )所示。该阶段旨在优化深度网络 F \mathcal{F} F的参数 θ \theta θ。一般而言,目标函数为交叉熵损失的经验风险,由
L ( F ( θ , x ) , y ) = − 1 n ∑ i = 1 n log ⁡ ( F ( θ , x i ) y i ) \mathcal{L}(\mathcal{F}(\theta, \mathbf{x}), y)=-\frac{1}{n} \sum_{i=1}^{n} \log \left(\mathcal{F}\left(\theta, \mathbf{x}_{i}\right)_{y_{i}}\right) L(F(θ,x),y)=n1i=1nlog(F(θ,xi)yi)
式中 n n n为小批量尺寸, y i y_{i} yi为图像 x i \mathrm{x}_{i} xi对应的标签。在噪声数据集上学习时,原始标签 y i y_{i} yi可能是不正确的,因此我们引入另一个修正标签作为补充监督。校正后的标签由标签校正阶段的自训练方案产生。利用校正后的信号,目标损失函数为
L total  = ( 1 − α ) L ( F ( θ , x ) , y ) + α L ( F ( θ , x ) , y ^ ) \mathcal{L}_{\text {total }}=(1-\alpha) \mathcal{L}(\mathcal{F}(\theta, \mathrm{x}), y)+\alpha \mathcal{L}(\mathcal{F}(\theta, \mathrm{x}), \hat{y}) Ltotal =(1α)L(F(θ,x),y)+αL(F(θ,x),y^)
式中: L \mathcal{L} L为交叉熵损失,如式( n )所示。( 3 )式中, y y y 为原始噪声标签, y ^ \hat{y} y^为第二阶段产生的修正标签。权重因子 α ∈ [ 0 , 1 ] \alpha \in[0,1] α[0,1] 控制了两项的重要权重。
由于所提出的方法不需要额外的信息(通常通过使用另一个深度网络或额外的清洁监管产生),因此在训练之初,我们将 α \alpha α设置为0,只使用原始的噪声标签 y y y来训练网络 F \mathcal{F} F 。在初步训练好网络之后,我们可以进入第二阶段,得到修正后的标签( y ^ \hat{y} y^此时 α \alpha α 为正值,网络由 y y y y ^ \hat{y} y^共同训练,目标如式( 4 )所示。

3 . 3 .标签校正

阶段在标签校正阶段,我们旨在为训练集中的每张图像获得一个校正标签。这些修正后的标签将依次用于指导第一阶段的训练过程。
对于标签修正,第一步是为每个类别选择若干个类原型。受聚类方法[ 31 ]的启发,我们提出了以下方法来拾取这些原型。( 1 )利用第一阶段训练的初步网络提取训练集中图像的深层特征。在实验中,我们采用ResNet [ 8 ]架构,将全连接层之前的输出作为深度特征,记为 G ( x ) \mathcal{G}(\mathrm{x}) G(x)。因此, F ( θ , x ) \mathcal{F}(\theta, \mathrm{x}) F(θ,x) and G ( x ) \mathcal{G}(\mathrm{x}) G(x)的关系为 F ( θ , x ) = f ( G ( x ) ) \mathcal{F}(\theta, \mathrm{x})=f(\mathcal{G}(\mathrm{x})) F(θ,x)=f(G(x)),其中 f f f为ResNet全连接层上的操作。( 2 )为了选择第c类的类原型,我们提取了一组深度特征, { G ( x i ) } i = 1 n \left\{\mathcal{G}\left(\mathbf{x}_{i}\right)\right\}_{i=1}^{n} {G(xi)}i=1n,对应于具有相同噪声标签c的数据集中的一组图像 { x i } i = 1 n \left\{\mathbf{x}_{i}\right\}_{i=1}^{n} {xi}i=1n。然后,计算深度特征之间的余弦相似度,构造相似度矩阵 S ∈ R n × n , n \mathbf{S} \in \mathbb{R}^{n \times n}, n SRn×n,n为带有噪声标签 c c c S i j ∈ S S_{i j} \in \mathbf{S} SijS的图像数量
S i j = G ( x i ) T G ( x j ) ∥ G ( x i ) ∥ 2 ∥ G ( x j ) ∥ 2 S_{i j}=\frac{\mathcal{G}\left(\mathbf{x}_{i}\right)^{T} \mathcal{G}\left(\mathbf{x}_{j}\right)}{\left\|\mathcal{G}\left(\mathbf{x}_{i}\right)\right\|_{2}\left\|\mathcal{G}\left(\mathbf{x}_{j}\right)\right\|_{2}} Sij=G(xi)2G(xj)2G(xi)TG(xj)
式中: S i j S_{i j} Sij为两幅图像 x i \mathbf{x}_{i} xi x j \mathbf{x}_{j} xj的相似度度量。 S i j S_{i j} Sij 越大,说明两幅图像相似度越高。文献[ 31 ]和文献[ 7 ]都使用欧氏距离作为相似性度量,但我们发现余弦相似度是一种更好的修正标签的选择。实验中给出了欧氏距离和余弦相似度的比较。一个问题是单个类别中的图像数量 n n n是巨大的,例如对于Clothing1M, n = 70 k n=70 \mathrm{k} n=70k ,使得这个余弦相似矩阵 S \mathbf{S} S的计算非常耗时。此外,使用如此庞大的矩阵进行后期计算也是昂贵的。因此我们只需随机采样m幅同类别图像 ( m < n ) (m<n) (m<n)来计算相似度矩阵 S m × m \mathbf{S}^{m \times m} Sm×m,以减少计算量。为了选择原型,我们为每个图像 x i x_{i} xi定义一个密度 ρ i \rho_{i} ρi
ρ i = ∑ j = 1 m sign ⁡ ( S i j − S c ) \rho_{i}=\sum_{j=1}^{m} \operatorname{sign}\left(S_{i j}-S_{c}\right) ρi=j=1msign(SijSc)
其中 sign ⁡ ( x ) \operatorname{sign}(x) sign(x)为符号函数! . S c S_{c} Sc的值是由 S \mathrm{S} S中元素的值按从小到大的顺序排列在前 40 % 40 \% 40% 的元素的值给出的一个常数。我们发现 S c S_{c} Sc的具体选择对最终结果没有影响,因为我们只需要图像的相对密度。
**讨论。**由上述密度 ρ \rho ρ的定义可知, ρ \rho ρ越大的图像,其周围的相似图像越多。这些具有正确标签的图像应该彼此接近,而具有噪声标签的图像通常与其他图像隔离。标签正确图像和标签错误图像的概率密度 ρ \rho ρ如图3 ( a )所示。可以发现,标签正确的图像更可能出现较大的 ρ \rho ρ值,而标签错误的图像则出现在 ρ \rho ρ值较低的区域。也就是说,密度 ρ \rho ρ较大的图像在噪声数据集中有更高的概率具有正确的标签,可以作为原型来表示该类。如果一个类需要 p p p个原型,我们可以将密度值最高的top - p p p个图像作为类原型。
尽管如此,上述选择原型的策略有一个弱点,即如果选择的属于同一类别的 p p p个原型非常接近,那么这些 p p p个原型的代表能力就相当于只使用了单个原型。为了避免这种情况,我们进一步为每张图像 x i \mathbf{x}_{i} xi定义了一个相似性度量 η i \eta_{i} ηi
η i = { max ⁡ j , ρ j > ρ i S i j , ρ i < ρ max ⁡ min ⁡ j S i j , ρ i = ρ max ⁡ \eta_{i}=\left\{maxj,ρj>ρiSij,ρi<ρmaxminjSij,ρi=ρmax\right. ηi={maxj,ρj>ρiSij,minjSij,ρi<ρmaxρi=ρmax
其中 ρ max ⁡ = max ⁡ { ρ 1 , … , ρ m } \rho_{\max }=\max \left\{\rho_{1}, \ldots, \rho_{m}\right\} ρmax=max{ρ1,,ρm}.由 η \eta η的定义可知,对于密度值为 ρ max ⁡ ( ρ i = ρ max ⁡ ) \rho_{\max }\left(\rho_{i}=\rho_{\max }\right) ρmax(ρi=ρmax)的图像 x i \mathbf{x}_{i} xi,其相似性测度 η i \eta_{i} ηi最小。否则,对于 ρ i < ρ max ⁡ \rho_{i}<\rho_{\max } ρi<ρmax x i \mathbf{x}_{i} xi图像,相似度 η i \eta_{i} ηi定义为特征为 G ( x i ) \mathcal{G}\left(\mathbf{x}_{i}\right) G(xi)的图像 i i i与特征为 G ( x j ) \mathcal{G}\left(\mathbf{x}_{j}\right) G(xj)的图像 j j j之间的余弦相似度的最大值,其密度值大于 x i ( ρ j > ρ i ) \mathbf{x}_{i}\left(\rho_{j}>\rho_{i}\right) xi(ρj>ρi)
由上述定义可知,较小的相似度值 η i \eta_{i} ηi表示图像 i i i 对应的特征与密度 ρ \rho ρ大于它的其他图像不太接近。因此,具有高密度值 ρ \rho ρ (概率一个干净的标签)和低相似度值 η \eta η (一个干净的标签但是适度远离其他干净的标签)的样本可以满足我们作为类原型的选择标准。在实验中,我们发现密度ρ排名靠前的样本往往具有相对较小的相似度值 η \eta η
如图3 (b)所示,红点是密度 ρ \rho ρ 排名靠前的样品。超过80 %的样本 η > 0.9 \eta>0.9 η>0.9,半数样本 η > 0.95 \eta>0.95 η>0.95。所以这些红点的 η \eta η值相对较小,相互之间距离较远。这也证明了我们的观点,同一个类中的样本往往聚集在几个簇中,因此单个原型很难代表整个类,因此需要更多的原型。在实验中,我们选取 η < 0.95 \eta<0.95 η<0.95排名靠前的原型。
在这里插入图片描述
在对每个类选取原型之后,我们有一个原型集 { G ( X 1 ) , … , G ( X c ) , … , G ( X K ) } \left\{\mathcal{G}\left(\mathbf{X}_{1}\right), \ldots, \mathcal{G}\left(\mathbf{X}_{c}\right), \ldots, \mathcal{G}\left(\mathbf{X}_{K}\right)\right\} {G(X1),,G(Xc),,G(XK)} (以深层特征为代表),其中 X c = { x c 1 , … , x c p } \mathbf{X}_{c}=\left\{\mathbf{x}_{c 1}, \ldots, \mathbf{x}_{c p}\right\} Xc={xc1,,xcp}是第 c c c类选取的图像, p p p是每个类的原型个数, K K K是数据集中的类个数。给定一幅图像 x x x,计算提取的特征 G ( x ) \mathcal{G}(\mathrm{x}) G(x)与不同原型集 G ( X c ) \mathcal{G}\left(\mathbf{X}_{c}\right) G(Xc)之间的余弦相似度。第 σ c \sigma_{c} σc类的相似度得分 σ c \sigma_{c} σc计算为
σ c = 1 p ∑ l = 1 p cos ⁡ ( G ( x ) , G ( x c l ) ) , c = 1 … K \sigma_{c}=\frac{1}{p} \sum_{l=1}^{p} \cos \left(\mathcal{G}(\mathrm{x}), \mathcal{G}\left(\mathrm{x}_{c l}\right)\right), c=1 \ldots K σc=p1l=1pcos(G(x),G(xcl)),c=1K
式中: G ( x c l ) \mathcal{G}\left(\mathbf{x}_{c l}\right) G(xcl)为第 c c c类的第 l l l个原型。这里我们使用p个原型上的平均相似度,而不是最大相似度,因为我们发现来自所有原型的组合(投票)可能会防止将一些相似度几乎相同的困难样本误分类到不同的类。然后,我们得到修正后的标签 y ^ ∈ { 1 , … , K } \hat{y} \in\{1, \ldots, K\} y^{1,,K}
y ^ = argmax ⁡ c σ c , c = 1 … K \hat{y}=\operatorname{argmax}_{c} \sigma_{c}, c=1 \ldots K y^=argmaxcσc,c=1K
得到修正后的标签 y ^ \hat{y} y^后,将其作为互补监督信号在训练阶段训练神经网络 F \mathcal{F} F

3 . 4 .迭代自学习

如算法1所示,训练阶段和标签校正阶段迭代进行。训练阶段首先使用带有噪声标签 y y y的图像 x \mathrm{x} x训练一个初始网络,因为没有提供校正标签 y ^ \hat{y} y^。然后我们进入标签修正阶段。该阶段的特征提取器与训练阶段的网络 F \mathcal{F} F共享相同的网络参数。我们为每个类从噪声数据集中随机采样 m m m张图像并通过 F \mathcal{F} F提取特征,然后原型选择过程为每个类选择p个原型。通过计算图像 x \mathrm{x} x的特征 G ( x ) \mathcal{G}(\mathrm{x}) G(x)与原型之间的相似度,为每幅图像 x \mathrm{x} x赋予修正标签 y ^ \hat{y} y^。利用该修正后的标签 y ^ \hat{y} y^训练下一历元的网络 F \mathcal{F} F。上述过程不断迭代直至收敛。
在这里插入图片描述

在这里插入图片描述
见图2。举例说明迭代自学习框架在噪声数据集上的流水线。( a )显示训练阶段,( b )显示标签校正阶段,这两个阶段迭代进行。深度网络G可以共享,使得测试时只需要对单个模型进行评估。
在这里插入图片描述
见图3。( a )在Clothing1M数据集中,对来自同一噪声类别的1280幅图像,分别计算标签正确样本(蓝线)和标签错误样本(绿线)的概率密度 ρ \rho ρ。( b )相似度 η \eta η 与密度 ρ \rho ρ的分布.样本同( a ) .红色点为 ρ \rho ρ值最高的前8个样品。

4 .实验

数据集。我们使用两个具有挑战性的真实噪声数据集来评估我们的方法,Clothing1M [ 38 ]和Food101 - N [ 15 ]。( 1 ) Clothing1M [ 38 ]包含100万张衣服图像,分为14类。标签是由Web上图像的周围文本生成的,因此包含很多噪声。含噪标签准确率为61.54 %。将服装1M划分为训练集、验证集和测试集,分别包含50k、14k和10k张图像。人类注释者被要求清理一组25k个标签作为干净集。在我们的方法中,它们不需要在训练中使用。( 2 ) Food101-N [ 15 ]是用于分类食物的数据集。它包含101个类,从Web上搜索了310k张图片。带噪标签的准确率为80 %。在训练集中还提供了55k个验证标签(被人类清洁)。
**实验装置。**对于Clothing1M数据集,我们使用在ImageNet上预训练的ResNet50网络。数据预处理过程包括对短边为256的图像进行缩放,并从缩放后的图像中随机裁剪一个224 × 224的图像块。我们使用动量为0.9的SGD优化器。权重衰减因子为 5 × 1 0 − 3 5 × 10^{-3} 5×103,批次大小为128。初始学习率为0.002,每5个历元减少10个。总训练过程包含15个历元。在标签校正阶段,我们对噪声训练集中的每个类随机采样1280张图像,每个类挑选出8个类原型。对于Food - 101N,每10个历元学习率下降10,共30个历元。其他设置与Clothing1M相同。

4 . 1 . Clothing1M

根据前面的工作,我们采用以下三种设置。首先,只使用含噪数据集进行训练,在训练过程中不使用任何额外的干净监督。其次,提供了验证标签,但它们并不直接用于训练网络。在我们的方法中,它们被用来训练辅助网络[ 15 ]或帮助选择原型。第三,噪声数据集和50k干净标签均可用于训练。
我们比较了表1中的结果。我们发现,在第一种情况下,本文提出的方法比其他方法有更大的优势,例如将准确率从69.54 %提高到74.45 %,比Joint Optimization [ 35 ] ( # 3 )提高了2.22 %,比MLNT -教师[ 16 ] ( # 4 )提高了0.98 %。我们的结果甚至优于使用额外验证标签的# 6和# 7。
对于第二种情况,传统的交叉熵方法并不适用。文献[ 25 ]使用该信息估计转移矩阵,而CleanNet [ 15 ]使用验证标签训练一个额外的网络来预测标签是否有噪声。我们的方法利用这些信息来选择类原型。在这种情况下,与所有方法相比,我们仍然取得了最好的结果。
对于第三种情况,可以使用全部数据(既嘈杂又干净)进行训练。所有方法首先在含噪数据集上训练模型,然后在干净数据集上使用香草交叉熵损失对模型进行微调。我们看到我们的方法仍然优于其他方法。在这种情况下,CourseNet [ 7 ]提供了略好的结果( 81.5 % )。但是它与其他所有的骨干网相比使用了不同的骨干网,所以我们不考虑它。在所有这些情况中,我们的方法与以前的方法相比获得了先进的性能,表明我们的方法是有效的,适用于董事会的情况。

4 . 2 .消融研究

**标签校正精度。**我们探究了标签校正阶段的分类精度。表2列出了在原始噪声集中的总体精度:初始迭代周期(即在训练初步模型后,我们第一次进入标签修正阶段)中校正标签的精度,以及训练结束时( Final )最终模型校正标签的精度。可以看出,初始循环后的精度已经达到74.38 %,比原始精度提高了12.64 % ( 61.74 %比74.38 %)。训练结束时准确率进一步提高到77.36 %。
我们进一步探索了不同类别的分类准确率,如图4 ( a )所示。可以发现,对于大多数原始准确率低于50 %的类别,我们的方法可以将准确率提高到60 %以上。即使对于原始精度在30 %左右的第5类( ‘毛衣’),我们的方法仍然提高了10 %的精度。通过我们的方法成功校正的部分噪声样本如图5所示。
**类原型个数P。**类原型的数量是类表征能力的关键。当p = 1时,情况类似于CleanNet [ 15 ]。在我们的方法中,我们使用p≥1 .另一个不同之处在于,CleanNet通过训练一个额外的网络来获得原型。但是我们只需要根据数据分布,根据图像的密度和相似性来选择图像作为原型。
图4 ( b )展示了改变每类原型数量的效果。选取5个p值,评估仅使用1M含噪数据或增加25k个验证信息训练的最终测试精度,如实线所示。为了更好地观察p值带来的影响,我们通过模型进入第一个标签校正阶段来评估标签校正率,这与上一个实验中讨论的校正精度类似。但是这次我们在测试集上进行评估。这个度量容易评估,因此我们探索了从1到10的10个p值,如虚线所示。在比较这两种设定时,它们遵循相同的趋势。
从结果中,我们发现当p = 1时,即每个类有一个原型时,与其他类相比,精度是次优的。当使用更多的原型时,性能有很大的提高,例如使用两个原型的准确率比使用单个原型的准确率提高了2.04 %。这也证明了我们的观点,单个原型不足以表示类的分布。多个原型为类提供了更全面的表征。
权重因子 a l p h a alpha alpha
权重因子 a l p h a alpha alpha在训练过程中起着重要的作用,它决定了网络将集中于原始的噪声标签 Y Y Y或校正后的标签( Y Y Y )。若 α = 0 \alpha=0 α=0则只使用带噪标签训练网络,不进行修正。另一种极端情况是当 α = 1 \alpha=1 α=1时,训练过程丢弃了原始的噪声标签,仅依赖于修正后的标签。研究不同 a l p h a alpha alpha在0.0 ~ 1.0范围内的影响,不同 a l p h a alpha alpha的测试精度如图4 ( c )所示。
从结果中我们发现,仅使用带噪标签 Y Y Y α = 0 \alpha=0 α=0进行训练会导致较差的性能。虽然校正后的标签更精确,但仅使用校正后的标签( Y ^ \hat{Y} Y^ )训练的模型也表现次优。当 α = 0.5 \alpha=0.5 α=0.5时,使用原始带噪标签Y和校正标签( Y ^ \hat{Y} Y^ )联合训练的模型取得了最好的性能。准确率曲线也证明了我们的说法,即标签校正可能会把一些硬样本当作噪声。直接用修正后的标签替换所有的噪声标签,会使网络专注于简单特征,从而降低泛化能力。
**样本数M。**为了避免与相似度矩阵 S \mathbf{S} S相关的大量计算,我们随机选择m张图像而不是使用同一类中的所有图像来计算相似度矩阵。我们考察有多少样本足够选择类原型来很好地表示类分布。我们探究了图像数量m对每一类的影响。
结果列于表3。实验设置与上述实验类似,研究类原型的数量。分别在含噪数据集和含噪数据加额外验证标签的数据集上训练模型。结果为训练好的模型在测试集上的准确率。除了评估最终模型得到的分类精度外,我们还考察了刚进入第一个标签校正阶段的模型的校正精度,表中用’ Initial '表示。通过分析不同情况下的结果,我们看到性能对图像数量m不敏感。与Clothing1M中每类70k张训练图像相比,我们只需对其中的2 %进行采样,就可以得到类原型来很好地表示类的分布。
**原型选择。**为了探究用于选择原型的方法的影响,我们还使用了另外两种聚类方法得到原型。一种是基于欧氏距离的密度峰值[ 31 ],另一种是应用广泛的K - means算法,即K - means + + [ 1 ]。所有方法得到的原型被用来产生用于训练的修正标签。结果列于表4。我们看到用于生成原型的方法并没有很大程度上影响准确率,这意味着我们的框架对聚类方法并不敏感。但是本文提出的选择方法仍然表现优于其他方法。

4 . 3 .Food-101N

我们还在Food - 101N [ 15 ]数据集上评估了我们的方法。结果见表5。我们发现我们的方法在Food101N上也取得了最先进的性能,比CleanNet [ 15 ]高出1.16 %。

5 .结论

在本文中,我们提出了一个迭代自学习框架,用于在真实的噪声数据集上进行学习。我们证明了单个原型不足以代表一类的分布,多原型是必要的。我们还验证了我们的说法,原始的噪声标签在训练过程中是有帮助的,尽管修正后的标签更加精确。通过使用多个类原型对标签进行修正,并使用修正后的和原始的噪声对网络进行联合迭代训练,该工作提供了一个有效的端到端训练框架,而无需使用辅助网络或在真实的噪声数据集上添加额外的监督。我们在不同的真实噪声数据集上对方法进行评估,并获得了最先进的性能。

在这里插入图片描述
在这里插入图片描述
表2 .原始含噪数据集标签的总体标签准确率( % ) ( Original )、第1个迭代周期标签校正阶段生成的校正标签准确率( Right Initial )和训练结束时最终模型生成的校正标签准确率( Right Final )。
在这里插入图片描述

表3 .不同样本数的服装1M上的分类准确率( % ),用于为每个类别选择原型。final表示训练结束时模型得到的准确率。initial表示模型刚进入第一个标签校正阶段时的正确精度。

在这里插入图片描述

在这里插入图片描述
见图4。( a ) Clothing1M中每个类在原始数据集( Original )、第一个迭代循环中标签修正阶段修正的标签( Correction Initial )和训练结束时模型修正的标签( Correction Final )的标签准确率( % )。实线表示训练结束时( Final )模型得到的准确率。虚线表示模型第一次( Initial )进入标签校正阶段的正确精度。噪声是仅来自噪声数据集的训练结果,噪声+验证表示使用了额外的验证信息。( c )测试精度( % ),权重因子α范围为0.0 ~ 1.0。嘈杂和嘈杂+验证的含义与( b )相同。
在这里插入图片描述

见图5。样品经我们的方法校正。左:原始带噪标签。right:用我们的方法校正的正确标签。第一行来自Clothing1M,第二行来自Food101 - N。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/370161
推荐阅读
相关标签
  

闽ICP备14008679号