卷积神经网络(二)

来源:互联网 发布:淘宝950轮播代码 编辑:程序博客网 时间:2024/06/02 02:53
上篇,我们介绍了卷积神经网络的两大杀器:局部感知野 和 权值共享。这篇我将会继续介绍卷积神经网络的结构:多卷积核 和 池化。

一:多卷积核

在说到权值共享的时候,我们说到一个卷积核(滤波器)肯定是无法充分的提取图像中的特征。那么怎么办呢?一个卷积核可以提取一种特征,我们可以很自然的想到多个卷积核就可以提取多种特征了吧。没错,使用多少个卷积核就可以学习到多少种卷积特征。右下图显示了使用两个卷积核对输入进行特征提取的过程。
因为我们的输入是幅图片,所以我们将经过卷积核提取出来的特征称之为“卷积特征图”,我们添加多少个卷积核,就会在卷积层产生多少个“卷积特征图”。理论上,我们可以用这些提取出来的特征去做分类或者回归了。但往往为了避免overfitting,提高模型的泛化能力,会在卷积层后,加一个叫做Pooling层的东西。什么是Pooling层?下面请听我详细道来。

二:池化

所谓Pooling(池化)就是对不同位置的特征进行聚合的一种操作。聚合方法主要有两种:
1. 取一块区域的平均值    
2. 取一块区域的最大值
通过这两种不同的聚合原则进行的操作我们区分为:
1. 平均池化(mean pooling)
2. 最大池化(max pooling)


与卷积核对图像的卷积操作相同,池化也可分为有overlapping的和无overlapping,在有overlapping的当中又可以通过规定每次移动的步长,确定了overlapping的大小。上图是无overlapping的pooling的表示。假如你已经从一张人脸图片中提取到鼻子这个特征,你其实并不关心这个特征位于图片的中心,偏左,或偏右,或者这个人比较调皮倒立着拍这张照片(旋转)。这些都不重要,重要的是我们已经可以提取出到这个特征。这就是引入pooling的另外一个好处,使得卷积神经网络具有局部区域内的平移或者旋转的一些不变性


卷积特征经过池化,我们已然可以将这个“池化特征”作为从原始图片中学习到的特征输入到模型中进行分类了。但有人又要站出来说,这个特征还不够好,我们是否可以运用多个这样类似的结构去进行特征提取呢?下篇我们会讨论多层卷积。

Created by 苑鹏掣

这里写图片描述


原创粉丝点击