二维卷积层参数对形状的影响

卷积核

假设原输入形状为 ( n h × n w ) (n_h \times n_w) (nh×nw),卷积核 kernel 大小为 ( k h × k w ) (k_h \times k_w) (kh×kw),则输出形状为 ( n h − k h + 1 ) × ( n w − k w + 1 ) (n_h - k_h + 1) \times (n_w - k_w + 1) (nhkh+1)×(nwkw+1)

填充

填充 padding 是指在输入高和宽两侧填充元素(通常是 0 元素),如果在高的两侧一共填充 ph 行,在宽的两侧一共填充 pw 列,则输出形状为 ( n h − k h + p h + 1 ) × ( n w − k w + p w + 1 ) (n_h - k_h + p_h + 1) \times (n_w - k_w + p_w + 1) (nhkh+ph+1)×(nwkw+pw+1)一般情况下会设置 p h = k h − 1 p_h = k_h - 1 ph=kh1 p w = k w − 1 p_w = k_w - 1 pw=kw1来输入和输出具有相同的高和宽。

假设这里 k h k_h kh 是奇数,我们会在高的两侧分别填充 p h 2 \frac{p_h}{2} 2ph 行;如果 k h k_h kh 是偶数,在输入的顶端填充 ⌈ p h 2 ⌉ \lceil\frac{p_h}{2}\rceil 2ph 行,在底端填充 ⌊ p h 2 ⌋ \lfloor\frac{p_h}{2}\rfloor 2ph。在宽的两侧同理。

步长

卷积核在输入中每次滑动的长度就是步长 stride

当高上步长为 s h s_h sh,宽上步长为 s w s_w sw 时,输出形状为 ⌊ ( n h − k h + p h + s h ) / s h ⌋ × ⌊ ( n w − k w + p w + s w ) / s w ⌋ \lfloor (n_h - k_h + p_h + s_h) / s_h\rfloor \times \lfloor(n_w - k_w + p_w + s_w) / s_w \rfloor (nhkh+ph+sh)/sh×(nwkw+pw+sw)/sw 如果设置 p h = k h − 1 p_h = k_h - 1 ph=kh1 p w = k w − 1 p_w = k_w - 1 pw=kw1,那么输出形状将简化为 ⌊ ( n h + s h − 1 ) / s h ⌋ × ⌊ ( n w + s w − 1 ) / s w ⌋ \lfloor (n_h + s_h - 1) / s_h\rfloor \times \lfloor(n_w + s_w - 1) / s_w \rfloor (nh+sh1)/sh×(nw+sw1)/sw更进一步,如果输入的高和宽都能被各自的步长整除,那么输出形状为 ( n h / s h ) × ( n w / s w ) (n_h / s_h) \times (n_w / s_w) (nh/sh)×(nw/sw)

转置卷积

如果步幅为 s ,填充为 s / 2 (假设 s / 2 是整数)且卷积核的高和宽为 2s ,转置卷积核会将输入的高和宽分别放大 s 倍。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值