关于weight decay
weight decay的作用主要是令神經(jīng)網(wǎng)絡(luò)中的權(quán)重變小(趨于0),以防止過擬合
如y=∑iwixiy=\sum_{i}{w_ix_i}y=∑i?wi?xi?,則因噪聲的存在,可能會(huì)令其中某幾個(gè)www偏大,導(dǎo)致無法正確擬合正常輸入
weight decay的公式為:
C=C0+λ2n∑iwi2C=C_0+\frac{\lambda}{2n}\sum_i{w_i^2}C=C0?+2nλ?∑i?wi2?
?C?wk=?C0?wk+λwkn\frac{\partial{C}}{\partial{w_k}}=\frac{\partial{C_0}}{\partial{w_k}}+\frac{\lambda w_k}{n}?wk??C?=?wk??C0??+nλwk??
其中C0C_0C0?為原誤差,λ\lambdaλ為weight decay系數(shù),也可以看做是懲罰值, 12\frac{1}{2}21?則用于求導(dǎo)時(shí)的簡(jiǎn)化
原始梯度下降wnew=wold?ηΔ,Δ=?C0?wkw_{new}=w_{old}-\eta\Delta ,\Delta=\frac{\partial{C_0}}{\partial{w_k}}wnew?=wold??ηΔ,Δ=?wk??C0??
使用了weight decay之后,Δ\DeltaΔ中多了一項(xiàng)λwkn\frac{\lambda w_k}{n}nλwk??,即對(duì)梯度下降時(shí)較大的權(quán)重,會(huì)賦予較大的懲罰值,使新的w趨于0
而在選取decay值上,目前尚沒有比較普適的公式
How could I choose the value of weight decay for neural network regularization 中提到用平時(shí)調(diào)參時(shí)常用的兩種策略:grid search 和 random search
其實(shí)都是類似窮舉,首先需要有個(gè)驗(yàn)證集(不同于訓(xùn)練集),分別對(duì)驗(yàn)證集采取不同decay值(如0.5, 0.1, 0.01等等)進(jìn)行測(cè)試,選取其中效果較好的decay,即作為訓(xùn)練集的decay
總結(jié)
以上是生活随笔為你收集整理的关于weight decay的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在Excel中输入身份证号码的方法或批量
- 下一篇: java正则表达式控制半角字符串输入