经典深度分类网络
AlexNet
- 特征
开山之作,使用ReLU、LRN、Dropout、Overlapping pooling(stride<kernel) - 架构图
VGG
- 特征
- cov3x3 pad=stride=1 不改变特征图大小
- con3x3+conv3x3=conv5x5
con3x3+conv3x3+conv3x3=conv7x7
减少计算量 - 提出更深(level++)>更宽(channels++)
- 架构图
vgg16(D) vgg19(E)
Inception v1
- 特征:
- 同时计算多尺度特征(a)
- 1x1 conv 缩减channel数量 (b)
- middle level 插入独立的分类层(deep supervision?)
- Inception module 架构
- GoogleNet 架构
Resnet
-
特征:
残差网络 通道对齐方式:1x1 conv 学习残差 -
bottleneck 架构(channel 缩小->扩张)
- 扩张对齐例(by 1x1 conv)
- resnet 网络参数
参考资料:
Resnet
Inception v2
- 特征:
- 缩减参数量:
- 5x5=3x3+3x3 7x7=3x3+3x3+3x3
- 3x3=3x1+1x3
- 减小feature map 同时 扩展channel:
conv+pooling 并联
- 炼丹大法好:
- 大比例压缩(pooling) 慎用,导致feature map 缩减过快
- channel ++ 有利于收敛
- 1x1 conv 压缩channel 低损压缩
- 深度 和channel数平衡 等比深度宽度
- 网络架构:
Inception v3
- 特征:middle level classifier +BN/Dropout 层 for regularization
- 架构:
Inception v4
更精巧复杂的结构,为验证resnet只是加速训练而提出
Inception-Resnet v1&v2
- 特征:
顾名思义,Inception+residual 模块
对 Inception-resnet 模块的输出scaling const 0.1-0.3
DenseNet
- 特征:输入为该block中所有前置层的feature map
Dense layer
BN->Relu->Bottleneck(channel->4*k)->conv(channel->k)->Dropout
Transition layer BN+ReLu+1x1conv(可 channel–)+pooling(feature map --)
为何bottleneck ?Dense block中,如果每个层函数 都产生 k 个特征图,那么第 l 层就有 个特征图作为输入,其中 k0 表示输入层的通道数。输入通道数太多惹
- 架构:
densenet比resnet慢的原因在于,densenet的featuremap比resnet大很多,导致卷积过程的计算量比resnet大很多,简而言之就是flops要大一些,内存的占用要大一些,而且内存的访问次数要多很多,内存的访问是很慢的
ResNeXt
- 特征: 以group 形式来增加branch
- 架构:
提出了 aggregrated transformations,用一种平行堆叠相同拓扑结构的blocks代替原来 ResNet 的三层卷积的block,在不明显增加参数量级的情况下提升了模型的准确率,同时由于拓扑结构相同,超参数也减少了,便于模型移植。
Resnet V2
- 特征:将bn-relu 移动到 conv 前 保证Identity mapping
- 架构:
为什么要保证identity 分支的分布?