线性回归基本可以是LR的简化版(论证思路上),因此本文将主要探讨两个问题:1. 为什么LR可以将权重初始化为0?2. 为什么神经网络不能将权重初始化为0?

本文参考资料:https://zhuanlan.zhihu.com/p/75879624

为什么LR可以将权重初始化为0?

在这里插入图片描述

为什么神经网络不能将参数初始化为0?

以下图为例:
在这里插入图片描述

情况1:w和b都初始化为0

在这里插入图片描述
那么由于反向传播的公式,从上图一个简单反向传播可以看出,每一轮参数更新只能从后往前更新一层的参数。这且不管,而且由于初始化参数完全相同,那么上上图中的a1a_1a1a2a_2a2的值相同,因此更新的参数值也相同,而之后的迭代也是这样,即同一层的每个节点的参数值会完全相同!这个叫做隐藏神经元的对称性。而倘若同一层每个神经元输出相同,那么这样的神经网络就没有意义了。

情况2:模型所有w初始化为0,b随机初始化

从上图可以看出,这种情况下模型同样在刚开始时每轮只能从后往前更新一层的参数,但由于b的不同,在经过足够多的轮数后所有参数还是能得到更新的。但是这种方式更新较慢,且存在梯度消失、梯度爆炸等问题,通常不会这么干。

模型所有w随机初始化,b初始化为0

从上图看得出,每一层的参数的更新与其后一层的b并没有关系,因此b的初始值不会影响BP算法的效果,所有权值和b都能得到更新。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐