卷积神经网络CNN
一、卷积神经网络基础
1.卷积神经网络基础
1.1什么是卷积
- Convolution,输入信息与核函数(滤波器)的乘积

单个二维图片卷积
- 输入为单通道图像,输出为单通道图像

1.2多通道卷积
数字图像的表示
图像数据存储,多通道的二维矩阵

特征图
如何表达每一个网络层中高维的图像数据?

多通道卷积
输出特征图的每一个通道,由输入图的所有通道和相同数量的卷积核先一一对应各自进行卷积计算,然后求和

1.3卷积相关操作与参数
填充
padding:给卷积前的输入图像边界添加额外的行/列.
控制卷积后图像分辨率,方便计算特征图尺寸的变化
弥补边界信息“丢失”

步术
步长(stride):卷积核在图像上移动的步子

- stride太小,重复计算较多,计算量大,训练效率降低;
- stride太大,会造成信息遗漏,无法有效提炼数据背后的特征;
输入输出大小计算


池化
池化(pooling):对图像进行下采样,降低图像分辨率

- 使特征图变小,简化网络计算复杂度;
- 压缩特征进行逐级抽象;
感受野
- 感受野(Receptive Field):某一层一个元素对应输入层的一个映射区域大小。感受野越大,得到的全局信息越多

2.卷积与全连接的比较
2.1全连接的局限性
参数量有效性
- 全连接神经网络有巨大的模型参数量

特征表达能力
一般需要将人工提取的特征输入神经网络

- 全连接神经网络的角色只是一个分类器,性能局限于研究人员的经验和特征的表达能力,无法应对各种不变性。
- 如果直接将整个图片输入网络,不仅参数量大,也没有利用好图片中像素的空间特性,增加了学习的难度。
2.2卷积的核心思想
局部连接
为什么要进行局部连接?

局部连接会不会影响特征提取?

权重共享
保证不变性,图像从一个局部区域学习到的信息应用到其他区域

减少参数,降低学习难度

ANN与CNN比较
- 传统神经网络为有监督的机器学习,输入为特征;卷积神经网络为无监督特征学习,输入为最原始的图像

二、典型卷积神经网络模型
1.卷积与池化反向传播
1.1误差反向传播算法
反向传播算法求解

1.2卷积误差反向传播
多通道卷积的误差反向传播

案例

1.3池化误差反向传播算法
池化的误差反向传播
up是上采样函数最大池化的误差反向传播

记录下最大池化的位置,然后进行上采样填充
平均池化的误差反向传播

误差均匀分布到每个位置
2.典型卷积神经网络模型
2.1卷积神经网络模块
卷积神经网络基本结构
典型深度卷积神经网络结构

卷积模块
一般由卷积操作,池化操作,激活函数,标准化操作等组成

卷积与激活函数:必要
标准化和池化:非必要
全连接模块
一般由多个线性变换层,激活函数等组成

非输出的线性变换层必须要后接激活函数,输出变换层根据实际任务决定
2.2LeNets5t网络
1998年Yann LeCun等提出LeNets5,是第一个成功应用于手写数字识别问题并产生实际商业(邮政行业)价值的卷积神经网络。

LeNets5网络细节
一共七层,3个卷积层,2个池化层,2个全连接层

C1层-卷积层

S2层-池化层(下采样层)

C3层-卷积层

C3层-非密集的特征图连接关系

C3的前6个特征图与S2层相连的3个特征图相连接,后面6个特征图与S2层相连的4个特征图相连接,后面3个特征图与S2层部分不相连的4个特征图相连接,最后一个与S2层的所有特征图相连。采用非密集连接的方式,打破对称性,同时减少计算量,共60组卷积核。
S4层-池化层(下采样层)
.C5层-卷积层

F6层-全连接层

F6全连接层的输出设计为什么是84个节点

Output层-全连接层,共有10个节点,分别代表数字0到9

