五、卷积神经网络CNN1(组成层、卷积如何检测边缘信息)

卷积神经网络的组成层

在卷积神经网络中,有3种最主要的层:卷积运算层、pooling 层、全连接层。一个完整的神经网络就是由这三种层叠加组成的。

(1)一个卷积神经网络由多种不同类型的层(卷几层/全连接层/RELU 层/POOLing层等)叠加而成。
(2)每一层的输入结构是 3 维的数据,计算完输出依旧是 3 维的数据。
(3)卷积层和全连接层包含训练参数,RELU 和 POOLing 层不包含。
(4)卷积层,全连接层和 POOLing 层包含超参数,RELU 层没有。

五、卷积神经网络CNN1(组成层、卷积如何检测边缘信息)_第1张图片  CIFAR-10 数据集构建的一个卷积神经网络结构示意图

卷积如何检测边缘信息

卷积运算是卷积神经网络最基本的组成部分,神经网络的前几层首先检测边缘,然后,后面的层有可能检测到物体的部分区域,更靠后的一些层可能检测到完整的物体。

先介绍一个概念,过滤器:

五、卷积神经网络CNN1(组成层、卷积如何检测边缘信息)_第2张图片

这是一个 3*3 的过滤器,是一个矩阵,数值如上所示。

假设我们有一个 6*6 的灰度图像:

五、卷积神经网络CNN1(组成层、卷积如何检测边缘信息)_第3张图片

把这个图像与过滤器进行卷积运算,卷积运算在此处用“*”表示。

五、卷积神经网络CNN1(组成层、卷积如何检测边缘信息)_第4张图片

 我们看一下发生了什么事,把过滤器最准图像左上方 3*3 的范围,逐一相乘并相加,得到-5。同理,将过滤器右移进行相同操作,再下移,直到过滤器对准图像右下角最后一格。依次运算得到一个 4*4 的矩阵。OK,了解了过滤器以及卷积运算后,让我们看看为何过滤器能检测物体边缘:
举一个最简单的例子:

 

五、卷积神经网络CNN1(组成层、卷积如何检测边缘信息)_第5张图片

这张图片如上所示,左半边全是白的,右半边全是灰的,过滤器还是用之前那个,把他们
进行卷积:

五、卷积神经网络CNN1(组成层、卷积如何检测边缘信息)_第6张图片

可以看到,最终得到的结果中间是一段白色,两边为灰色,于是垂直边缘被找到了。为什么呢?因为在 6*6 图像中红框标出来的部分,也就是图像中的分界线所在部分,与过滤器进行卷积,结果是 30。而在不是分界线的所有部分进行卷积,结果都为 0.
在这个图中,白色的分界线很粗,那是因为 6*6 的图像实在太小了,若是换成1000*1000的图像,我们会发现在最终结果中,分界线不粗且很明显。
这就是检测物体垂直边缘的例子,水平边缘的话只需将过滤器旋转 90 度。  

你可能感兴趣的:(深度学习(上),cnn,神经网络,深度学习,网络,机器学习)