深度學習優化函式詳解(6) adagrad

2021-08-17 12:25:20 字數 817 閱讀 5223

深度學習優化函式詳解系列目錄

深度學習優化函式詳解(0)– 線性回歸問題

深度學習優化函式詳解(1)– gradient descent 梯度下降法

深度學習優化函式詳解(2)– sgd 隨機梯度下降

深度學習優化函式詳解(3)– mini-batch sgd 小批量隨機梯度下降

深度學習優化函式詳解(4)– momentum 動量法

深度學習優化函式詳解(5)– nesterov accelerated gradient (nag)

深度學習優化函式詳解(6)– adagrad

前面的一系列文章的優化演算法有乙個共同的特點,就是對於每乙個引數都用相同的學習率進行更新。但是在實際應用中各個引數的重要性肯定是不一樣的,所以我們對於不同的引數要動態的採取不同的學習率,讓目標函式更快的收斂。

adagrad方法是將每乙個引數的每一次迭代的梯度取平方累加再開方,用基礎學習率除以這個數,來做學習率的動態更新。這個比較簡單,直接上公式。

公式推導

實驗

實驗取 η=0.2,ϵ=1e−8

可以看出收斂速度的確是特別慢(在該資料集下),最重要的原因就是動態學習率處於乙個單向的減小狀態,最後減到近乎為0的狀態。

實驗原始碼:

深度學習優化函式

深度學習優化函式詳解系列目錄 本系列課程 歡迎star 深度學習優化函式詳解 0 線性回歸問題 深度學習優化函式詳解 1 gradient descent 梯度下降法 深度學習優化函式詳解 2 sgd 隨機梯度下降 深度學習優化函式詳解 3 mini batch sgd 小批量隨機梯度下降 深度學習...

深度學習之優化演算法詳解

梯度下降 batch gradient descent,stochastic gradientdescent,以及 mini batchgradient descent 現在的 sgd一般都指 mini batch gradient descent sgd就是每一次迭代計算 mini batch 的...

深度學習之啟用函式詳解

啟用函式是什麼 啟用函式,即activation function,有時候也稱作激勵函式。它是為了解決線性不可分的問題引出的。但是也不是說線性可分就不能用啟用函式,也是可以的。它的目的是為了使資料更好的展現出我們想要的效果。啟用函式在 用?比如乙個神經網路 為了更清晰的表示,我用紅色標出。比如像上面...