CNN用卷积替代全连接 相当于去掉一些权重
在 CNN 出现之前,图像对于人工智能来说是一个难题。图像需要处理的数据量太大,导致成本很高,效率很低;图像在数字化的过程中很难保留原有的特征,导致图像处理的准确率不高。
(1)需要处理的数据量太大
图像是由像素构成的,每个像素又是由颜色构成的,通常彩色图片有RGB三原色组成,每一种单通道的图都是由一个0 -255之间的二维矩阵组成。图片每个像素都有RGB 3个参数来表示颜色信息。大量的数据处理起来是非常消耗资源的!
卷积神经网络 – CNN 解决的第一个问题就是“将复杂问题简化”,把大量参数降维成少量参数,再做处理。
(2)保留图像特征
对于上述图片的处理,可以看出,同样的原点,处理方式完全不一样,图像的内容(本质)并没有发生变化,只是位置发生了变化。所以卷积神经网络用类似视觉的方式保留了图像的特征,当图像做翻转,旋转或者变换位置时,它也能有效的识别出来是类似的图像。
当人看到一个物体时,眼中的光感受器会通过视神经将信号发送到正在处理输入的主视觉皮层。在初级视觉皮层,使眼睛看到的东西的感觉。神经元和大脑连接的深层复杂层次结构在记忆和标记物体的过程中起着重要作用。
上图完整的展示了我们是如何通过视神经来识别外界物体的,人类的视觉原理如下:从原始信号摄入开始(瞳孔摄入像素 Pixels),接着做初步处理(大脑皮层某些细胞发现边缘和方向),然后抽象(大脑判定,眼前的物体的形状,是圆形的),然后进一步抽象(大脑进一步判定该物体是只气球)。即外界输入,初步处理,特征选择,然后进一步抽象识别物体。
多层感知器模型能够很好的处理二维数据,这种方法的局限性在于,图像在同一列邻近的像素在这个向量中可能相距较远。它们构成的模式可能难以被模型识别。
对于大尺寸的输入图像,使用全连接层容易导致模型过大。假设输入是高和宽均为1,0001,000像素的彩色照片(含3个通道)。即使全连接层输出个数仍是256,该层权重参数的形状也是3,000,000×2563,000,000×256:它占用了大约3 GB的内存或显存。这会带来过于复杂的模型和过高的存储开销。
卷积神经网络依旧是层级网络,只是层的功能和形式做了变化,可以说是传统神经网络的一个改进。比如下图中就多了许多传统神经网络没有的层次,如卷积层,池化层等。
卷积神经网络的层级结构
• 数据输入层/ Input layer
• 卷积计算层/ CONV layer
• ReLU激励层 / ReLU layer
• 池化层 / Pooling layer
• 全连接层 / FC layer
CNN,即卷积神经网络,CNN本质上是一个多层感知机,其成功的原因关键在于它所采用的局部连接和共享权值的方式,一方面减少了的权值的数量使得网络易于优化,另一方面降低了过拟合的风险。



