网站怎么销售,网站建设公司河南,ui设计周末培训机构,淮南网络建站公司论文参考#xff1a;Deep Sparse Rectifier Neural Networks
网页参考#xff1a;http://www.mamicode.com/info-detail-873243.html
起源#xff1a;传统激活函数、脑神经元激活频率研究、稀疏激活性
传统Sigmoid系激活函数 传统神经网络中最常用的两个激活函数…
论文参考Deep Sparse Rectifier Neural Networks
网页参考http://www.mamicode.com/info-detail-873243.html
起源传统激活函数、脑神经元激活频率研究、稀疏激活性
传统Sigmoid系激活函数 传统神经网络中最常用的两个激活函数Sigmoid系Logistic-Sigmoid、Tanh-Sigmoid被视为神经网络的核心所在。
从数学上来看非线性的Sigmoid函数对中央区的信号增益较大对两侧区的信号增益小在信号的特征空间映射上有很好的效果。
从神经科学上来看中央区酷似神经元的兴奋态两侧区酷似神经元的抑制态因而在神经网络学习方面可以将重点特征推向中央区将非重点特征推向两侧区。
无论是哪种解释看起来都比早期的线性激活函数(yx),阶跃激活函数(-1/1,0/1)高明了不少。
近似生物神经激活函数SoftplusReLu
2001年神经科学家Dayan、Abott从生物学角度模拟出了脑神经元接受信号更精确的激活模型该模型如左图所示 这个模型对比Sigmoid系主要变化有三点①单侧抑制 ②相对宽阔的兴奋边界 ③稀疏激活性重点可以看到红框里前端状态完全没有激活
同年Charles Dugas等人在做正数回归预测论文中偶然使用了Softplus函数Softplus函数是Logistic-Sigmoid函数原函数。 Softplus(x)log(1ex)
按照论文的说法一开始想要使用一个指数函数天然正数作为激活函数来回归但是到后期梯度实在太大难以训练于是加了一个log来减缓上升趋势。
加了1是为了保证非负性。同年Charles Dugas等人在NIPS会议论文中又调侃了一句Softplus可以看作是强制非负校正函数max(0,x)平滑版本。
偶然的是同是2001年ML领域的Softplus/Rectifier激活函数与神经科学领域的提出脑神经元激活频率函数有神似的地方这促成了新的激活函数的研究。 生物神经的稀疏激活性
在神经科学方面除了新的激活频率函数之外神经科学家还发现了神经元的稀疏激活性。
还是2001年Attwell等人基于大脑能量消耗的观察学习上推测神经元编码工作方式具有稀疏性和分布性。
2003年Lennie等人估测大脑同时被激活的神经元只有1~4%进一步表明神经元工作的稀疏性。
从信号方面来看即神经元同时只对输入信号的少部分选择性响应大量信号被刻意的屏蔽了这样可以提高学习的精度更好更快地提取稀疏特征。
从这个角度来看在经验规则的初始化W之后传统的Sigmoid系函数同时近乎有一半的神经元被激活这不符合神经科学的研究而且会给深度网络训练带来巨大问题。
Softplus照顾到了新模型的前两点却没有稀疏激活性。因而校正函数max(0,x)成了近似符合该模型的最大赢家。 Part I关于稀疏性的观点
Machine Learning中的颠覆性研究是稀疏特征基于数据的稀疏特征研究上派生了Deep Learning这一分支。
稀疏性概念最早由Olshausen、Field在1997年对信号数据稀疏编码的研究中引入并最早在卷积神经网络中得以大施拳脚。
近年来稀疏性研究不仅在计算神经科学、机器学习领域活跃甚至信号处理、统计学也在借鉴。
总结起来稀疏性大概有以下三方面的贡献
1.1 信息解离
当前深度学习一个明确的目标是从数据变量中解离出关键因子。原始数据以自然数据为主中通常缠绕着高度密集的特征。原因
是这些特征向量是相互关联的一个小小的关键因子可能牵扰着一堆特征有点像蝴蝶效应牵一发而动全身。
基于数学原理的传统机器学习手段在解离这些关联特征方面具有致命弱点。
然而如果能够解开特征间缠绕的复杂关系转换为稀疏特征那么特征就有了鲁棒性去掉了无关的噪声。
1.2 线性可分性
稀疏特征有更大可能线性可分或者对非线性映射机制有更小的依赖。因为稀疏特征处于高维的特征空间上被自动映射了
从流形学习观点来看参见降噪自动编码器稀疏特征被移到了一个较为纯净的低维流形面上。
线性可分性亦可参照天然稀疏的文本型数据即便没有隐层结构仍然可以被分离的很好。
1.3 稠密分布但是稀疏
稠密缠绕分布着的特征是信息最富集的特征从潜在性角度往往比局部少数点携带的特征成倍的有效。
而稀疏特征正是从稠密缠绕区解离出来的潜在价值巨大。
1.4 稀疏性激活函数的贡献的作用
不同的输入可能包含着大小不同关键特征使用大小可变的数据结构去做容器则更加灵活。
假如神经元激活具有稀疏性那么不同激活路径上不同数量选择性不激活、不同功能分布式激活
两种可优化的结构生成的激活路径可以更好地从有效的数据的维度上学习到相对稀疏的特征起到自动化解离效果。 Part II基于稀疏性的校正激活函数
2.1 非饱和线性端
撇开稀疏激活不谈校正激活函数max(0,x)与Softplus函数在兴奋端的差异较大(线性和非线性)。
几十年的机器学习发展中我们形成了这样一个概念非线性激活函数要比线性激活函数更加先进。
尤其是在布满Sigmoid函数的BP神经网络布满径向基函数的SVM神经网络中往往有这样的幻觉非线性函数对非线性网络贡献巨大。
该幻觉在SVM中更加严重。核函数的形式并非完全是SVM能够处理非线性数据的主力功臣支持向量充当着隐层角色。
那么在深度网络中对非线性的依赖程度就可以缩一缩。另外在上一部分提到稀疏特征并不需要网络具有很强的处理线性不可分机制。
综合以上两点在深度学习模型中使用简单、速度快的线性激活函数可能更为合适。 如图一旦神经元与神经元之间改为线性激活网络的非线性部分仅仅来自于神经元部分选择性激活。
2.2 Vanishing Gradient Problem
更倾向于使用线性神经激活函数的另外一个原因是减轻梯度法训练深度网络时的Vanishing Gradient Problem。
看过BP推导的人都知道误差从输出层反向传播算梯度时在各层都要乘当前层的输入神经元值激活函数的一阶导数。
即GradError⋅Sigmoid′(x)⋅x。使用双端饱和(即值域被限制)Sigmoid系函数会有两个问题
①Sigmoid‘(x)∈(0,1) 导数缩放
②x∈(0,1)或x∈(-1,1) 饱和值缩放
这样经过每一层时Error都是成倍的衰减一旦进行递推式的多层的反向传播梯度就会不停的衰减消失使得网络学习变慢。
而校正激活函数的梯度是1且只有一端饱和梯度很好的在反向传播中流动训练速度得到了很大的提高。 Softplus函数则稍微慢点Softplus‘(x)Sigmoid(x)∈(0,1) 但是也是单端饱和因而速度仍然会比Sigmoid系函数快。 Part III 潜在问题
强制引入稀疏零的合理性
诚然稀疏性有很多优势。但是过分的强制稀疏处理会减少模型的有效容量。即特征屏蔽太多导致模型无法学习到有效特征。
论文中对稀疏性的引入度做了实验理想稀疏性强制置0比率是70%~85%。超过85%网络就容量就成了问题导致错误率极高。 对比大脑工作的95%稀疏性来看现有的计算神经网络和生物神经网络还是有很大差距的。
庆幸的是ReLu只有负值才会被稀疏掉即引入的稀疏性是可以训练调节的是动态变化的。
只要进行梯度训练网络可以向误差减少的方向自动调控稀疏比率保证激活链上存在着合理数量的非零值。 Part IV ReLu的贡献
4.1 缩小做和不做非监督预训练的代沟
ReLu的使用使得网络可以自行引入稀疏性。这一做法等效于无监督学习的预训练。 当然效果肯定没预训练好。论文中给出的数据显示没做预训练情况下ReLu激活网络遥遥领先其它激活函数。
甚至出现了比普通激活函数预训练后更好的奇葩情况。当然在预训练后ReLu仍然有提升空间。
从这一层面来说ReLu缩小了非监督学习和监督学习之间的代沟。当然还有更快的训练速度。
4.2 更快的特征学习
在MNISTLeNet4中ReLuTanh的组合在epoch 50左右就能把验证集错误率降到1.05%
但是全Tanh在epoch 150时还是1.37%这个结果ReLuTanh在epoch 17时就能达到了。 该图来自AlexNet的ImageNet Classification with Deep Convolutional Neural Networks对ReLu和普通Sigmoid系函数做的对比测试可以看到ReLu的使用使得学习周期
大大缩短。综合速率和效率DL中大部分激活函数应该选择ReLu。 Part V Theano中ReLu的实现
ReLu可以直接用T.maximum(0,x)实现用T.max(0,x)不能求导. Part VI ReLu训练技巧
见Cifar-10训练技巧
http://www.cnblogs.com/neopenx/p/4480701.html