2.5 指数加权平均的偏差修正-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授
| 2.4 理解指數加權平均 | 回到目錄 | 2.6 動量梯度下降法 |
指數加權平均的偏差修正 (Bias Correction in Exponentially Weighted Average)
你學過了如何計算指數加權平均數,有一個技術名詞叫做偏差修正,可以讓平均數運算更加準確,來看看它是怎么運行的。
vt=βvt?1+(1?β)θtv_t=\beta v_{t-1}+(1-\beta)\theta_tvt?=βvt?1?+(1?β)θt?
在上一個視頻中,這個(紅色)曲線對應 β\betaβ 的值為0.9,這個(綠色)曲線對應的 β=0.98\beta=0.98β=0.98 ,如果你執行寫在這里的公式,在 β\betaβ 等于0.98的時候,得到的并不是綠色曲線,而是紫色曲線,你可以注意到紫色曲線的起點較低,我們來看看怎么處理。
計算移動平均數的時候,初始化 v0=0v_0=0v0?=0, v1=0.98v0+0.02θ1v_1=0.98v_0+0.02\theta_1v1?=0.98v0?+0.02θ1? ,但是 v0=0v_0=0v0?=0 ,所以這部分沒有了( 0.98v00.98v_00.98v0? ),所以 v1=0.02θ1v_1=0.02\theta_1v1?=0.02θ1? ,所以如果一天溫度是40華氏度,那么 v1=0.02θ1=0.02?40=8v_1=0.02\theta_1=0.02*40=8v1?=0.02θ1?=0.02?40=8 ,因此得到的值會小很多,所以第一天溫度的估測不準。
v2=0.98v1+0.02θ2v_2=0.98v_1+0.02\theta_2v2?=0.98v1?+0.02θ2? ,如果代入 v1v_1v1? ,然后相乘,所以 v2=0.98?0.02θ1+0.02θ2=0.0196θ1+0.02θ2v_2=0.98*0.02\theta_1+0.02\theta_2=0.0196\theta_1+0.02\theta_2v2?=0.98?0.02θ1?+0.02θ2?=0.0196θ1?+0.02θ2? ,假設 θ1\theta_1θ1? 和 θ2\theta_2θ2? 都是正數,計算后 v2v_2v2? 要遠小于 θ1\theta_1θ1? 和 θ2\theta_2θ2? ,所以 v2v_2v2? 不能很好估測出這一年前兩天的溫度。
有個辦法可以修改這一估測,讓估測變得更好,更準確,特別是在估測初期,也就是不用 vtv_tvt? ,而是用 vt1?βt\frac{v_t}{1-\beta^t}1?βtvt?? , ttt 就是現在的天數。舉個具體例子,當 t=2t=2t=2 時, 1?βt=1?0.982=0.03961-\beta^t=1-0.98^2=0.03961?βt=1?0.982=0.0396 ,因此對第二天溫度的估測變成了 v20.0396=0.0196θ1+0.02θ20.0396\frac{v_2}{0.0396}=\frac{0.0196\theta_1+0.02\theta_2}{0.0396}0.0396v2??=0.03960.0196θ1?+0.02θ2?? ,也就是 θ1\theta_1θ1? 和 θ2\theta_2θ2? 的加權平均數,并去除了偏差。你會發現隨著 ttt 增加, βt\beta^tβt 接近于0,所以當 ttt 很大的時候,偏差修正幾乎沒有作用,因此當 ttt 較大的時候,紫線基本和綠線重合了。不過在開始學習階段,你才開始預測熱身練習,偏差修正可以幫助你更好預測溫度,偏差修正可以幫助你使結果從紫線變成綠線。
在機器學習中,在計算指數加權平均數的大部分時候,大家不在乎執行偏差修正,因為大部分人寧愿熬過初始時期,拿到具有偏差的估測,然后繼續計算下去。如果你關心初始時期的偏差,在剛開始計算指數加權移動平均數的時候,偏差修正能幫助你在早期獲取更好的估測。
所以你學會了計算指數加權移動平均數,我們接著用它來構建更好的優化算法吧!
課程PPT
| 2.4 理解指數加權平均 | 回到目錄 | 2.6 動量梯度下降法 |
總結
以上是生活随笔為你收集整理的2.5 指数加权平均的偏差修正-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2.4 理解指数加权平均-深度学习第二课
- 下一篇: 2.6 动量梯度下降法-深度学习第二课《