卷积神经网络

来源:互联网 发布:php微信抢红包源代码 编辑:程序博客网 时间:2024/06/05 20:11

回顾


昨天介绍了CNN的卷积操作,能减少权重参数的个数,卷积操作涉及到三个超参数:

  • 深度(Depth)

  • 步长(Stride)

  • 零填充(Zero-padding)

还有一种运算,叫做求内积,关于这部分的总结,请参考:

深度学习|卷积神经网络(CNN)介绍(前篇)


下面,阐述CNN剩下的两种操作,ReLU,Pooling。



02

ReLU操作

CNN用的激活函数不是Sigmoid函数,大家都知道Sigmoid函数最大的问题是随着深度学习会出现梯度消失,这样会导致最后的收敛速度变得很慢,经过实践证明,采取另外一个函数,性能会更好些,这就是 ReLU 函数,它长这样:


可以看出在 x 大于 0 时,它是线性函数,在 x 小于 0 时,它是非线性的函数,因此ReLu综合起来看为非线性函数。 



ReLU函数对CNN的实际意义

可以看出CNN中的卷积操作是线性操作,对应元素相乘,然后再求和,又知道在现实世界中,大部分的数据都是非线性的,所以有必要引入一个非线性的激活函数,下面通过ReLU操作看下对图片的影响:


原图像


左图为对原图像卷积后的图像,右图为ReLU后的图像,对于单通道图上取值范围为0-255其中255白色,0是黑色,因为卷积后的结果有可能为负值,所以经过ReLU后,所有的值为非负值,不再出现有问题的负值。




03

Pooling层

Pooling层能起到降低上一层输入的特征的维数的作用,但是同时能保持其最重要的信息,Pooling操作分多种:最大池化,平均池化,求和池化等。


以最大池化为例,池化一般在ReLU操作之后,首先定义一个相邻区域,然后求出这个区域的最大值,再选定一个步长,依次遍历完图像,如下图所示:



Pooling 操作的实际意义

  • 使得输入的特征维数降低,更易于管理

  • 有了第一条,也会使得权重参数个数变少,更易于收敛。

  • Pooling操作相当于决策树中的剪枝操作,能防止过拟合。

  • 经过池化操作后,CNN可以适应图片小的位移,扭曲,位移

  • 经过吃化操作后,CNN可以帮助我们达成在一定尺度上的不变性,这是非常重要的,因为图像不再受外界环境的干扰。




04

CNN总结

至此已经介绍完了CNN使用的核心技术,如果将卷积操作,ReLU操作,Pooling操作结合起来,我们可以得到如下深度网络,可以看出共进行了2次卷积和池化,完成对输入的图像的特征提取,接下来就是全连接层,所谓的全连接层与之前说的DNN(全连接多层神经网络)是一致的,大家可以参考之前的推送复习多层感知器。


经过全连接层,会使用前一层提取的所有主要特征,使用一般的均值方差作为损失函数,在输出层可以使用softmax分类器完成多分类任务。可以看出预测的结果为一只船,这是合理的。


下面总结下CNN的算法:

  1. 初始化所有的过滤核,超参数,权重参数等

  2. 输入训练的图像数据,经过前向传播,包括:卷积操作,ReLU操作,池化操作和全连接层的前向传播,最后在输出层得到属于每个类的概率值。

  3. 计算在输出层的总误差,采用均方误差项:总误差 = ∑  ½ (目标概率 – 输出概率) ²

  4. 用反向传播计算误差项相对于权重参数和偏置项的梯度,以此最小化3中的误差和,等达到某个阈值时,停止训练。

  5. 对所有图像数据重复 2-4 操作。





阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 锤子科技欢喜云登录 北云科技 300448股吧 浩云 300448 300448股票 云科贷app 云科贷 云之秘境 租云服务器 租 云服务器 广州云积软件技术有限公司 初代云空 此生因你空欢喜苏若云 心很空天很大云很重 亮空云中文版下载 云网络 云空间怎么清理 云空间清理 云空间登录入口 牡丹江云空间登录 云空间怎么使用 云空间登录 云空间在哪里找 教育云空间登录 教育云空间学生登录 云空间怎么用 我的云空间 云空间下载 云空间是什么 教育云空间 云空间哪个好 云空间的照片怎么恢复 云空间租用 云空间网站 云空间注册 多看阅读云空间 云空间有什么用 什么是云空间 什么是云存储空间 情深之可云有空间