美文网首页
[深度卷积模型]吴恩达深度学习coursre4week2思考小结

[深度卷积模型]吴恩达深度学习coursre4week2思考小结

作者: 小双2510 | 来源:发表于2017-11-29 00:08 被阅读0次

预告:

>> 1.经典的卷积神经网络

>> 2.ResNet残差网络

>> 3.1✖️1卷积(Network in Network)

>> 4.Inception Work(Go deeper)

>> 5. 一些实际操作中的建议


1.经典的卷积神经网络:

LeNet,AlexNet,VGG Screen Shot 2017-11-28 at 9.20.07 AM.png Screen Shot 2017-11-28 at 9.22.22 AM.png

[图片上传中...(Screen Shot 2017-11-28 at 10.18.42 AM.png-50628f-1511882335739-0)]

2.ResNet残差网络:

ResNet对于中间的激活函数来说,有助于能够达到更深的网络,解决梯度消失和梯度爆炸的问题。(梯度消失和梯度爆炸详见course2)


Screen Shot 2017-11-28 at 10.20.17 AM.png

其前向传播的计算步骤为:

Linear:z[l+1]=W[l+1]a[l]+b[l+1]
Relu:a[l+1]=g(z[l+1])
Linear:z[l+2]=W[l+2]a[l+1]+b[l+2]
Relu:a[l+2]=g(z[l+2])

ResNet也就是前向传播公式的最后一个步骤变为:a[l+2]=g(z[l+2]+a[l])

“残差块”所组成的残差网络,能够使极多深度的神经网络的误差保持减小 Screen Shot 2017-11-28 at 10.20.45 AM.png

3.Network in Network

在每个“格子”的纵深方向的一组输入值,经过n个1✖️1的filter卷积后,得到n个值, 这就是一个普通神经网络。所以说这是network in network。 Screen Shot 2017-11-28 at 10.30.33 AM.png Screen Shot 2017-11-28 at 10.32.34 AM.png 这种方式,能够根据需要,减少Input的channel数,或者保持不变,甚至增加channel数。 Screen Shot 2017-11-28 at 10.40.09 AM.png

4.Inception Network

Inception network在1✖️1的filter的启发下,减少了大量的计算量。
可以想象:在没有1卷积时,一大块的卷积才能得到一个点的output。


Screen Shot 2017-11-28 at 10.46.28 AM.png
Screen Shot 2017-11-28 at 10.49.18 AM.png
inception network的模型: Screen Shot 2017-11-28 at 10.44.24 AM.png
MAXPOOL后面做一个1✖️1卷积, 是为了缩小depth维度
另外filter3,5前面做1的卷积,是为了减小计算量。
Screen Shot 2017-11-28 at 10.58.00 AM.png 旁支提取中间结果,来预测最后的Label。

同时inception可以和resnet辅助使用。
红色箭头的maxpool,用来改变(缩小)height,width维度。


Screen Shot 2017-11-28 at 10.59.43 AM.png

5.一些实际操作中的建议

5.1使用开源实现
5.2迁移学习transfer learning
小数据集:

如今在深度学习领域,许多研究者都会将他们的工作共享到网络上。在我们实施自己的工作的时候,比如说做某种物体的识别分类,但是只有少量的数据集,对于从头开始训练一个深度网络结构是远远不够的。

但是我们可以应用迁移学习,应用其他研究者建立的模型和参数,用少量的数据仅训练最后自定义的softmax网络。从而能够在小数据集上达到很好的效果


Screen Shot 2017-11-28 at 11.22.12 AM.png

如果我们在自己的问题上也拥有大量的数据集,我们可以多训练后面的几层。总之随着数据集的增加,我们需要“ freeze”的层数越来越少。最后如果我们有十分庞大的数据集,那么我们可以训练网络模型的所有参数,将其他研究者训练的模型参数作为参数的初始化来替代随机初始化,来加速我们模型的训练。
5.3 数据增强 Data augmentation
数据扩充的方法:

镜像翻转(Mirroring);
随机剪裁(Random Cropping);
色彩转换(Color shifting):
为图片的RGB三个色彩通道进行增减值,如(R:+20,G:-20,B:+20);PCA颜色增强:对图片的主色的变化较大,图片的次色变化较小,使总体的颜色保持一致。


Screen Shot 2017-11-28 at 11.25.16 AM.png Screen Shot 2017-11-28 at 11.25.29 AM.png Screen Shot 2017-11-28 at 11.25.32 AM.png

为了节省时间,数据扩充的过程和训练过程可以多CPU多线程来并行的实现。


Screen Shot 2017-11-28 at 11.27.21 AM.png

5.4
data v.s. hand - engineering
在有大量数据的时候,我们更倾向于使用简单的算法和更少的手工工程。因为此时有大量的数据,我们不需要为这个问题来精心设计特征,我们使用一个大的网络结果或者更简单的模型就能够解决。

相反,在有少量数据的时候,我们从事更多的是手工工程。因为数据量太少,较大的网络结构或者模型很难从这些少量的数据中获取足够的特征,而手工工程实际上是获得良好表现的最佳方式。

对于机器学习应用:

标记数据,(x,y);
手工特征工程/网络结构/其他构建。
Tips for doing well:

在基准研究和比赛中,下面的tips可能会有较好的表现:

Ensembling:独立地训练多个网络模型,输出平均结果或加权平均结果;

测试时的 Multi-crop:在测试图片的多种版本上运行分类器,输出平均结果。 Screen Shot 2017-11-28 at 11.32.27 AM.png

相关文章

网友评论

      本文标题:[深度卷积模型]吴恩达深度学习coursre4week2思考小结

      本文链接:https://www.haomeiwen.com/subject/kodybxtx.html