2 CNN基本模块
2.1 输入层
CNN的输入一般是二维向量,可以有高度,比如,RGB图像
2.2 卷积层
卷积层是CNN的核心,层的参数由一组可学习的滤波器(filter)或内核(kernels)组成,它们具有小的感受野,延伸到输入容积的整个深度。 在前馈期间,每个滤波器对输入进行卷积,计算滤波器和输入之间的点积,并产生该滤波器的二维激活图(输入一般二维向量,但可能有高度(即RGB))。 简单来说,卷积层是用来对输入层进行卷积,提取更高层次的特征。
2.3 池化层
池化层又称下采样,它的作用是减小数据处理量同时保留有用信息,它是怎么做到的呢?
通常池化层是每邻域四个像素中的最大值变为一个像素(即max_pooling),为什么可以这么做呢?
这是因为卷积已经提取出特征,相邻区域的特征是类似的,近乎不变。这时池化只是选出最能表征特征的像素,缩减了数据量,同时保留了特征,何乐而不为呢?池化层的作用可以描述为模糊图像,丢掉了一些不那么重要的特征。
2.4 RELU层
这个RELU我们之前讲过,全名将修正线性单元,是神经元的激活函数,对输入值x的作用是max(0,x),当然RELU只是一种选择,还有选Leak-Relu等等,一般都是用Relu!
2.5 全连通层
这个层就是一个常规的神经网络,它的作用是对经过多次卷积层和多次池化层所得出来的高级特征进行全连接(全连接就是常规神经网络的性质),算出最后的预测值。
2.6 输出层
输出层就不用介绍了,就是对结果的预测值,一般会加一个softmax层。