目录
AIGC🎨缓解数据稀缺问题❓
论文研究的动机✏️
作者是怎么做的❓
实验配置🧰
实验结果🔍
结论✅
实践💐
要增强的裂缝图片
按照论文中的参数在stable-diffusionv1-5上进行textual inversion微调
如果直接用stable-diffusionv1-5模型图生图
AIGC🎨缓解数据稀缺问题❓
🤔自2022年至今,diffusion模型在艺术设计、海报创作、产品设计等多个领域内引发了革新性的影响。而对于算法研究者而言,一个引人深思的问题是:diffusion模型能否为算法开发的数据处理环节带来新的动力? 在各类视觉算法应用的背景下,数据的质量与规模直接关系到模型性能的优劣,尤其是面对少样本学习📑这一挑战,其核心在于探索如何使算法在极有限的标注样本基础上,实现对未见过类别的有效泛化。
🔍这一技术前沿挑战了以往机器学习模型高度依赖大规模数据集以达到高性能的局限,📊尤为适用于那些数据采集成本高昂、获取难度大的特定情境,例如医疗影像的精密分析、稀有生物种类的自动识别,以及新兴商品市场趋势的预测分析等。 diffusion模型通过在这些“数据稀缺”场景中的创新应用,不仅拓宽了算法应用的边界,也重新定义了数据效率与模型泛化的标准,为算法开发开辟了一条在有限资源下追求高效能的新路径。
👀做过视觉分类任务的小伙伴们应该也了解,基础分类任务比如区分猫和狗🐱🐶是比较简单的,但在实际应用中,分类任务往往复杂得多,特别是在少样本学习的情境下。在这种情况下,我们面临的挑战升级,远不止于日常所见的典型分类问题。 在现实世界的应用场景中,我们可能会遇到非常专业的细分领域分类,比如识别不同类型的细胞结构、细微的地质构造变体,或者是区分相似度极高的稀有植物种类。 这些类别不仅数量较少,难以收集到大量样本,而且类别间的差异可能极其微妙,要求模型具备高度的辨别力和泛化能力。
📖所以今天我们就来介绍CMU团队2023年的一篇工作,主要讲述了diffusion是如何通过数据增强赋能ResNet图像分类任务的,希望大家能得到一些启发💐在文章末尾我也会给出一些个人的实践~论文链接
论文研究的动机✏️
传统的数据增强技术通过组合随机参数化的图像变换来缓解数据稀缺问题,这些变换通常包括翻转、旋转等操作。这种数据增强方法很好地捕捉到了这种图像变换下的鲁棒性,确保模型能够识别出即使经过简单变换的对象,例如无论正放还是倒置的咖啡杯都能被识别出来。
然而,这些基本变换是有局限性的,就是无法生成新的语义信息,比如结构、纹理或是视角的变化。比如,虽然一个模型能识别出任意翻转旋转后的咖啡杯,但它可能难以区分不同品牌咖啡杯之间那些微妙的外观差异,比如设计图案或材质质感。我们之所以能仅凭一个例子就能辨别不同品牌的咖啡杯,是因为我们能够注意和记忆这些细微的视觉特征。
基于上面的困境,这篇论文的作者构建了一种数据增强策略——DA-fusion:利用diffusion models来生成额外的训练样本,用于图像分类任务,这种策略需要符合以下三种性质:
普遍适用性:要能生成diffusion模型在预训练阶段没有“见过”的图片。传统的数据增强技术(如旋转、缩放、翻转等)通常不依赖于图像的具体内容,所以需要确保基于文本引导的图像扩散模型生成的数据增强同样不受限,能够应用于各种类型的图像数据。 最小化数据集特定调优:为了提高实用性和易用性,数据增强策略能够做到“开箱即用”(off-the-shelf),即不需要针对每个特定数据集进行大量的参数调整或定制。这意味着模型应当具备足够的通用性,能够自动适应不同数据集的特点,减少用户手动调整模型参数的工作量,从而提高工作效率和可推广性。 平衡真实与合成数据:在利用扩散模型生成额外训练样本的过程中,要追求在真实数据与合成数据之间的平衡。这意味着生成的图像不仅要具有多样性,以丰富模型的学习内容,同时还要保持与原始数据集的风格和特征一致性,避免引入噪声或误导性的信息。这个数据增强策略代码在:GitHub - brandontrabucco/da-fusion: Effective Data Augmentation With Diffusion Models ,有兴趣的小伙伴可以看看~
作者是怎么做的❓
作者参考了textual inversion的工作,让diffusion模型学习生成新的类别概念。
Textual inversion是一种简单有效的diffusion微调方法,通过微调模型,在其文本编码器的嵌入空间添加新词汇以代表特定视觉概念,允许模型根据用户定义的文本提示生成相应图像,实现精准的图像定制。它的训练loss公式跟stable diffusion的差别不大,就是加入了新概念的embedding,即向量进行参数更新。
这个时候可能有人会问,不能直接图生图进行数据增强吗?对于常见的类别如猫狗,确实是可以,但对于罕见的类别,diffusion模型可能没有包含这种概念的语义信息,这就是要使用textual inversion微调的原因。
整个流程如下图所示:
比如我想扩充图中“红色火车”🚄🔴这个类别的数据,但diffusion预训练模型不包含“红色火车”的语义信息。这个时候,我为“红色火车”(对应图中的class 3)设一个token,通常为不包含在文本编码器词典里的词,然后文本编码器学习“红色火车”的embeddings。推理阶段,输入包含”红色火车“token的prompt,经过图生图diffusion模型就能生成包含更丰富语义多样性的图片了。
为了证明自己工作的有效性,作者在三个数据集上测试了ResNet50分类任务的性能,数据集分别为COCO、PascalVOC、作者团队贡献的Leafy Spurge🍃数据集,其中Leafy Spurge🍃数据集专门用来验证该方法在少样本分类任务上的有效性,因为模型不包含这些样本的语义信息。
下面这张图片的左一是Leafy Spurge☘️数据集里的样本,作者尝试使用CLIP模型在大规模图像数据集中搜索“a drone image of leafy spurge”,但是查询到的图片(右边)都不能给出无人机视角下的图片。这也证明了leafy spurge这个数据集的语义信息是不包含在大模型里的。
实验配置🧰
论文给出了详细的实验参数以供参考。初始token设置为the,原因是如果要训练新概念class x,就要基于一个类别不可知的token。这样才能使该token没有偏向于任何一个具体的类别特征,逐渐学习embedding,最终能代表class x的特征。
实验结果🔍
在这次实验中,进行了三组关于少样本分类的测试,每组采用了不同的数据增强策略:
Baseline(基线) : 这是实验的对照组,不使用任何合成图像。它实施了一个标准的数据增强策略,包括随机旋转和平移,具体参数依据数据集而定。对于COCO和Pascal数据领域,采用随机水平翻转和角度在+15到-15度之间均匀随机取样的随机旋转。而在Spurge数据领域,则额外加入了随机垂直翻转,并将随机旋转的角度范围扩大到了+45到-45度。 Real Guidance Baseline: 基于He等人提出的方法,该策略在真实图像上使用SDEdit技术。为了确保公平性,Real Guidance与DA-fusion方法共享的超参数值相等。 DA-fusion : 前面介绍的方法从上面的图表可以看出,DA-Fusion在图像分类任务上的表现单方面超越了Baseline,同时也优于Real Guidance方法,证明了使用diffusion做数据增强的有效性。
结论✅
作者提出了一种基于扩散模型的数据增强方法,名为DA-Fusion。该方法能够调整预训练的扩散模型以语义地修改图像,并且无论图像内容如何,都能生成高质量的增强数据。测试结果中,DA-Fusion提高了少量样本分类的准确性,在基于Pascal和COCO的任务上,提升幅度高达+10个百分点。同样,对于一个超出diffusion预训练模型词汇范围的Leafy Spurge识别数据集,DA-Fusion方法也实现了性能提升。
实践💐
为了验证这个论文里数据增强的方案是否可行,我同样使用了textual inversion的方法对裂缝数据集进行扩充。在这里我仅仅对数据集进行了扩充,用肉眼评判增强后的数据是否跟原数据集在较相似的基础上又改变了内在语义信息。
要增强的裂缝图片
按照论文中的参数在stable-diffusionv1-5上进行textual inversion微调
因为算力限制,我用的batchsize是1,效果如下:
增强后的图片还是跟原数据集比较相似的
如果直接用stable-diffusionv1-5模型图生图:
直接生成的图片跟原始数据集比较差异还是比较大的,也没有抓住“裂缝”这一关键特征,也说明了微调的有效性。
总结
文章总结### 文章概述
本文探讨了AIGC(生成式人工智能)中的Diffusion模型如何有效缓解视觉算法开发中的数据稀缺问题,特别是在少样本学习场景下的图像分类任务。作者介绍了CMU团队2023年的一项研究工作,提出了DA-Fusion数据增强策略,利用Diffusion模型生成质量高的训练样本来提升图像分类模型的性能。
### 研究动机
传统数据增强技术如翻转、旋转等虽能缓解一定程度的数据稀缺问题,但无法生成新的语义信息。Diffusion模型通过生成包含新语义的样本,为解决这一问题提供了新的思路和方法。DA-Fusion策略旨在通过Diffusion模型的生成能力,创建多样化的训练样本,进而提高分类模型的泛化能力和准确性。
### 研究方法
- **Textual Inversion微调**:作者借鉴textual inversion的方法,通过微调Diffusion模型的文本嵌入空间,为特定类别(如“红色火车”)引入新的语义概念。这种方法不依赖于图像的具体内容,适用于生成多种类型的图像数据。
- **数据增强策略**:DA-Fusion策略旨在保证生成的图像具有广泛的适用性、最少的数据集特定调优需求,以及在真实数据和合成数据之间取得平衡。
### 实验配置与结果
实验采用了三种数据增强策略(基线组、Real Guidance Baseline和DA-Fusion)在多个数据集(COCO、PascalVOC和Leafy Spurge)上进行测试。结果表明,DA-Fusion方法在分类任务上表现出色,特别是在少样本情形下,性能提升更为显著,证明了其有效性。
### 结论
DA-Fusion方法通过调整预训练的Diffusion模型生成高质量的增强数据,显著提升了图像分类模型的准确性,包括在极少量样本的场景下。该策略不仅拓宽了Diffusion模型的应用范围,也为解决数据稀缺问题提供了新的视角和方法。
### 实践案例
作者还进行了实际操作,通过使用textual inversion方法对裂缝数据集进行扩充,证明了微调后的Diffusion模型生成的图像质量较高,且与原始数据集在语义上保持了一致性,进一步验证了DA-Fusion方法在实际应用中的可行性。直接使用Diffusion模型生成的图片与原始数据集差异较大,验证了微调过程的重要性。