学机器学习的时候,大家接触最多的一个就是神经网络,神经网络有很多种:全连接层神经网络、卷积神经网络CNN、循环神经网络RNN,残差网络等等。
全连接神经网络大家应该都知道,就是相邻两层上的任意两个节点都是连接的。如图:
那么卷积神经网络(以下简称CNN)为什么会提出呢?
对于全连接层,输入数据的所有信息都会得到有效的利用,因为通过全连接的方式,每一点信息都会对训练过程做出“ 贡献 ”, 这是它的优点。
但是,当处理图像数据的时候,这就反而成了累赘,就比如一张30*30的图片,仅仅是这样的小图片,需要进行更新的参数已经很多了,显然,对于更大的图片,这样的过程是吃不消的。
因此,CNN 应运而生;CNN可以对图像特征进行提取,减少参数的更新(类似于降维)
一个简单的CNN会包含以下几层:
*注:,池化层并非是卷积网络所必需的。一些新的CNN网络设计时候并没有使用池化层
-----------------------------
以上仅仅是对于CNN提出的缘由以及简单介绍,CNN具体实现后面会补充。