Week2: Deep convolutional models: case studies
文章目录
1. Three Classic CNNs
1.1 LeNet-5
Simon, H. and K. Bart (2001). GradientBased Learning Applied to Document Recognition. Intelligent Signal Processing, IEEE: 306-351.
1.2 AlexNet
Alex, K., et al. (2012). “ImageNet Classification with Deep Convolutional Neural Networks.” 1097–1105.
1.3 VGG - 16
Simonyan & Zisserman 2015. Very deep convolutional networks for large-scale image recognition
2. Advanced CNN - Resnets
He, K., et al. (2016). “Deep Residual Learning for Image Recognition.”
3. Network in Network and 1 × {\times} × 1 convolutions
Lin et al., 2013.Network in network
- 神经网络中的神经网络理解:如下图所示,将输入看做36个切条,输出看作36个切条,其中每一个输出切条都是由#filters个1*1的卷积核与一个输入切条进行“矩阵乘法”得来的,该过程相当于全连接神经网络中的一层。因此该卷积层一共包含了36个并联的全连接网络层,将36个输入切条,变成36个输出切条,组合成了一个卷积层。
- 使用该方法可以缩减网络的channel数,即
n
C
{n_C}
nC
4. Inception Network - GoogleNet
Szegedy, C., et al. (2015). “Going Deeper With Convolutions.”
- 将所有的核、pool层的选择放入一层中,让神经网络自己选择合适的组合。
- 拿出其中 5 × 5 {5 \times 5} 5×5的部分,分析计算次数:
- 计算次数的计算方法:
输 出 的 v o l u m e 的 元 素 个 数 × 核 的 元 素 个 数 {输出的volume的元素个数\times 核的元素个数} 输出的volume的元素个数×核的元素个数
28 × 28 × 32 × 5 × 5 × 192 = 120 M i l l i o n 28\times28\times32 \times 5\times5\times192=120Million 28×28×32×5×5×192=120Million
- 使用1*1卷积核后:
( 28 × 28 × 16 × 1 × 1 × 192 ) + ( 28 × 28 × 32 × 5 × 5 × 16 ) = 12.4 M (28\times28\times16\times1\times1\times192) + (28\times28\times32\times5\times5\times16)=12.4M (28×28×16×1×1×192)+(28×28×32×5×5×16)=12.4M - 因为channel数先减少后增加,因此该层也叫 bottleneck layer。
5. Transfer Learning迁移学习
- 如果你有一个小的数据集,想训练一个分类三种类别的神经网络:Tigger,Misty,Neither,最好的做法是使用别人的网络及权重,固定除了softmax层的权重,只用自己的训练集训练softmax层;或者将训练集输入别人的神经网络(带权重),计算得到softmax前的一层的数据,存入硬盘,然后将其作为输入,只训练softmax层
- 如果数据集相对较大,则可以固定相对较少的参数,训练更多的参数,而不仅仅是训练softmax层
- 如果数据集很大,则可以将所有别人的参数作为初始化,训练所有的参数。
6. Data Augmentation
- PCA Color Augmentation: 使用主成分分析,对RGB中的主成分元素进行大范围shifting,次要成分进行小范围shifting
7. Conclusion