数据增强新方法SUMix:解决Mixup混合后的图像的内容与其标签不匹配问题
- 提出背景
- 当前混合方法的问题
- MixUp 操作
- 标签混合
- 混合交叉熵(MCE)
- 混合交叉熵(MCE)的核心作用
- 混合交叉熵(MCE)的功能
- CutMix
- 原始样本
- CutMix 操作
- 混合样本
- SUMix 对比 CutMix
- 图表部分(左侧)
- 可视化部分(右侧)
- SUMix 训练流程
- 左侧图解:SUMix的训练流程
- 右侧图解:语义和不确定性空间
- 解法拆解
- 解法:SUMix的具体实现方法
- 逻辑链
- 增强效果
- 表格 1:在CIFAR-100、Tiny-ImageNet 和 ImageNet-1K 上的性能
- 表格 2:在CUB200、FGVC-Aircrafts 和 Stanford-Cars 上的性能
- 表格 3:在使用Vision Transformer模型的CIFAR100上的性能
- 表格 4:在CIFAR100上基于显著性的混合方法的性能
- 不同混合数据增强方法在不同遮挡比率
论文:SUMix: Mixup with Semantic and Uncertain Information
代码:https://github.com/JinXins/SUMix
提出背景
-
问题识别:在深度学习中,混合图像可以帮助模型更好地泛化。
然而,当一个图像的部分随机被另一个图像的部分替换时(如CutMix或SaliencyMix方法所做的),结果可能会造成混淆。
组合后的图像可能无法正确反映其应代表的标签,这可能会误导训练过程。
-
提出的解决方案 - SUMix:为了解决这个问题,作者提出了一种新技术叫做SUMix。
-
数据增强方法:
-
现有技术:通过操作现有数据创建新的变体。
例如,在计算机视觉任务中,使用旋转或缩放图像;在自然语言处理任务中,通过更换相近词或随机拼写错误来生成新数据。 -
数据增强的分类:
- 对比组合方法:使用仿射矩阵变换和颜色增强来创建新图像。
- 混合方法:通过线性组合一对样本及其标签来创建新样本。
- 生成方法:使用像生成对抗网络(GANs)这样的模型创建全新的合成数据。
-
-
混合方法及其变体简介:
- Mixup:这种简单但有效的方法通过线性插值图像及其对应标签来创建虚拟样本,改善了模型的泛化能力。
- CutMix:是Mixup的一种改进,不仅混合标签,还通过切割和粘贴一个图像的部分到另一个图像上来空间组合图像。
这在特定任务中显示出改善,如Pascal VOC对象检测和MS-COCO图像描述。
当前混合方法的问题
- 标签不匹配:在某些情况下,从一个图像中切割的区域并粘贴到另一个图像上可能会覆盖重要特征,导致混合图像失去有意义的信息。
这个问题至关重要,因为它可能导致模型训练错误,因为标签与视觉内容不匹配。
在传统的 Mixup 方法中,直接混合两个图像及其标签可能导致模型训练时出现标签不匹配问题,即混合后的图像的内容与其标签不完全对应。
混合比率学习:
- 问题:传统的混合方法通常使用固定或随机确定的混合比率 λ \lambda λ,这可能不适用于所有样本。
- 解决方案:SUMix 提议根据图像的语义内容学习混合比率 λ \lambda λ。这种方法旨在更好地对齐混合样本的特征和标签,减少不匹配的风险。
-
CutMix:这种方法涉及从一个图像中剪切一块区域并将其粘贴到另一个图像中。
在这个例子中,熊猫的一部分被剪切并粘贴到了鲨鱼图像中。
这导致鲨鱼在视觉上被部分遮挡,可能会使模型难以识别出“鲨鱼”的标签。
-
ResizeMix:与CutMix类似,但调整了粘贴图像的尺寸,使其更大或更小。
这里显示的熊猫比在CutMix中的更大,更容易被注意到,但同时也遮挡了更多的鲨鱼图像。
-
SaliencyMix:这种方法试图将图像中最显著(最容易引起注意的)部分结合起来。
然而,在这个例子中,由于熊猫和鲨鱼都不是特别突出,这可能导致两个类别都不够明显。
-
FMix:这种方法通过使用傅里叶变换来混合图像,可能产生更抽象的混合效果。
这里,熊猫的大部分身体覆盖了鲨鱼,使得鲨鱼难以被识别。
这些图像示例说明了在使用这些混合方法时可能出现的问题:当混合后的图像与原始标签不完全对应时,可能会导致模型学习到错误的信息。
例如,如果一个混合图像主要显示熊猫但仍带有“鲨鱼”的标签,模型可能会因为视觉上的混淆而难以准确识别和分类。
这种标签不匹配的问题是数据增强方法需要解决的关键挑战之一,因为它直接影响到模型的训练质量和最终的性能。
- 解耦混合:突出显示了传统Mixup方法可能由于标签不匹配而对模型的损失函数产生不利影响的问题。
-
测试和结果:新方法在五个不同的图像基准测试上进行了测试。
结果表明,与涉及切割和混合图像部分的其他方法相比,SUMix也提高了图像分类器的性能。
假设你有两张图像,一张是猫的图像(我们称之为图像 A),另一张是狗的图像(称之为图像 B)。
在深度学习训练中,我们通常会给每张图像一个标签来指示图像内容,例如图像 A 的标签是“猫”,图像 B 的标签是“狗”。
MixUp 操作
在一种称为 MixUp 的数据增强技术中,我们不仅仅是简单地从数据集中选取图像进行学习,而是将两张图像混合在一起生成一张新的图像。
比如,如果我们设定一个比例 ( λ = 0.7 ) (\lambda = 0.7) (λ=0.7),这意味着新图像中有 70% 来自图像 A(猫),30% 来自图像 B(狗)。
标签混合
对于混合后的图像,我们同样混合两个标签。
按照上面的比例,新图像的标签将是 70% 的“猫”和 30% 的“狗”。
这听起来可能有点奇怪,因为通常一个图像只能对应一个标签。
但在 MixUp 训练方法中,这种混合标签的方式可以帮助模型学习更复杂的图像特征,提高模型处理不清晰或重叠图像的能力。
混合交叉熵(MCE)
然而,这种标签混合可能导致一个问题:混合图像的标签可能不太精确,有时候会使模型混淆。
为了解决这个问题,我们可以使用一种特殊的损失函数——混合交叉熵(MCE)。
这种损失函数特别设计来处理混合标签的情况,它通过以下公式计算损失:
[ L M C E = − ( λ × log ( f θ ( X ^ ) 猫 ) + ( 1 − λ ) × log ( f θ ( X ^ ) 狗 ) ) ] [ L_{MCE} = -\left( \lambda \times \log(f_{\theta}(\hat{X})_{\text{猫}}) + (1 - \lambda) \times \log(f_{\theta}(\hat{X})_{\text{狗}}) \right) ] [LMCE=−(λ×log(fθ(X^)猫)+(1−λ)×log(fθ(X^)狗))]
这里, ( f θ ( X ^ ) 猫 ) ( f_{\theta}(\hat{X})_{\text{猫}} ) (fθ(X^)猫) 和 ( f θ ( X ^ ) 狗 ) ( f_{\theta}(\hat{X})_{\text{狗}} ) (fθ(X^)狗) 分别是模型预测混合图像为“猫”和“狗”的概率。
这个公式的意义在于,它考虑到了混合图像的复杂性和标签的不确定性,从而使模型在训练时能更准确地理解和学习这种混合的情况。
混合交叉熵(MCE)的核心作用
当我们使用MixUp技术将两个不同的图像混合在一起时(如猫和狗的图像混合),我们同样混合了这些图像的标签。
如果混合的比例是 70% 猫和 30% 狗,那么我们的目标是希望模型能够识别出这张新图像70%像猫和30%像狗。
这里的挑战是,标准的损失函数(如简单的交叉熵)通常只针对单一、明确的标签设计,不适用于处理这种混合标签的情况。
如果只使用传统的交叉熵损失函数,它可能会强迫模型选择最主要的一个类别(在这个例子中是“猫”),而忽略较小比例的类别(“狗”),这不利于模型全面学习图像中的所有特征。
混合交叉熵(MCE)的功能
为了解决这个问题,混合交叉熵(MCE)被设计出来,它特别适合处理带有混合标签的数据。
MCE损失函数通过以下方式工作:
-
计算每个类别的损失:对于每个类别(猫和狗),计算模型预测该类别的概率的对数损失,并根据其在混合标签中的比例(70%对猫,30%对狗)加权这些损失。
这意味着模型需要同时考虑到图像中的猫和狗的特征,而不是仅仅优化对主要类别的预测。
-
优化模型训练:通过这种方式,MCE使得模型在训练过程中不仅要学习识别主要类别,还要注意到较小比例的类别。
这样的训练方式帮助模型更好地理解和解释混合的数据,从而在实际应用中,当面对类似的混合场景或部分遮挡、不清晰的图像时,能表现出更好的鲁棒性和适应性。
MCE损失函数的设计允许模型更全面地学习和理解图像中的复杂和混合的信息,而不是简单地归类到单一最可能的类别。
这种方法特别适合于训练需要处理不完整、遮挡或复杂场景中对象的模型。
CutMix
图中展示了两个原始图像(左边)和它们经过 CutMix 操作后生成的混合图像(右边)。
原始样本
- 左侧部分展示了两个原始图像和它们各自的标签:
- 第一个图像是一只狗,在水中游泳,标签是“dog”。
- 第二个图像是一只坐在垫子上的猫,标签是“cat”。
这两个图像都附有它们各自的 one-hot 标签。
One-hot 标签是一种编码方式,在这种方式中,每个标签都是一个向量,其中一个元素设为1,表示类别,其余元素设为0。
CutMix 操作
- 中间部分说明了如何通过 CutMix 方法将两个图像混合在一起。
CutMix 是一种数据增强技术,它通过在一个图像中剪切并粘贴另一个图像的一部分来创建新的图像。
在这个例子中,混合比例设为 0.5,意味着试图在两个类别之间平均分配图像内容。
混合样本
- 右侧部分展示了经过 CutMix 操作后的结果图像和它们的混合标签:
- 混合的图像是猫的脸部被粘贴到了狗的图像上。
- 混合标签现在是狗和猫标签的结合,根据混合比例重新定义,每个类别的贡献都是50%。
这种方法的主要优点是可以通过实际模拟物体的遮挡来增强模型的鲁棒性和泛化能力。
在混合图像中,模型需要识别和处理部分遮挡的对象,这有助于改善模型处理真实世界图像的能力,因为真实世界中的图像往往比训练集中的图像更为复杂和多变。
SUMix 对比 CutMix
这幅图展示了使用SUMix和其他混合数据增强技术在Tiny-ImageNet数据集上基于ResNeXt-50模型的分类性能比较,以及使用类激活映射(CAM)来可视化不同方法处理结果的效果。
图表部分(左侧)
- 图表显示了四种不同数据增强方法(CutMix, FMix, SaliencyMix, ResizeMix)以及不使用SUMix(Vanilla)和使用SUMix后的Top-1准确率对比。
- 橙色柱表示应用了SUMix后的结果。
- 蓝色柱表示未使用SUMix的基线结果。
- 可以观察到,在所有方法中,应用SUMix通常能提高模型的Top-1准确率,这表明SUMix能有效提升模型处理图像分类任务的能力。
可视化部分(右侧)
-
展示了不同方法下的类激活映射(CAM)可视化比较:
- Vanilla(基础模型,未使用混合技术)
- CutMix
- SUMix
- 这部分通过色彩变化展示了模型在识别图像中特定类别(如鸟类)时关注的区域。
- CAM可视化帮助我们理解模型在做出分类决策时重点关注的图像部分。
- 从图中可以看出,使用SUMix的模型在识别图像中的对象时,关注区域更集中且清晰,这可能解释了为什么SUMix能提高分类准确率:它可能帮助模型更有效地学习和识别图像中的关键特征。
-
这幅图有效地展示了SUMix如何改善深度学习模型在复杂图像分类任务中的表现,尤其是通过更精确的特征学习和关键区域识别。
这表明SUMix不仅提高了模型的准确性,还可能增强了模型对图像中重要特征的解析能力,这对于复杂场景中的对象识别尤其重要。
SUMix 训练流程
这张图是一个关于SUMix训练过程的框架图,它详细展示了如何处理混合图像样本并通过模型来提取语义和不确定性信息,以及如何应用这些信息来调整混合比率和损失函数。
左侧图解:SUMix的训练流程
- 输入图像:展示了使用CutMix方法混合的两个图像(熊猫和鲨鱼),并指出混合后鲨鱼部分被覆盖的问题。
- 特征提取:通过共享权重的网络 ( f θ ) ( f_\theta ) (fθ) 对混合后的图像进行编码,提取特征。
- 特征处理:
- U ω U_\omega Uω:一个线性层,用于从特征中提取不确定性信息 ( u a , b ) ( u_{a,b} ) (ua,b)。
- u ~ \tilde{u} u~:处理后的不确定性值。
- z ~ \tilde{z} z~:从编码后的特征中提取出的语义信息。
- 损失函数:结合语义信息 ( z ~ ) ( \tilde{z} ) (z~) 和不确定性信息 ( u ~ ) ( \tilde{u} ) (u~),使用特殊的损失函数 ( L M C E ) ( L_{MCE} ) (LMCE) 进行训练,这有助于调整混合比率并改进模型性能。
右侧图解:语义和不确定性空间
- 图中展示了如何计算原始样本和混合样本之间的语义距离(α)和不确定性距离(β)。
- 语义距离 α \alpha α:指原始样本和混合样本在语义层面上的差异。
- 不确定性距离 β \beta β:指在不确定性方面的差异,这通常与标签不匹配和特征覆盖有关。
- 空间表示:展示了如何通过计算这些距离来优化模型的混合比率,以期通过减少不确定性和增强语义相关性来提高模型性能。
这张图的目的是说明SUMix如何在训练过程中综合利用语义和不确定性信息来优化混合图像的处理。
通过调整混合比率和优化损失函数,SUMix旨在解决传统混合方法中的标签不匹配问题,并提高深度学习模型对复杂图像数据的处理能力。
解法拆解
SUMix的目的是提高深度学习模型在面对混合数据样本时的标签匹配精度和泛化能力。
这是通过优化混合图像样本的生成过程并增强对混合样本不确定性的管理来实现的。
解法:SUMix的具体实现方法
-
动态混合比率学习(因为需要精确控制混合样本的信息比例)
- 子解法:使用可学习的相似度函数动态计算混合比率λ。
- 之所以使用动态混合比率学习,是因为固定的混合比率可能不适合所有类型的图像组合,特别是当两个图像在视觉内容上差异较大时。
- 例如,将一张猫的图像和一张狗的图像混合,如果混合比率不能根据图像内容动态调整,可能会导致关键特征的丢失,从而影响模型的学习效果。
- 子解法:使用可学习的相似度函数动态计算混合比率λ。
-
不确定性建模(因为混合样本的不确定性需要明确量化和管理)
- 子解法:设计正则化项来量化和管理混合样本的不确定性。
- 之所以采用不确定性建模,是因为混合图像带来的标签不明确性可能导致学习过程中的误差累积。
- 例如,在图像分类任务中,混合了猫和狗的图像如果不恰当地处理其标签不确定性,模型可能无法正确学习到猫和狗的区分特征。
- 子解法:设计正则化项来量化和管理混合样本的不确定性。
逻辑链
-
是否需要调整混合比率?
-
为什么要调整?:在处理混合图像时,不同图像的特征可能需要不同的重视程度。
-
例如,如果一张图像主要是背景,而另一张图像包含一个物体,我们可能想要在生成的混合图像中给予物体更高的比重。
-
如何调整?:通过一个可学习的函数来动态计算每个图像应该贡献多少信息到最终的混合图像中。
-
这个比率称为混合比率λ。
-
决策分支:
- 是:如果图像之间的视觉内容差异很大,例如一张图像是城市景观,另一张是海滩景观,我们需要动态调整混合比率,以确保生成的图像既包含城市的元素也不丢失海滩的特色。
- 否:如果图像内容相似或者混合比率的精确度不是特别关键,可以使用传统的固定混合比率。
-
-
是否需要管理混合样本的不确定性?
-
为什么要管理?:混合生成的图像可能在视觉上不如原始图像明确,这会导致模型学习时产生误解。
-
例如,如果猫和狗的图像被混合,而混合的方式让猫的特征在视觉上变得不明显,模型可能难以识别出“猫”的特征。
-
如何管理?:通过引入一个正则化项来量化和处理这种不确定性。这可以帮助模型更好地理解哪部分信息是确定的,哪部分是不确定的。
-
决策分支:
- 是:如果在混合后的样本中存在标签信息的不确定性或视觉特征的模糊性,例如一部分被认为是猫的图像实际上看起来更像背景,那么实施不确定性建模,通过正则化项来优化这种不确定性。
- 否:如果所有混合样本都足够清晰且标签准确,可能不需要额外的不确定性管理。
-
这个决策树是一个链条型的逻辑链,先判断是否需要调整混合比率,然后基于混合比率调整的结果进一步判断是否需要管理不确定性。
这样的结构有助于有针对性地优化混合数据增强过程,确保生成的图像既保持了必要的信息也优化了学习效果。
增强效果
表格 1:在CIFAR-100、Tiny-ImageNet 和 ImageNet-1K 上的性能
- 列信息:该表格被划分为三个主要的数据集:CIFAR-100、Tiny-ImageNet 和 ImageNet-1K,为不同模型如 ResNet18、ResNeXt50 和 W-ResNet28-8 提供性能指标。
- 行信息:列出了 CutMix、FMix、SaliencyMix 和 ResizeMix 等不同的混合方法及其相应的Top-1准确率。带星号(*)的行表示与相应方法一起使用了SUMix。
- 发现:在几乎所有方法和模型中,应用SUMix一致地提高了准确率。例如,在CIFAR-100中,平均增益从+0.82%到+1.07%不等。
表格 2:在CUB200、FGVC-Aircrafts 和 Stanford-Cars 上的性能
- 列信息:使用的数据集包括 CUB200、FGVC-Aircrafts 和 Stanford-Cars,为像 ResNet18 和 ResNeXt50 这样的模型提供性能指标。
- 行信息:与表格 1 类似,列出了各种混合方法与及不使用和使用SUMix的情况(通过星号标示)。
- 发现:SUMix的增强效果明显,尽管在FGVC-Aircrafts和Stanford-Cars中的提升较为适度。尤其是在CUB200中,使用SUMix后在ResNeXt50模型上显示出显著的性能提升。
表格 3:在使用Vision Transformer模型的CIFAR100上的性能
- 列信息:评估的模型包括 DeiT-Small 和 Swin-Tiny,专注于CIFAR100。
- 行信息:表中显示了基本混合方法及其使用SUMix增强版本的性能。
- 发现:SUMix倾向于提升性能,特别是在像 Swin-Tiny 这样的新型模型架构中,改进更为明显。
表格 4:在CIFAR100上基于显著性的混合方法的性能
- 列信息:为ResNet18和ResNeXt50提供性能数据。
- 行信息:这个表格特别比较了如 PuzzleMix 和 AutoMix 这样的基于显著性的混合方法,分别在不使用和使用SUMix的情况下的性能。
- 发现:同样,SUMix的加入在所有方面都增强了性能,特别是在处理复杂图像特征的模型中,提升尤为突出。
这些表格总体上表明,SUMix在添加到各种混合方法中时,一致地增强了在广泛的数据集和架构上的模型准确性。
这证明了SUMix在缓解许多混合方法中固有的标签不匹配问题上的有效性,并突出了其在增强深度学习模型的学习鲁棒性,特别是在复杂的视觉识别任务中的潜力。
不同混合数据增强方法在不同遮挡比率
这幅图展示了不同混合数据增强方法在不同遮挡比率下的鲁棒性测试结果。
图顶部显示了一系列逐步增加遮挡的鸟类图像,从完全可见(0%遮挡)到完全不可见(100%遮挡)。
下方的四个图表分别比较了使用SUMix和传统混合方法(CutMix、FMix、SaliencyMix和ResizeMix)在ImageNet-1K数据集上的Top-1准确率表现。
-
CutMix vs. SUMix:
- 图表展示了随着遮挡比率的增加,CutMix和SUMix的分类准确率如何变化。
- 红线(SUMix)在所有遮挡级别下都保持比蓝线(CutMix)更高的准确率,显示SUMix在处理遮挡时更为有效。
-
FMix vs. SUMix:
- 同样,FMix的性能(蓝线)随着遮挡的增加而下降,而SUMix(红线)表现出更好的稳定性和准确性。
-
SaliencyMix vs. SUMix:
- SaliencyMix在遮挡情况下的表现也是逐渐下降,但SUMix依旧表现出较高的鲁棒性。
-
ResizeMix vs. SUMix:
- ResizeMix在遮挡条件下的表现类似于其他方法,而SUMix显示出更优的性能保持。
这幅图表明,SUMix在各种遮挡条件下提供了比传统混合方法更优的性能和稳定性。
SUMix通过改善对遮挡的处理,能够有效提高深度学习模型在现实世界应用中的适应性和准确性,这在图像识别任务中尤为重要。