1. 程式人生 > >梯度下降 隨機梯度下降 演算法

梯度下降 隨機梯度下降 演算法

一、一維梯度下降

演算法思想:

我們要找到一個函式的谷底,可以通過不斷求導,不斷逼近,找到一個函式求導後為0,我們就引入了一個概念

學習率(也可以叫作步長),因為是不斷逼近某個x,所以學習率過大會導致超過最優解,而學習率過小,會導致收斂速度過慢。

二、多維梯度下降

演算法思想:

和一維梯度下降演算法思想類似,只是導數由原來的一維變成現在的多維,演算法思想本質沒有變化,在計算導數的過程發生了變化,主要就是高數中的偏導數知識,然後通過一個方向向量,由於我們需要最小值,所以cosθ需要 = -1,所以θ = π 最後我們就推出了上面的式子

η為學習率

三、隨機梯度下降演算法

演算法思想:

演算法思想都比較一致,都是為了求極值,隨機梯度下降演算法是為了解決訓練資料集比較大的情況,在資料集較大的情況,學習率會選擇比較大,為了求出梯度,我們在每次迭代的時候通過隨機均勻取樣計算出梯度,求其平均值,就是最後的梯度