卷积神经网络对图片分类-中

接上篇:卷积神经网络对图片分类-上

5 池层(Pooling Layers)

池层通常用在卷积层之后,池层的作用就是简化卷积层里输出的信息, 减少数据维度,降低计算开销,控制过拟合。

如之前所说,一张28X28的输入图片,经过5X5的过滤器后会得到一个24X24的特征图像,继续简化这个24X24特征图像里的信息,只保留关键信息。需要加入一个池层:

把相邻的4个单元里的信息合并成一个。上图中4种颜色区域里的4个单元被合并成了一个单元,就是取4个单元里的最大值,当然可以使用其他方法来进行合并。

28X28经过3个过滤器变成3个24X24的特征图像,然后再经过池层简化成3个12X12的特征图像。

6 全连接层(Fully connected layer)

现在我们可以在网络的末端加上一个全连接层,来检测获取到的这些特征图像与哪种类别更相近:

该层接收上一层的输出当做输入,上一层的输出就是一些学习出来的特征图像,该层输出一个N维的向量,代表图片可能的分类概率[0.01,0.04,0.94,0.02],数值越高表示这些特征图像和那一类更相近。 这里0.94代表图像是船的可能性为94%,表示预测图片与过滤器产生了很高的激励,获取到了很多高层次的特征,例如船帆,船桨等等特征。0.02表示图像是鸟的可能性为2%,表示预测图片与过滤器产生了很低的激励,没有获取到了很多高层次的特征,例如翅膀,喙等等特征。

7 更深的卷积神经网络结构

一般情况下在卷积神经网络结构中不仅仅只有卷积层,池层,全连接层,还有其它一些层穿插在卷积层之间。可以减少出现过拟合,提高学习率,缓解梯度消失等等问题。一个典型的CNN结构如下所示:

Input->Conv->ReLU->Conv->ReLU->Pool->Dropout->Conv->ReLU->Conv->ReLU->Pool->Dropout->FullyConnected

现在我们只看每个卷积层,不考虑它们之间穿插的其他层。所以在第一个卷积层之后,又进入下一个卷积层,那么第一个卷积层的输出就变成了下一个卷积层的输入。第一个卷积层的输入是一个普通的图片,第二个卷积层的输入是从第一个卷积层变化而来的一些特征图像。以后每一个卷积层的输入,基本上都是上一个卷积层提取出来的特征图像,后面的卷积层组合之前的卷积层里提取的简单特征, 得到更复杂的特征数据。

当数据一层一层通过更多的卷积层时,你可以得到的特征图像代表的特征就会更加的复杂。在网络的最后,你也许可以得到一个抽象的物体。如果你想通过可视化方法在卷积神经网络中看到更多的信息。这里有一个工具方便你查看https://github.com/yosinski/deep-visualization-toolbox,它的效果如下图所示:

8 Dropout Layers

dropout层可以防止网络出现过拟合,网络有时训练出来的权重值在训练集上表现的很好,但不能泛化到测试集上,在测试集表现的不好。例如我们有一组训练数据如下图所示,训练出来了一条曲线与训练数据很匹配,

但是如果把调训练出来的曲线用在测试数据上时就很肯能不太准确了,还不如一条直线更贴切

dropout的思想就是,在网络每次训练的时候随机去掉一些神经元(30%,50%等等),防止训练出来的权重值过度的适合训练数据。每次训练的时候都随机去掉一部分神经元,那么每次训练的时候都是全新的网络,类似多个网络训练完毕后来进行投票来决定最佳的权重值,有点像决策树模型。

(未完待续)

参考:

http://neuralnetworksanddeeplearning.com/chap6.html#convolutional_neural_networks_in_practice

https://adeshpande3.github.io/adeshpande3.github.io/A-Beginner's-Guide-To-Understanding-Convolutional-Neural-Networks/

原文发布于微信公众号 - 奇点(qddata)

原文发表时间:2016-09-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏深度学习那些事儿

深度学习中IU、IoU(Intersection over Union)的概念理解以及python程序实现

Intersection over Union是一种测量在特定数据集中检测相应物体准确度的一个标准。我们可以在很多物体检测挑战中,例如PASCAL VOC ch...

8023
来自专栏SIGAI学习与实践平台

反向传播算法推导-卷积神经网络

原创声明:本文为 SIGAI 原创文章,仅供个人学习使用,未经允许,不能用于商业目的。

2331
来自专栏素质云笔记

无监督︱异常、离群点检测 一分类——OneClassSVM

OneClassSVM两个功能:异常值检测、解决极度不平衡数据 因为之前一直在做非平衡样本分类的问题,其中如果有一类比例严重失调,就可以直接用这个方式来做:On...

1.4K6
来自专栏SnailTyan

Single Shot MultiBox Detector论文翻译——中英文对照

SSD: Single Shot MultiBox Detector Abstract We present a method for detecting ob...

2660
来自专栏郭耀华‘s Blog

各种卷积结构原理及优劣总结

卷积神经网络作为深度学习的典型网络,在图像处理和计算机视觉等多个领域都取得了很好的效果。

981
来自专栏marsggbo

DeepLearning.ai学习笔记(四)卷积神经网络 -- week1 卷积神经网络基础知识介绍

一、计算机视觉 ? 如图示,之前课程中介绍的都是64* 64 3的图像,而一旦图像质量增加,例如变成1000 1000 * 3的时候那么此时的神经网络的计...

22510
来自专栏SnailTyan

Single Shot MultiBox Detector论文翻译——中文版

SSD: Single Shot MultiBox Detector 摘要 我们提出了一种使用单个深度神经网络来检测图像中的目标的方法。我们的方法命名为SSD,...

2990
来自专栏PPV课数据科学社区

【算法】什么是神经网络?

本文结构: 什么是神经网络 什么是神经元 神经网络的计算和训练 代码实现 1. 什么是神经网络 神经网络就是按照一定规则将多个神经元连接起来的网络 例如全连接(...

4309
来自专栏瓜大三哥

感知器神经网络

感知器是一种前馈人工神经网络,是人工神经网络中的一种典型结构。感知器具有分层结构,信息从输入层进入网络,逐层向前传递到输出层。根据感知器神经元变换函数、隐层数以...

25410
来自专栏小鹏的专栏

Faster RCNN:RPN,anchor,sliding windows

paper链接:Faster R-CNN: Towards Real-Time Object Detection with Region Proposal N...

88810

扫码关注云+社区

领取腾讯云代金券