问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

卷积神经网络:从视觉认知到深度学习

创作时间:
作者:
@小白创作中心

卷积神经网络:从视觉认知到深度学习

引用
1
来源
1.
http://chuquan.me/2024/09/28/cnn-introduction/

卷积神经网络(CNN)是深度学习领域中一种重要的神经网络模型,特别适用于处理图像和视觉相关任务。本文将从视觉认知原理出发,详细阐述CNN的基本概念、工作原理及其在图像识别领域的应用。

视觉认知原理

在深度学习的发展过程中,广泛应用了大脑认知原理,尤其是视觉认知原理。1981年的诺贝尔医学奖颁发给了David Hubel和Torsten Wiesel,以及Roger Sperry。前两位的主要贡献是发现了视觉系统的信息处理机制,即视皮层是分级的。整体而言,人类的视觉认知过程可以分为以下几个步骤:

  1. 通过瞳孔摄入原始的像素信号
  2. 通过大脑皮层的细胞发现边缘和方向
  3. 对边缘和方向进行组合,完成形状判定
  4. 对形状进行高级视觉抽象,完成分类认知

人类视觉认知是一个分层递进的过程:提取边缘特征,抽象高级特征,组合整体图像,最终完成分类。

全连接层的局限性

理论上,我们可以使用一个由全连接层组成的神经网络来进行图像识别。然而,对于复杂图像,全连接神经网络的表现并不理想。根本原因在于全连接层忽略了数据的形状。图像是3维数据(宽、高、RGB通道),空间上邻近的像素会有相似的值,RGB各通道之间也有关联性。而全连接层会忽略这些形状信息,将数据作为一维数据进行处理,因此无法利用数据的空间关联信息。

卷积神经网络

卷积神经网络(CNN)通过"卷积层+ReLU+池化层"的结构,解决了全连接层的局限性。整体而言,卷积神经网络的工作流程主要分为三个阶段:

  1. 通过卷积层对图像进行特征提取,得到特征图
  2. 通过池化层对特征图进行降采样,压缩数据量
  3. 通过全连接层对特征图进行分类,得到识别结果

卷积层

卷积层的核心是卷积运算。卷积运算的基本原理是响应函数与输入信号进行卷积运算。下图展示了卷积运算的执行顺序:

填充

为了调整卷积运算的输出大小,可以使用填充(Padding)。如下图所示,通过填充可以增大输出大小:

步幅

除了填充,还可以通过步幅(Stride)来控制输出大小。步幅增大,输出大小减小。

滤波器通道

对于3维图像数据(宽、高、RGB通道),滤波器也需要增加一个通道维度。每个通道的输入数据与对应通道的滤波器进行卷积运算,最后对所有通道的输出进行求和,得到最终的输出结果。

池化层

池化的本质是对输出特征图进行局部采样,也称降采样(Downsampling)。下图展示了Max池化运算的示意图:

全连接层

经过多层"卷积+ReLU+池化"的运算后,神经网络能够提炼出高度简化、高度抽象的特征。最后,使用全连接层对这些特征进行分类识别。下图展示了全连接层的处理过程:

经典CNN

LeNet

LeNet在1998年首次提出,主要用于手写数字识别。与现在的CNN相比,LeNet有以下不同点:

  • 使用sigmoid函数作为激活函数
  • 采用子采样(Subsampling)进行数据压缩

AlexNet

AlexNet是2012年由Geoffrey Hinton和他的学生Alex Krizhevsky提出的,引发了深度学习的浪潮。AlexNet的主要创新包括:

  • 采用了ReLU作为激活函数
  • 采用了局部正规化的LRN(Local Response Normalization)层
  • 采用了Dropout,可以有效抑制过拟合

总结

本文介绍了卷积神经网络的基本概念及其工作原理。相比于全连接神经网络,卷积神经网络主要增加了卷积层和池化层,其中卷积层用于提取图像数据的空间特征,池化层用于压缩数据,提高鲁棒性,最后使用全连接层进行分类结果的计算和输出。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号