6.1激活函数-数据预处理笔记

处理过程

处理过程包括
在这里插入图片描述
激活函数
数据预处理
权重初始化
批量归一化
训练过程监控
超参的优化

激活函数

在这里插入图片描述
当输入数据,在全连接层或者卷积层,我们将输入乘上权重值,然后将结果输入一个激活函数,或非线性单元。
在这里插入图片描述
上图是一些例子

sigmoid函数

在这里插入图片描述
在这里插入图片描述
每个数被输入sigmoid中,都会被压缩到[0,1]的范围内,然而它从在很多问题。

问题1 首先是饱和神经元将使梯度消失

在这里插入图片描述
当x=-10,太过接近sigmoid负饱和区,这个区域本质上是平的所以梯度变为0,我们将返回上游梯度乘一个约为0的数,所以得到一个非常小的梯度,所以某种意义上经过链式法则后让梯度流消失因此0梯度就传递到下游的节点。
当x=0,可以有一个好的梯度可以好的反向传播
当x=10,或者很大正值,它们位于梯度平滑区域,无法得到梯度流的反馈。

问题2 sigmoid是非0中心函数

当输入神经元的数值始终为正,它会乘以某个权重W,然后我们将通过激活函数来运行
权重W梯度如何?

在这里插入图片描述
当我们把上游梯度传回来,就是对我们的损失L关于f进行求导,就是dl/df它的值就是正数或负数,我们对w求导则为df/dw这个等于x,如果x为正数,那么对w的梯度dL/df乘以df/dw,这就相当把上游梯度符号传了回来,意味着w的梯度全是正数或负数,它们总朝着一个方向移动,当你做参数更新,你可以选择增加他们,可以用同一个正数去增加所有w的值,这种方法对梯度更新十分低效。

问题3 exp()是一个计算成本高的函数

这不是主要问题,因为我们进行卷积核点乘计算代价会更大。

tanh激活函数

tanh非线性函数图像如上图右边所示。它将实数值压缩到[-1,1]之间。和sigmoid神经元一样,它也存在饱和问题,但是和sigmoid神经元不同的是,它的输出是零中心的。因此,在实际操作中,tanh非线性函数比sigmoid非线性函数更受欢迎

ReLU激活函数

在近些年ReLU变得非常流行。它的函数公式是
在这里插入图片描述
这个激活函数就是一个关于0的阈值(如上图左侧)。使用ReLU有以下一些优缺点:
优点:相较于sigmoid和tanh函数,ReLU对于随机梯度下降的收敛有巨大的加速作用( Krizhevsky 等的论文指出有6倍之多)。据称这是由它的线性,非饱和的公式导致的。
优点:sigmoid和tanh神经元含有指数运算等耗费计算资源的操作,而ReLU可以简单地通过对一个矩阵进行阈值计算得到。
缺点:在训练的时候,ReLU单元比较脆弱并且可能“死掉”。举例来说,当一个很大的梯度流过ReLU的神经元的时候,可能会导致梯度更新到一种特别的状态,在这种状态下神经元将无法被其他任何数据点再次激活。如果这种情况发生,那么从此所以流过这个神经元的梯度将都变成0。也就是说,这个ReLU单元在训练中将不可逆转的死亡,因为这导致了数据多样化的丢失。例如,如果学习率设置得太高,可能会发现网络中40%的神经元都会死掉(在整个训练集中这些神经元都不会被激活)。通过合理设置学习率,这种情况的发生概率会降低。
在这里插入图片描述
当学习率太高时候,你进行大量跟新,权值不断波动,你的reLu单元就会被数据多样性所淘汰。

神经元坏死理解

ReLU改进 leaky relu

eaky ReLU是为解决“ReLU死亡”问题的尝试。ReLU中当x<0时,函数值为0。而Leaky ReLU则是给出一个很小的负数梯度值,比如0.01。所以其函数公式为
在这里插入图片描述
其中a是一个小的常量。有些研究者的论文指出这个激活函数表现很不错,但是其效果并不是很稳定。Kaiming He等人在2015年发布的论文Delving Deep into Rectifiers中介绍了一种新方法PReLU,把负区间上的斜率当做每个神经元中的一个参数。然而该激活函数在在不同任务中均有益处的一致性并没有特别清晰。
在这里插入图片描述

实践

1最经常使用ReLU试验,但要小心学习率
2可以尝试leaky ReLU/maxout等但更多为实验性(实用性差一点)
在这里插入图片描述

数据预处理

归一化处理
在这里插入图片描述
零均值或

初始化网络权重

在这里插入图片描述
让我们从应该避免的错误开始。在训练完毕后,虽然不知道网络中每个权重的最终值应该是多少,但如果数据经过了恰当的归一化的话,就可以假设所有权重数值中大约一半为正数,一半为负数。这样,一个听起来蛮合理的想法就是把这些权重的初始值都设为0吧,因为在期望上来说0是最合理的猜测。这个做法错误的!因为如果网络中的每个神经元都计算出同样的输出,然后它们就会在反向传播中计算出同样的梯度,从而进行同样的参数更新。换句话说,如果权重被初始化为同样的值,神经元之间就失去了不对称性的源头。

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
virtualbox_6.1.24-145767-win是指VirtualBox虚拟机软件的一个版本。它作为一种免费且开源的虚拟化解决方案,被广泛应用于个人和企业的计算环境中。 VirtualBox 6.1.24-145767-win版本于2021年发布,带来了多项功能更新和 bug 修复。它的主要特点包括: 1. 高度兼容性:VirtualBox支持在不同操作系统上运行多种类型的虚拟机,包括Windows、Mac、Linux等。它可以同时运行多个虚拟机实例,并支持各种不同的操作系统版本。 2. 轻巧易用:安装VirtualBox非常简单,并且具有用户友好的图形界面。用户可以通过界面轻松创建、配置和管理虚拟机,即使对虚拟化技术不熟悉的用户也能快速上手。 3. 强大的功能集:VirtualBox提供了许多强大的功能,包括快照、共享文件夹、虚拟网络、USB设备支持等。这些功能使用户能够根据自己的需求定制虚拟机,并方便地与主机系统进行文件和资源共享。 4. 支持扩展:VirtualBox支持第三方扩展,可以增加诸如虚拟USB 2.0/3.0设备、虚拟化Intel HD音频等功能。这些扩展提供了更强大的功能和更好的性能。 总之,VirtualBox 6.1.24-145767-win是一款功能强大、易于使用且高度兼容的虚拟化软件。它为用户提供了创建和管理虚拟机的便捷方式,并能够满足各种不同的虚拟化需求。无论是个人用户还是企业用户,都可以通过VirtualBox实现更灵活、高效的计算环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值