不同激活函数activationfunction的神经网络的表达能力是否一致

2019-11-20 03:52:26

泻药~不会一致的,不仅表达能力不一样,泛化能力,训练效果都不一样。然而现实功利的问题是,VC维再好看,训练不到,训练不快也没有用,而且深层网络的VC维是很难估计的,一般不会靠这个bound来吃饭,反正直观上加深后也能提高,讨论确切bound在那里,工程上有点没意义。我按照自己的理解列举几个激活函数及其优势和缺陷,我的出身专业问题,导致这同大部分工科科班的理解有点不一样,所以大家将下面当作抛屎引锎,请谨慎接受。每层都是完全线性的激活函数,会导致神经网络退化成LR,一般不会选择这种激活函数,虽然其表达能力虽然同LR一致,然而训练过程高度非线性,完全异于LR,用于非常初期的深层网络训练理论研究是有帮助的。每层都是sigmoid,这样会带来训练饱和问题(http://jmlr.org/proceedings/papers/v9/glorot10a/glorot10a.pdf),你可以笼统认为饱和就是trap在某个区间上,该区间对提升性能毫无帮助。按照原始文章引举的说法,sigmoid的二次导数等于,输入为零的时候,二次导数为零(曲率为零,hessian带奇点),相当于损失函数曲面上有个大平原,导致训练迟缓。然而这个理论太简单粗暴了,深层网络的损失函数出现大平原不是激活函数二次导数为不为零这么简单的事情。为了理解这种大平原的出现,我们可以用另外一个直观粗浅地方式理解饱和,该方法笼统来说,如果参数W潜在的解空间越大,训练越难找到极小。按照如下方式计算潜在解空间,假设你的输入x都被rescale到0-1之间,你计算信息熵,发现输入x=0.5附近的区间拥有最大的自由度(自由活动空间大小约等于exp(熵)),到了sigmoid中,相当于要求Wx为零。更一般来说,计算输入为高斯时,使得Wx等于k的W解空间大小,可以如下计算:,是狄拉克函数,对于sigmoid来说,k等于零,上面的积分无穷大(W垂直x便可,有无限解)。对于relu来说,k不等于零,积分结果为有限值,n为x的维度,同k无关。sigmoid的解空间远超relu。导致分类问题中,sigmoid在0.5附近的区间过大,每层都花大量时间搜索,训练没法提升。越深层的网络,越难以跳出,这是熵垒(俗称大平原),用于区别单纯局部极小带来的训练阻碍(坑王之王)。tanh解空间也比sigmoid小,当然上面为了展示思路,理论过于简化了,没法比较tanh和relu,实际上解空间是exp(信息熵)x(解空间大小),x可以在不是0.5处取极值,实际这样做tanh的解空间还是比relu大不少,推导太长就不写了。sigmoid的好处并不是在训练上的,而是你的模型如果牵涉到许多概率问题,比如DBN,RNN,LSTM中的一些gate,你就不能将sigmoid换成relu了,这样概率表达都错了。relu型的,如上所述用于缓和饱和问题。而且还有部分缓和梯度衰减的作用,不像sigmoid一样,relu没有一个梯度衰减的尾巴,强度上不封顶。使得反向传播过程只有权值的乘积带来梯度的衰减。然而,一些网络可能需要clip掉梯度,避免不封顶的爆炸梯度回传。稀疏度问题,relu的稀疏机理同dropout机理不一样,dropout等效于动态L2规范带来的稀疏,是通过打压W来实现稀疏的。relu稀疏是因为如果输入为零,输出也会为零,这样多层输入输出更加贴近于原始高维数据层的稀疏度,毕竟输入信息本来就是高度稀疏的,当然这个只是形象的理解,确切更严格的理解还请高手解释。=============================================================之前有细心的人说第二部分计算有误,我现在严格计算解空间表达式,非常复杂。假设输入x满足分布,x的维度是n,输出为。固定s下,单个输出节点的W平均解空间大小应该如下表示为:是狄拉克函数。然而这个积分会出现无穷大,我们需要一个限定,合理的限定是假设权重平方等于某个固定值,实际上你跑一个隐层巨大的网络,所有权重的平方和就是接近固定值(就是方差,因为均值为零)。受限的W平均解空间大小为:先计算W积分,计算这个积分要换到n维球座标,需要利用狄拉克函数的一些性质:是n-2维球面面积,综合起来是,W平均解空间大小:下面考虑s输出到一个激活函数A上,得到,这个激活函数本身有个信息容度,我们用exp(信息熵)表示:,经过激活函数后,最终的有效解空间是“信息容度”乘上W解空间大小。利用介值定理,上式正比于:假设输出节点独立无关,然后考虑n个输出节点,总的解空间大小为单个空间大小的连乘,也就是n次方:我们画出s从0-1的图像,分别是sigmoid(红色曲线),relu(蓝色曲线),tanh(绿色曲线),注意到tanh是双边对称的,单个输出节点的大小需要额外乘以2,我们取alpha=0.1,n取20,图像如下(横轴是输出,纵轴是固定输出下解空间大小):我们取alpha=0.01,n取100,图像如下:可以这样直观理解,exp指数贡献巨大,故此上式主要贡献在处取得,此时,对于sigmoid来说,s=0,对于relu来说,s=0.5,这样根号里面的项对于sigmoid来说恒等于1,而对于relu来说,恒小于1。当输入n非常大的时候(100够大了),relu的积分贡献远小于sigmoid函数,或者说sigmoid函数的解空间远超relu。tanh也是远超过relu的,写的这么辛苦,我是不是要发篇文章说下这个观点?

上一篇:HansZimmer和久石让在业界谁更有影响力_3
下一篇:炒美股如何开户_2
设为首页 | 保存到桌面 | 网站地图 | 用户帮助 | 用户注册 | 在线投稿 | 广告投放 | 留言反馈
Copyright © 2005-2012 ™ 165163.com.All Rights Reserved. 东阳在线版权所有
地址:浙江省东阳市画水镇华阳 电话:0579-86220017 013509201192 QQ:393614973 互联网ICP备案编号:浙ICP备10046462号
温馨提示:东阳在线所有帖子仅且代表作者本人意见,均不代表本站立场;如转载请注明出东阳在线(www.165163.com),商业用途请联系本站。

东阳E网 金华公安网监
s