BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / ml-dm / #25807同步于 2017/9/17
该镜像源已超过 30 天没有更新,可能在源站已被删除。
ML_DM机器人发帖

CNN中ReLU激励函数问题求教!

zzzccc
2017/9/17镜像同步15 回复
请问各位大神,CNN中ReLU激励函数的负半轴梯度为0,易导致神经元死亡,但是后面Leaky ReLu中,负半轴的梯度为0.01,为什么不直接改进为负半轴梯度为-1呢?为什么要牺牲掉负半轴的信息呢?
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
zqhZY机器人#1 · 2017/9/17
是不是也有负半轴为-1的变种,叫什么绝对整流单元
Geeshang机器人#2 · 2017/9/17
修正:负半轴-1还是非线性的,我想成一条直线了,智障了。负半轴梯度-1那就是绝对整流了,Relu的对比它优势是给网络带来了稀疏性,关于稀疏性好处的讨论,可以看这篇论文,比较详细 Deep Sparse Rectifier Neural Networks https://www.utc.fr/~bordesan/dokuwiki/_media/en/glorot10nipsworkshop.pdf ----- 这个问题你要想想引入激励函数是干什么用的,引入激励函数是为了给神经网络加入非线性因素,没有非线性再多层的网络结构学习能力将等价为一层,Relu负半轴直接为-1了,就不是非线性的了。
melot机器人#3 · 2017/9/18
-1也是非线性 【 在 Geeshang (Geeshang) 的大作中提到: 】 : 这个问题你要想想引入激励函数是干什么用的,引入激励函数是为了给神经网络加入非线性因素,没有非线性再多层的网络结构学习能力将等价为一层,Relu负半轴直接为-1了,就不是非线性的了。
soeaver机器人#4 · 2017/9/18
-1的话就是,y=abs(x),这类激活函数之前有很多 relu也有着生物学的解释,人的神经元达到一定刺激后会被激活,而达不到这个阈值就不会被激活,存在着一定的稀疏性。 relu可以说是最简洁的非线性变换,而且不存在梯度消失等问题,虽然一些复杂的非线性函数也存在着这些特性,甚至还有更多样性的变换,但是在优化网络的时候我们不能只看到理论上网络训练好的状态,更需要注意到达到这个结果的过程
XZC机器人#5 · 2017/9/18
你这个问题在我之前的帖子里问到了,我后来想负半轴为-1这个想法肯定他们一开始就想到了,为什么不这样设置,应该是有其原因的,具体什么原因我也不太清楚。就像上面那个回复说的,也许是为了完全模拟人类神经元吧,存在一定的生物学解释。 【 在 zzzccc 的大作中提到: 】 : 请问各位大神,CNN中ReLU激励函数的负半轴梯度为0,易导致神经元死亡,但是后面Leaky ReLu中,负半轴的梯度为0.01,为什么不直接改进为负半轴梯度为-1呢?为什么要牺牲掉负半轴的信息呢?
XZC机器人#6 · 2017/9/18
你说的这个叫稀疏激活性,我感觉就像人类去看世界一样,自己感兴趣的东西,大脑就会不自主去记忆并学习,而对于一些不感兴趣的事物直接忽略掉,选择性学习。神经网络的稀疏激活性应该就是为了模拟这个过程。 【 在 soeaver 的大作中提到: 】 : -1的话就是,y=abs(x),这类激活函数之前有很多 : relu也有着生物学的解释,人的神经元达到一定刺激后会被激活,而达不到这个阈值就不会被激活,存在着一定的稀疏性。 : relu可以说是最简洁的非线性变换,而且不存在梯度消失等问题,虽然一些复杂的非线性函数也存在着这些特性,甚至还有更多样性的变换,但是在优化网络的时候我们不能只看到理论上网络训练好的状态,更需要注意到达到这个结果的过程
coldmoon机器人#7 · 2017/9/18
【 在 zzzccc 的大作中提到: 】 : 请问各位大神,CNN中ReLU激励函数的负半轴梯度为0,易导致神经元死亡,但是后面Leaky ReLu中,负半轴的梯度为0.01,为什么不直接改进为负半轴梯度为-1呢?为什么要牺牲掉负半轴的信息呢? 这么说吧,你想让负半轴也输出非零数值,也不是没有用。负半轴的数值也是包含信息的。 但是输出负半轴非零数值的动机不在梯度消失,而在于保留信息上。sigmoid 那种梯度消失方式,relu 已经解决了;Leaky ReLU 不是为了加强 relu 传递梯度的幅值而提出的。 跟你提的问题比较接近的一篇论文是, 《Understanding and Improving Convolutional Neural Networks via Concatenated Rectified Linear Units》。如果我没有记错的话,这篇文章就是把 x < 0 数值加了个绝对值输出出去了。但是这个输出可不是跟 x > 0 的输出放在一起,而是各自输出各自的,相当于两个 激活函数 结果的级联。要是我记错了,麻烦告诉我一声。
zzzccc机器人#8 · 2017/9/18
对!负梯度为-1就不是非线性了!但是请问负轴的信息经过ReLU后就丢掉了是吧?而不是说在训练时还使用这些信息使权重为-w来训练,请问是这样子么? 【 在 Geeshang 的大作中提到: 】 : 修正:负半轴-1还是非线性的,我想成一条直线了,智障了。负半轴梯度-1那就是绝对整流了,Relu的对比它优势是给网络带来了稀疏性,关于稀疏性好处的讨论,可以看这篇论文,比较详细 Deep Sparse Rectifier Neural Networks https://www.utc.fr/~bordesan/dokuwiki/_media/en/glorot10nipsworkshop.pdf
zzzccc机器人#9 · 2017/9/18
谢谢回复!请问若用ReLU,负轴的信息是不是就牺牲掉了? 【 在 soeaver 的大作中提到: 】 : -1的话就是,y=abs(x),这类激活函数之前有很多 : relu也有着生物学的解释,人的神经元达到一定刺激后会被激活,而达不到这个阈值就不会被激活,存在着一定的稀疏性。 : relu可以说是最简洁的非线性变换,而且不存在梯度消失等问题,虽然一些复杂的非线性函数也存在着这些特性,甚至还有更多样性的变换,但是在优化网络的时候我们不能只看到理论上网络训练好的状态,更需要注意到达到这个结果的过程