模型设计与训练的最佳实践
1. 卷积类型选择
1.1 膨胀卷积
膨胀卷积相较于普通卷积具有更大的感受野。普通卷积有一个滑动窗口,而膨胀卷积的滑动窗口中,输入像素是每隔两个相邻步长采样一次。不过,不建议在同一网络中将膨胀卷积与其他类型的卷积(如深度可分离卷积)一起使用,因为膨胀卷积通常需要更小的学习步长来训练,这会显著减慢训练过程。
以下是创建膨胀卷积操作的代码:
class DilConv(nn.Module):
def __init__(self, C_in, C_out, kernel_size, stride, padding,
dilation, affine=True):
super(DilConv, self).__init__()
self.op = nn.Sequential(
nn.ReLU(inplace=False),
nn.Conv2d(C_in, C_in, kernel_size=kernel_size,
stride=stride, padding=padding, dilation=dilation, groups=C_in,
bias=False),
nn.Conv2d(C_in, C_out, kernel_size=1, padding=0,
bias=False),
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



