2025最全指南:正确引用Vision Transformer项目的6个关键步骤
在学术写作和技术文档中,正确引用开源项目不仅是对原作者知识产权的尊重,更是确保研究可复现性的关键环节。Vision Transformer(ViT)作为计算机视觉领域的革命性模型,其官方实现gh_mirrors/vi/vision_transformer包含多个重要研究成果,错误的引用方式可能导致学术不规范或技术误导。本文将系统梳理该项目的引用规范,帮助研究者和开发者准确引用相关论文、模型和代码。
项目核心成果概览
Vision Transformer项目包含6篇关键研究论文,覆盖从基础架构到高级应用的完整技术体系。项目结构清晰,核心代码位于vit_jax/目录,模型架构定义在vit_jax/models_vit.py和vit_jax/models_mixer.py,配置文件集中在vit_jax/configs/目录。
图1:Vision Transformer模型架构(来源:vit_figure.png)
主要研究成果包括:
- ViT基础架构:将Transformer应用于图像识别的开创性工作
- MLP-Mixer:纯MLP架构在视觉任务的突破
- AugReg技术:数据增强与正则化的最佳实践
- LiT模型:零样本迁移学习的锁定图像文本调优方法
论文引用规范
基础ViT架构引用
当使用原始Vision Transformer架构(如ViT-B/16、ViT-L/32等模型)时,必须引用2020年发表的奠基性论文:
@article{dosovitskiy2020image,
title={An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale},
author={Dosovitskiy, Alexey and Beyer, Lucas and Kolesnikov, Alexander and Weissenborn, Dirk and Zhai, Xiaohua and Unterthiner, Thomas and Dehghani, Mostafa and Minderer, Matthias and Heigold, Georg and Gelly, Sylvain and others},
journal={ICLR},
year={2021}
}
该论文提出的将图像分割为16×16 patches的处理方式,以及分类令牌(classification token)机制,构成了现代视觉Transformer的基础。相关实现见vit_jax/models_vit.py第42-189行的VisionTransformer类。
MLP-Mixer架构引用
对于使用MLP-Mixer模型(如Mixer-B/16)的场景,需引用2021年提出的纯MLP视觉架构论文:
@article{tolstikhin2021mlp,
title={MLP-Mixer: An all-MLP Architecture for Vision},
author={Tolstikhin, Ilya and Houlsby, Neil and Kolesnikov, Alexander and Beyer, Lucas and Zhai, Xiaohua and Unterthiner, Thomas and Yung, Jessica and Steiner, Andreas and Keysers, Daniel and Uszkoreit, Jakob and others},
journal={NeurIPS},
year={2021}
}
MLP-Mixer通过令牌混合(token-mixing)和通道混合(channel-mixing)层实现视觉识别,其架构定义在vit_jax/models_mixer.py第36-152行。模型训练配置可参考cifar10示例。
图2:MLP-Mixer模型架构(来源:mixer_figure.png)
高级训练技术引用
当使用数据增强、正则化或迁移学习相关技术时,需根据具体方法引用对应的论文:
- AugReg技术(vit_jax/configs/augreg.py):
@article{kolesnikov2021train,
title={How to train your ViT? Data, Augmentation, and Regularization in Vision Transformers},
author={Kolesnikov, Alexander and Beyer, Lucas and Zhai, Xiaohua and Puigcerver, Joan and Yung, Jessica and Houlsby, Neil},
journal={ICML},
year={2021}
}
- 零样本迁移学习(LiT模型,model_cards/lit.md):
@article{zhai2022lit,
title={LiT: Zero-Shot Transfer with Locked-image text Tuning},
author={Zhai, Xiaohua and Wang, Xiao and Mustafa, Basil and Steiner, Andreas and Keysers, Daniel and Kolesnikov, Alexander and Beyer, Lucas},
journal={CVPR},
year={2022}
}
模型权重引用规范
项目提供的预训练模型权重需按存储位置和训练配置正确引用。所有模型文件名对应vit_jax/configs/models.py中的model_name参数,推荐优先使用AugReg训练的模型 checkpoint,其性能指标见README.md中的详细表格。
例如引用L/16模型时,应明确指定预训练数据集和训练参数:
gs://vit_models/augreg/L_16-i21k-300ep-lr_0.001-aug_strong1-wd_0.1-do_0.0-sd_0.0.npz
关键模型参数对照表:
| 模型 | 预训练数据集 | 参数量 | ImageNet准确率 |
|---|---|---|---|
| L/16 | ImageNet-21k | 1243 MiB | 85.59% |
| B/16 | ImageNet-21k | 391 MiB | 85.49% |
| R50+L/32 | ImageNet-21k | 1337 MiB | 85.99% |
代码实现引用方法
当直接使用或修改项目代码时,需在文档中明确标注代码路径和版本信息。推荐引用格式:
Vision Transformer (Version 1.0), Google Research. https://gitcode.com/gh_mirrors/vi/vision_transformer, [访问日期]
关键代码文件引用示例:
- 数据预处理:vit_jax/preprocess.py
- 训练循环:vit_jax/train.py
- 推理代码:vit_jax/inference_time.py
常见引用错误案例分析
错误案例1:遗漏核心论文
错误引用:仅引用ViT基础论文,未引用使用的AugReg训练方法
正确做法:同时引用Dosovitskiy et al. (2020)和Kolesnikov et al. (2021),并在方法部分说明使用了AugReg中的数据增强策略
错误案例2:模型版本模糊
错误引用:"使用了Vision Transformer B/16模型"
正确做法:"使用了ViT-B/16模型(预训练于ImageNet-21k,配置:b16,cifar10,参见vit_jax/configs/vit.py)"
错误案例3:代码引用不规范
错误引用:"基于Google的ViT代码实现"
正确做法:"基于vit_jax/main.py的微调代码,修改了学习率调度策略(第156-178行)"
项目致谢与贡献说明
根据CONTRIBUTING.md,任何基于该项目的二次开发或研究成果,应在致谢部分提及核心开发者:Alexey Dosovitskiy、Lucas Beyer、Alexander Kolesnikov等。对于商业用途,需联系项目团队获取授权。
引用检查清单
为确保引用完整准确,建议使用以下检查清单:
- [ ] 已明确区分引用的是论文、模型还是代码
- [ ] 论文引用包含全部作者、年份和会议信息
- [ ] 模型引用包含完整checkpoint路径和配置参数
- [ ] 代码引用包含具体文件路径和版本信息
- [ ] 致谢部分包含所有相关贡献者
通过遵循上述规范,不仅能确保学术写作的严谨性,还能帮助读者准确复现实验结果,推动计算机视觉领域的开放协作与知识共享。项目完整文档可参考README.md,最新模型和代码更新请关注官方仓库。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0446
源启盛夏_AtomGit暑期开发者成长计划「源启盛夏」暑期校园开发者成长计划旨在激活校园开源力量,通过积分激励、认证扶持、资源倾斜等形式,引导高校组织和开发者完成「入驻 — 建项目 — 做贡献 — 获认证 — 得资源」的完整闭环。无论你是想带领社团入驻平台的组织者,还是希望用代码贡献证明自己的开发者,都能在这里找到属于你的成长路径。Markdown00
jiuwenswarmJiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0760
Hy3Hy3 是由腾讯混元团队研发的快慢思考融合的混合专家模型,总参数量 295B,激活参数 21B,MTP 层参数 3.8B。4 月底发布 Hy3 Preview 后,我们在 50 多个业务中获得了广泛的反馈,修复了各种体验问题,进一步提升了后训练的质量和规模。今天,我们发布 Hy3。它展现出显著强于同尺寸并比肩旗舰(参数规模往往是 Hy3 的 2~5 倍)开源模型的智能水平,显著提升了在各类产品和生产力任务中的实用价值。Python00
AscendNPU-IRAscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优C++0310
DragonOSDragonOS is an operating system developed from scratch using Rust, with Linux compatibility. It is designed for **Serverless** scenarios. 使用Rust从0自研内核,具有Linux兼容性的操作系统,面向云计算Serverless场景而设计。Rust00

