## 给预测模块接入另一份细位置信息 ## 解释、算例与证据 # P38 · 让细位置与深层语义重新配合 较细支路给解码器另一份可能保留位置线索的输入,但不保证边界正确;应在同一任务比较错误图与逐类 IoU。现有实验中,RGB 简单基线在原条件下胜出,FCN 在模糊后更稳健。对照两种条件,判断结构何时实际有用。 图内标签与数值:Lecture 03 课堂图解 P38;同一图像;较细位置;较大上下文;对齐后融合;组合两层线索;学习像素类别分数;从像素监督学习;像素输出;接口示意;原图局部参考;检查空洞与边界;轮廓为教学标注;特征格为结构示意;照片不进入融合终点,右下掩码不是模型实测。 同一图像分别通向较细位置与较大上下文两张示意特征图,经坐标对齐融合、像素预测模块连接到掩码输出接口。下方杯柄照片单独作为空洞与边界参考,用虚线对应掩码;特征格与掩码均为教学示意,非模型实测。 - 同一图像 - 较细位置 - 较大上下文 - 对齐后融合 - 组合两层线索 - 学习像素类别分数 - 从像素监督学习 - 像素输出 - 接口示意 - 原图局部参考 - 检查空洞与边界 - 轮廓为教学标注 - 特征格为结构示意;照片不进入融合终点,右下掩码不是模型实测。同一图像分别通向较细位置与较大上下文两张示意特征图,经坐标对齐融合、像素预测模块连接到掩码输出接口。下方杯柄照片单独作为空洞与边界参考,用虚线对应掩码;特征格与掩码均为教学示意,非模型实测。 [查看对应图解状态](/#/l3-r2-p38/0)[查看完整图解](/course/figures/l3-r2-p38-0.html) ## 课堂讲述 浅层或较细分辨率的特征保留更直接的局部位置,较深层特征则整合了更大范围的内容。FCN 的跨层融合,让这些信息有机会一起参与像素预测。 请看右下方的杯柄照片,它是原图局部,用来检查我们关心哪条边界。上面的细特征与下面的粗特征先在坐标上对齐,再交给预测模块共同使用。输出的是每个位置的类别分数或掩码。粗层提供较大范围的上下文,细层提供另一份可能保留杯柄位置的线索;它们都不是现成的正确答案,怎样组合仍要从像素监督中学习。 以后你们看到 U-Net、特征金字塔等结构,可以继续追问同一个问题:它在什么分辨率上保留和组合信息?这一点比把所有跳跃连接都叫成 ResNet 更重要。操作相似,不代表它们首先解决的是同一个问题。 ### 上采样改变读数位置,跨层连接提供额外证据 [独立阅读](/course/blocks/upsampling-versus-new-evidence.html) 从 12×12 分数图恢复到 48×48,可以用最近邻复制,也可以用双线性按邻域加权。输出格子多了,是为了在原图坐标上作决定;运算本身没有再次看原图。若细边界的信息已被编码成相同数值,单独放大同一张图不能判断它原来在哪。 但低分辨率并不意味着一切细节必丢。通道、相位与邻域响应可能保留可用线索,训练出的解码器可以利用它们;真正的判断是“差别有没有进入 F”,而不只是 F 的宽高。因此 P37 既不许诺放大恢复真实细节,也不否定学习上采样的价值。 跨层连接做了一件不同的事:把较细层的特征另行送进预测模块。它提供的不是同一粗特征的复制,而是另一份尚可能保留位置细节的输入。深层上下文可帮助识别这是杯子,较细响应可帮助定位杯柄与窄缝;二者仍需通过任务训练学习怎样组合。 转置卷积是可学习的线性运算形式,不是一般意义上可还原任意输入的“逆卷积”。是否保留细节,应通过同源输入、目标、预测与错误图观察。 P38 的杯柄照片只是原图参考:细、粗特征先做坐标对齐,再由预测模块学习组合,交付像素类别分数或掩码,而不是还原那张 RGB 照片。图中的特征格为结构示意,轮廓为教学标注;是否减少空洞和边界错误,要另看模型预测与目标的比较。 **出处:**[D2L §14.11 FCN](https://d2l.ai/chapter_computer-vision/fcn.html) #### 图示条件与公式约定 两路特征先对齐再融合,交给从像素监督学习的预测模块。杯柄照片来自同一原图,只是局部参考,不是特征图或预测结果。特征格是结构示意;像素输出接口所画轮廓是教学标注。此页不把浅层叫“真实位置答案”、深层叫“真实类别答案”。 #### 这条线索的展开与后续阅读 - [FCN 是独立的密集预测路线|怎样检查这项解释](/supplement.html?return=l3-r2-p38/0#/l3-fcn-dense-evidence/0) 本页说明 - [多层表示在空间任务中分工|问题从哪里出现](/supplement.html?return=l3-r2-p38/0#/l3-skip-fpn-problem/0) L03补充阅读 - [多层表示在空间任务中分工|核心改动怎样工作](/supplement.html?return=l3-r2-p38/0#/l3-skip-fpn-mechanism/0) L03补充阅读 - [多层表示在空间任务中分工|一起算一个完整例子](/supplement.html?return=l3-r2-p38/0#/l3-skip-fpn-example/0) L03补充阅读 - [多层表示在空间任务中分工|怎样检查这项解释](/supplement.html?return=l3-r2-p38/0#/l3-skip-fpn-evidence/0) L03补充阅读 - [多层表示在空间任务中分工|什么结论还不能推出](/supplement.html?return=l3-r2-p38/0#/l3-skip-fpn-boundary/0) L03补充阅读 ## 选读:沿计算图比较 FCN、U-Net 与 FPN 先问细信息来自哪里、怎样对齐和组合,再比较结构名称。 ### 选读:FCN、U-Net、FPN 的连接究竟送来了什么 [独立阅读](/course/blocks/multiscale-architecture-comparison.html) 把“有跳连”当成一个共同名字,容易遮住任务差异。FCN 的跳接把较细层的空间线索与粗语义预测结合,服务于逐像素输出;U-Net 的编码—解码路径将高分辨率特征接到相应解码层;FPN 自顶向下融合与横向连接,形成可供不同尺度对象使用的特征层级。 | 观察点 | 应在计算图里找什么 | | --- | --- | | 较细信息从哪里来 | 原图或编码器哪个中间层,而非只看上采样箭头 | | 怎么对齐 | 两条支路的步长、尺寸、坐标约定 | | 怎样组合 | 相加或拼接,组合后是否再有可学习预测 | | 服务哪个目标 | 单张类别图、多尺度框、局部实例 mask | 如果原图中 4×4 像素的目标进入 stride16 网格,其连续跨度只有 1/4×1/4 格;这使位置读取困难,但不能仅据小于一格断言信息必全丢,通道仍可能记录响应。更细输入或跨层特征带来新的观测机会,是否改善要在指定任务上检查。 保留这份比较,是为学生读到结构名时有判断坐标;本轮主讲不再把它拆为几个平行论文段落。 **出处:**[FCN 原论文,2014/2015版本](https://arxiv.org/abs/1411.4038) · [FPN 原论文](https://arxiv.org/abs/1612.03144) · [U-Net 原论文](https://arxiv.org/abs/1505.04597) ## 进入 LAB11:保留简单基线再看条件变化 有了机制假设,再用已有同条件结果判断额外结构的实际作用。 ### 同一组分割实验里,简单模型为何值得留下 [独立阅读](/course/blocks/pixel-model-positive-result.html) 当前 LAB11 同时训练逐像素 RGB 线性读出和小型 FCN。输入 48×48 RGB,标签是背景、红矩形、蓝椭圆;384 张训练图与 128 张保留图按场景种子分开。FCN 用粗分数与细分支融合,RGB 基线则只用 `Conv2d(3,3,1)`,共 12 个参数,不能看邻域。 已有 2026-09-22 本地完整运行中,原始合成图的 RGB 基线三类 mIoU=1,FCN=.99041;对输入做 5×5 模糊后,二者变为 .84996 与 .92397。原分布上简单模型胜出说明颜色已足够决定类别;模糊使边缘颜色混合,FCN 利用邻域在该干预下更稳健。两项观察共同说明为什么需要基线:它既暴露任务太容易的地方,也帮助找出复杂结构实际增加能力的条件。 同一 FCN 参数,推理时仅把双线性改为最近邻,mIoU 变成 .91180。这检验训练/推理采样约定的敏感性,没有分别重训两种网络,不能当成插值方式的普遍排名。 本轮整理只复用已有记录,没有重跑。完整学习证据在 RGB→模型→logits→mask 链条;P37 的已知 mask 缩放热身则解释采样,二者都保留,作用分清。 ## 把总体准确率拆回目标与边界错误 平均数会被面积分布影响;回到逐类结果和错误像素才能定位问题。 ### 像素准确率很高,为什么小对象仍可能很差 [独立阅读](/course/blocks/small-object-confusion.html) 一张大部分为背景的图,只要把背景判对,整体像素准确率就会很高。假设 10000 个像素里只有 100 个属于目标,全部预测背景就有 99% 准确率,但目标 IoU 为零。这个算例说明面积不平衡如何隐藏感兴趣类别的失败。 LAB11 的同权重尺度 ×.45 对照更具体:像素准确率 .99816,而蓝椭圆 IoU 为 .85763、红矩形 .97613、背景 .99812。按三类等权平均得到 .94396。蓝对象与背景窄缝更细,发生少量像素错误就显著影响目标的比例。 查看失败图时要把输入、真值和错误像素并排。若杯把空洞消失,可能是原观测不清、特征混合、读出不对齐或任务头没学好;单看总数不能定位原因。可以先冻结其余条件,改变输入尺度或采样方式,再追踪错误是否沿边界集中。 本页连接细/粗特征的目的不是保证某个结构胜出,而是让我们可以问一个可测问题:增加细分支是否在同一输入和训练协议下,实际减少了所关心的窄缝错误?已有实验提供起点,完整架构对照仍需另设。 ## 把难例权重与对象匹配分成两件事 一种训练调整影响样本权重,另一种先确定预测与目标的对应。 ### 选读:难例权重和对象匹配不是一件事 [独立阅读](/course/blocks/focal-versus-assignment.html) 大量背景参考框已经很容易分类,却可能因数量占优而贡献大量总损失。focal loss 在基本交叉熵外乘 $(1-p_t)^\gamma$。取 γ=2,正确类概率 .9 的样本权重 .01,概率 .5 的权重 .25,后者相对贡献更大。这是在调整哪些样本值得继续关注,不直接增加空间信息,也不指定哪项预测负责哪只对象。 对象匹配回答另一件事:当真值是一组无序对象,预测槽位该怎样对应它们?给两预测、两真值的代价矩阵 `[[2,.3],[.4,2]]`,对角总代价 4,交叉 .7,所以选择交叉。交换标注数组顺序不该改变对象集合本身,匹配用于消除这个任意顺序。 LAB20 从类别概率、框 L1 与 IoU 实际构造成本,再穷举 2! 分配;它是足够透明的解析练习。这里没有图像编码器学习,也不是完整 DETR。主讲保留对象身份的必要性,这些损失组织细节进入选读即可,不必为保持课程丰富而重新开一章。 **出处:**[Focal Loss 原论文](https://arxiv.org/abs/1708.02002) · [DETR 官方匹配实现](https://github.com/facebookresearch/detr/blob/main/models/matcher.py) ## 选择一项完整实验,不按编号机械运行 按科研问题选择定位或像素路径,再用解析练习补齐具体疑问。 ### 这条主线的课后顺序:先看输出,再做一项完整实验 [独立阅读](/course/blocks/spatial-study-route.html) 不必按 Notebook 编号把所有内容从头运行。若刚听完课堂,先用 P25 的同一底图区分类别、框、语义与实例,再用 P41–45 的两个算例区分读取错位与表示碰撞。它们构成理解空间任务所需的最短连续线。 随后只选一项完整学习过程:关心对象位置就读 LAB10,沿图像、目标、匹配、分类/位置损失、预测与错误图走完;关心面积或边界就读 LAB11,比较 RGB 基线与 FCN、查看逐类 IoU 与窄缝错误。无需为了“完整”同时训练两本,也不要把只跑通环境当成理解模型。 LAB09 是检测公式的工作台,遇到匹配、NMS 或 AP 不清时按问题查;LAB03 是同源场景与空间读数的轻量练习。LAB16 的颜色连通域和 LAB20 的集合匹配放在选读,分别解释提示约束和对象排列,不与两项主实验争夺主线。 CLS02 提供区域到掩码的连续导读;CLS07、CLS08 分别展开检测公式与实例输出。各处按教师定稿名称和稳定 ID 回链。每个解释块有独立 URL,可直接带着具体问题交给 AI;链接中的正文先提供推理,再连接代码与原论文。 ### 沿着图解追问 以下是备课用的模拟师生对话,不是课堂实录。 **学生:**两张特征图相加,就能还原这张杯柄照片吗? **教师:**本页不是还原RGB。照片是参考,输出是像素类别;融合提供两种尺度的线索,是否真的减少空洞或边界错误,要看预测与目标的比较。 ## 沿这个问题继续 先读 [CLS08](/course/notebooks/2d81e2a1936043349eacb71c53c0defa.html) 的像素目标与指标,再到 [LAB11](/course/notebooks/9e268706471944e3a59e6f568f9ce9a3.html) 查看已有预测、RGB 基线和错误图。其余入口见[本部分更多学习路径](/course/blocks/spatial-study-route.html)。 #### 按问题回查的讲解与短练习(7) **出处:**[FCN (2015)](https://arxiv.org/abs/1411.4038)