## 把方法拆成可组合的设计选择 ## 解释、算例与证据 # P18 · 方法不是一条封闭的家谱 收束对比路线:方法组件可以组合,是否有用还要看下游证据。由此转向不同目标的重建路线。 图内标签与数值:P18 学习表示机制图,状态 1;2019.11;MoCo;2020.02;SimCLR;2020.03;MoCo v2;队列 + 慢编码器;非线性投影头 + 增强;设计汇合;比较的不只是名字:目标、增强、头、字典、评价协议。;课堂先讲 SimCLR 便于理解;发表顺序与教学顺序不同。 MoCo 2019.11、SimCLR 2020.02、MoCo v2 2020.03时间带;队列/EMA与投影头/增强两路汇合。 - 2019.11 - MoCo - 2020.02 - SimCLR - 2020.03 - MoCo v2 - 队列 + 慢编码器 - 非线性投影头 + 增强 - 设计汇合 - 比较的不只是名字:目标、增强、头、字典、评价协议。 - 课堂先讲 SimCLR 便于理解;发表顺序与教学顺序不同。MoCo 2019.11、SimCLR 2020.02、MoCo v2 2020.03时间带;队列/EMA与投影头/增强两路汇合。 [查看对应图解状态](/#/l3-r2-p18/0)[查看完整图解](/course/figures/l3-r2-p18-0.html) ## 课堂讲述 刚才为了讲明白计算取舍,我们先用了 SimCLR 的图。这不是历史发表顺序:MoCo 的预印本在 2019 年,SimCLR 在 2020 年,之后的 MoCo v2 明确吸收了 SimCLR 中的非线性投影头和增强设计。 MoCo 原文还比较了多项检测与分割迁移任务,而不只报分类读出的结果。这使“不依赖逐图类别标签也能获得可用视觉表示”有了下游证据。 这是一个很好的研究案例。持续的问题是怎样学习可迁移表示,但一个框架不必只沿着自己的名字演化;别的工作发现的有效设计,可以被吸收进去,再看它在新的组织方式下是否成立。 所以读论文时,不只看方法缩写。把目标、增强、投影头、字典组织和评价协议拆开,才能看见到底换了什么。何恺明及合作者在这里提供的是持续追问问题的线索,不是一份把所有方法归到同一人名下的作品目录。 ### 方法是可组合的设计,不是封闭家谱 [独立阅读](/course/blocks/contrastive-designs-can-recombine.html) MoCo突出历史字典与动量编码器,SimCLR突出批内两视图比较及投影头等设计。它们不是互相排斥的整套身份:后续方法可以把一方有效的组件放入另一种计算组织中。 这种看法更有助于阅读论文。把一套方法拆成数据与增强、表示网络、目标、候选组织、更新规则、评价协议六个部分,再问新论文究竟改了哪一部分。若同时改了增强、训练时长、模型和loss,最终提高可以是有效工程组合,但不能直接把全部提高归给一个名字。 正面进展也应看清:这些设计使没有人工类别目标的图像学习成为可迁移起点。下一块用MoCo原论文的检测微调结果展示这件事,随后转到另一条不同目标路线——预测缺失像素。 #### 图示条件与公式约定 原始 arXiv 首次提交:MoCo 2019-11-13;SimCLR 2020-02-13;MoCo v2 2020-03-09。v2 明确采用 MLP 投影头与更多增强。本页不展示论文性能表或未核实提升数字。 ## 在固定检测协议下检验预训练起点 比较同一下游检测器的两种预训练起点,而不是要求冻结编码器直接输出框。 ### MoCo 的表示怎样支持检测迁移? [独立阅读](/course/blocks/moco-voc-transfer-evidence.html) MoCo原论文Table 2(b)在同一Faster R-CNN、ResNet-50-C4设置下比较预训练起点: | 预训练 | box AP | AP50 | AP75 | | --- | --- | --- | --- | | ImageNet-1M 人工类别监督 | 53.5 | 81.3 | 58.8 | | ImageNet-1M MoCo | 55.9 | 81.5 | 62.6 | 两者均在VOC trainval07+12检测标注上全层微调24k次,评价为VOC test2007,取5次实验平均;AP是COCO式多IoU阈值指标,AP50/AP75是指定阈值。MoCo相对提高2.4 AP,说明视图对比学出的参数在这套下游协议下提供了有效起点。 这不是冻结模型直接会检测:检测头与主干都用检测监督适配。它也不把所有预训练和下游总算力配平。相同论文的另一种主干结构收益不同,因此结论应保留具体模型与协议。 **出处:**[MoCo 原论文 §3、§4.2、Table 2](https://arxiv.org/html/1911.05722v3) ## 选读:模型提供软目标,为什么仍须检查坍塌 把固定教师和EMA教师分开;同一组logits改变温度,先看软目标表达了什么。 ### 教师模型提供的是哪一种答案? [独立阅读](/course/blocks/teacher-target-source-and-collapse.html) 固定教师蒸馏让学生拟合一个已有模型的概率分布;EMA教师则来自学生参数的历史平均。这两种教师都不是天然正确的类别真值,也不必比学生更大。 以logits(4,2,0)为例,温度1的概率约(0.8668,0.1173,0.0159),温度2约(0.6652,0.2447,0.0900)。软目标除最大类外,还表达其他类别的相对接近。学生可以用交叉熵拟合它,但也可能继承教师的背景捷径。 BYOL、DINO说明不显式使用负例也能学表示;它们采用的不对称预测、停止梯度、教师更新及输出分布处理应整体理解。当前LAB 17训练的是解析输入上的固定线性教师蒸馏,再单独算EMA,不是DINO视觉复现。这里适合作为理解“目标从模型取得”的选读分支,阅读后回到P18。 **出处:**[BYOL 原论文](https://arxiv.org/abs/2006.07733) · [DINO 原论文](https://arxiv.org/abs/2104.14294) ## 沿这个问题继续 先读MoCo检测证据表及协议;教师目标为选读,随后直接进P19。 #### 按问题回查的讲解与短练习(2) **出处:**[MoCo 原论文(2019 / CVPR 2020)](https://arxiv.org/html/1911.05722v3) · [SimCLR 原论文(2020)](https://arxiv.org/abs/2002.05709) · [MoCo v2 技术报告(2020)](https://arxiv.org/abs/2003.04297)