03|CNN 骨干网络与多尺度特征

研究定位

Backbone 把像素变成分层特征。浅层分辨率高、细节多;深层分辨率低、语义强。检测与分割需要把二者结合。

[B,3,H,W] → C3 [B,C3,H/8,W/8]
            → C4 [B,C4,H/16,W/16]
            → C5 [B,C5,H/32,W/32]
            → FPN 多尺度融合

结构设计线索

DenseNet:复用所有前层特征

xl = Hl([x0, x1, …, xl − 1])

优点是梯度传播与特征复用;代价是频繁拼接和通道增长,需要 growth rate 与 transition layer 控制。

VoVNet:一次性聚合

OSA 模块让卷积层顺序计算,最后统一拼接,减少 DenseNet 式频繁拼接的内存访问。它提醒我:FLOPs 低不一定真实延迟低。

ACNet / DBB:训练多分支,部署单卷积

训练时用 3×3、1×1、非对称卷积等分支提升优化和表达;部署前将线性分支与 BatchNorm 等价融合成一个卷积。非线性激活不能随意跨分支折叠。

RFB-Net:多个感受野一起看

不同卷积核和膨胀率形成多尺度感受野,再融合特征。这里的“多尺度”既可以指不同特征图分辨率,也可以指同一层的有效感受野。

研究小结

我先看五点:下采样发生在哪里、通道如何变化、是否有残差或密集连接、怎样融合多尺度、真实瓶颈是计算还是内存访问。这样就不会只背模块名字。

研究延伸

Backbone 的比较应尽量脱离“模块名字”。后续可以围绕三个变量整理:感受野如何扩大、特征复用如何发生、多尺度信息在哪里融合。DenseNet、VoVNet、DBB 和 RFB-Net 可以作为四种不同结构假设的样本。

如果继续实验,建议固定检测或分割 head,只替换 backbone,记录 FLOPs、参数量、实际延迟、特征图分辨率和小目标表现。这样才能区分“理论计算量”与“硬件上真实速度”。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇