Conv2D
卷积层,用于从输入的高维数组中提取特征;Conv2D中的filter就是特征映射,用于提取图像中的某一特征,filter的数量决定了卷积输出特征个数或者输出深度。
用法
Conv2D(filters, kernel_size, strides, padding, activation, intput_shape)
1.filters: 过滤器数量
2.kernel_size: 指定方形卷积窗口的高和宽的大小
3.strides: 卷积步长,默认为1
4.padding: 卷积如何处理边缘,参数有’valid’和’same’,默认为’valid’
5.activation: 激活函数,通常设为为 relu,默认为无
6.input_shape: 指定输入层的高、宽和深度元组(如:RGB三通道),当卷积层作为模型的第一层的时候,必须提供这个参数。
MaxPooling2D
最大池化层,如果卷积层通过过滤器从高维数据中提取特征,增加输出的深度,那么该最大池化层的作用是降低输出维度(即高宽)。
在CNN卷积神经网络中,最大池化层常常出现在卷积层之后,交替出现。这样的作用是输入高维的数组,深度逐渐增加,而维度逐渐降低,最终高维的空间转化为1维的特征向量。
用法
MaxPooling2D(pool_size, strides, padding)
1.pool_size: 指定池化窗口高度和宽度的大小
2.strides: 既有垂直方向上的,也有水平方向上的,默认为pool_size
3.padding: 参数有’valid’和’same’,默认为’valid’
Flatten
扁平层,在CNN卷积神经网络中我们希望最终的特征向量为1维度(如:经过最后一个卷积层维度变为(4, 4, 64),那么经过扁平层转化为4 x 4 x 64=1024的一维向量)
全连接层
最后进行连接分类器,进而得到模型预测输出。最后一层全连接层作为输出层,一般采用’softmax’作为激活层。