发布于: 2023-5-29最后更新: 2023-5-31字数 00 分钟

type
status
date
slug
summary
tags
category
icon
password

🤔 摘要

噪声标签学习(LNL)旨在确保模型在标签损坏的训练集中的泛化能力。在这项工作中,我们探讨了一个很少研究的LNL场景,即在细粒度数据集(LNL-FG)上进行LNL,这更加实用和具有挑战性,因为细粒度类别之间存在更大的类间模糊性,导致更多的噪声标签。我们通过实验证明,现有的适用于LNL的方法无法满足LNL-FG的要求,因此需要有效的解决方案。为此,我们提出了一种新的框架,称为随机噪声容忍监督对比学习(SNSCL),通过鼓励可区分的表示来解决标签噪声。具体而言,我们设计了一种噪声容忍的监督对比学习损失,它包含了一个权重感知机制来进行噪声标签修正,并选择性地更新动量队列列表。通过这种机制,我们缓解了噪声锚点的影响,避免将噪声标签插入到动量更新队列中。此外,为了避免在对比学习中手动定义增强策略,我们提出了一个高效的随机模块,从生成的分布中采样特征嵌入,这也可以增强深度模型的表示能力。SNSCL通用且兼容流行的鲁棒LNL策略,以提高其在LNL-FG任务上的性能。广泛的实验表明了SNSCL的有效性。

📝介绍

从噪声标签中学习[2,7,14,18,20,23,33,43,46]为深度模型的训练提出了巨大的挑战,由于深度模型的性能严重依赖于大规模带标签的数据集。对于一些领域,比如医疗和遥感图像[16,34],使用高置信度注释训练数据需要大量资源,因此标签噪声不可避免地会出现并显著降低深度模型的泛化性能。
之前在LNL中使用的方法 [ 1, 2, 7, 14, 20, 31, 42 ] 都着重于通用分类(如CIFAR-10&100),并通过人为构造随机标签噪声 [18,20,35,36] 或相关标签噪声 [7,14,31,42,43] 来评估算法的性能。在本工作中,我们将LNL扩展到细粒度分类,这是一个很少研究的任务。首先,由于细粒度图像之间具有难以区分的特征,注释者更容易被误导并给出不确定的目标,因此这种情况更加现实。图1展示了在通用集合和细粒度集合上模拟的两种噪声的比较。此外,我们广泛地研究了现有的LNL方法在我们提出的LNL-FG任务上的性能。详细结果如图2所示。尽管这些鲁棒算法使LNL的性能显著提高,但这种提高并未转移到LNL-FG任务上。相反,一些方法降低了与交叉熵相比深度模型的泛化性能。直观地讲,由于LNL-FG类别之间存在大的类间模糊性,用于细粒度任务中的有噪声样本和决策边界之间的边界在精细图像数据集中比通用数据集更小,导致深度模型对噪声标签的严重过拟合。从这个角度来看,我们认为鼓励区分特征不仅可以抵抗标签噪声的过拟合,还可以促进细粒度任务的学习。
因此, 作为一种强大的无监督学习方法,用于生成区分性特征[4,6,9,10,26],对比学习(CL)引起了我们的关注。CL方法通常设计目标函数作为监督学习,执行源自未标记数据集的预文本相似度测量任务,可以在下游任务中学习有效的视觉表示,特别是用于细粒度分类[3]。SCL [11]的后续工作利用标签信息进一步增强了表示学习,可以避免大量的训练批次并减少内存成本。然而,由于缺乏噪声容忍机制,SCL无法直接应用于噪声场景。
为了解决SCL的噪声敏感性,我们提出了一个新的框架,称为随机噪声容忍有监督对比学习(SNSCL),其中包含一个容忍噪声的对比损失和一个随机模块。对于容忍噪声的对比损失,我们将SCL的噪声敏感性粗略地分为动量队列中的噪声锚点和噪声查询键两部分。为了减轻由噪声锚点或查询键引入的负面影响,我们设计了一个权重机制来衡量每个样本的可靠性得分并给出相应权重。基于这些权重,我们修改当前训练批次中噪声锚点的标签,并选择性地更新动量队列,以降低噪声查询键的概率。这些操作是自适应的,可以实现渐进式学习过程。此外,为了避免手动调整SCL的强增强策略,我们提出了一个随机模块,用于更复杂的特征变换。在实践中,该模块生成特征嵌入的概率分布。通过采样操作,SNSCL实现了更好的LNL-FG泛化性能。
我们的贡献可以总结为:
  • 我们考虑了一个很少被研究的LNL任务,称为LNL-FG,并进行了实证研究,表明一些现有的LNL方法不能为LNL-FG达到令人满意的性能。
  • 我们设计了一个新的框架,称为随机噪声容忍有监督对比学习(SNSCL),该框架改变了锚点样本的噪声标签并有选择地更新动量队列,避免了噪声标签对SCL的影响。
  • 我们设计了一个随机模块,以避免手动定义的增强方式,提高了SNSCL在表示学习上的性能。
  • 我们的SNSCL框架普遍适用于当前流行的LNL方法,并显著提高了它们在LNL-FG上的性能。 对四个细粒度数据集和两个真实世界数据集的大量实验一致表明,SNSCL具有最先进的性能,进一步分析证实了其有效性。

🤗准备工作

问题定义:假设X是示例的特征空间,是类标签空间,即我们考虑一个C分类问题。给定一个带有部分损坏标签的训练集,其中是根据分布 绘制。假设有一个带有可学习参数的深层分类网络。对于样本,模型的输出可以写成。我们算法的目标是找到能够在干净的测试集上实现令人满意的泛化性能的最佳参数。 对比学习遇到噪声标签。对比学习[4、6、9]是表示学习的一个流行框架,增强特征提取器的类别区别能力。假设给定一个特征锚点q和一组特征键,其中的正样本点,其余是负样本点。在CL中,用于测量每个数据点相似性的广泛使用的损失函数是InfoNCE[25],可以总结为:
其中是用于温度缩放的超参数。在大多数应用中,CL是作为预任务构建的。是从同一示例的两个增强视图中提取出的,负样本表示当前训练批次中其他样本的特征嵌入。CL自然独立于噪声标签,但存在一个缺点,即它缺乏一种机制将潜在标签用于模型训练,将有用的区分信息留在了原地[39]。目前,有监督的对比学习[11]通过根据标签构建正负列表解决了这个问题。对于锚点q,目标函数可以写成:
然而,SCL对嘈杂标签非常敏感,这些标签可能会引入到锚点、Pos和Neg中。我们的目标是利用嘈杂训练集中潜在的标签有价值的信息,克服噪声标签的误导。

方法

概述:在第4.1节中,我们首先介绍一种容忍噪声的有监督对比学习方法,该方法融合了一种权重感知机制,用于衡量每个示例的可靠性得分。基于这个机制,我们动态地更改不可靠的标签,并有选择地将它们插入动量更新的队列中,分别解决SCL的两个噪声敏感问题。然后,在第4.2节中,我们设计了一个用于特征嵌入转换的随机模块,从生成的概率分布中抽样。最后,在第4.3节中,我们展示了总的训练目标。

Noise-tolerated supervised contrastive learning

权重感知机制:我们的目标是衡量训练集中每个样本的可靠性得分并生成相应的权重。为此,我们使用小损失标准,这是LNL中常用的策略,并利用两组分GMM生成这种可靠性得分。首先,在每个训练周期之后评估训练集。为了清晰起见,我们省略了周期序列并获得了所有样本的经验损失列表,其中。请注意,是所采用的损失函数。GMM适合这个列表并给出了样本是干净的可靠性分数的概率。对于样本,可靠性得分可以写成,其中。然后,我们设计一个函数,根据可靠性得分动态调整所有训练样本的权重。样本的权重为:
其中t是区间[0,1]中的超参数,表示可靠性得分的阈值。γ和ω的计算在每轮训练后重新启动,确保这些值从模型性能的提高中获益。
基于这个机制,我们设计了两种策略,修改了概述中总结的两个噪声敏感问题。首先,为了解决噪声锚点样本的误导,我们提出了一种加权纠正策略,以更改不可靠样本的标签。对于中的每个样本,加权标签是一个软标签,可以写成:
其中,表示分类器网络的预测结果。实际上,这个方程式只改变可靠样本的标签,即。此外,为了使标签的更改更加稳定,我们使用移动平均的思路。在第e个epoch,多个训练周期内的移动平均校正标签为:
其中。因此,经过标签校正的训练集可以表示为在第e个epoch。需要注意的是,所有标签都通过软化的one-hot向量来表示。其次,为了解决动量队列的噪声容忍性,我们提出了一种加权更新策略,以解决传统动量队列的噪声容忍性。该策略可以简单地归纳为根据公式(1)中的权重更新此队列。给定样本,其权重值为。对于满足的样本,我们通过先进先出原则使用它的特征嵌入来更新-th队列,其中表示硬标签,而。否则,我们将以的概率更新-th队列。直观地说,加权更新策略避免将不可靠的样本插入队列,有助于提高动量队列的质量。

Stochastic feature embedding

正如先前的研究[9,38]所报道的,典型的对比学习(CL)在很大程度上依赖于复杂的数据增强策略,并需要针对不同的数据集进行指定。我们建立了一个随机模块来避免手动定义策略。给定一个样本,设表示主干网络输出(即特征提取器)并且。我们为将嵌入z作为正态分布形式的概率分布进行公式化,可以写作:
其中可以通过我们的随机模块(一个三层全连接网络)进行学习。根据特征嵌入分布,我们对嵌入进行采样,得到该原始特征嵌入的增强版本。在这里,我们使用重新参数化技巧[12]:
随后,采样的特征嵌入被用于更新动量队列并计算对比学习损失。这个模块的优势在于:
  1. 利用更复杂的表示模拟了连续学习的潜力,
  1. 随机性的性质帮助模型在一定程度上避免记忆噪声信号。
模块的架构已在附录C.1中讨论。

总目标

我们采用在线更新策略,交替训练网络、修改样本标签和更新动量队列。在第e个epoch中,我们有一个经过标签校正的训练集。对于该集合中的每个样本,总训练目标包含三个部分。
分类损失: 我们的提议通过噪声容忍表示学习缓解了噪声标签的影响,但是需要分类损失(例如交叉熵)。由于我们的框架具有灵活性,因此可以轻松地与现有的有标签噪声(LNL)算法集成,并利用它进行分类器学习。此损失项表示为
噪声容忍对比损失:为了清晰起见,我们省略下标,并将样本表示为,其中表示样本的特征嵌入,表示其硬标签。在我们的加权动量队列中,根据硬标签可以找到正面关键点。另外,在动量队列中未被选择的关键点被视为大小为的负关键点。请注意,总动量队列的大小为。形式上,我们的噪声容忍对比损失可以概括为:
其中表示来自相同类别的正样本点,而表示来自其他类()的负样本点。
KL正则化:我们采用特征嵌入分布和单位高斯先验之间的正则化项,防止预测方差收缩为零。该正则化项可以公式化为:
整个损失函数可以由包含两个超参数来表示:
训练流程图如图3所示。我们提出的加权策略可以轻松地集成到典型的SCL方法中,得出一个通用的LNL框架。主要操作总结在算法1中。与典型的SCL相比,加权策略不会引起太多额外的计算成本。
图3. 训练框架的示意图。队列中颜色和形状相同的示例属于同一类别。投影器设置为单层MLP结构。总体而言,总训练框架包括一个LNL方法和我们提出的SNSCL,由两部分组成:1)随机模块,为对比学习提供更有竞争力的特征变换;2)噪声容忍对比损失,对噪声敏感且包含两种加权策略。
图3. 训练框架的示意图。队列中颜色和形状相同的示例属于同一类别。投影器设置为单层MLP结构。总体而言,总训练框架包括一个LNL方法和我们提出的SNSCL,由两部分组成:1)随机模块,为对比学习提供更有竞争力的特征变换;2)噪声容忍对比损失,对噪声敏感且包含两种加权策略。
notion image

性能

notion image

总结

在这项工作中,我们提出了一项新的任务,称为LNL-FG,针对有噪声标签的学习提出了更具挑战性的场景。为此,我们设计了一个通用框架,称为SNSCL。SNSCL包括一个噪声容忍对比损失和一个随机模块。与典型的SCL相比,SNSCL具有以下优点:
我们的对比学习框架包含一个权重感知机制,可以纠正嘈杂的标签并选择性更新动量队列列表。此外,我们提出了一个用于特征转换的随机模块,生成特征嵌入的概率分布。通过从该分布中采样变换嵌入,我们实现了更强的表示能力。SNSCL适用于流行的LNL方法,并进一步改进了它们在LNL-FG上的泛化性能。广泛的实验和分析验证了我们方法的有效性。

Loading...
ScanMix: Learning from Severe Label Noise via Semantic
Clustering and Semi-Supervised Learning

🗒️ScanMix: Learning from Severe Label Noise via Semantic Clustering and Semi-Supervised Learning