北大人工智能课程学习记录:卷积神经网络

CNN

mnist一张28*28的黑白图片训练的模型,两层隐层的简单NN,节点数724 *500 *10,就有将近四十万个参数(w,b)。

如果是一张rgb彩色图片,由单通道变成三通道,参数将更多。

待优化的参数过多,很容易导致模型过拟合。

实际应用中会先对原始图像进行特征提取。再把提取到的特征喂给全连接网络。

卷积可认为是一种有效提取图像特征的方法。

一般会用一个正方形卷积核,遍历图片上的每个点。图片区域内,相对应的每一个像素值,乘以卷积核内相对应点的权重,求和,再加上偏置。

一张5*5*1的图片,5*5表示分辨率,1表示单通道。

输出图片边长= (输入图片边长-卷积核长+1) /步长

此图:

输出图片边长= (输入图片边长一卷积核长+1) 1步长
此图:

输出图片边长就是(5-3+1)/1 = 3。用了一个卷积核所以输出深度是1,输出3*3*1的图片。

有时候会在输入图片周围进行全0填充(padding)保证输出图片和输入图片大小相同。

使用padding后,输出图片计算公式变为 入长/步长。


灰度图是单通道,通道数1。彩色图是三通道,3。

卷积核的通道数由输入图片决定。输出图片的通道数等于卷积核的个数。


即使使用卷积核进行卷积,参数数量依然很大。

我们要进行池化

pooling:池化用于减少特征数量,最大池化可提取图片纹理,均值池化可保留背景特征。

最大池化使用2*2的核,步长为2,输出图片变为输入图片的1/4大小,每次提取当前范围内的最大像素点值。

均值池化原理与最大池化相似,不过提取的是四个像素点的均值。



为了减少过多参数,使用dropout方法(dropout正则化)。

按照一定概率舍弃一部分神经元。舍弃是临时性的。

仅在训练时候舍弃这些神经元,使用时要恢复他们。dropout可有效避免过拟合。


在前向传播构建神经网络时候使用do避免过拟合,加快模型训练速度。

一般放在全连接网络中。


卷积就是对输入图片进行特征提取,再把提取到的特征喂入全连接网络。

所以卷积神经网络可认为两部分组成。

一部分是特征提取,一部分是全连接网络



卷积神经网络发展:




猜你喜欢

转载自blog.csdn.net/weixin_39773661/article/details/80902666