FMix: Enhancing Mixed Sample Data Augmentation 论文阅读

1 Abstract

  • 近年来,混合样本数据增强(Mixed Sample Data Augmentation,MSDA)受到了越来越多的关注,出现了许多成功的变体,例如MixUp和CutMix。通过研究VAE在原始数据和增强数据上学习到的函数之间的互信息,我们展示了MixUp以一种CutMix不会的方式扭曲了学习到的函数。我们进一步通过展示MixUp作为一种对抗性训练的形式来证明这一点,它增加了对Deep Fool和Uniform Noise等攻击的鲁棒性,这些攻击产生的样本与MixUp生成的样本类似。我们认为,这种扭曲阻止了模型学习数据中的样本特定特征,有助于提高泛化性能。相比之下,我们认为CutMix更像是一种传统的增强,通过防止记忆来提高性能,而不会扭曲数据分布。然而,我们认为,一个基于CutMix构建的MSDA,包括任意形状的掩码(而不仅仅是正方形),可以在不扭曲数据分布的同时进一步防止记忆。为此,我们提出了FMix,这是一种使用通过将傅里叶空间中采样的低频图像应用阈值获得的随机二进制掩码的MSDA。这些随机掩码可以呈现出各种形状,并且可以用于一维、二维和三维数据。FMix在不增加训练时间的情况下,提高了多种模型在多个数据集和问题设置中的性能,甚至在没有外部数据的情况下,在CIFAR-10上获得了新的单模型最佳结果。我们展示了FMix在情感分类任务中可以胜过MixUp,并且在一维数据的三维点云分类中提供了基线的改进。最后,我们展示了插值MSDA(如MixUp)和掩码MSDA(如FMix)之间差异的一个后果是,两者可以结合使用以进一步提高性能。所有实验的代码可在https://github.com/ecs-vlc/FMix获取。

2 Strategy

  • 生成随机掩码: 首先,从傅里叶空间采样低频图像。这可以通过对复数 随机变量进行低通滤波来实现,其中滤波器的衰减功率由参数δ控制。这一步骤生成了一个灰度图像。

  • 转换为二进制掩码: 将上述灰度图像通过一个阈值操作转换为二进制掩码。这个阈值是根据给定的混合系数λ来设置的,以确保掩码的平均值为λ。这意味着在二进制掩码中,像素值根据其在灰度图像中的强度被设置为0或1。

  • 应用掩码: 使用生成的二进制掩码对数据集中的图像进行混合。具体来说,对于两个独立的随机变量X1和X2(代表数据集中的两个样本),使用掩码m进行元素级别的乘法操作,然后根据混合系数λ进行加权求和,得到增强后的样本。

3 Perfermance

4 Demo

注:这里只用了一张图像,没有叠加两张图像

clike 复制代码
mask = binarise_mask(make_low_freq_image(3, SHAPE), 0.5, SHAPE, 0.0)
相关推荐
小馒头学python几秒前
机器学习是什么?AIGC又是什么?机器学习与AIGC未来科技的双引擎
人工智能·python·机器学习
神奇夜光杯10 分钟前
Python酷库之旅-第三方库Pandas(202)
开发语言·人工智能·python·excel·pandas·标准库及第三方库·学习与成长
正义的彬彬侠12 分钟前
《XGBoost算法的原理推导》12-14决策树复杂度的正则化项 公式解析
人工智能·决策树·机器学习·集成学习·boosting·xgboost
Debroon22 分钟前
RuleAlign 规则对齐框架:将医生的诊断规则形式化并注入模型,无需额外人工标注的自动对齐方法
人工智能
羊小猪~~29 分钟前
神经网络基础--什么是正向传播??什么是方向传播??
人工智能·pytorch·python·深度学习·神经网络·算法·机器学习
AI小杨30 分钟前
【车道线检测】一、传统车道线检测:基于霍夫变换的车道线检测史诗级详细教程
人工智能·opencv·计算机视觉·霍夫变换·车道线检测
晨曦_子画35 分钟前
编程语言之战:AI 之后的 Kotlin 与 Java
android·java·开发语言·人工智能·kotlin
道可云36 分钟前
道可云人工智能&元宇宙每日资讯|2024国际虚拟现实创新大会将在青岛举办
大数据·人工智能·3d·机器人·ar·vr
人工智能培训咨询叶梓1 小时前
探索开放资源上指令微调语言模型的现状
人工智能·语言模型·自然语言处理·性能优化·调优·大模型微调·指令微调
zzZ_CMing1 小时前
大语言模型训练的全过程:预训练、微调、RLHF
人工智能·自然语言处理·aigc