本文共 858 字,大约阅读时间需要 2 分钟。
对于梯度下降/高级优化算法,必须初始化 Θ \Theta Θ.
optTheta = fminunc(@costFunction, initialTheta, options)
实现fminunc,要设置initialTheta.
phenomenon: 每次更新后,两个隐藏单元依然以相同的函数作为输入来计算。
result: 只能学习一种特征。目的: 解决对称性问题
方法: 将 Θ i j ( l ) \Theta_{ij}^{(l)} Θij(l)初始化为 [ − ϵ , ϵ ] [-\epsilon,\epsilon] [−ϵ,ϵ]之间的一个随机值,即 − ϵ ≤ Θ i j ( l ) ≤ ϵ -\epsilon\le\Theta_{ij}^{(l)}\le\epsilon −ϵ≤Θij(l)≤ϵ. Note:这里的 ϵ \epsilon ϵ不同于梯度检验中的 ϵ \epsilon ϵ 例如:Theta1 = rand(10,11)*(2*INIT_EPSILON) - INIT_EPSILON;Theta2 = rand(1,11)*(2*INIT_EPSILON) - INIT_EPSILON;
After each update, parameters corresponding to inputs going into each of two hidden units are identical
为了Symmetry breaking打破对称性
转载地址:http://dumzi.baihongyu.com/