接NN模型章节
实现不同点:图像不再是一维向量784一次性训练,而是将图像与kernel(n*n)卷积,更好的保留了图像相邻像素的关联性,直观体现在预测正确率上。
定义卷积层:conv2d
定义池化层:max_pool_2x2
本次实现采用的是LeNet-5实现:总共有7层设计,如下图所示:
conv1 -> pool1 -> conv2 -> pool2 -> fully connection1 -> fully connection2 -> softmax
实际设置参数详见代码。
图像信息:宽度(width) * 高度(height) * 厚度(channel)
卷积解析:通俗理解图像越变越小,越变越厚
采用5*5大小的卷积核。
VALID参数:图片卷积过后变小 28 * 28 -> (28 - 5 + 1) * (28 - 5 + 1)
SAME参数:图片卷积过程中填充外围像素为0 卷积后生成的图像大小与原图大小一致。
channel: 通道数
池化解析: 通俗理解图像宽度,高度减半。用于降维。
输入图片28*28*1 ->(卷积:valid) 24 * 24 * 20 -> (池化:max) 12 * 12 * 20 -> .......
全连接层 4*4*40 -> 1 * 1000(向量,需要reshape,通俗理解:立体转成平面) -> 全连接层 -> softmax层 1000 -> 10(输出)。
习惯性的在全连接层加入dropout,降低网络的过拟合现象。