几大深度网络学习总结
vgg:
层数较深的卷积网络
多个3*3小卷积代替大卷积,减少参数量
卷积池化组,block块,更简洁
inception:
多尺度,对前一层的输出,进行1*1卷积,3*3卷积,5*5卷积,7*7卷积等多尺度融合,充分学习特征
引入1*1卷积,进行通道数降维,减少参数量
引入1*3卷积和3*1卷积代替3*3卷积,减少参数量
引入BN层
引入残差
辅助决策分支,从模型中间引出输出层,加强反向传播
resnet:
残差模块,输出时加上最开始时的输入,再进行relu。out=x+f(x),简单化理解下反向传播,dout/dx=1+f'(x),通过+1的操作可以防止链式法则时梯度消失。
可以使神经网络很深,突破之前20几层的界限
densenet:
学习resnet,denseblock模块,每个bottleneck块的输入通道concatenate前面块的bottleneck块的输出,使得后面层也能获得前面层的特征图,特征更充分。消耗显存应该会更多
bottleneck块BN,relu,conv,pre-activation,效果比较好。这个原因是不是因为输入有其他特征图,先BN会好点?
transition模块,1*1降维,pooling减小特征图尺寸
可以使网络很深