关于激活函数的思考(zig-zagging dynamics)

我们在学习深度学习的时候会介绍几种激活函数,从Sigmod到RELU,在讲述特性的时候,都会提到像sigmod和RELU这样的激活函数有个问题就是none-zero-centered,即均值非0。这时候就有个缺点被称为zig-zagging dynamics(即锯齿状)。但是很少有展开解释为什么的,为什么会产生这样的收敛图。经过查阅资料,有一篇写的很好:

​​​​​​neural networks - Why are non zero-centered activation functions a problem in backpropagation? - Cross Validated

也就是我们假设函数为Wx+b,激活函数为SIgmod,我们知道的Sigmod的导数样子为

 是恒大于0的,导数的正负完全由x的正负决定。那么我们达到最优解可能就需要:

 如图所示走一个锯齿状的路线,即收敛速度就会较慢,即zig-zagging dynamics现象。

那么有同学就要问了——为什么和均值是否为0有关呢?均值为0为什么就不会有这种现象了呢?

因为均值为0,除非恒为0,否则函数的导数不能一直为正,这样就可以避免这样的zigzag路径了。

猜你喜欢

转载自blog.csdn.net/m0_46611008/article/details/125226915
今日推荐