## 先限制输入,重建才不只是复制 ## 解释、算例与证据 # P19 · 另一条路线:根据可见内容预测缺失 重建不是简单复制;瓶颈、破坏或遮挡为学习增加约束,和视图关系形成另一类目标。 图内标签与数值:P19 学习表示机制图,状态 1;完整原图;只藏一小块;藏住四分之三;图像存在局部冗余;邻近颜色可能已足够;更需要跨区域线索;可见内容 → 预测隐藏内容;这里只显示输入与目标遮挡;没有把绘制出来的补图冒充模型重建。 同一图的完整、单块遮挡和75%遮挡并列,不展示模型重建结果。 - 完整原图 - 只藏一小块 - 藏住四分之三 - 图像存在局部冗余 - 邻近颜色可能已足够 - 更需要跨区域线索 - 可见内容 → 预测隐藏内容 - 这里只显示输入与目标遮挡;没有把绘制出来的补图冒充模型重建。同一图的完整、单块遮挡和75%遮挡并列,不展示模型重建结果。 [查看对应图解状态](/#/l3-r2-p19/0)[查看完整图解](/course/figures/l3-r2-p19-0.html) ## 课堂讲述 刚才的目标要求两个视图建立对应。另一条路线不先问“它和谁相同”,而是问“只看到一部分,能否预测没看到的部分”。视觉补全和重建研究并不是 MAE 才出现,MAE 是在这条线上重新选择任务难度与计算组织。 图像局部经常有冗余。缺一个很小的块,模型可能靠邻近颜色纹理就完成得不错;隐藏更多内容,预测会需要利用更大范围的结构,但任务也可能过难。 所以不能只把语言里的遮挡形式搬过来,就认为视觉问题已经解决。要具体决定遮多少、编码器看什么、解码器做什么,以及最后拿什么评价表示。下面用同一张图把 MAE 的这几个选择连起来。 ### 重建需要什么限制,才不只是在复制? [独立阅读](/course/blocks/reconstruction-restrictions.html) 如果把原图完整交给一个足够强的模型,再要求原样输出,复制就能得到零误差。重建作为表示学习目标,需要规定信息怎样通过:离散词典限制代码只能是一个索引,PCA限制在线性低维子空间,去噪自编码器限制只能看被破坏输入,MAE限制只看到部分位置。 这些限制迫使模型利用数据规律。反过来,跳连若把目标原样送到输出,或输入预处理意外泄漏被遮像素,就可能完成重建却绕过了希望训练的表示。 本讲不要求先学完所有自编码器。沿“输入可见什么→中间表示允许什么→在哪些位置算误差”即可比较它们。LAB 05保留真实patch词典拟合,CLS 05给PCA与去噪推导,LAB 08再把重建和冻结读出接到同一图像实验。 #### 图示条件与公式约定 遮挡图由同一原图与固定网格生成。小遮挡仅隐藏位置9;大遮挡保留位置0、3、9、14。不绘制、也不宣称本轮有 MAE 重建输出。 #### 这条线索的展开与后续阅读 - [离散中心怎样成为表示|问题从哪里出现](/supplement.html?return=l3-r2-p19/0#/l3-kmeans-patches-problem/0) L03补充阅读 - [离散中心怎样成为表示|核心改动怎样工作](/supplement.html?return=l3-r2-p19/0#/l3-kmeans-patches-mechanism/0) L03补充阅读 - [离散中心怎样成为表示|一起算一个完整例子](/supplement.html?return=l3-r2-p19/0#/l3-kmeans-patches-example/0) L03补充阅读 - [离散中心怎样成为表示|怎样检查这项解释](/supplement.html?return=l3-r2-p19/0#/l3-kmeans-patches-evidence/0) L03补充阅读 - [离散中心怎样成为表示|什么结论还不能推出](/supplement.html?return=l3-r2-p19/0#/l3-kmeans-patches-boundary/0) L03补充阅读 - [PCA 是带约束的线性编码—解码|问题从哪里出现](/supplement.html?return=l3-r2-p19/0#/l3-pca-reconstruction-problem/0) L03补充阅读 - [PCA 是带约束的线性编码—解码|核心改动怎样工作](/supplement.html?return=l3-r2-p19/0#/l3-pca-reconstruction-mechanism/0) L03补充阅读 - [PCA 是带约束的线性编码—解码|一起算一个完整例子](/supplement.html?return=l3-r2-p19/0#/l3-pca-reconstruction-example/0) L03补充阅读 - [复制输入为何不是好表示|问题从哪里出现](/supplement.html?return=l3-r2-p19/0#/l3-autoencoder-denoise-problem/0) L03补充阅读 - [复制输入为何不是好表示|核心改动怎样工作](/supplement.html?return=l3-r2-p19/0#/l3-autoencoder-denoise-mechanism/0) L03补充阅读 - [复制输入为何不是好表示|一起算一个完整例子](/supplement.html?return=l3-r2-p19/0#/l3-autoencoder-denoise-example/0) L03补充阅读 ## 重建误差最小,未必保留任务所需差异 用四个确定点,把重建目标与未来分类目标分开。 ### 保留最大方差,不等于保留任务答案 [独立阅读](/course/blocks/pca-reconstruction-worked-example.html) 取四点 $(2,0),(-2,0),(0,1),(0,-1)$。均值为零,按四个样本取平均的协方差为diag(2,0.5)。PCA只保留一维时选择横轴:前两点不变,后两点投影为原点。平均平方重建误差为 $(0+0+1+1)/4=0.5$;若选纵轴,则为2。 在“尽量重建输入”这个题目下,横轴合理。但若任务要区分纵坐标正负,两点落在原点后就无法再区分。问题不在PCA算错,而在重建目标和未来用途不完全一致。 这个反例同样提醒我们理解深层重建:低像素误差是一个有意义的成绩,却不是所有语义任务的替代指标。需要另外检验表示能否支持类别、颜色或空间读出。 ## 平方误差为什么偏好可能模糊的平均值 固定可见条件,让隐藏值有0和1两种等可能答案,再比较三个确定预测。 ### 为什么缺失处可能被补得模糊? [独立阅读](/course/blocks/squared-error-conditional-mean.html) 假设可见条件完全相同,而某个隐藏像素等概率为0或1。总输出0时,平均平方误差是0.5;总输出1也为0.5;输出0.5时,两种情况误差都是0.25,因此平均更小。 一般地,平方损失的最佳确定性预测是给定可见输入的条件均值。存在多种合理补全时,均值可能看起来模糊,即使模型已很好地优化这项损失。这与“完全没学到结构”不是同一个判断。 LAB 08里应把恢复的主要笔画、错误补全和误差图一起读。到第四讲再问:如果我们希望产生某一种合理样本,而不是平均多个可能,训练目标和输出过程应怎样改变?图像描述也已在生成文本,后续生成课将把条件多解作为更一般的问题。 ## 选读:结构和重建目标需要共同检验 比较ConvNeXt V1/V2与监督/FCMAE两列,先保留训练预算和证据范围。 ### 选读:结构与遮挡目标为什么要共同设计 [独立阅读](/course/blocks/architecture-objective-co-design.html) 把原MAE目标直接搬到卷积网络,并不意味着所有结构假设仍成立。ConvNeXt V2将遮挡图看成稀疏空间输入,用FCMAE组织学习,并引入GRN改善通道响应的多样性。这提供了一个正面研究例子:目标与网络结构可以一起设计。 原论文Table 3的Base比较(ImageNet-1K top-1,%): | 架构 | 监督训练 | FCMAE预训练后微调 | | --- | --- | --- | | V1-Base | 83.8 | 83.7 | | V2-Base | 84.3 | 84.6 | FCMAE列先预训练800轮再微调,不能称等总预算。V1中换目标为−0.1,V2中为+0.3;这提示组合值得研究,却不能仅凭四个数识别一个严格因果交互。这里是论文证据,和LAB05的patch词典拟合不是同一实验。读完回到P22的用途评价,不再另开主讲章节。 **出处:**[ConvNeXt V2 原论文 Table 3,800-epoch FCMAE](https://arxiv.org/pdf/2301.00808) ## 沿这个问题继续 CLS 05提供连续推导;想做最透明优化选LAB 05,想做图像模型选LAB 08,二选一即可。 #### 按问题回查的讲解与短练习(1) **出处:**[MAE 原论文 §3(2021)](https://arxiv.org/html/2111.06377v3)