深入理解卷积神经网络工作原理

       卷积神经网络的核心思想就是设计多个卷积层,卷积层里设计一系列卷积核,输入数据经过卷积层中的卷积核处理,一层层向前推进得到最终的输出数据,这个过程我们称为数据的特征提取。

卷积核

       从上面的概述知道,卷积核是卷积神经网络的核心,这也是它为什么叫卷积神经网络的原因。那么要理解卷积神经网络的原理,就必须理解卷积核,而要理解卷积核,要从图像处理开始理解。

                                                          深入理解卷积神经网络工作原理_第1张图片

       上图可以大致表示图像处理的原理:利用一定大小的矩阵在图像上滑动矩阵,与矩阵所覆盖区域(邻域)像素进行加、乘运算,一个特定的矩阵可以实现某种特定的图像处理的功能,设计不同的矩阵(设计矩阵中不同的参数),可以实现不同的功能。           为了方便理解,我举例说明,Sobel算子用于提取图像中的边缘信息,下图中左边用于提取水平方向边缘,右边用于提取垂直方向的边缘,他们都是通过设计一个特定的矩阵在图像上滑动遍历图像信息,从而提取到图像中的边缘信息

                                                        深入理解卷积神经网络工作原理_第2张图片

       前面提到的矩阵在图像处理中称为核,图像滤波、图像增强、边缘检测等算法都是设计特定核来实现特定的功能,在卷积神经网络中称为卷积核,他们的本质是一样的(即数学计算原理一致),作用也是一样的(学习/提取特征),区别在于图像处理中核的参数有人为设计,参数设计不同可以实现不同的功能,而卷积核的参数是自主学习得到

工作原理

       卷积神经网络特征学习可以分为三步:自主特征学习、多特征学习、复杂特征学习,下面从这三部分进行详细说明

  • 自主特征学习       

       我们发现,通过设计不同的参数可以学习到图像中的不同特征,那么有没有什么办法可以自动设计核的参数,让其实现特定特征的学习呢?卷积神经网络通过设计损失函数,通过反复迭代来最小化预测结果和实际结果的误差来驱动卷积核中的参数调整,从而达到自主学习的目的。

  • 多特征学习

       单一的特征往往是不够的,所以卷积层中一般设计多个卷积核,每个卷积核可以独立的学习某个特征,这样就丰富了特征类型,有利于最终的决策,这就相当于你对某件时间做决定,只有信息量越多(特征多)最终做的决定才可能约正确。

  • 复杂特征学习

       即使学习的特征类型很多,如果学习的特征比较简单,面对复杂的问题可能还是无法做出较好的决策。卷积神经网络将该层学习到的特征送到下一层,在已学习到的特征基础上进一步学习更加复杂的特征,由此一层层推进,最终学习到足够复杂的特征。

总结

        通过上面的说明我们可以发现,卷积神经网络可以自主的调整卷积核的参数从而自主学习特征,并通过设计多个卷积核实现多特征学习,多层连续学习复杂特征。这些特点保证了卷积神经网络具有很强的学习能力和自适应能力,所以会比传统的人工设计特征的方式有更好的表现

 

你可能感兴趣的:(卷积神经网络CNN,CNN,卷积层)