空洞卷积 Dilated Convolution

空洞卷积 Dilated Convolution#

通常的卷积操作,除了需要指定输入输出通道数,还需要确定卷积核大小 kernei_size、步长 stride、填充大小 padding。

Conv1d(384, 48, kernel_size=3, stride=1, padding=1)

空洞卷积则是在此基础上增加了 dilation 参数,用于控制卷积核的扩张程度。dilation 值默认为 1,手动将其指定为大于 1 的数会发生很有趣的事。

Conv1d(384, 48, kernel_size=3, stride=1, padding=2, dilation=2)

以上面这个代码为例,当 dilation 为 2 时,虽然卷积核大小为 3 不会变,但其元素之间会多出一个空洞,使得卷积核的覆盖范围从 3 个元素变为 5 个元素。

显而易见的,空洞卷积有一大好处:增加卷积核的感受视野。对于那些需要更长上下文信息的任务,例如音频处理和语义分割,空洞卷积比常规卷积更有优势。

通常不要连续使用相同 dilation 的空洞卷积,因为这样会造成致命的局部信息丢失。

参考来源#

作者:chirp

出处:https://www.cnblogs.com/chirp/p/18120818

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

posted @   倒地  阅读(98)  评论(0编辑  收藏  举报
more_horiz
keyboard_arrow_up dark_mode palette
选择主题
menu
点击右上角即可分享
微信分享提示