## 让预训练网络读取一个区域 ## 解释、算例与证据 # P27 · R-CNN:让已经会看图的网络看一个区域 历史上 R-CNN 将监督分类预训练用于区域检测,支持了“先学表示,再适配新任务”的正面判断。按区域提取特征、学习前景/背景和位置修正三个动作都需要具体输入。它不是 MoCo 或 MAE 的历史后继。 图内标签与数值:Lecture 03 课堂图解 P27;候选区域 → 裁出并缩放;红杯候选;预训练 CNN;ImageNet 分类权重;区域类别:杯子;位置:相对框修正;Girshick · Donahue · Darrell · Malik;迁移参数,还要学习检测任务;R-CNN · 2013 预印本 / CVPR 2014。课堂顺序不是历史发生顺序。 同一场景的候选框、红杯裁剪、ImageNet 预训练 CNN 与区域类别和框修正。 - 候选区域 → 裁出并缩放 - 红杯候选 - 预训练 CNN - ImageNet 分类权重 - 区域类别:杯子 - 位置:相对框修正 - Girshick · Donahue · Darrell · Malik - 迁移参数,还要学习检测任务 - R-CNN · 2013 预印本 / CVPR 2014。课堂顺序不是历史发生顺序。同一场景的候选框、红杯裁剪、ImageNet 预训练 CNN 与区域类别和框修正。 [查看对应图解状态](/#/l3-r2-p27/1)[查看完整图解](/course/figures/l3-r2-p27-1.html) ## 课堂讲述 R-CNN 的重要启发,是把分类预训练得到的视觉计算用于检测。先提出一批可能包含物体的区域,把区域裁出来,送进网络,再判断类别和位置。 这里迁移的是视觉网络及其参数,不是 ImageNet 原来的答案列表。它还要面向检测作适配,学习前景、背景以及定位任务。这个结果让“在大数据上先学,再用到别的任务”成为很具体的做法。 原始 R-CNN 是 Ross Girshick、Jeff Donahue、Trevor Darrell 和 Jitendra Malik 的工作。今天我们从自监督接到它,是在整理表示与任务的关系;它本来的重要背景是分类预训练,不要把历史改写成它先使用了 MoCo 或 MAE。 ### R-CNN 迁移的是已学会的视觉计算 [独立阅读](/course/blocks/rcnn-transfer-pipeline.html) R-CNN 先产生可能包含对象的区域,将每个区域变换为 CNN 接受的图像大小,再用 CNN 特征作区域分类与框修正。分类预训练提供的是卷积网络的参数;检测适配需要新的区域样本、前景/背景关系和位置目标。原始实现包含多个训练阶段,因此课堂画面中简洁的两项输出,不应被误读成原论文从一开始就是一个统一损失的端到端系统。 为什么把区域当作一张小图很有力量?因为原来“整图里有什么”的视觉计算,现在可在许多局部窗口上复用。杯子只占整图一小部分时,候选区域让它占据输入的大部分,分类网络就能在更合适的尺度查看它。代价是裁剪、缩放与逐区域计算;区域边缘的上下文也会改变。 原论文摘要报告 VOC 2012 检测 mAP 为 53.3%,相对之前最好结果提高超过 30%。这个同期结果支持“分类预训练与检测适配能够产生有竞争力的检测器”,不是自监督预训练的实验。作者是 Girshick、Donahue、Darrell、Malik;此处从 MoCo/MAE 接到 R-CNN,是课程按问题重组,不能反写历史先后。 **出处:**[R-CNN 原论文](https://arxiv.org/abs/1311.2524) ### 沿着图解追问 以下是备课用的模拟师生对话,不是课堂实录。 **学生:**这里为什么又用了有标签的预训练? **教师:**可迁移不是自监督专属。我们比较了学习信号,现在看已成立的监督迁移案例;逻辑连接不要求伪造历史先后。 ## 沿这个问题继续 沿 CLS07 的公式定位疑问,再选 LAB09 解析练习或 LAB10 完整训练。 **出处:**[R-CNN (2014)](https://arxiv.org/abs/1311.2524) #### 图示条件与公式约定 原始 R-CNN 使用监督分类预训练,并进行检测适配;不将教学叙述顺序误写成自监督方法的历史后继。此图省略原始多阶段训练实现。 #### 这条线索的展开与后续阅读 - [把分类的计算,迁移到候选区域](/supplement.html?return=l3-r2-p27/0#/l3-rcnn/0) 本页说明