1. CNN
Convolution 卷积,是信号处理中的常用操作,表示两个函数间的数学运算。Convolutional Layer可以用来提取数据中的特征信息,每个神经元对应一个Convolutional Kernel 卷积核,每个核内的参数是共享的,多少个神经元就有多少个参数需要训练。
Convolutional Filter 卷积滤波器 = Convolutional Kernel 卷积核 = Convolutional Matrix 卷积矩阵 。
更一般的解释是滤波器是多个卷积核组成的三维矩阵,假如把下图2看作一个RGB图片的卷积,将R、G、B分为三个channels 通道,各自一个卷积核共三个kernels,将这一整个过程组合一起称为一个layer,又称为filter 滤波器。
倘若只有一个二维矩阵,权重矩阵(kernel)在上面移动,这样就变回了图1的表示,卷积滤波器=卷积核。仅当二维情况下这俩的概念的一致的,三维的话filter指的是结构,kernel才是具体的矩阵。
如图,Convolutional Filter在矩阵上移动并与参数矩阵做乘运算(两个矩阵对应下标相同位置相乘)得到Feature Map特征图。
上图为卷积过程,可以看到图像通过不同的卷积核得到了不同的特征矩阵。中间通过卷积核的过程被称为Convolution layer 卷积层
Pooling layer池化层里windows size 通常是2或者3,stride 步长为2(能够有效缩小且尽可能得到更好的结果),不够可以填充0.
Normalisation 正则化,经典的ReLUs就是把小于等于0的值重新设置为0. 这个层也叫ReLU layer。
这就CNN的深度表现。
最后一个全连接层,根据投票决定是图像X或是图像O。这里数值高被认为是X,低是O。训练的时候这些结果是给定的,投票的位置将给接下来预测图像做出参考。上图则倾向于X。这个过程是将特征值列表转换成投票列表。
这个投票列表可以有很多层,因为复杂的图像仅一次判断可能难以得出结论,多加的层也被称为hidden units 隐藏单元。
反向传播的一种简单计算误差的方式,对预测概率做差,得到错误值,然后使用梯度下降去调整参数,使其得到最低的错误值。
图像识别中,该滤波器可以从图像中提取图案、颜色等特征,然后在全连接层将这些特征组合成对应类别的概率。
信号与系统(Alan V. Oppenheim):LSI系统在空域的二维卷积运算等于在频域的乘积运算。
适当设计的频域滤波器能够实现输入图像的部分频率放大、衰减和拒绝。一个卷积核的高变化率表示它的频域有一个高频分量,是一个高频滤波器,能够保留原始图像的高频特征,如图像的边缘,因为白色块和黑色块两个像素的值的变化率最大(可以视为突变信号)。低变化率的则是低通滤波器,高频被过滤,图像经过处理后会变模糊,像用墨笔写的字然后有一滴水滴到边缘,然后一片糊失去锐化的效果。
卷积核的频谱需要通过傅里叶变换得到。
低通滤波器:
高通滤波器:
如果通过选择从其中两个维度如和垂直维度观察,可以发现横坐标的的参数和纵坐标的频率响应的关系,从开始观察,若越靠近0时,H的值为1,那么意为主要保留低频信息,相反,若H的值为0,意为保留高频信息。进一步回到三维图像如上图,随着卷积核的设计不同,经过傅里叶变换后右方图像的结果也会更加形态各异。