1. 程式人生 > >機器學習經典演算法(三)--指數加權平均

機器學習經典演算法(三)--指數加權平均

機器學習經典演算法(三)–指數加權平均

       指數加權平均(Exponentially Weighted Averages)是一些改進梯度下降法重要理論,如上篇博文梯度下降法(2)提到的動量梯度下降法,RMSprop、Adam等都用到了指數加權平均。也叫指數加權移動平均(Exponentially Weighted Moving Averages);那麼到底什麼是指數加權平均呢?

基礎概念
       話說有這麼一個例子,如下圖,橫軸表示天數

i ,縱軸表示某地每天對應的溫度 θ i ,這是1年的資料,現在我們想計算一下,這一年溫度變化的趨勢

這裡寫圖片描述

       這個變化趨勢也就是區域性平均或移動平均,怎麼做呢?
       我們用

v i 表示這個平均值,引入一個 β 引數,且令
v 0 = 0

v i = β v i 1 + ( 1 β ) θ i
       這樣一個式子表達了相當於,當天的溫度平均值約等於 T 溫度資料加權平均, T 1 1 β
       例如: β = 0.9 時, T = 10 天,效果如圖:

這裡寫圖片描述

       例如: β = 0.98 時, T = 50 天,效果如圖:

這裡寫圖片描述

       例如: β = 0.5 時, T = 2 天,效果如圖:

這裡寫圖片描述

       從上述3種情況對比看,該資料平均前10天較為符合我們期望;前50天曲線太平滑,有點偏離資料;前2天與資料較為貼合,但同時存在噪聲。

進一步理解
       我們將上式展開,這裡用第100個平均值, β = 0.9 為例:

(19) v 100 = 0.9 v 99 + 0.1 θ 100 (20) v 99 = 0.9 v 98 + 0.1 θ 99 (21) v 98 = 0.9 v 97 + 0.1 θ 98 (22)
       則:
(23) v 100 = 0.1 θ 100 + 0.9 v 99 (24) = 0.1 θ 100 + 0.9 ( 0.1 θ 99 + 0.9 v 98 ) (25) = 0.1 θ 100 + 0.9 ( 0.1 θ 99 + 0.9 ( 0.1 θ 98 + 0.9 v 97 ) (26) (27) = 0.1 θ 100 + 0.1 0.9 θ 99 + 0.1 0.9 2 θ 98 + 0.1 0.9 3 θ 97 + + 0.1 0.9 99 θ 1
       從上式可以看出第100天的平均值是由前100天資料加權平均的,但是看它們的權重係數,是符合一個指數級衰減函式,當