随机初始化
Random Initialization
在逻辑回归中,可以初始化所有的
θ
\theta
θ为0
但是在神经网络中, a 1 ( 2 ) = a 2 ( 2 ) a_1^{(2)}=a_2^{(2)} a1(2)=a2(2),权重全都一样, δ \delta δ值一样, 偏导也都一样。将会导致整个网络都很冗余,最终的逻辑回归单元只会得到一个特征。
随机初始化
对参数进行初始化时,要使用随机初始化的思想。
网络结构:
训练神经网络第一件要做的事就是是选择网络结构,即决定共选择多少层以及决定每层分别有多少个单元。
神经网络训练的总步骤
- 首先,将权重随机初始化为一个接近 0 的小数,且范围在 − ϵ -\epsilon −ϵ到 ϵ \epsilon ϵ之间的数
- 然后,利用正向传播方法
- 整理出代价函数
- 进行反向传播计算偏导数,其目的实际上是算出权重更新(梯度下降的方向)
- 再执行梯度检验偏导数的正确性,之后记得关闭提低检验。
- 最后使用梯度下降或者高级优化算法来最小化代价函数J,计算出的最优化的值。