1.看mlpconv最懵逼的就是这个图:
2.下面图可能会更友好些吧。
A是50*50*3的数据。经过4个3*3*3的普通卷积核做卷积,并且结果需要过relu函数得到B。
B是25*25*4的数据。经过5个1*1*4的1*1卷积核做卷积,结果过relu函数,得到C。
C是25*25*5的数据。经过5个1*1*5的1*1卷积核做卷积,结果过relu函数,得到D。
D就是这个网络结构的最终输出。
3.pytorch代码
def nin_block(in_channels,out_channels,kernel_size,strides,padding):
outblk = nn.Sequential(
nn.Conv2d(in_channels,out_channels,kernel_size,strides,padding)
nn.ReLU()
nn.Conv2d(out_channels,out_channels,kernel_size=1)
nn.ReLU()
nn.Conv2d(out_channels,out_channels,kernel_size=1)
nn.ReLU())
return outblk