1. 程式人生 > 其它 >吳恩達機器學習(5) 梯度下降

吳恩達機器學習(5) 梯度下降

1.梯度下降

是一種常用的使代價函式最小化的演算法,不僅用線上性迴歸中,也用到機器學習的很多方面,是一個非常經典的演算法。

過程:一點點得改變引數,使代價函式值變小,直到找到最小值或區域性最小值

2. 需要注意的點

(1)梯度下降法,不同的起點可能導致到達不同的區域性最優處

(2)梯度下降法中,各個引數應該進行同步更新,如果不是同步更新,將導致更新完第一個引數後,將得到一個新的方程,再更新第二個引數將得到與同步更新不一樣的結果,不是

實現梯度下降法的正確做法,是不同性質的其他演算法

(3)梯度下降法中,該使用合適的學習率

過小:將導致迭代次數多,梯度下降慢

過大:將導致容易邁過最小處,容易產生振盪效果

3. Batch梯度下降法

  意思為,在每一次迭代中都會遍歷整個訓練集的樣本;非batch梯度下降法,在迭代中不會遍歷所有訓練集資料