第七天、卷积神经网络
2018-07-23 本文已影响111人
幽并游侠儿_1425
一、传统神经网络存在的问题
(1)权值太多,计算量太大。
(2)权值太多,需要大量样本进行训练。(容易出现过拟合或者欠拟合)
![](https://img.haomeiwen.com/i13133110/5948757d5a7b1d90.png)
二、卷积神经网络CNN
CNN通过感受野和权值共享减少了神经网络需要训练的参数的个数。
如下图所示:左图为传统神经网络,
局部感受野:后面的一个神经元只连接到前面的图片的某一个部分。
权值共享:各个局部感受野的大小是相同的且值是一样的。(黑,红,绿,蓝)
![](https://img.haomeiwen.com/i13133110/443f7e1a62d27431.png)
1、卷积和卷积核
例如:5*5的图片,用3*3的卷积核进行采样,步长是1.
![](https://img.haomeiwen.com/i13133110/105089a56358e44e.png)
卷积核可以视为一个滤波器,图片经过卷积核的操作之后得到一个特征图。不同卷积核可以对图片的不同特征进行采样。
不同特征对此后图片的分类具有非常重要的意义。
![](https://img.haomeiwen.com/i13133110/443b953c33237be5.png)
2、池化
卷积层之后一般都会加上池化层。
池化也有窗口(通常为2*2)和步长。
max-pooling:对4*4的矩阵,2*2的池化窗口一共分为4个区域(无重叠),找每个区域的最大值。
mean-pooling:每个区域的平均值
![](https://img.haomeiwen.com/i13133110/f5fddabe5960da38.png)
3、Same padding 和Valid padding:
对卷积的操作:
![](https://img.haomeiwen.com/i13133110/52869de467a05303.png)
对池化的操作:
![](https://img.haomeiwen.com/i13133110/ee7d8affbe8a1f75.png)
4、CNN的结构
![](https://img.haomeiwen.com/i13133110/6c474ffbf20c20d7.png)
卷积层+池化层
三、卷积神经网络应用于MNIST数据集分类且利用TensorBaord可视化
输入完代码之后在Pycharm里运行会报错,在Jupyter里运行不会报错,但是CPU占用率达到了100%:
Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
解决办法:暂时未知
代码如下:
![](https://img.haomeiwen.com/i13133110/8dfb5cd477f617aa.png)
![](https://img.haomeiwen.com/i13133110/417f62d338691892.png)
![](https://img.haomeiwen.com/i13133110/6664c926e80dea7b.png)