对应 Maps to:Stanford CS525 Winter 2026 Training Data for AI,1/7 Reliable generalization from training data(Ludwig Schmidt,80 页 slides),以及 1/12 那次课前 32 页 slides(CLIP 鲁棒性来源的控制实验)。阅读:Taori et al. Measuring Robustness to Natural Distribution Shifts in Image Classification(NeurIPS 2020)、Radford et al. Learning Transferable Visual Models From Natural Language Supervision(CLIP,ICML 2021)、Fang et al. Data Determines Distributional Robustness in Contrastive Language Image Pre-training(ICML 2022)。 依据说明:本讲主要依据这两份 slides。CLIP 的具体数字核对了 CLIP 原文(图 13、图 14、图 6);人类在 ImageNet 上的表现依据 slides 引用的 Shankar et al.(2020);不同网络数据来源的比较依据 Nguyen et al.(2022);WiSE-FT 的数字核对了原文摘要。第 6 节”延伸与前沿”是我补充的。 配套代码 Code:
code/lecture02/(numpy + PyTorch;3 个脚本 + 3 个模块;最慢的03_what_makes_clip_robust.py约 85 秒) 预计阅读时间:3 小时(含运行代码)
0. 本讲导航 · How to read this lecture
0.1 学习目标 Learning goals
学完这一讲,你应该能够:
- 说清楚统计学 / 数据科学和机器学习在”什么是好的数据集”上的根本区别。
- 解释人类在 ImageNetV2 上的表现说明了什么,以及高准确率时代 top-1 / top-5 的缺陷和多标签评测。
- 描述 ImageNet 的几个”自然分布偏移”测试集,解释”准确率在一条线上”(accuracy on the line)和有效鲁棒性(effective robustness)的定义,并能用 probit 尺度的直线算出一个模型的有效鲁棒性。
- 说出 Taori et al.(2020)的主要结论:几乎所有鲁棒性干预都留在线上,只有”用多得多的数据训练”有一点效果。
- 解释 CLIP 是什么、零样本分类怎样做,以及 CLIP 的有效鲁棒性为什么令人吃惊;微调为什么会把它拿走,WiSE-FT 怎样部分地保留它。
- 复述 Fang et al.(2022)的控制变量实验:架构、训练集大小、语言监督、对比损失、提示都被排除,剩下的是训练分布;以及”语言监督的真正作用是让更多样的数据可用”。
- 理解有效鲁棒性这个度量本身的局限。
0.2 先修与本讲范围 Prerequisites & scope
| 默认你已经会 Assumed | 本讲只给直觉,后面几讲再展开 Previewed only |
|---|---|
| 第 1 讲:ImageNet、ImageNetV2、误差分解、probit 难度模型 | LAION 和网络图文数据的构建(第 3 讲) |
| 分类器、softmax、交叉熵 | DataComp:用”过滤”系统地设计训练集(第 5 讲) |
| 嵌入向量、余弦相似度(不熟也没关系,§4.1 会讲) | 合成数据、数据混合(第 10–11 讲) |
| Python 基础;PyTorch 不熟也没关系,代码里有解释 |
0.3 本讲地图 Map
§1 统计学 vs 机器学习:什么是"好"的数据集 ← 代码 01 演示 3
§2 从 ImageNetV2 到更大的偏移:人类的表现;多标签评测;其他领域
§3 准确率在一条线上:偏移测试集;有效鲁棒性;鲁棒性干预几乎都无效 ← 代码 01 演示 1–2
§4 CLIP:离开那条线;零样本分类;微调与 WiSE-FT ← 代码 02
§5 CLIP 的鲁棒性从哪里来:一个一个排除,剩下训练数据 ← 代码 03
§6 延伸与前沿:有效鲁棒性的局限;之后的发展
§7–11 小结、常见误区、练习、延伸阅读、下一讲预告
0.4 记号 Notation
| 符号 | 含义 |
|---|---|
| ID / OOD | 分布内(in-distribution,例如 ImageNet 验证集)/ 分布外(out-of-distribution,例如 ImageNet-Sketch) |
| , | 模型 在分布内 / 分布外测试集上的准确率 |
| , | 标准正态分布的累积分布函数和反函数(probit) |
| 基线直线:给定分布内准确率,“普通”模型的分布外准确率 | |
| ER | 有效鲁棒性(effective robustness): |
| CLIP 的温度(相似度乘以的系数) |
0.5 关于数字 · About the numbers
讲义里的实验数字都来自配套代码的实际输出(固定种子,PyTorch 单线程,同一台机器上重复运行逐字相同)。代码的世界是第 1 讲视觉世界的扩展(domain_world.py):每张”图”的特征分成形状(32 维,所有风格里都有)和纹理(16 维,照片里很清楚,素描里没有)两块,有 5 种风格(照片、油画、卡通、素描、渲染),还能生成带 alt-text 的”网络图文对”。CLIP 是一个能在笔记本上几秒钟训练完的迷你版(clip_lite.py)。
合成世界演示的是机制,有几处和真实世界不一致,正文会明确指出:迷你 CLIP 的有效鲁棒性只有几个百分点(真实的 CLIP 是几十个百分点);ObjectNet 式的偏移(物体转了个方向)在这个线性的小世界里几乎得不到改善;WiSE-FT 的”插值比两端都好”没有复现。有效鲁棒性本身有约 ±0.01–0.015 的噪声(每个测试集 4000 张图),差别小于这个量级的不要当真。
1. 统计学 vs 机器学习:什么是”好”的数据集
slides 在回顾 ImageNet 之前,先停下来问了一个更基本的问题:数据在 AI / 机器学习里的角色,和在统计学 / 数据科学里有什么不同?
| 统计学 / 数据科学 | 机器学习 / AI | |
|---|---|---|
| 为什么收集数据 | 分析它,了解世界 | 在上面训练模型,自动化任务 |
| 共同点 | 都关心怎样收集数据;都用计算机处理;处理过程(分析、训练)都常用统计语言描述 | 同左 |
| 什么是”好”的数据集 | 有代表性(例如随机抽样),能无偏地估计总体的量 | 能让模型在部署时的各种情况下都工作——常常需要刻意不具代表性 |
两者的目标不同,“好的数据集”的标准往往完全不同。统计学里最重要的是代表性:想知道全国有多少人支持某个政策,就要随机抽样,抽样偏差会直接变成估计偏差。机器学习里,代表性常常不是目标,甚至是问题:如果部署时 95% 的图片是照片、5% 是素描,一个按真实比例收集的训练集里素描太少,模型在素描上会很差;而”素描上很差”可能正是部署时最致命的错误。
代码 01 演示 3 把这个区别做成了一个小实验。“互联网”上 80% 是照片,其余 4 种风格各 5%。同样 6000 张图,一份按真实比例抽,一份按风格均衡地抽:
| 训练集 | “素描占比”的估计(真值 0.050) | 按真实比例加权的整体准确率 | 最差风格(素描)的准确率 |
|---|---|---|---|
| 按真实比例 | 0.051 | 0.529 | 0.309 |
| 按风格均衡 | 0.199 | 0.492 | 0.380 |
想估计素描占多少(统计学的任务),均衡样本完全错了(0.199);想训练一个各种风格都能用的分类器(机器学习的任务),均衡样本让最差风格从 0.309 提到 0.380,代价是常见情况(照片)略差、整体加权准确率从 0.529 降到 0.492。
这个区别贯穿整门课:后面的过滤、去重、混合、合成数据,都是为”训练出好模型”而不是”代表世界”来设计数据。当然,“好模型”本身是相对于某个目标而言的——这里”最差风格的准确率”和”按真实比例加权的准确率”就给出了相反的答案。设计训练数据之前,先想清楚你要优化的是什么。
2. 从 ImageNetV2 到更大的分布偏移
2.1 回顾:ImageNetV2 和三种过拟合
第 1 讲的结论(slides 又回顾了一遍):按原来的流程从同一个来源再收集一份测试集,所有 ImageNet 模型的准确率都掉了 11–14 个百分点,排名几乎不变;误差分解显示适应性差距 ≈ 0%、泛化差距 ≈ 1%、分布差距 ≈ 11%。slides 补充了 ImageNet 的创建流程四步:(1) 从 WordNet 里为每个类别找搜索关键词(例如 wnid n01443537 对应 “goldfish”、“Carassius auratus”);(2) 在 Flickr 上搜索图片;(3) 让 MTurk 工人看图;(4) 抽样成类别均衡的数据集。复现时最可能引入分布偏移的是第 3、4 步:MTurk 标注(任务界面是”选出所有含有某物体的图”,例如 “Select all images containing a bow”)和按选择频率抽样。三个新测试集都是正确标注的,准确率却从 −12% 到 +2%。
2.2 人类会掉准确率吗?
如果 ImageNetV2 的图片真的”更难”,人也应该做得更差。Shankar、Roelofs、Mania、Fang、Recht、Schmidt(2020)做了这个实验,过程本身就很能说明”评测数据”有多难做:
第一个问题:评价指标本身不行了。 top-1 和 top-5 在 2010 年左右”中等准确率”的时代很有用,到了 2020 年的高准确率时代有明显的缺陷(slides):
- 一张图里有好几个物体:一张书桌的照片里有显示器、屏幕、台灯、灯罩、书桌、键盘、鼠标、音箱、台式电脑……标签只有一个,模型说了另一个也算错。
- 类别之间有包含关系:ImageNet 里同时有 “tusker”(有长牙的象)和 “Indian elephant”、“mushroom” 和 “gyromitra”(一种蘑菇)——一头印度象完全可以同时是 tusker。
- 而 top-5 又让任务太容易:豹(leopard)和美洲豹(jaguar)这种本来能分清的类别,给 5 次机会就不用分了。
他们的做法:多标签准确率。 每个分类器仍然只预测一个标签,但每张图可以有多个正确标签,预测落在标签集合里就算对(例如一张标签是 “picket fence”(尖桩篱笆)的图,实际是一场婚礼,正确标签包括新郎、领结、礼服、篱笆)。为此他们给 ImageNet 和 ImageNetV2 的 40,683 张图做了专家级的多标签标注,审查了 182,597 个不同的模型预测;有争议的标签用多数投票。有些类别(尤其是狗的品种、一些猴子)要花几个小时查资料(例如对照美国养犬俱乐部 AKC 的品种标准区分法国斗牛犬和波士顿㹴),标注指南有约 400 页。统计结果:80% 的图只有 1 个正确标签,15% 有 2 个,3% 有 3 个,2% 有 4 个或更多。
人类评测的流程:第一阶段三位作者(Becca、Ludwig、Vaishaal)花了 6 个月做多标签标注;为了避免”自己标的测试集自己考”,隔了 6 个月才开始第二阶段,并加入了两位新的专家;然后培训 2 个月、评测 1 个月、最后复核 10 天。
结果(slides 上的多标签 top-1 准确率):
| 最好的模型 ImageNet | 最好的模型 V2(变化) | 最好的人 ImageNet | 最好的人 V2(变化) | |
|---|---|---|---|---|
| 全部 | 96% | 90%(−6%) | 96.2% | 97%(+0.5%) |
| 生物(含狗的品种等) | 96% | 90%(−6.3%) | 92.6% | 93%(+0.2%) |
| 物体 | 95% | 89%(−5.9%) | 99.1% | 99.8%(+0.7%) |
人在 ImageNetV2 上没有掉准确率,在”物体”类上比最好的模型高 11 个百分点;人比模型差的只有生物类,主要是狗的品种(他们后来请教了一位有 20 年经验的 AKC 评审,发现人在狗上还有提升空间——slides 的附注:我们真的应该关心 130 个狗的品种吗?大概不该)。
这说明 ImageNetV2 的偏移是对模型而言的”更难”,而不是任务本身变难了。模型在某个意义上利用了原测试集特有的东西,人没有。
(第 2 讲代码 01 的”只看形状的观察者”是一个类似的参照:它在素描上和在照片上几乎一样好,远在模型的直线之上。但在合成世界的 V2 上它也掉了——那里的 V2 是”图更模糊”,对谁都更难。这一点合成世界没有复现真实的 ImageNetV2。)
2.3 不只是图像分类
slides 展示了同样的现象出现在别的地方:Miller、Krauth、Recht、Schmidt(2020)在问答(SQuAD)上复现了数据集,换到维基百科、纽约时报、Reddit、亚马逊评论上的新测试集,模型同样掉了准确率,同样大致在一条线上;姿态估计、物体检测(Miller et al. 2021)、MRI 图像重建(Darestani et al. 2021)也有类似的报告。slides 还引用了一篇关于已部署 AI 系统出问题的报道,其中的作者援引 Recht 等人的话提醒:当前的准确率数字很脆弱,对数据分布哪怕微小的自然变化都很敏感——即使在一个严格控制的复现实验里,分布偏移也是真实存在的问题。
对评测的启示(slides):要衡量鲁棒性,必须超越”训练集 / 验证集 / 测试集都从同一个分布随机切出来”的做法,在来自不同分布的测试集上评测。
3. 准确率在一条线上 · Accuracy on the line
3.1 ImageNet 的自然分布偏移测试集
为了系统地研究鲁棒性,研究者为 ImageNet 构造了一批新的测试集,类别和 ImageNet 相同(或是子集),但图片的分布不同:
| 测试集 | 怎样收集 | 和 ImageNet 有什么不同 |
|---|---|---|
| ImageNetV2(Recht et al. 2019) | 按原流程从 Flickr 重新收集 | 几乎没有不同——“稍难一点” |
| ObjectNet(Barbu et al. 2019) | 众包工人按指定的姿态、位置、背景给物体拍照 | ImageNet 的图大多是”物体居中、干净”的 Flickr 照片;ObjectNet 刻意随机化了姿态(倒放的椅子)、地点(卧室里的锅)和视角 |
| ImageNet-Sketch(Wang et al. 2019) | 用类别名搜索”素描”图片 | 只有黑白线条,没有颜色和纹理 |
| ImageNet-R(Hendrycks et al. 2021) | 艺术、卡通、涂鸦、刺绣、玩具、雕塑等”再现”(rendition) | 风格各异 |
| ImageNet-A(Hendrycks et al. 2021) | 挑出让 ResNet 出错的自然图片 | “对抗性”地筛选过的自然图片 |
这些叫自然分布偏移,和两类”合成”的偏移不同:给图片加上噪声、模糊、雪花等人造干扰(ImageNet-C),以及专门优化出来的对抗扰动( 范数下的对抗样本)。
3.2 Taori et al.(2020):评测一切
Taori、Dave、Shankar、Carlini、Recht、Schmidt(2020)的做法是”评测一切”:204 个 ImageNet 模型(标准模型、各种”鲁棒”模型、用更多数据训练的模型)× 213 个测试条件(自然偏移、合成干扰、对抗攻击),一共做了十几万次评测。主要发现:
- 标准模型落在一条直线上:把每个模型画成一个点,横轴是 ImageNet 准确率,纵轴是某个偏移测试集上的准确率,所有”标准模型”(AlexNet、VGG、ResNet、DenseNet、NASNet、EfficientNet……)都几乎落在一条直线上(在 logit 或 probit 尺度上)。这条线就是基线准确率 :给定 ImageNet 准确率,一个普通模型在偏移上”应该”有多少。
- 有效鲁棒性:一个模型的分布外准确率高出基线多少:
为什么要这样定义?因为分布内更好的模型,分布外通常也更好——这只是”更好”,不是”更鲁棒”。有效鲁棒性问的是:在分布内准确率相同的前提下,分布外是否更好? 一个”理想的鲁棒模型”应该落在 的线上(分布内外一样好);slides 上人类就远在模型的直线上方,接近 。 3. 几乎所有鲁棒性干预都没有有效鲁棒性:对抗训练、特殊的数据增强等方法,在自然偏移上几乎都落在线上(对合成干扰的鲁棒性也很少能迁移到自然偏移)。在 ImageNet-Sketch 和 ImageNet-R 上,对抗训练和数据增强有一些收益(slides),但用更多数据训练的模型仍然最好。 4. 唯一的例外:用多得多的数据训练。在 JFT-300M、Instagram-1B、ImageNet-21k 上预训练的模型有一点点有效鲁棒性——但差距远远没有被填上。
slides 的总结:2020 年底的开放问题是——怎样填上这个差距?
3.3 为什么是一条线?
第 1 讲 §5.7 的 probit 难度模型给了一个解释:如果每个样本有一个”难度”,每个模型有一个”技能”,两个测试集的区别可以概括成”难度分布变了”,那么所有模型在 probit 尺度上就落在一条直线上,不管它们是什么架构、怎样训练。“准确率在一条线上”说明:用同一个训练分布训练出来的模型,在分布偏移上的表现主要由它们在分布内有多好决定——换模型、换训练技巧,只是沿着线移动。要离开这条线,需要改变某种更根本的东西。Miller et al.(2021,Accuracy on the Line)在更多的数据集和偏移上验证了这个规律,也记录了它的例外(有些偏移上两者的相关性很弱)。
3.4 在合成世界里复现
代码 01 演示 1 在第 2 讲的合成世界里构造了同样的一组测试集:
| 测试集 | 合成世界里怎样构造 |
|---|---|
| ImageNet | 精选照片:常规姿态、清晰度偏高(和训练集同分布) |
| V2 | 照片,清晰度稍低 |
| ObjectNet | 照片,但物体姿态不寻常(35°–70°),背景里混着别的东西的纹理 |
| Sketch | 素描:没有类别纹理,只有共享的素描风格 |
| Rendition | 油画 / 卡通 / 渲染各三分之一:纹理很弱、风格各异 |
20 个只在精选照片上训练的模型(4 种分类器 × 每类 3 到 300 张训练图),ImageNet 准确率从 0.314 到 0.749。在 probit 尺度上拟合直线:
| 偏移 | 斜率 | 截距 | |
|---|---|---|---|
| V2 | 0.98 | −0.10 | 0.998 |
| ObjectNet | 0.81 | −0.54 | 0.968 |
| Sketch | 0.53 | −0.59 | 0.913 |
| Rendition | 0.66 | −0.38 | 0.981 |
模型类型和训练数据量都不同,点却几乎都在一条直线上。素描上的线最平(斜率 0.53):照片上学到的本事(纹理),很多在素描上用不上。
代码 01 演示 2 测试了几种”干预”的有效鲁棒性(括号里是 ER):
| 模型 | ImageNet | Sketch(ER) | Rendition(ER) | ObjectNet(ER) | 平均 ER |
|---|---|---|---|---|---|
| 标准训练(照片 300 张 / 类) | 0.749 | 0.408(+0.002) | 0.535(+0.008) | 0.499(−0.003) | +0.002 |
| 更多照片(1500 张 / 类) | 0.766 | 0.422(+0.004) | 0.542(+0.001) | 0.510(−0.010) | −0.003 |
| 更强的正则化 | 0.750 | 0.408(+0.001) | 0.525(−0.003) | 0.507(+0.003) | +0.001 |
| 通用增强(高斯噪声) | 0.747 | 0.398(−0.007) | 0.524(−0.001) | 0.508(+0.008) | +0.001 |
| 针对性增强(纹理风格化) | 0.728 | 0.549(+0.156) | 0.595(+0.085) | 0.425(−0.055) | +0.043 |
| 多样数据(网络图片,同样张数) | 0.731 | 0.519(+0.124) | 0.581(+0.069) | 0.464(−0.020) | +0.044 |
| 参照:只看形状的”人” | 0.628 | 0.626(+0.288) | 0.610(+0.174) | 0.334(−0.059) | +0.100 |
和 Taori 等人的发现一致:更多同分布的照片、更强的正则化、通用的数据增强都只是沿着线移动。两种方法离开了线:
- 针对纹理的风格化增强(模仿 Geirhos et al. 2019 的 Stylized-ImageNet):把训练图的纹理随机缩放、加噪声。它在素描上 ER +0.156——但这是因为我们知道这个世界的偏移来自纹理。它在 ObjectNet 上 −0.055,ImageNet 本身也从 0.749 降到 0.728。真实世界里你不知道明天的偏移是什么,增强只对它”预见到”的偏移有用。
- 多样的数据:同样张数,只是风格更多样、更随意的网络图片(真实标签)。Sketch +0.124、Rendition +0.069;V2 上没有变化,ObjectNet 上略低。
数据覆盖了哪些偏移,就对哪些偏移有用。 这正是 §5 要论证的结论的雏形。
4. CLIP:离开那条线
4.1 CLIP 是什么
2021 年 1 月 5 日,OpenAI 同时发布了 CLIP 和 DALL·E 两篇多模态论文(第 3 讲会讲它们的数据)。CLIP(Contrastive Language-Image Pre-training,Radford et al. 2021)的设定:
- 数据:从网上收集的 4 亿个(图片, 说明文字)对(OpenAI 内部的数据集,论文里叫 WIT,WebImageText)。
- 算力:250–600 块 GPU,最长训练 18 天。
- 模型:两个编码器——图片编码器(ResNet 或 Vision Transformer,最大约 3 亿参数)和文字编码器(Transformer)。
- 训练目标:对比学习。一个 batch 里有 对(图, 文)。把每张图、每段文字都编码成向量并归一化,算出 的相似度矩阵 。对每一行做 softmax、要求第 行的最大值在第 列(“这张图的说明是第 段文字”),对每一列也这样做:
batch 里其他 段文字自动充当”负例”——这就是对比学习不需要类别标签的原因。
零样本分类:训练完之后,把每个类别名写成一句提示(例如 “a photo of a golden retriever”),用文字编码器得到每个类别的向量;一张图属于哪个类,就看它的图片向量和哪个类别向量最像。不需要任何带标签的训练图片。slides 把它和 GPT-2(2019)的”零样本”能力并列:同样是在海量网络数据上训练、不针对任何任务,却能直接用在任务上。
当时最好的模型大多来自”两步走”:在大规模、嘈杂的网络数据上预训练,再在小规模、干净的任务数据上微调。CLIP 跳过了微调这一步。
4.2 惊人的有效鲁棒性
CLIP 原文的图 13 比较了最好的零样本 CLIP(ViT-L/14@336px)和一个 ImageNet 准确率完全相同(76.2%)的标准模型 ResNet-101:
| 测试集 | ResNet-101 | 零样本 CLIP | 差别 |
|---|---|---|---|
| ImageNet | 76.2 | 76.2 | 0 |
| ImageNetV2 | 64.3 | 70.1 | +5.8% |
| ImageNet-R | 37.7 | 88.9 | +51.2% |
| ObjectNet | 32.6 | 72.3 | +39.7% |
| ImageNet-Sketch | 25.2 | 60.2 | +35.0% |
| ImageNet-A | 2.7 | 77.1 | +74.4% |
这就是 slides 上那几个数字(+6%、+51%、+40%、+35%、+74%)。论文说零样本 CLIP 把”鲁棒性差距”(到 的理想线的距离)缩小了最多 75%。所有零样本 CLIP 模型(不同大小、不同架构)落在一条新的、高得多的直线上。
代码 02 演示 1 在合成世界里训练了一个迷你 CLIP(3 万个网络图文对,说明文字有 30% 含糊、10% 错误):
| 模型 | ImageNet | Sketch(ER) | Rendition(ER) | 平均 ER |
|---|---|---|---|---|
| 监督学习:精选照片(真实标签) | 0.734 | 0.410(+0.013) | 0.527(+0.013) | +0.004 |
| 监督学习:网络图片(硬匹配标签) | 0.715 | 0.504(+0.119) | 0.564(+0.064) | +0.033 |
| 零样本 CLIP:网络图文对 | 0.664 | 0.410(+0.054) | 0.502(+0.040) | +0.026 |
迷你 CLIP 从没见过一个类别标签,平均有效鲁棒性 +0.026,离开了照片模型的线——幅度比真实 CLIP 小得多(合成世界的偏移和数据都简单得多),但方向一致。更有意思的是第二行:同一批网络图片,不用语言、只用”说明文字里有类别名”硬匹配出的标签做监督学习,也离开了线(+0.033)。这是第一个提示:鲁棒性也许不来自语言或对比学习,而来自网络数据本身。§5 会把这个猜测拆开检验。
(两种网络模型都没有在 ObjectNet 上获益:合成世界里 ObjectNet 的偏移是”物体转了个方向”,线性的图片编码器学不会这种不变性。真实的 CLIP 在 ObjectNet 上有 +39.7%,这一点合成世界没有复现。)
4.3 适配到 ImageNet:准确率上去,鲁棒性下来
slides 指出了一个代价:微调会降低鲁棒性。CLIP 原文的图 14 做了一个更温和的实验:不改 CLIP 的图片编码器,只在 CLIP 特征上用 ImageNet 训练集训练一个 L2 正则化的逻辑回归(线性探针)。ImageNet 准确率提高了 9.2%(到 85.4%,追平了 2018 年的最好水平),分布偏移上的平均准确率却略有下降。论文的评论:相当于三年进步的 9.2%,却没有在分布偏移上带来任何提升。另外,CLIP 原文的图 6 报告:在 20 多个数据集上平均,零样本 CLIP 大约相当于在同一特征上用每类 4 张图训练的线性分类器。
代码 02 演示 2 复现了这个模式:冻结迷你 CLIP 的图片编码器,用每类 张精选照片训练线性分类头。
| 零样本 | k = 1 | 4 | 16 | 64 | 300 | |
|---|---|---|---|---|---|---|
| ImageNet | 0.664 | 0.280 | 0.451 | 0.602 | 0.678 | 0.705 |
| 平均 ER | +0.026 | +0.008 | +0.015 | −0.004 | +0.007 | +0.001 |
零样本模型的有效鲁棒性最高;用每类 300 张 ImageNet 照片训练分类头之后,ImageNet 准确率从 0.664 升到 0.705,有效鲁棒性降到 +0.001——回到了线附近。图片编码器完全没变,变的只是分类头”学会了 ImageNet 照片的特点”(例如:纹理很可靠)。中间的 在 −0.004 到 +0.015 之间跳动,没有清楚的趋势——这是 ER 的噪声,不要过度解读。迷你 CLIP 的零样本准确率介于 和 之间,比真实 CLIP(约相当于 4 张图)相对更强:这里每个类别名是一个没有歧义的单词。
4.4 能不能两者兼得?WiSE-FT
slides 的问题:“我们能同时得到高的分布内准确率和分布外准确率吗?“Wortsman et al.(2022)的 WiSE-FT(weight-space ensembling for fine-tuning)给出一个出奇简单的答案:把零样本模型的参数 和微调后模型的参数 做线性插值,
为什么能行:微调是从零样本模型出发的,两组参数在参数空间里”连在一起”,中间的点通常仍然是好模型。他们报告,在 ImageNet 和 5 个由它派生的分布偏移上,WiSE-FT 比之前的方法在分布偏移上高 4–6 个百分点,同时 ImageNet 本身也提高了 1.6 个百分点。
代码 02 演示 3 在迷你 CLIP 上试了一下:
| α | 0(零样本) | 0.2 | 0.4 | 0.6 | 0.8 | 1(微调) |
|---|---|---|---|---|---|---|
| ImageNet | 0.664 | 0.703 | 0.724 | 0.737 | 0.739 | 0.737 |
| 四个偏移的平均准确率 | 0.492 | 0.509 | 0.519 | 0.526 | 0.530 | 0.529 |
| 平均 ER | +0.026 | +0.012 | +0.004 | −0.000 | +0.002 | +0.003 |
微调把有效鲁棒性从 +0.026 降到 +0.003——这一点复现了。但”中间的点比两端都好”没有明显出现:α = 0.8 的平均准确率只比微调模型高 0.001,在噪声之内。原因是:迷你 CLIP 的零样本模型在照片上弱得多,微调虽然降低了有效鲁棒性,却提高了偏移上的绝对准确率(0.492 → 0.529),插值也就没有什么可”找回”的。这提醒我们区分两个量:有效鲁棒性是相对于基线的,绝对准确率才是部署时看到的。
5. CLIP 的鲁棒性从哪里来?
5.1 六个假设
CLIP 和标准的 ImageNet 训练几乎在每个方面都不同。slides 列出了六个可能的原因:
| 因素 | CLIP | 标准 ImageNet 监督学习 |
|---|---|---|
| 损失函数 | 对比损失 | 交叉熵(分类) |
| 语言监督 | 有 | 没有 |
| 训练分布 | ??? | ImageNet |
| 测试时的提示 | 有 | 没有 |
| 训练集大小 | 4 亿 | 120 万 |
| 模型架构 | ViT(也有 CNN) | CNN |
Fang、Ilharco、Wortsman、Wan、Shankar、Dave、Schmidt(2022)逐个检验了这些因素。
5.2 排除架构和训练集大小
- 架构:CLIP 原文已经显示,ViT 和 CNN 的 CLIP 落在同一条鲁棒性线上——架构改变的是模型有多好(沿着线移动),不改变它在哪条线上。
- 训练集大小:Taori 等人(2020)的结论是训练集大小本身不改变有效鲁棒性。slides 还展示了用 OpenCLIP 在 YFCC 的 300 万、700 万、1500 万对数据上训练的 CLIP——和 OpenAI 用 4 亿对训练的 CLIP 落在同一条线上。
YFCC-15M 是这里的关键数据集:它是 Yahoo Flickr Creative Commons 1 亿张图片数据集的一个子集,由 OpenAI 公开,作为其内部训练集的一个有代表性的部分(它本身也是 OpenAI 那 4 亿对的一部分)。在 YFCC-15M 上训练的 CLIP 同样有有效鲁棒性——所以研究”鲁棒性从哪里来”可以在公开的、小得多的数据上进行。
5.3 语言监督本身不带来鲁棒性:ImageNet-Captions
理想的比较是:在同一份图片上,有文字 vs 没有文字。但 ImageNet 没有说明文字。可选的办法有:用模板造文字(“A photo of a German shepherd”)、用图片描述模型生成、找人重新写、或者——如果存在的话——找回原始的文字。Fang 等人选了最后一种:把 46 万张 ImageNet 图片连回 Flickr,找回了上传者写的原始标题和描述,构造了一个新的图文数据集 ImageNet-Captions。
在 ImageNet-Captions 上训练的 CLIP(有语言、有对比损失):没有有效鲁棒性。语言监督本身不带来鲁棒性。
5.4 语言也不是必需的:NoCLIP
反过来:能不能不用语言,在 YFCC 上得到同样的鲁棒性?他们的 “NoCLIP” 流程:
- 只用 YFCC-15M 的图片,用 SimCLR 训练一个表示(SimCLR:把同一张图的两种增强版本映射到相近的表示,不需要任何标签);
- 用 ImageNet 的类别名在 YFCC 的说明文字里做子串匹配,得到一个带标签的子集 YFCC-hardmatch——这是整个流程里唯一用到语言的一步;
- 在 YFCC-hardmatch 上把 SimCLR 表示微调成一个 ImageNet 分类器。
结果:NoCLIP 是鲁棒的。语言监督不是鲁棒性的必要条件。
再加上测试时的提示变化和其他几种对比损失(SimSiam、SimCLRv2、SwAV)——它们都没有带来鲁棒性的收益(slides)。
5.5 在合成世界里做同样的控制实验
代码 03 演示 1 是一个 2 × 2 的控制实验:数据 {精选照片 + 原始说明文字(ImageNet-Captions 的对应物),网络图文对(YFCC 的对应物)} × 训练方式 {监督分类,对比学习},四个模型的图片编码器结构完全相同。
| 监督学习 | 对比学习 | |
|---|---|---|
| 照片(+ 说明文字) | +0.007 | −0.004 |
| 网络图文对 | +0.050 | +0.014 |
(表里是平均有效鲁棒性。)有效鲁棒性跟着”数据”那一行走,而不是跟着”训练方式”那一列走。 照片上的两个模型都在线上;网络数据上的两个模型都离开了线——不用语言的监督学习(硬匹配标签)甚至更多。
代码 03 演示 2–3 检验了其他因素:
- 训练集大小:网络图文对从 3000 增加到 9 万,ImageNet 准确率从 0.483 升到 0.674,平均 ER 在 +0.014 到 +0.028 之间,没有随数据量增长。
- 提示:同一个模型,“<类别名> photo” +0.014,只有类别名 +0.030,五种风格词的提示集成 +0.020。差别和噪声同量级——和 Fang 等人的结论一致。
- 架构:这里有一个和真实世界不完全一致的地方。MLP 编码器只在照片上训练时 ER −0.006(仍在线上:架构本身不带来鲁棒性);但在网络数据上,MLP 编码器的 ER(+0.036)比线性编码器(+0.014)高,差别超过噪声。非线性的编码器能从多样的数据里学到更多(例如”看到素描风格时就别指望纹理”),线性编码器做不到——但前提是数据里有这些风格。
5.6 不同的数据来源,不同的鲁棒性
如果鲁棒性来自数据,那么不同的数据应该给出不同的鲁棒性。Nguyen、Ilharco、Wortsman、Oh、Schmidt(2022)用六个公开的网络数据来源(YFCC、LAION、Conceptual Captions、WIT、RedCaps、Shutterstock)分别训练 CLIP:在不同的分布偏移上表现差别很大,没有哪个来源处处最好;而把多个来源混在一起,不一定得到更好的模型——最好的那个来源的鲁棒性会被稀释,而不是叠加。
代码 03 演示 4 模拟了五个”网站”(各 3 万个图文对):
| 数据来源 | ImageNet | Sketch(ER) | Rendition(ER) | ObjectNet(ER) | 平均 ER |
|---|---|---|---|---|---|
| 照片网站(照片 90%) | 0.671 | 0.287(−0.073) | 0.416(−0.051) | 0.461(+0.032) | −0.023 |
| 百科网站(照片 / 画作 / 渲染) | 0.674 | 0.371(+0.009) | 0.469(+0.000) | 0.450(+0.018) | +0.009 |
| 美术网站(画作 / 卡通 / 素描) | 0.589 | 0.486(+0.168) | 0.513(+0.104) | 0.334(−0.027) | +0.064 |
| 剪贴画网站(卡通 / 渲染) | 0.581 | 0.482(+0.169) | 0.499(+0.095) | 0.355(−0.000) | +0.069 |
| 风格均衡 | 0.632 | 0.437(+0.098) | 0.510(+0.072) | 0.384(−0.012) | +0.041 |
| 照片网站 + 美术网站 各一半 | 0.659 | 0.399(+0.045) | 0.489(+0.031) | 0.426(+0.007) | +0.025 |
几个值得注意的地方:
- 照片网站训练的 CLIP——对比学习、语言监督都有——几乎没有有效鲁棒性,素描上甚至在线下方。数据和 ImageNet 一样单一。但它在 ObjectNet 上有一点正的 ER:网络照片里有四分之一姿态不寻常,正好覆盖了 ObjectNet 的偏移。
- 剪贴画网站里一张素描都没有,Sketch 上的 ER 却和美术网站一样高(+0.169)。卡通和渲染图的纹理很弱,模型从中学会了”别依赖纹理”,这个本事正好也适用于素描。所以”数据覆盖了偏移”不是字面意义上的”见过这种风格”,而是数据有没有打破训练集里那条虚假的捷径(纹理 ↔ 类别)。
- 两个来源各取一半,Sketch 的 ER 介于两者之间——稀释,而不是叠加。
5.7 直觉:为什么”一条线”,又为什么多样的数据能离开它
用一个最简单的模型把 §3–5 串起来。设一个二分类问题(),每张图有两个特征:
- 形状 ,噪声 ——在所有风格里都一样;
- 纹理 ,噪声 —— 是风格 的纹理增益:照片里 ,素描里 。
一个线性分类器 在风格 上的准确率是
把它写成只依赖于纹理权重和形状权重之比 的形式:
两个观察:
- 同一个训练分布 → 同一个 → 一条线。 只在照片上训练时,最优的 由照片里纹理和形状各自有多可靠决定(大约 )。不同的模型、不同的训练数据量,主要区别在于估计得有多准(加上估计噪声,相当于两个准确率都打了同样的折扣),而不在于 ——于是它们沿着同一条曲线移动。这就是”准确率在一条线上”在这个小模型里的样子。
- 改变训练分布 → 改变 → 离开这条线。 如果训练数据里有一部分素描(),纹理在训练集里”平均来说”不那么可靠了,最优的 变小。 变小时,素描准确率上升(分母变小),照片准确率略降(少用了一个有用的信号)。在”照片准确率 → 素描准确率”的图上,这个模型落在照片模型那条线的上方——有效鲁棒性。
这个小模型还解释了几个代码里的现象:
- 为什么更多照片不管用:更多照片让 估计得更准,但估计的仍然是”照片上的最优 ”。
- 为什么风格化增强有用:把训练图的纹理随机缩放(相当于随机的 ),直接压低了 ——但它只针对纹理;ObjectNet 的偏移(形状本身变了)不在这个模型里,增强对它无能为力。
- 为什么没有素描的剪贴画数据也能让素描更鲁棒:卡通和渲染图的 很小(0.3、0.4),一样能压低 。重要的不是”见过素描”,而是训练分布里纹理和类别的关联不再那么可靠。
- 为什么混合会稀释:两个来源混合时, 的平均值介于两者之间, 也介于两者之间。
真实的神经网络有成千上万个”特征”,每个都有自己的”在不同分布里有多可靠”。但逻辑是同一个:模型从训练分布里学到每个特征该信多少;训练分布里可靠、部署时不可靠的特征,就是分布偏移下出错的来源。 改变训练分布,是改变模型”信什么”最直接的办法。
5.8 结论:数据决定鲁棒性,语言让数据变得多样
slides 的总结:CLIP 的可靠泛化来自训练数据,而不是语言监督;许多算法上的干预都没能提升分布偏移下的鲁棒性。
但是,语言监督是构建更多样的训练集的关键:
- CLIP 之前(ImageNet):只能收录符合严格类别结构(例如 WordNet)的图片,大量不合适的候选图片必须丢掉。
- CLIP 式的语言监督:只要文字准确地描述了图片,任何图文对都可以用来训练——可用的数据和监督信号一下子宽了很多。
这正是第 3 讲的出发点:既然训练数据决定了鲁棒性,我们能不能设计出更好的训练数据集?
6. 延伸与前沿 · Beyond the original lecture
本节是我补充的。
有效鲁棒性本身的局限。 ER 是相对于”基线直线”定义的,而基线直线依赖于用哪个测试集当”分布内”。Shi、Carlini、Balashankar、Schmidt、Hsieh、Beutel、Qin(2023)指出:比较训练分布不同的模型时(ImageNet 上训练的模型 vs 在 LAION 上训练的零样本 CLIP),只用 ImageNet 当分布内测试集是有问题的——CLIP 的”分布内”本来就不是 ImageNet。他们提出同时控制多个、覆盖各个模型训练分布的分布内测试集;在这种评测下,零样本 CLIP 类模型”令人吃惊的”有效鲁棒性明显缩小。这并不否定”数据决定鲁棒性”(不同的训练分布确实带来不同的泛化),但提醒我们:一个数字(ER)背后有一个参照系,换了参照系,结论的强弱会变。
微调过程中鲁棒性怎样消失。 Andreassen et al.(2021)跟踪了微调过程中有效鲁棒性的变化:预训练模型一开始在线上方,微调越久越接近基线直线。这和代码 02 演示 2 的模式一致,也是 WiSE-FT、LP-FT(先线性探针再微调)等”鲁棒微调”方法的出发点。
“准确率在一条线上”的例外和延伸。 Miller et al.(2021)在大量数据集上验证了这条线,也讨论了若干 ID 和 OOD 准确率相关性很弱的例外;Baek et al.(2022)的 “agreement on the line” 发现模型之间的一致率也落在线上,可以在没有 OOD 标签的情况下估计 OOD 准确率。
之后的发展。 “数据决定鲁棒性”推动了一系列以数据为中心的工作:LAION-5B(第 3 讲)、DataComp(第 5 讲)系统地研究了怎样构建更好的图文数据集;Gadre 等人在 DataComp 里也报告了不同过滤方法对分布偏移的影响。在语言模型上,“训练数据决定泛化”的视角同样成立(第 6–9 讲),而测试集污染让”分布内 / 分布外”的边界更加模糊(第 14 讲)。
7. 小结 · Summary
- 统计学收集数据是为了了解世界,要代表性;机器学习收集数据是为了自动化任务,常常需要刻意不具代表性(过采样少见但重要的情况)。
- 人在 ImageNetV2 上几乎不掉准确率,模型掉了 6–12 个百分点:ImageNetV2 的”难”是对模型而言的。高准确率时代需要多标签评测。
- 准确率在一条线上:同一个训练分布上训练的各种模型,分布内外准确率在 probit / logit 尺度上落在一条直线上。有效鲁棒性 = 实际 OOD 准确率 − 这条线的预测。
- 几乎所有鲁棒性干预(对抗训练、数据增强、更多同分布数据)都留在线上;有针对性的增强只对它预见到的偏移有用。
- 零样本 CLIP 离开了这条线(ImageNet 相同时,ImageNet-R +51%、ObjectNet +40%、ImageNet-A +74%);在 ImageNet 上适配或微调会把这种鲁棒性拿走;WiSE-FT 用参数插值部分地保留它。
- 控制变量实验排除了架构、训练集大小、语言监督、对比损失、测试时的提示:CLIP 的鲁棒性来自训练分布。不同的网络数据来源给出不同的鲁棒性,混合会稀释。
- 语言监督的真正贡献是让多样的数据可用:任何被准确描述的图片都能当训练数据,不必符合固定的类别结构。
- 有效鲁棒性依赖参照系;换成覆盖各模型训练分布的多个分布内测试集,CLIP 的优势会缩小。
8. 常见误区 · Common pitfalls
- “分布外准确率更高的模型就更鲁棒。” 分布内更好的模型分布外通常也更好;要看的是有效鲁棒性——在分布内准确率相同时,分布外是否更好。
- “数据越有代表性越好。” 对估计一个总体的量是这样;对训练一个在各种情况下都要可靠的模型,往往不是(§1)。
- “CLIP 鲁棒是因为它用了语言 / 对比学习 / ViT。” 控制变量实验都把这些排除了;鲁棒性来自训练数据的分布。
- “更多数据就会更鲁棒。” 更多同分布的数据只是沿着线移动;更多样的数据才会离开线。
- “数据增强能解决分布偏移。” 只能解决它预见到的那种;而且可能损害别的偏移和分布内准确率(代码 01:风格化增强在 ObjectNet 上 −0.055)。
- “微调总是好的。” 微调提高分布内准确率,但可能拿走预训练带来的鲁棒性;要在偏移测试集上检查。
- “有效鲁棒性是模型的固有属性。” 它依赖于用哪些模型拟合基线、用哪个测试集当分布内(§6)。
- “见过素描才能认素描。” 代码 03:从没见过素描、但见过大量弱纹理图片的模型,在素描上同样鲁棒——关键是打破训练集里的虚假捷径。
- “多个好的数据源混在一起会更好。” 鲁棒性可能被稀释(Nguyen et al. 2022)。
9. 练习 · Exercises
练习 1(算有效鲁棒性) 代码 01 里 Sketch 的基线直线是 。一个模型 ImageNet 0.70、Sketch 0.45,它的有效鲁棒性是多少?另一个模型 ImageNet 0.60、Sketch 0.40 呢?哪个”更鲁棒”?
参考答案
第一个:,预测的 probit 值 ,;ER 。
第二个:,,;ER 。
两者的有效鲁棒性几乎一样(+0.072 vs +0.076):第一个模型的 Sketch 准确率更高,主要是因为它在 ImageNet 上更好,而不是因为它”更鲁棒”。部署时你关心的可能是绝对准确率(选第一个),研究”什么带来鲁棒性”时关心的是 ER(两者一样)。
练习 2(重新加权) 代码 01 演示 3 里,按风格均衡训练的模型在 5 种风格上的准确率是 photo 0.503、painting 0.492、cartoon 0.465、sketch 0.380、render 0.456。互联网上的真实比例是照片 80%、其余各 5%。(a) 算出这个模型在”互联网”上的整体准确率。(b) 如果你只有均衡的测试集(每种风格同样多),怎样得到对”互联网”的无偏估计?
参考答案
(a) ,和代码输出一致。
(b) 重要性加权:每个测试样本的权重 = 它的风格在总体里的比例 / 在测试集里的比例(照片 0.8 / 0.2 = 4,其余 0.05 / 0.2 = 0.25),加权平均就是对总体准确率的无偏估计。这是统计学和机器学习之间的一座桥:为训练而设计的非代表性数据,仍然可以用权重恢复对总体的估计——前提是你知道每个样本属于哪一层(这里是风格),以及总体里每一层占多少。
练习 3(为什么”更多数据”在真实世界里有一点用) 代码 01 里”更多照片”的 ER 是 −0.003;Taori 等人发现在 JFT-300M、Instagram-1B 上预训练的模型有一点有效鲁棒性。如何解释这个差别?
参考答案
代码里的”更多照片”是同分布的更多数据:精选照片,同样的姿态、清晰度、风格——只是让模型沿着线往上走。JFT-300M、Instagram-1B 不只是更大,也更多样:它们来自不同的来源、包含 ImageNet 筛选流程会丢掉的图片(不典型的、带字的、多物体的……)。在”数据决定鲁棒性”的视角下,它们的一点点有效鲁棒性来自多样性,而不是数量本身。这也解释了为什么它们只有”一点点”:它们仍然以照片为主,离 CLIP 的 4 亿网络图文对的多样性还差得远。
练习 4(为什么微调会降低有效鲁棒性) 用合成世界的语言解释代码 02 演示 2:图片编码器没变,只换了分类头,为什么有效鲁棒性就下降了?
参考答案
零样本分类头来自文字:“husky photo” 的文字向量只编码了”husky 是什么”,不知道 ImageNet 照片的任何统计特点。用精选照片训练分类头时,分类头会利用照片里确实有用的信号——包括纹理(照片里纹理对细粒度类别非常有用)。CLIP 的图片编码器把纹理信息也编码进了嵌入(它在网络数据里见过照片),分类头一旦开始依赖它,换到素描(没有纹理)时就和普通的照片模型一样吃亏。换句话说:分类头”学会了 ImageNet 的捷径”。数据越多( 越大),学得越牢。
练习 5(数据来源的实验) 在代码 03 演示 4 的基础上,预测:(a) 只用素描的网络数据训练迷你 CLIP,ImageNet 准确率和 Sketch 的 ER 会怎样?(b) 照片和素描各一半呢?然后在代码副本里验证。
参考答案
预测:(a) 只有素描时,模型完全不能依赖纹理,只能学形状:ImageNet(照片)准确率会明显低于混合数据,但 Sketch 的 ER 会很高;ObjectNet 可能更差(没见过任何不寻常姿态的照片)。(b) 介于两者之间。
我在一份代码副本里跑了这个实验(课程目录里的文件没有改动;同样 3 万个图文对、同样的训练配方):
| 数据来源 | ImageNet | Sketch | Sketch ER | Rendition ER | ObjectNet ER | 平均 ER |
|---|---|---|---|---|---|---|
| 只有素描 | 0.522 | 0.514 | +0.228 | +0.122 | −0.043 | +0.077 |
| 照片 + 素描各一半 | 0.652 | 0.438 | +0.088 | +0.073 | −0.011 | +0.037 |
预测基本对:只用素描训练,Sketch 的 ER 是所有设定里最高的(+0.228),Sketch 准确率(0.514)几乎追上了 ImageNet(0.522)——模型变得”不在乎风格”了,代价是 ImageNet 本身只有 0.522。照片和素描各一半,ImageNet 回到 0.652,Sketch ER +0.088——又一次”稀释”。注意 Rendition 的 ER 也很高:素描训练出的”不依赖纹理”同样适用于油画和卡通。
练习 6(参照系) 有人说:“零样本 CLIP 的有效鲁棒性证明它比 ImageNet 模型更’理解’图片。“结合 §6 和人类实验(§2.2)评论这个说法。
参考答案
要点:(1) 有效鲁棒性是相对于”ImageNet 训练的模型”这条基线定义的。CLIP 的训练分布是网络图片,ImageNet 对它来说本身就是”分布外”的一种;ImageNet-R、ImageNet-Sketch 里的图片类型在网络数据里大量存在,对 CLIP 来说可能更接近”分布内”。Shi et al.(2023)用覆盖各模型训练分布的多个分布内测试集重新评测,CLIP 的优势明显缩小。(2) 所以更谨慎的说法是:CLIP 的训练数据覆盖了更多 ImageNet 训练集没有覆盖的情况,这让它在这些偏移上更可靠——这正是”数据决定鲁棒性”。(3) 人类在 ImageNetV2 上不掉准确率,在素描上也几乎不掉——人类的”鲁棒性”来自完全不同的学习经历(大量多样的视觉经验、语言、和物理世界的交互)。CLIP 朝这个方向走了一步,但用”理解”来描述需要更强的证据。
10. 延伸阅读 · Further reading
原课阅读
- Taori et al., Measuring Robustness to Natural Distribution Shifts in Image Classification(NeurIPS 2020)。§3 的主线:试验台、有效鲁棒性的定义、主要发现。
- Radford et al., Learning Transferable Visual Models From Natural Language Supervision(CLIP,ICML 2021)。重点读 §3.3(对自然分布偏移的鲁棒性,图 13、14)和 §2(数据与方法)。
- Fang et al., Data Determines Distributional Robustness in Contrastive Language Image Pre-training (CLIP)(ICML 2022)。§5 的主线,包括 ImageNet-Captions。
本讲补充的工作
- Shankar et al., Evaluating Machine Accuracy on ImageNet(ICML 2020)——人类与模型、多标签评测。
- Miller et al., Accuracy on the Line(ICML 2021);Miller, Krauth, Recht, Schmidt, The Effect of Natural Distribution Shift on Question Answering Models(ICML 2020)。
- Wortsman et al., Robust Fine-tuning of Zero-shot Models(WiSE-FT,CVPR 2022)。
- Nguyen et al., Quality Not Quantity: On the Interaction between Dataset Design and Robustness of CLIP(NeurIPS 2022)。
- Shi et al., Effective Robustness against Natural Distribution Shifts for Models with Different Training Data(NeurIPS 2023)。
- Geirhos et al., ImageNet-trained CNNs are biased towards texture; increasing shape bias improves accuracy and robustness(ICLR 2019)——合成世界里”纹理 vs 形状”设计的出处。
- 测试集:Barbu et al., ObjectNet(NeurIPS 2019);Wang et al., Learning Robust Global Representations by Penalizing Local Predictive Power(ImageNet-Sketch,NeurIPS 2019);Hendrycks et al., The Many Faces of Robustness(ImageNet-R,ICCV 2021)。
和本目录其他课程的联系
- CS324 第 2 讲(数据):包含 Ludwig Schmidt 2023 年的客座报告,对”数据决定鲁棒性”有另一个角度的讨论和实验。
- CS329T 第 7–8 讲:对抗样本与鲁棒性——§3.1 提到的”合成”偏移的另一端。
11. 下一讲预告 · Next lecture
本讲的结论是:模型的可靠泛化主要来自训练数据——更准确地说,来自训练数据的多样性。于是问题变成:好的训练数据从哪里来?
第 3 讲:数据集简史——从 Highleyman 到 LAION-5B。 我们从 1959 年 Bell Labs 的 1800 个手写字符讲起:第一个训练 / 测试划分是怎样出现的?为什么机器学习的很多想法在 1950 年代就有了,却要等六十年才产生影响?1960 年代的”AI 寒冬”和 1980 年代的”共同任务框架”怎样塑造了今天的基准文化?然后是 MNIST、TinyImages、CIFAR、ImageNet,以及多模态时代的第一个公开十亿级数据集 LAION-5B:用 CLIP 过滤 Common Crawl 里的 alt-text。代码会复刻 Highleyman 的数据,并在合成世界里走一遍 LAION 的管线——你会看到,基于模型的过滤会悄悄改变数据的分布。