首页 > 编程知识 正文

反卷积输出大小计算公式,反卷积输出大小

时间:2023-05-05 19:49:05 阅读:267911 作者:530

感受野大小计算、卷积参数量与计算量、空洞卷积计算量与参数量 卷积计算,反卷积计算,特征图大小计算,空洞卷积计算

转自:https://www.jianshu.com/p/09ea4df7a788?utm_source=oschina-app

卷积计算过程(单/RGB多通道)特征图大小计算公式转置卷积(反卷积)计算过程空洞卷积计算过程

 

卷积计算过程(单/RGB多通道)

假设输入层的大小为 5 x 5,局部感受野(或称卷积核)的大小为 3 x 3,那么输出层一个神经元所对应的计算过程(下文简称「卷积计算过程」)如下:

每个卷积核对应的权重 W 在计算卷积过程中,值是固定的,我们称为权重共享

如果将输入层想像成黑板,局部感受野就像是黑板擦,他会从左往右,从上至下的滑动,每次滑动 1 个步长(Stride)并且每次滑动都重复上述的计算过程,我们就可以得到输出的特征图(feature map),如下图:

有时候,按照规定步数滑动到黑板边缘时,黑板擦一部分会露出在黑板外,这个时候就 不能够顺利执行卷积过程了,解决的方法是填充,常见的有两种填充(Padding)方法,第一种方法为 Valid,第二种方法为 Same,如下图所示:

Valid 是丢弃的方法,比如上述的 input_width = 7,kernel_width = 5,stride = 3,只允许滑动 1 次,多余的元素则丢掉。

Same 是补全的方法,对于上述的情况,允许滑动 3 次,但是需要补 4 个元素,左边补 2 个 0,右边补 2 个 0,这种方法则不会抛弃边缘的信息,关于如何计算填充数量会在下小节中讲到。

在实际应用中,输入的都为彩色图像(RGB 三通道),也就是说输入的维度是 [图片数,图片高,图片宽,通道数],这个时候,执行卷积的过程如下:

特征图大小的计算公式

我们在设计和调整网络结构的时候,还需要快速知道调整了卷积核后,输出特征图的大小,假定:

输入图片 i(只考虑输入宽高相等)卷积核大小 f步长 s填充的像素数 p

那么输出的特征图大小 o 的计算公式则如下:

当填充方式为 VALID 时,p 值等于 0,代入相应的 i,f,p,s 就可以相应的计算出 o 值了。

当填充方式为 SAME 时,步长 s 为 1 时,输出的 o == i,我们则可以计算出相应的 P 值为 p = (f-1) / 2

转置卷积(反卷积,逆卷积)的计算过程

O=(i-1)*s + k

空洞卷积的计算过程

空洞卷积(Dilated convolutions)在卷积的时候,会在卷积核元素之间塞入空格,如下图所示:

这里引入了一个新的超参数 d,(d - 1) 的值则为塞入的空格数,假定原来的卷积核大小为 k,那么塞入了 (d - 1) 个空格后的卷积核大小 n 为:

进而,假定输入空洞卷积的大小为 i,步长 为 s ,空洞卷积后特征图大小 o 的计算公式为:

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。