深度学习——深卷积网络:实例探究[11]

google inception网络

迁移学习

数据增强

如何使用开源代码

一、三个经典网络

LeNet

[LeCun et al., 1998. Gradient-based learning applied to document recognition]

这篇文章较早,比如现在常用max,而当时用avg,当时也没有softmax

深度学习——深卷积网络:实例探究[11]

AlexNet

[Krizhevsky et al., 2012. ImageNet classification with deep convolutional neural networks]

这篇文章让CV开始重视深度学习的使用,相对于LeNet-5,它的优点有两个:更大,使用ReLU

same表示使用same过滤器,也就是输入和输出维度一致

深度学习——深卷积网络:实例探究[11]

VGG-16

[Simonyan & Zisserman 2015. Very deep convolutional networks for large-scale image recognition]

16表示总共有16个CONV和FC,这篇文章指出了信道数和维度变化的规律性(随网络增加/减少),缺点是参数实在太多了

深度学习——深卷积网络:实例探究[11]

阅读论文顺序:2-3-1

二、残差网络

[He et al., 2015. Deep residual learning for image recognition]

残差网络基础

残差网络由残差块组成,它使得网络可以变得更深。蓝色为正常路径,紫色为短路/跳跃连接,$a^{[l]}$的信息会直接作为$a^{[l+2]}$计算的输入(残差)。插入的位置是线性计算后,激活前

深度学习——深卷积网络:实例探究[11]

深度学习——深卷积网络:实例探究[11]

plain network的问题

plain network指一般的网络。在plain network中随着深度增加,优化算法更难执行,所以可能会出现错误率先降后升的情况

网络越深越难训练:梯度消失/爆炸的问题

为什么Residual网络有用

假设对一个大型网络再增加两层(构成残差块)

深度学习——深卷积网络:实例探究[11]

$a^{[l+2]}=g(a^{[l]}+z^{[l+2]})\\=g(a^{[l]}+w^{[l+2]}a^{[l+1]}+b^{[l+2]})$

如果让$w^{[l+2]}=0$,$b^{[l+2]}=0$,则$a^{[l+2]}=g(a^{[l]})$

如果$g(x)$用ReLU激活函数,则$a^{[l+2]}=a^{[l]}$

所以,在原来的网络上加上两层,再通过残差网络,还是可以很容易学习到恒等关系

如果不用残差网络,$a^{[l+2]}=g(z^{[l+2]})=g(w^{[l+2]}a^{[l+1]}+b^{[l+2]})$,要用这个学习到$a^{[l+2]}=a^{[l]}$,明显会比上面的方式难

当$a^{[l+2]}$和$a^{[l]}$形状不同时,$a^{[l+2]}=W_sa^{[l]}$,增加一个$W_s$矩阵。这个矩阵可以是学习的矩阵/参数,或固定矩阵(只是对$a^{[l]}$用0进行填充,使得变成想要的矩阵)

 

残差网络的结构图

深度学习——深卷积网络:实例探究[11]

三、1x1卷积Network in network

[Lin et al., 2013, Network in network]

1x1卷积

当channel=1时,1x1没有什么效果

当channel=$n_c$时,$ReLU(n_hxn_wxn_c * (1x1xn_c)n_oc + b)=ReLU(n_hxn_wxn_oc + b)$,相当于对输入的元素运用了ReLU(非线性函数)

1x1卷积的作用

通过增加一个非线性函数使得信道数减少或保持不变(压缩信道的方法),以减少计算量

而池化层只能是对高度/宽度进行压缩

28x28x192 --ReLU(conv 1x1x32)-->28x28x32

四、google Inception网络

[Szegedy et al. 2014. Going deeper with convolutions]

Inception可以帮你决定应该采用什么样的过滤器,是否需要pool层等

它的做法是把各种过滤器的结果堆叠在一起

下例中的维度是自己定义的,这样最后输出的结果中会有256个信道

下图是一样Inception的一个基础块

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwfxsg.html