DeiT:Facebook如何用知识蒸馏打破视觉Transformer的数据依赖症

GitHub April 2026
⭐ 4340
来源:GitHub归档:April 2026
Facebook AI推出的DeiT(数据高效图像Transformer)证明,视觉Transformer无需在JFT-300M等海量数据集上预训练,即可达到CNN的性能。通过引入蒸馏令牌并借助CNN教师模型,DeiT仅用120万张训练图像就在ImageNet上实现了85.2%的Top-1准确率。

长期以来,视觉Transformer(ViT)领域的主流观点认为,要超越卷积神经网络(CNN),必须依赖数亿张图像级别的海量数据集。Facebook AI的DeiT(数据高效图像Transformer)彻底推翻了这一假设。其核心创新在于一种知识蒸馏策略:在训练过程中,由CNN教师模型(具体为RegNetY-16GF)指导ViT学生模型。这并非标准的logit匹配蒸馏;DeiT引入了一个专用的[DIST]令牌,该令牌学习模仿教师模型的输出,与用于分类的[CLS]令牌并行运作。结果是,一个仅使用ImageNet数据集中120万张图像的Transformer,实现了85.2%的Top-1准确率——无需外部数据,无需JFT-300M。DeiT还具备良好的可扩展性:其架构设计使得模型能够优雅地扩展规模,在保持数据高效性的同时,性能随参数增加而稳步提升。这项研究不仅为Transformer在计算机视觉领域的应用开辟了新路径,也深刻影响了后续模型如DeiT III和LLaMA的发展,展示了Meta在视觉与语言Transformer研究上的交叉融合。

技术深度解析

DeiT的架构是ViT的一个变体,但有一个关键转折:一个可学习的蒸馏令牌。标准的ViT会在图像块序列前添加一个[CLS]令牌;其最终表示被送入分类头。DeiT增加了第二个令牌[DIST],它通过自注意力机制与所有图像块交互,但训练目标是匹配教师模型的输出。这不是一个简单的辅助损失——[DIST]令牌学习一个独立的表示来捕捉教师的知识,而[CLS]令牌则继续从真实标签中学习。在推理时,这两个令牌可以独立使用:任何一个都可以作为分类表示,但[DIST]令牌通常能产生更高的准确率。

论文探索了两种蒸馏策略:硬标签蒸馏和软标签蒸馏。硬标签蒸馏将教师模型预测的类别视为[DIST]令牌的真实标签,使用交叉熵损失。软标签蒸馏则最小化教师模型softmax输出与学生模型[DIST]令牌logits之间的KL散度。论文发现硬标签蒸馏略为有效,可能是因为它提供了更强的梯度信号。

训练配方非常精细。DeiT使用了RandAugment、MixUp、CutMix和随机深度——这些对CNN来说都是标准技术,但针对Transformer进行了仔细调优。学习率调度、权重衰减和批量大小(1024)都针对ViT架构进行了优化。教师模型RegNetY-16GF是一个在ImageNet上达到84.0% Top-1准确率的CNN。通过从CNN蒸馏,DeiT将卷积的归纳偏置——局部性、平移等变性——隐式地迁移到了Transformer中,弥补了其缺乏内置空间先验的不足。

基准测试结果令人瞩目:

| 模型 | 参数量 | ImageNet Top-1 | 训练数据 | 蒸馏 |
|---|---|---|---|---|
| DeiT-S | 22M | 79.8% | ImageNet-1K | 否 |
| DeiT-S | 22M | 81.2% | ImageNet-1K | 是(硬标签) |
| DeiT-B | 86M | 81.8% | ImageNet-1K | 否 |
| DeiT-B | 86M | 85.2% | ImageNet-1K | 是(硬标签) |
| ViT-B/16 | 86M | 77.9% | ImageNet-1K | 否 |
| ViT-B/16 | 86M | 84.2% | JFT-300M | 否 |
| EfficientNet-B5 | 30M | 83.4% | ImageNet-1K | 否 |

数据要点: 使用蒸馏的DeiT-B仅用ImageNet数据就达到了85.2%的准确率,超越了需要JFT-300M的ViT-B(84.2%)和在ImageNet上从头训练的EfficientNet-B5(83.4%)。仅蒸馏令牌一项就为基础DeiT-B增加了3.4个百分点,证明CNN教师模型可以注入缺失的归纳偏置。

官方GitHub仓库(facebookresearch/deit)提供了一个简洁的PyTorch实现,并附有预训练权重。代码库采用模块化设计,支持DeiT-Ti(极小,5M参数)、DeiT-S(22M)和DeiT-B(86M)。它还包含了使用蒸馏进行训练、在ImageNet上评估以及迁移到下游任务的脚本。该仓库已获得4340颗星,并持续维护,最近的提交解决了与新版PyTorch的兼容性问题,并增加了对DeiT III(后续工作)的支持。

关键参与者与案例研究

主要参与者是Facebook AI Research(FAIR),由研究员Hugo Touvron、Matthieu Cord、Matthijs Douze、Francisco Massa、Alexandre Sablayrolles和Hervé Jégou领导。Touvron也是DeiT III的第一作者,该工作进一步改进了训练配方,后来他成为LLaMA大型语言模型系列的关键贡献者——展示了Meta在视觉和语言Transformer研究之间的交叉融合。

教师模型RegNetY-16GF由FAIR的Ilija Radosavovic及其同事开发。RegNet是通过设计空间搜索设计的CNN,Y变体引入了Squeeze-and-Excitation模块。这一选择是经过深思熟虑的:RegNetY在准确率和效率之间取得了良好的平衡,使其成为理想的教师模型,不会压制学生的能力。

竞争方法包括:

| 方法 | 关键创新 | 数据需求 | 最佳ImageNet Top-1 |
|---|---|---|---|
| DeiT | 蒸馏令牌 + CNN教师 | 仅ImageNet-1K | 85.2%(DeiT-B) |
| ViT | 纯Transformer,无蒸馏 | JFT-300M(3亿张图像) | 84.2%(ViT-B/16) |
| Swin Transformer | 层级窗口 + 移位窗口 | 仅ImageNet-1K | 83.5%(Swin-B) |
| ConvNeXt | 采用Transformer技巧的现代化CNN | 仅ImageNet-1K | 84.3%(ConvNeXt-B) |

数据要点: DeiT-B在ImageNet-1K上超越了Swin-B和ConvNeXt-B,尽管其架构更简单。Swin和ConvNeXt依赖架构创新(窗口注意力、倒置瓶颈)来取得强劲结果,而DeiT仅通过训练方法就达到了同等水平。

案例研究:一家中型AI初创公司正在构建电商视觉搜索引擎,在尝试使用ViT处理其内部50万张产品图像数据集但效果不佳后,他们采用了DeiT-S作为骨干网络。通过对在ImageNet上预训练的DeiT-S进行微调,他们实现了92%的Top-5准确率,而ResNet-50为87%,ViT-B/16为84%。

更多来自 GitHub

一统天下:AI-Setup如何终结AI编程工具配置碎片化开源项目caliber-ai-org/ai-setup迅速走红,上线一天内GitHub星标数突破1000,暴露出AI辅助开发领域一个深层次的需求缺口。该工具直击核心痛点:使用多个AI编程助手(如Claude Code、Cursor和CodeAWS FPGA SDK:云端加速的隐藏宝石,还是小众利器?aws/aws-fpga 仓库是 AWS 官方开源的 FPGA 加速应用开发与部署工具包,专为 EC2 F1 实例设计。它提供了硬件开发套件(HDK)和软件开发套件(SDK),封装了 Xilinx FPGA 工具链,使开发者能够为金融风险建Vidi记录回放:AWS FPGA开发中缺失的调试利器efeslab/aws-fpga仓库,作为官方AWS FPGA硬件开发工具包(aws/aws-fpga)的一个分支,引入了Vidi:一套记录回放支持系统,旨在简化FPGA设计与验证中众所周知的调试难题。通过捕获并回放硬件状态,Vidi使工程查看来源专题页GitHub 已收录 2069 篇文章

时间归档

April 20263042 篇已发布文章

延伸阅读

Google 的宏大视觉代码库:悄然驱动 Vision Transformer 霸主地位的引擎Google Research 在 GitHub 上的 big_vision 仓库,是 Vision Transformer (ViT)、SigLIP 和 MLP-Mixer 等里程碑式模型的官方代码库。AINews 深入剖析为何这一基础设Vision Transformer:谷歌研究如何终结CNN在计算机视觉领域长达十年的统治谷歌研究院推出的Vision Transformer(ViT)彻底打破了卷积神经网络在计算机视觉领域长达十年的主导地位。通过将图像视为一系列图像块并应用纯Transformer编码器,ViT在图像分类任务上达到了业界顶尖水平——但前提是必须TimeSformer:Facebook Research如何用纯注意力模型重塑视频理解Facebook Research提出的TimeSformer模型,正挑战计算机视觉领域的一个基础假设:卷积神经网络是视频理解所必需的。通过采用分解的时空注意力纯Transformer架构,它为视频分析开辟了一条全新路径,在长时序处理上以更一统天下:AI-Setup如何终结AI编程工具配置碎片化一款名为ai-setup的开源工具横空出世,宣称能用一条命令终结AI编程助手的配置碎片化。它通过同步MCP、技能文件和配置文件,在Claude Code、Cursor和Codex之间实现统一管理,旨在为个人和团队打造流畅的多工具开发环境。

常见问题

GitHub 热点“DeiT: How Facebook Broke Vision Transformers' Data Addiction with Knowledge Distillation”主要讲了什么?

The prevailing wisdom for vision transformers (ViTs) has been that they require enormous datasets—hundreds of millions of images—to outperform convolutional neural networks (CNNs).…

这个 GitHub 项目在“DeiT vs ViT training cost comparison”上为什么会引发关注?

DeiT's architecture is a ViT variant with a critical twist: a learnable distillation token. The standard ViT prepends a [CLS] token to the sequence of image patches; its final representation is fed to a classification he…

从“how to use DeiT distillation token for custom dataset”看,这个 GitHub 项目的热度表现如何?

当前相关 GitHub 项目总星标约为 4340,近一日增长约为 0,这说明它在开源社区具有较强讨论度和扩散能力。