CNN
Motivation
卷积神经网络(Convolutional Neural Network,CNN或ConvNet)是一种 具有局部连接、权重共享等特性的深层前馈神经网络.
全连接前馈网络存在以下两个问题:
- 权重矩阵的参数非常多
- 自然图像中的物体都具有局部不变性特征,即尺度缩放、平移、旋转等操作不影响其语义信息,但全连接前馈网络很难提取这些局部不变特征
卷积神经网络是受生物学上感受野(Receptive Field)机制的启发而提出的。感受野(Receptive Field)机制主要是指听觉、视觉等神经系统中一些神经元的特性,即神经元只接受其所支配的刺激区域内的信号。在视觉神经系统中,视觉皮层中的神经细胞的输出依赖于视网膜上的光感受器。视网膜上的光感受器受刺激兴奋时,将神经冲动信号传到视觉皮层,但不是所有视觉皮层中的神经元都会接受这些信号。一个神经元的感受野是指视网膜上的特定区域,只有这个区域内的刺激才能够激活该神经元。
目前的卷积神经网络一般是由卷积层、汇聚/池化层和全连接层交叉堆叠而成的前馈神经网络。 卷积神经网络有三个结构上的特性:局部连接、权重共享以及汇聚/池化。这些特性使得卷积神经网络具有一定程度上的平移、缩放和旋转不变性,和前馈神经网络相比,卷积神经网络的参数更少。
卷积
一维卷积
一维情况,类似加权平均(滑动平均)。不同的卷积核效果不一样。滤波器 𝒘 = [1/3, 1/3, 1/3] 可以检测信号序列中的低频 信息,而滤波器𝒘 = [1, −2, 1]可以检测信号序列中的高频信息
二维卷积
给定一个图像 𝑿 ∈ R 𝑀 × 𝑁 𝑿\inℝ^{𝑀×𝑁} X∈RM×N 和一个滤波器 𝑾 ∈ R 𝑈 × 𝑉 𝑾\inℝ^{𝑈×𝑉} W∈RU×V,一般$ 𝑈 << 𝑀, 𝑉 << 𝑁$,其卷积为 𝑦 𝑖 𝑗 = ∑ 𝑢 = 1 U ∑ 𝑣 = 1 𝑉 𝑤 𝑢 𝑣 𝑥 𝑖 − 𝑢 + 1 , 𝑗 − 𝑣 + 1 𝑦_{𝑖𝑗} = \sum_{𝑢=1}^U\sum^𝑉_{𝑣=1}𝑤_{𝑢𝑣} 𝑥_{𝑖−𝑢+1,𝑗−𝑣+1} yij=u=1∑Uv=1∑Vwuvxi−u+1,j−v+1
为了简单起见,这里假设卷积的输出 𝑦 𝑖 𝑗 𝑦_{𝑖𝑗} yij 的下标 ( 𝑖 , 𝑗 ) (𝑖, 𝑗) (i,j)从 ( 𝑈 , 𝑉 ) (𝑈, 𝑉 ) (U,V)开始. 输入信息 𝑿 𝑿 X 和滤波器$𝑾 的 二 维 卷 积 定 义 为 的二维卷积定义为 的二维卷积定义为 𝒀 = 𝑾 ∗ 𝑿 , 其 中 , 其中 ,其中∗$表示二维卷积运算。
由此可见,这种卷积就是把原始图像中的相邻像素都考虑进来,进行混合。相邻的区域范围取决于卷积核/滤波器的维度,维度越大,涉及的周边像素越多。而矩阵的设计,则决定了这种混合输出的图像跟原始图像比,究竟是模糊了,还是更锐利了。
比如说,如下图像处理矩阵将使得图像变得更为平滑,显得更模糊,因为它联合周边像素进行了平均处理:
而如下图像处理矩阵将使得像素值变化明显的地方更为明显,强化边缘,而变化平缓的地方没有影响,达到提取边缘的目的:
卷积层
激活函数
激活函数是用来加入非线性因素,提高网络表达能力,卷积神经网络中最常用的是ReLU,Sigmoid使用较少。
1. ReLU函数
f ( x ) =