CNN backbone 总结笔记

算是一篇梳理backbone的总结笔记,前面部分不少内容都是照搬 reference 2 的,稍微总结了一下里面的内容,后面增加了其中遗漏的以及今年新出的网络(FPN,Hourglass,ResNeXt,DCN,DPN,SENet,MobileNet v3),用了很多网图,联系侵删;

Reference: 

1. https://arxiv.org/pdf/1908.03673.pdf,19年8月的目标检测硬核综述;

2. https://www.cnblogs.com/silence-cho/p/11620863.html,backbone总结的很细致了,强烈推荐;

下图是目标检测的发展历程,可以看到其中backbone对于其发展起到了至关重要的作用,大多数milestone都有在backbone上有新的创新。

其发展方向主要有三种类型:

1. 深度:网络层数增加,VGG -> ResNet -> ResNeXt

2. 模块化:GoogLeNet系列,ResNeXt(Inception 结构)

3. 轻量:MobileNet系列,ShuffleNet;

一些比较早的网络结构大致了解一下即可。


  • LeNet-5
    • 结构简单,主要是卷积和全连接;


  • AlexNet
    • 分为上下两部分卷积,因算力不足分别放在两块GPU上;
    • 使用ReLU替代Sigmoid,有效缓解了梯度消失问题;
    • 使用局部相应归一化;
    • 使用数据增广和dropput防止过拟合;


  • ZFNet
    • 将AlexNet起始的卷积由(11x11,stride 4)修改为 (7x7,stride 2)
    • 增加中间卷积核的通道数;


  •  VGGNet
    • 结构简洁,5层卷积,3个全连接,softmax作为输出,层之间用max-pooling分开,隐层采用ReLU激活函数;
    • 采用小卷积核(3x3)和多卷积核,减少参数也增加了非线性映射(增强表达能力);
    • 结论:局部响应归一化无增益;网络层数加深性能变好;多个小卷积核由于单个大卷积核;


  • GoogLeNet(Inception) v1:
    • 引入inception结构,性能和vgg差不多但参数量少很多:既保持网络结构的稀疏性(减少参数,减轻过拟合),又能利用密集矩阵的高计算你性能,Inception网络结构的主要思想是寻找用密集成分来近似最优局部稀疏连接;
    • 加深的基础上加宽,使用稀疏的网路结构又能产生稠密的数据;
    • 采用不同大小的卷积核获得不同大小的感受野,最后在channel上拼接实现不同尺度特征融合;
    • 采用1x1卷积接一个ReLU,既减少计算量增加了非线性能力;
    • 采用 average pool 替代全连接层;


  • GoogLeNet(Inception) v2:
    • 用两个3*3卷积代替一个5*5卷积,降低参数量;
    • 将滤波器大小nxn的卷积分解为1xn和nx1卷积的组合(7x7卷积相当于首先执行1x7卷积,然后在其输出上执行7x1卷积(在中度大小的特征图上效果较好,featuremap size 在12-20之间);
    • 将池化和卷积并行执行再合并,保持特征表示并降低计算量;


  • GoogLeNet(Inception) v3:
    • 采用 RMSProp优化器;
    • Factorization into small convolution: 将7x7分解成两个一维的卷积(1x7,7x1),3x3也是一样(1x3,3x1),加速计算同时加深网络,提高
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值