Depthwise convolution(DW):每个卷积核的channel都是等于1的(每个卷积核只负责一个输入特征的一个channel,故卷积核个数必须等于输入特征矩阵的challels,从而得出输出矩阵的channel数也等于输入矩阵的channel数),用分组卷积实现。只考虑了空间融合,不考虑通道融合。
subconv_space_mixing = nn.Conv2d(3,3,3,groups=3,padding='same') # DW卷积
Pointwise Convolution (PW):卷积核1x1,只做通道之间的融合,将h个通道每一个单一的像素点逐个加权求和,不考虑周围点,对单一的像素点逐个加权求和,放弃了局部关联性这种假设,只做通道融合,不做空间融合。
subconv_channel_mixing = nn.Conv2d(3,3,1) # PW卷积