空洞卷积学习笔记

文章目录

    • [1. 扩张卷积的提出](#1. 扩张卷积的提出)
    • [2. 理解的难点](#2. 理解的难点)

本片博客的主题思路来自于这篇文章------如何理解Dilated Convolutions(空洞卷积),但是作者似乎是很久之前写的,文字的排版很混乱,自己来写一个新的。

1. 扩张卷积的提出

  1. Multi-Scale Context Aggregation by Dilated Convolutions
  2. Dilated Residual Networks

这里有原作者推荐的一篇论文笔记,大家有兴趣可以看一看,论文笔记------CVPR 2017 Dilated Residual Networks

2. 理解的难点

上图是论文 Multi-Scale Context Aggregation by Dilated Convolutions 的原图,我们可以问几个小问题

  • 红点代表什么含义
  • 为什么扩张卷积,图像尺寸是不改变的
  • 图中最外层图像代表什么


本图来自博客 A guide to receptive field arithmetic

上面这张图可以帮助你从直观上更好的理解感受野,这个图来自一篇博客,A guide to receptive field arithmetic for Convolutional Neural Networks,看不懂的话可以看中文翻译版,都很有参考价值。

我们根据感受野的计算公式

l k = l k − 1 + ( ( f k − 1 ) ∗ ∐ i = 1 k − 1 s i ) l_{k}=l_{k-1}+\left(\left(f_{k}-1\right) * \coprod_{i=1}^{k-1} s_{i}\right) lk=lk−1+((fk−1)∗i=1∐k−1si)

其中, l k l_{k} lk 为第 k − 1 k-1 k−1 层的感受野大小, f k f_k fk 是当前层的卷积核大小, s i s_i si 是第 i i i 层的步长。可以推导出空洞卷积的计算公式,本质上就是在卷积和中间添0,扩大了卷积和的大小。

设普通卷积和的大小为 f k f_k fk,则等效的空洞卷积核的大小为 d k d_k dk,有公式

d k = ( f k − 1 ) × ( r a t e − 1 ) + f k d_k=(f_k-1)\times (\mathrm{rate}-1)+f_k dk=(fk−1)×(rate−1)+fk

回到最初的问题

  • 红点代表什么意思?代表的是感受野的中心
  • 空洞卷积得到的特征图大小是不变的

关于特征图大小的计算,我们有如下的公式

n out = ⌊ n in + 2 p − k s ⌋ + 1 n_{\text {out }}=\left\lfloor\frac{n_{\text {in }}+2 p-k}{s}\right\rfloor+1 nout =⌊snin +2p−k⌋+1

其中, n out n_{\text {out }} nout 和 n in n_{\text {in }} nin 分表代表输出和输入的特征图尺度, k k k 代表卷积核大小, p p p 代表填充的尺寸, s s s 代表卷积的步长。

相关推荐
曾浩轩2 分钟前
跟着江协科技学STM32之4-5OLED模块教程OLED显示原理
科技·stm32·单片机·嵌入式硬件·学习
CCPC不拿奖不改名14 分钟前
网络与API:从HTTP协议视角理解网络分层原理+面试习题
开发语言·网络·python·网络协议·学习·http·面试
却道天凉_好个秋16 分钟前
音视频学习(八十四):视频压缩:MPEG 1、MPEG 2和MPEG 4
学习·音视频
●VON18 分钟前
AI 保险机制:为智能时代的不确定性兜底
人工智能·学习·安全·制造·von
代码游侠24 分钟前
学习笔记——HC-SR04 超声波测距传感器
开发语言·笔记·嵌入式硬件·学习
军军君0138 分钟前
Three.js基础功能学习七:加载器与管理器
开发语言·前端·javascript·学习·3d·threejs·三维
知识分享小能手1 小时前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04中的人工智能—— 知识点详解 (25)
人工智能·学习·ubuntu
崇山峻岭之间1 小时前
Matlab学习记录32
开发语言·学习·matlab
乌暮1 小时前
JavaEE初阶---《JUC 并发编程完全指南:组件用法、原理剖析与面试应答》
java·开发语言·后端·学习·面试·java-ee
CCPC不拿奖不改名1 小时前
计算机网络:电脑访问网站的完整流程详解+面试习题
开发语言·python·学习·计算机网络·面试·职场和发展