1.梯度消失/梯度爆炸(Vanishing/Exploding gradients)
产生原因:在训练神经网络的时候,导数或者坡度会突变,这与深度网络中权重的设置或者层数的设置哟很大关系,权重过大或者过小会造成后续的激活函数指数级进行递减或者爆炸式增长。
解决办法:对于神经网络权重值进行初始化。
2.神经网络的权重初始化
设置某层的权重矩阵为w_[l] = np.random.randn(shape)*np.sqrt(1/n_{l-1}),n_[l-1]是第l-1层神经元的数量。
(1)若激活函数ReLU,则方差设置伪2/n,也可以是
2n⌊l−1⌋−−−−−√ 2 n ⌊ l − 1 ⌋
(2)tanh函数。方差设置为(Xavier)初始化
1n⌊l−1⌋