李宏毅 lecture-10 CNN

CNN比DNN更为简单
CNN过滤器,目的就是寻找一种pattern,这种pattern是和在图片中大小,位置无关的.
李宏毅 lecture-10 CNN

Convolution

卷积运算的核心就是用卷积核(Filter),也叫滤波器,扫描完整的图片并且输出扫描后的结果.
李宏毅 lecture-10 CNN
filter 与 图片扫描处做內积.意思就是对应位置相乘,最后相加.
一个卷积层的filter数量是要预先设定的.换言之就是超参数.
一个2维矩阵经过有n个filter的卷积层后会输出1+n维矩阵,称为Feature Map.

李宏毅 lecture-10 CNN
从这张图可以看出Convolution是简化版Full Connected.同时,颜色相同不是权重相同.
意思是filter在一次扫描中filter内的值不变.对比全连接层就是权重共享Sharedeights.
同时,filter是有深度的.等同于输入图片的深度.
例如输入彩色图片64×64×364\times64\times3,则filter应为x×x×3x\times x\times3.
例如经过若干conv层后输入64×64×5064\times64\times50,则filter应为x×x×50x\times x\times50.
一个filter会把输入对应位置相乘并相加,同时每一层相加的结果再次相加.一个filter只出一层.

stride

stride为卷积核扫描图片移动的步长.
stride=1,3×3Filter6×64×4假设stride=1, 3\times3的Filter在过滤输入矩阵为6\times6之后会得到4\times4的输出矩阵
stride=2,3×3Filter6×62×2假设stride=2, 3\times3的Filter在过滤输入矩阵为6\times6之后会得到2\times2的输出矩阵

padding

MaxPooling

李宏毅 lecture-10 CNN
李宏毅 lecture-10 CNN
最大池化如图所示,选择矩阵中一定范围内的最大值.

flatten

把矩阵拉直.n维矩阵变为一维向量.

Fully Connected Feedforward