02-卷积神经网络-基本概念

2018-08-22  本文已影响17人  sixleaves

基本概念

人类视觉系统的层次结构

视网膜 v1区 提取边缘 边缘检测器。
V2区 组合边缘成形状 相当于形状检测器。
V4区 更高级的抽象, 能抽象出语义信息。

局部感受野

1962年Hubel和Wiesel通过对猫视觉皮层细胞的研究,提出了感受野(receptive field)的概念。
所谓的局部感受野是神经元和神经元之前的相对概念。主要指的是后一层的神经元接受前面部分神经元的输入,这部分输入称为这个神经元的感受野。

传统的神经网络

插入图片4:47

问题:隐含层一多,就会导致参数数目巨大.这会引起很多问题,首先就是模型难以训练, 因为参数多,意味着需要更多的数据.其次参数一朵,容易引起梯度消失和梯度爆炸问题.这个问题也是导致陷入低谷的最主要的原因.

全连接和局部连接结构的区别

插入图5:00

全连接的参数巨大问题

对于一幅10001000的图,采用全连接的话,意味着 hidden 层的每个神经元都要和每个像素有连接.假设hidden 层有1M个神经元, 并且只有一层 hidden,那么就需要10001000*1M = 10 ^6 M = 10 ^ 9 K = 10 ^12 个参数.

局部连接的解决思路

考虑到识别一幅图的时候, 其实我们并不需要这幅图所有的信息, 因为有些信息是无效的.比如上面这幅图识别人物的话, 其实其五官可以作为一个特征,但是图片人物边缘的信息对于我们识别这个人是没有帮助的,这部分信息我们可以剔除.基于这个思路, 我们可以采用局部的连接, 即一个神经元只连接一部分像素信息, 而不是整副图的信息.这样的话参数个数会有指数级别的下降.而我们可以把这些节省的计算资源和存储资源用到其它地方.

还是以10001000像素图片为例子, 假设 hidden 层不变, 我们采用滤波器大小为1010 (Filter size = 10 * 10, 这是说这个神经元的可视范围是10*10), 那么 每个神经元只有100可参数.对于1M 神经元, 其参数个数只有10 * 10 * 1M = 100 M.= 10 ^2 M.

区别:

卷积的数学描述

图8:02

W(x) * f(x) = f w(u)f(x -u)du

局部连接 --- 通过卷积操作实现

插入图8:57, 10:57
只要理解这个过程就可以.至于公式其实没这么重要, tf 和 caffe 已经都封装好,除非要自己写框架.

卷积的计算本质:
计算信号(图像), 对某着特定模式的响应.
卷积的作用:

插入14:06 卷积在各层的可视化.

池化操作(pooling)
卷积神经网络与多层感知器的对比

插入图16:50

AlexNet
插入图18:51

计算参数数目
48 表示上一层的 feature map 数目.
128 表示后一层的 feature map数目.
所以这两层的参数数目是 48 * 5 *5 * 128 = 153600

卷积神经网络示意图

插入图19:56

在 CNN 里通常都是卷积和下采样交替进行.只是有时候可能连续几次卷积, 再下采样, 因为下采样太多,图像的尺寸下降得太多.
前面的卷积层和下采样层用来提取特征, 是特征提取器的作用.后面的多层感知器用来分类, 是分类器的作用.

提问

池化的意义

特征图
并不是特指,而是指特征提取器这一整块.

特征图不是感受野看到的一张图片.

每个卷积核看到的只是图像的一部分区域.

rgb 图像做卷积并不需要先转成灰度图.

filter 的数目并不是计算得到,而是需要动手实践去调,这部分经验性设定称为超参数.(层的个数)

卷积核是要遍历整个图像的.正常说是逐个像素滑动.

48代表的是卷积核的个数.

上一篇 下一篇

猜你喜欢

热点阅读