Outline
1.卷积的基本概念
1.1 卷积
- (f*g)(n)成为f和g的卷积,连续卷积和离散卷积可分别表达为:
- 连续卷积: ( f ∗ g ) ( n ) = ∫ − ∞ ∞ f ( τ ) g ( n − τ ) d τ (f*g)(n) = \int _{-\infty }^{\infty }f(\tau )g(n-\tau )d\tau (f∗g)(n)=∫−∞∞f(τ)g(n−τ)dτ
- 离散卷积: ( f ∗ g ) ( n ) = ∑ τ = − ∞ ∞ f ( τ ) g ( n − τ ) (f*g)(n) = \sum_{\tau=-\infty}^{\infty}f(\tau)g(n-\tau) (f∗g)(n)=∑τ=−∞∞f(τ)g(n−τ)
1.2 卷积的应用
- 输出 = 输入*系统
- 将过去产生的所有信号经过系统的响应和处理之后进行一个叠加
2.Hubel-Weisel实验/神经认知机
2.1 感受野
- 感受野是感觉空间的一部分,当他受到刺激时可以引起神经元的反应
- 当光照射到视网膜上(视网膜上有感光细胞),视网膜后有神经节细胞,在两者之间存在双极细胞(可分为on-center/off-center)。
- on-center:当中心的光强明显高于周围,将信号传输给神经节细胞。
- off-center:当周围光强明显高于中心,传输信号。
2.2 Hubel-Weisel实验
- 猫的纹状皮层中单个神经元的感受野
- 视觉神经元细胞的不同响应
- 简单细胞:对光的导向有反应
- 复杂细胞:对光的导向和移动有反应
- 超复杂细胞:对端点的移动有反应
2.3 神经认知机
- 一种假设的生物视觉系统的数学模型
3.卷积神经网络的基本原理
- 基本结构
- 卷积层
- 激活函数
- 池化层
- 全连接层
3.1 卷积层
3.1.1 二维卷积
- 将括号内的索引考虑作为元素的坐标,所以需要对卷积核进行上下和左右的翻转。
3.1.2 卷积神经网络中的“卷积”
- 卷积核不做上下、左右的翻转,直接相乘。
- 对整个图像的卷积通过移动卷积核的位置进行分别求和。
3.1.3 数据填充
- 若我们有一个 n × n n\times n n×n的图像,使用 f × f f\times f f×f的卷积操作,在进行卷积操纵之前我们在图像周围填充p层数据,输出的维度为 ( n − f + 1 ) × ( n − f + 1 ) (n-f+1)\times(n-f+1) (n−f+1)×(n−f+1)–> ( n + 2 p − f + 1 ) × ( n + 2 p − f + 1 ) (n+2p-f+1)\times(n+2p-f+1) (n+2p−f+1)×(n+2p−f+1)
- 若我们有一个 n × n n\times n n×n的图像,使用 f × f f\times f f×f的卷积操作,在进行卷积操纵之前我们在图像周围填充p层数据,步幅为s。输出的维度为 ⌊ n + 2 p − f s + 1 ⌋ × ⌊ n + 2 p − f s + 1 ⌋ \left \lfloor \frac{n+2p-f}{s}+1 \right \rfloor\times\left \lfloor \frac{n+2p-f}{s}+1 \right \rfloor ⌊sn+2p−f+1⌋×⌊sn+2p−f+1⌋
3.1.4 卷积的模式
- full(输出图像比输入大), same(输出与输入大小一样), valid(输出比输入小)
3.1.5 卷积神经网络的感受野
- 卷积神经网络每一层输出的特征图上的像素点在输入图片上映射的区域大小。
- 感受野的计算
- 从后往前逐层计算
- 第i层的感受野大小和第i-1层的卷积核大小和步长有关系,同时也与第i-1层的感受野大小有关
- 假设最后一层(卷积或池化层)输出特征图感受野的大小(相对于其直接输入而言)等于卷积核的大小
3.1.6 卷积层的深度
- 卷积核的个数,对应产生特征图的个数
3.2 激活函数
- 用来加入非线性因素,提高网络表达能力
- 卷积神经网络中最常用ReLU(sigmoid使用较少,因为可能会出现梯度消失的问题)
3.2.1 梯度消失
- 若激活函数导数小于1,在众多的连乘后需要更新的梯度将迅速减少至零。导致只有后面几层的参数被更新,前面层的参数将不会更新。
- ReLU在x>0时导数为1,不会出现梯度消失问题。但x<0时ReLU的导数为0,那么有些神经元的参数将不被更新。
3.2.2 常见激活函数总结
- Identity:适合线性任务,相对稳定,但是对卷积输出没有影响
- ReLU:
- 优点:计算速度快(只有线性关系);输入为正数时不存在梯度消失问题
- 缺点:强制把负数置为0,可能会丢掉一些特征;输入为负数时,权重无法更新,导致“神经元死亡”(学习率不要太大)
- PReLU:
- α = 0.01 \alpha=0.01 α=0.01时,称作Leaky ReLU
- α \alpha α从高斯分布中随机产生时,称为Randomized ReLU(RReLU)
- 优点:比sigmoid/tanh收敛快、解决了ReLU的“神经元死亡”问题
- 缺点:需要再学习一个参数,工作量变大
- ELU:
- 优点:有利于处理含有噪声的数据;更容易收敛
- 缺点:计算量大;收敛速度慢
- Maxout:
- 优点:能够缓解梯度消失;规避了ReLU神经元死亡的缺点
- 缺点:增加了参数和计算量
3.3 特征图
- 浅层卷积层:提取的是图像基本特征,如边缘、方向、纹理等
- 深层卷积层:提取的是高阶特征,出现了高层语义模式,如车轮、人脸等
3.4 池化层
- 池化操作使用某位置相邻输出的总体统计特征作为该位置的输出,常用最大池化和均值池化。
- 池化层不包括需要训练学习的参数,仅需指定池化操作的核大小、操作步幅以及池化类型。
- 池化的作用
- 减少完网络中的参数计算量,从而遏制过拟合
- 增强网络对输入图像中的小变形、扭曲、平移的鲁棒性
- 帮助我们获得不因尺寸而改变的等效图片表征
3.4 全连接层
- 对卷积层和池化层输出的特征图进行降维
- 将学到的特征表示映射到样本标记空间的作用