chapter 4
Agenda
學習速率並不好決定
學習率過大
雖然步伐夠大跳出了局部極值,但到全域極值時,因為步伐太大,所以走不到最好的值(無法收斂)
學習濾過小
初始值不好,解就會掉到局部極小值
藉由批量更新樣本計算梯度求 lost function 極值的作法。對整個 batch 計算梯度,雖然不會受到極端資料的影響,但是運算量大,資料量大會比較棘手。
容易收斂到局部極小值
隨機取樣時對每個樣本計算梯度,一次就只進行一次更新,不像BGD計算太多次,但是犧牲準確性,會讓 lost function震盪大。
有機會藉由震盪跳出局部極小值
由於梯度是誤差函數對於單一維度的導函數,所以並不能有效指往正確的方向
x
y
z
x
y
z
w1方向上的曲率太大了
拖累收斂的行進速度
(改善方向,也改善速率)
Main Algorithm
每一次計算更新值的時候,
考慮當下的梯度跟前一次的更新值
w1分量會相互抵銷,
進而強化往w2方向的移動速率!
依照歷史梯度調整速率
依照平均歷史梯度調整速率
能有效克服病態曲面
但容易使學習速率下降
解決AdaGrad太早收斂問題
但多了一個超參數增加變因
而且仍然依賴全局學習速率
依照平均歷史梯度調整速率
依照平均歷史梯度&動量調整速率
解決AdaGrad太早收斂問題
但多了一個超參數增加變因
而且仍然依賴全局學習速率
加入動量之後能夠避免在病態曲率中無謂的震盪