背景介紹
在機器學(xué)習(xí)中,對每一個數(shù)據(jù)點拾稳,我們通過最小化經(jīng)驗風(fēng)險
來從數(shù)據(jù)中學(xué)習(xí),其中
是模型的參數(shù)腊脱。對整個訓(xùn)練集
访得,目標(biāo)函數(shù)即為
對應(yīng)的梯度為
然而,當(dāng)很大的時候陕凹,計算
個經(jīng)驗風(fēng)險函數(shù)的梯度將會變得特別低效悍抑。因此,一般的我們會采用批次訓(xùn)練方法杜耙,每次獨立均勻采樣
(
)搜骡,并且計算近似隨機梯度
我們有。
Adam(Adaptive Moment Estimation)算法
Adam算法
初始化佑女。對
记靡,梯度、梯度平方的指數(shù)移動平均
团驱、
摸吠,以及它們的偏差修正
、
由以下遞推式給出:
其中代表逐元素乘積嚎花,下標(biāo)
代表第
輪迭代寸痢,
(如無特殊說明,本文涉及的向量運算均為逐元素運算)紊选。模型參數(shù)
按以下公式進行更新:
其中為步長啼止,
是用來保證分母大于0。
Adam算法的優(yōu)勢:
- 速度快兵罢;
- 可用于非平穩(wěn)的目標(biāo)函數(shù)/數(shù)據(jù)献烦,即梯度的均值、協(xié)方差變化大趣些;
- 可用于有噪聲并且/或者稀疏的梯度仿荆;
Adam更新規(guī)則
我們先忽略,假設(shè)
。在時間
拢操,有效步長是
锦亦,其有兩個上界:當(dāng)
時,
令境;否則
杠园。前者對應(yīng)梯度稀疏的情況。
是不受梯度量級影響的舔庶。當(dāng)更新方向
的模長變小時抛蚁,有效步長
也變小。
假設(shè)的每一個元素
(
)惕橙,我們可以重寫更新方向:
其中是相對方差的估計瞧甩。