機器學習中優化演算法的比較

2021-08-28 07:14:09 字數 1066 閱讀 2404

演算法

優點

缺點

適用情況

牛頓法收斂速度快

靠近極小值時收斂速度減慢,求解hessian矩陣的逆矩陣複雜,容易陷入鞍點

不適用於高維資料

擬牛頓法

收斂速度快,不用計算二階導數,低運算複雜度

儲存正定矩陣,記憶體消耗大

不適用於高維資料

批量梯度下降

目標函式為凸函式時,可以找到全域性最優值

收斂速度慢,需要用到全部資料,記憶體消耗大

隨機梯度下降

更新值的方差較大,收斂過程會產生波動,可能落入極小值,選擇合適的學習率比較困難

小批量梯度下降

降低更新值的方差,收斂較為穩定

選擇合適的學習率比較困難

momentum

能夠在相關方向加速sgd,抑制振盪,從而加快收斂

需要人工設定學習率

適用於有可靠的初始化引數

nesterov

梯度在大的跳躍後,進行計算對當前梯度進行校正

需要人工設定學習率

adagrad

不需要對每個學習率手工地調節

仍依賴於人工設定乙個全域性學習率,學習率設定過大,對梯度的調節太大。中後期,梯度接近於0,使得訓練提前結束

需要快速收斂,訓練複雜網路時;適合處理稀疏梯度

adadelta

不需要預設乙個預設學習率,訓練初中期,加速效果不錯,很快,可以避免引數更新時兩邊單位不統一的問題。

訓練後期,反覆在區域性最小值附近抖動

需要快速收斂,訓練複雜網路時

rmsprop

解決 adagrad 激進的學習率縮減問題

依然依賴於全域性學習率

需要快速收斂,訓練複雜網路時;適合處理非平穩目標 - 對於rnn效果很好

adam

對記憶體需求較小,為不同的引數計算不同的自適應學習率

需要快速收斂,訓練複雜網路時;善於處理稀疏梯度和處理非平穩目標的優點,也適用於大多非凸優化 - 適用於大資料集和高維空間

機器學習中的優化演算法

機器學習演算法 模型表徵 模型評估 優化演算法 優化演算法所做的事情就是在模型表徵空間中找到模型評估指標最好的模型。在有監督學習中,損失函式刻畫了模型和訓練樣本的匹配程度。回歸問題 l f,y begin f y 2 text f y leq delta 2 delta f y delta 2 te...

機器學習常見的優化演算法

機器學習中常見的一些優化演算法的總結,以最直接的方式理解。注 梯度下降法來自rachel zhang的部落格 不是所有的方程都具有解析解,因此可採用優化的方法尋找其最有解,在機器學習中常見的演算法有梯度下降法 牛頓法和拉格朗日對偶性。具有一階連續的偏導數的目標函式,以andrew ng老師的課件簡要...

機器學習優化演算法 L BFGS

關於優化演算法的求解,書上已經介紹了很多的方法,比如有梯度下降法,座標下降法,牛頓法和擬牛頓法。梯度下降法是基於目標函式梯度的,演算法的收斂速度是線性的,並且當問題是病態時或者問題規模較大時,收斂速度尤其慢 幾乎不適用 座標下降法雖然不用計算目標函式的梯度,但是其收斂速度依然很慢,因此它的適用範圍也...