CNN经典网络模型发展史:LeNet, AlexNet, VGGNet, GoogLeNet, ResNet, DenseNet(持续更新)
LeNet
- 这是最早用于数字识别的CNN,标志着CNN的真正面世
- 7层(1Input+3Cov+1FC+1Output
AlexNet
- 网络增大(5Cov+3maxpool+1Softmax
- Data Augmentation:水平翻转、随机裁剪、平移变换、颜色、光照变换;
- Dropout
- ReLU
- LRN归一化层的使用
- 带动量的随机梯度下降
- 百万级ImageNet图像数据,GPU实现
VGGNet
- 训练时间长,网络权重规模太大(VGG16 (553MB,VGG19(575MB
- 规整的网络结构:对于同一输出特征图尺寸,这些网络层有相同的filters,特征图的尺寸减半,特征图的filters翻倍。
- 引入了3*3 filter和maxpooling/2
- 网络输入224*224(input_size>=48*48
Inception V1
- NIN(Network in Network)中引入了1*1 filter,用于降维
- 增加了网络的宽度和深度
- 同时使用了1*1,3*3,5*5的卷积,增加了网络对尺度的适应性
Inception V2
- 加入了BN(Batch Normalization)层,增加了模型的鲁棒性,much higher learning rate and less careful about initialization, eliminating the need for Dropout.
- 用2个连续的3*3 conv替代inception模块中的5*5,从而实现网络深度的增加,网络整体深度增加了9层
Inception V3
- 提出了卷积分解(Factorization),将7*7分解成两个一维的卷积(1*7,7*1),3*3也是一样(1*3,3*1),加速计算,使得网络深度进一步增加
- 增加网络宽度,网络输入从224*224变为了299*299(input_size>=139*139
Inception V4
- 利用残差连接(Residual Connection),将Inception模块和ResidualConnection结合
ResNet
- Deeper (152 layers—8 deeper than VGG nets
- Shortcut
- ResNet 中的很多层级实际上对整体的贡献非常小,在训练中随机丢弃一些层级也不会有很大的影响。
DenseNet
- 提升网络层级间信息流与梯度流的效率,并提高参数效率
- 每一层的输出都会作为后面所有层的输入