2024-10-23,由新加坡国立大学和卡内基梅隆大学的研究团队等提出了一种新的数据集蒸馏方法EDF(Emphasize Discriminative Features),它通过Grad-CAM激活图增强合成图像中的关键判别区域,以提高在复杂场景下的性能。这一方法的意义在于,它能够显著提升在如ImageNet-1K这样的复杂数据集上的数据集蒸馏效果,为数据集蒸馏领域提供了新的研究方向和实践指导。
一、研究背景:
数据集蒸馏在 CIFAR、MNIST 和 TinyImageNet 等简单数据集上表现出强大的性能,但在更复杂的场景中难以获得类似的结果。
目前遇到困难和挑战:
1、复杂场景下的数据集通常包含对象大小的显著变化和大量与类别无关的信息,这使得判别特征在图像中所占比例较小,难以捕捉。
2、现有方法在合成图像时对所有像素一视同仁,没有区分判别区域和非判别区域,导致学习过程中非判别特征占据主导,性能下降。
3、现有的数据集蒸馏研究主要集中在简单数据集上,缺乏针对复杂场景的基准测试和评估,限制了该领域的发展和实际应用。
数据集地址:Complex Dataset Distillation (Comp-DD)|数据集蒸馏数据集
二、让我们一起看一下Comp-DD
Comp-DD是一个由新加坡国立大学和卡内基梅隆大学研究团队精心构建的,用于评估和提升数据集蒸馏在复杂场景下性能的基准测试。
数据集构建 :
研究者们首先使用预训练的ResNet模型为ImageNet-1K中的所有图像生成Grad-CAM激活图,然后计算每个图像中激活值高于预定义阈值(0.5)的像素百分比,以此作为图像复杂性的衡量标准。基于此,精心选择十六个子集,包括八个容易的和八个困难的
数据集特点:
它专注于复杂场景,通过控制类别差异,确保了子集间的复杂性水平差异明显。这为研究者提供了一个更加严格的评估框架,促进了在复杂、现实世界环境中对数据集蒸馏的深入探索。
可以使用Comp-DD基准测试来评估数据集蒸馏方法在不同复杂性水平的数据集上的性能。通过在这些子集上运行EDF和其他典型的数据集蒸馏方法,可以进一步改进性能。
基准测试 :
Comp-DD提供了一个早期的、开创性的努力,以解决数据集蒸馏在复杂场景中的挑战。它不仅促进了DD社区的进一步探索,还为未来的研究提供了便利,以继续提高数据集蒸馏在复杂场景中的性能。
在复杂场景下,数据集蒸馏的性能显著下降。
来自 IN1K-CIFAR-10 的图像具有低得多的激活平均值和更小的高激活区域。
高损失监督增加了激活手段并扩大了高激活区域,而低损失监督降低了激活平均值并转移到错误的判别区域。
三角形和圆圈分别代表真实和合成图像特征。随着低损耗蒸馏的进行,合成图像中引入了越来越多的常见图案。
强调判别特征 (EDF) 的工作流程。EDF 包括两个模块:(1) 共模 Dropout,用于过滤掉低损耗信号,以及 (2) 鉴别区域增强,用于放大关键区域的梯度。 � 表示增强因子。“mean” 表示激活映射的平均激活值。
每个子集中的图像数量
每个类别中 Easy 和 Hard 子集的复杂度
低损耗监管主要嵌入常见图案(背景、颜色)
EDF 在很大程度上增加了区分区域的百分比(每张图像的左下图),平均为 9%,达到最高。我们提炼的图像包含更多的判别性特征。
EDF 的 loss-wise dropout 表现最好。所有标准的放弃率固定为 25%。“帕拉姆。To Layer“是指包含放置的 Trajectory 参数的图层。
三、让我们来看一下数据集应用场景
比如,我是一名计算机视觉研究员,正在尝试训练一个能够识别各种鸟类的模型。
我平常用那些特别大的数据集来训练我的鸟类识别模型,就像是拿着一个大水桶去接水,里面鱼龙混杂,啥信息都有。比如CIFAR、MNIST这些,虽然数据量不小,但是图片都挺简单,背景干净,小鸟们也都是正面大头照,特清晰。所以呢,训练出来的模型在这些数据集上表现得还不错。
但是,现实世界可不是这样的。真实环境下的鸟类照片,背景复杂,小鸟们的姿势也是千奇百怪,有时候只能看到一个翅膀尖儿或者尾巴毛儿。这时候,我之前训练的模型就有点儿懵了,识别准确率直线下降,这就好比是拿着大水桶去接雨水,结果因为接的水太混,想喝口清水都难。
不过现在有了Comp-DD这个基准测试,情况就大不一样了。
这就好比是给了我一个高级过滤器,让我能从复杂的环境里提取出最有用的信息。在这个基准测试里,研究人员精心挑选了各种复杂场景下的鸟类图片,有的在天空翱翔,有的在树上休息,有的甚至是偷拍的洗澡照片,各种姿态应有尽有。这样,我就可以针对这些复杂场景,专门训练和优化我的模型。
所以现在,我会用Comp-DD里的这些复杂场景数据集来训练我的模型。开始的时候,模型可能还是像个新手一样,对这些复杂图片摸不着头脑。但是经过反复训练,它逐渐学会了如何从背景中识别出小鸟的关键特征,比如鸟喙的形状、羽毛的纹理等等。这样,即使在真实世界的复杂环境中,我的模型也能像老司机一样,稳准狠地识别出不同的鸟类。被操练过的模型,现在毅然变成了一个能在万花筒里找到目标的老练侦探。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。