浙大发布「数据混合增强」框架AutoMix,还顺手开源了众多mixup算法(1)

简介: 浙大发布「数据混合增强」框架AutoMix,还顺手开源了众多mixup算法

image.png


【新智元导读】浙江大学联手西湖大学发布全新数据混合策略AutoMix,具有更高的准确率和更低的计算需求,一同发布的还有一个all-in-one的数据混合仓库!


数据增强一直是图像领域的基本操作,能够在数据量不变的情况下,增强神经网络的泛化性能,尤其是对Transformer等大参数量的模型来说,数据量不够很容易导致欠拟合

 

数据混合增强(data mixing augmentation)技术是一种新兴的增强方法,比如说需要对狗和猫的图像进行分类,图像混合的过程是对两幅图像进行简单的平均,然后再重新计算图像的标签值,可以为不同的类提供了连续的数据样本,直观地扩展了给定训练集的分布,使得网络的泛化性能更强。早期的混合增强技术主要依赖于手工策略,比如Mixup通过对数据对进行线性组合的方式生成新样本;CutMix则是设计一套patch替换策略,随机从其他图像中替换patch。而近期的一些研究方法则利用图像中的显著性(saliency)信息通过复杂的离线优化方式来混合样本和标签。尽管通过这种方法训练的模型准确率更高,但计算的复杂度也很高。

为了权衡准确率和复杂度,浙江大学和西湖大学的作者提出了一个新型自动混合策略(AutoMix)框架,实现了「参数化」,并且可以直接用于多个分类任务中。

论文链接:https://arxiv.org/pdf/2103.13027

同时,研究人员还将众多mixup相关的方法实现在开源框架OpenMixup中,支持多种主流网络架构(CNNs, ViTs, etc.)、各类实验设定和常用数据集 (CIFAR, ImageNet, CUB-200, etc.),并提供了常用数据集上mixup benchmark。

 

仓库链接:https://github.com/Westlake-AI/openmixup

 

OpenMixup能够支持主流自监督学习算法(对比学习和Masked Image Modeling)。

1 Summary

我们发表于ECCV2022 (Oral)的工作尝试并实现了一种具有「闭环自反馈」的学习框架(AutoMix)以解决「数据-模型」动态系统中的复杂度和准确性的权衡问题。具体来讲这是一个数据随模型变化,模型随数据更新的双层优化问题。

不同于固定的数据增广策略的模式(独立于模型的优化),AutoMix将参数化后的mixup数据增广策略融入到判别模型中,形成一个完整的数据与模型相互学习的闭环系统,即同时学习mixup样本的(1)生成任务和 (2)判别任务。(1)是根据判别模型的状态自适应的学习精确的数据生成策略;(2)则是基于所学习的增广策略来增强模型对数据中重要特征的判别能力。这两种子任务服务于一个相同的优化目标,具有自一致性。大量实验也表明,判别式模型在AutoMix的闭环自学习系统(自一致性+闭环反馈)中具有更高效学习效率和明显的性能提升。 2 Background

神经网络模型(DNNs)的泛化性能在机器学习领域一直受到广泛的关注和研究,DNNs能兼具高性能和泛化性通常需要满足两个条件:1)过参数化的模型。2)充足的训练样本。但是,在数据量不足或DNNs模型复杂度过高的情况下,模型容易出现过拟合现象,导致性能和泛化能力明显下降。

数据增强(Data Augmentation, DA)算法作为一种DNNs正则化手段能够显著提升模型的泛化性能,而基于数据混合(Data Mixing)的一系列数据增强算法,兼顾了样本和标签。基于混合的增广算法通过凸性组合(Convex Combination)来生成虚拟样本和标签,达到扩充样本量和提高数据分布多样性的目的。

样本混合增强算法的核心问题是如何生成合理的混合样本以及对应的混合标签,在图像分类任务中,一般固定混合标签的生成方式,改进混合图像的生成算法。如下图所示,CutMix将一张图像的局部区域随机替换为另一张图像的对应区域,并根据混合图像上不同像素的面积比例生成混合标签。但是由于CutMix在原图上选取局部区域的位置和尺寸均是随机选择,可能出现被切割的区域不包含分类任务相关目标的现象,这将导致混合标签与混合图像中目标的语义不匹配而误导模型的优化。

为了解决该问题,PuzzleMix和Co-Mixup等基于图像显著性区域(Saliency Region)和组合优化算法设计了较为精确的样本混合策略,使得类别相关的区域在混合后的样本中保留下来。但是这种间接优化方式引入了大量的额外运算开销,这对于追求高效的数据增广方法而言是极为不利的。因此,该工作主要讨论了以下两个问题:

如何设计一个准确的混合策略来提升目标任务性能?

如何高效的解决mixup生成和分类的双层优化问题?

为了解决这两个问题,我们先对mixup问题进行了重定义并提出了「闭环自反馈」框架:automatic mixup(AutoMix)。如下图所示,AutoMix不仅可以精确定位目标区域并准确生成混合样本,而且在一定程度上减少了额外计算成本,提高了训练效率。3 Preliminary 3.1 Mixup training 对于输入样本 和其对应的标签 。我们通过cross-entropy (CE) loss来学习一个分类器:基于以上,我们进一步考虑mixup classification问题:给定样本混合函数,标签混合函数,和从中采样的样的混合比例们可以得到混合后的样本 with 和标签  with . 与上式相似,我们可以通过mixup cross-entropy (MCE) loss来学习一个新的分类器 :3.2 Mixup reformulation 通过我们可以发现mixup training有以下两种特征(1)需要设计额外样本和标签的混合函数和。(2)的分类性能取决于混合函数的设计。因此,我们很自然的把mixup训练拆分成两个互相接收互益反馈的子任务(i)混合样本生成(ii)混合样本分类。我们最终的目的是训练一个好的分类器,故mixup样本生成是服务于分类任务的辅助任务。一般情况下,我们会使用one-hot形式对标签进行编码,基于这种信息固定且无序的标签编码方式,标签混合函数会直接采用线性插值的方式对标签进行混合:


相关文章
|
2月前
|
机器学习/深度学习 算法 前端开发
别再用均值填充了!MICE算法教你正确处理缺失数据
MICE是一种基于迭代链式方程的缺失值插补方法,通过构建后验分布并生成多个完整数据集,有效量化不确定性。相比简单填补,MICE利用变量间复杂关系,提升插补准确性,适用于多变量关联、缺失率高的场景。本文结合PMM与线性回归,详解其机制并对比效果,验证其在统计推断中的优势。
1102 11
别再用均值填充了!MICE算法教你正确处理缺失数据
|
3月前
|
传感器 机器学习/深度学习 算法
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)
279 1
|
3月前
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
384 0
|
2月前
|
机器学习/深度学习 人工智能 算法
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
159 0
|
3月前
|
存储 监控 算法
企业电脑监控系统中基于 Go 语言的跳表结构设备数据索引算法研究
本文介绍基于Go语言的跳表算法在企业电脑监控系统中的应用,通过多层索引结构将数据查询、插入、删除操作优化至O(log n),显著提升海量设备数据管理效率,解决传统链表查询延迟问题,实现高效设备状态定位与异常筛选。
140 3
|
3月前
|
算法 数据挖掘 定位技术
基于密度的聚类算法能够在含有噪声的数据集中识别出任意形状和大小的簇(Matlab代码实现)
基于密度的聚类算法能够在含有噪声的数据集中识别出任意形状和大小的簇(Matlab代码实现)
104 1
|
3月前
|
机器学习/深度学习 算法 PyTorch
【DQN实现避障控制】使用Pytorch框架搭建神经网络,基于DQN算法、优先级采样的DQN算法、DQN + 人工势场实现避障控制研究(Matlab、Python实现)
【DQN实现避障控制】使用Pytorch框架搭建神经网络,基于DQN算法、优先级采样的DQN算法、DQN + 人工势场实现避障控制研究(Matlab、Python实现)
184 0
|
2月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
278 0
|
2月前
|
数据采集 分布式计算 并行计算
mRMR算法实现特征选择-MATLAB
mRMR算法实现特征选择-MATLAB
213 2
|
3月前
|
传感器 机器学习/深度学习 编解码
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
226 3

热门文章

最新文章