天天看點

系列筆記 | 深度學習連載(2):梯度下降

我們回憶深度學習“三闆斧”:

1. 選擇神經網絡

2. 定義神經網絡的好壞

3. 選擇最好的參數集合

其中步驟三,如何選擇神經網絡的好壞呢?

系列筆記 | 深度學習連載(2):梯度下降

梯度下降是目前,最有效的方法之一。

方法:我們舉兩個參數的例子 θ1、θ2, 損失函數是L。那麼它的梯度是:

系列筆記 | 深度學習連載(2):梯度下降

那我為了求得最小值,我們有:

系列筆記 | 深度學習連載(2):梯度下降

參數不斷被梯度乘以學習率η 疊代

系列筆記 | 深度學習連載(2):梯度下降

那麼上述公示公為什麼是減号,不是加号呢?

我們定義 θ 改變的方向是movement的方向, 而gradient的方向是等高線的法線方向

系列筆記 | 深度學習連載(2):梯度下降

基礎的Gradient Decent已經介紹完了,接下來,我們一起探讨GD的使用技巧。

Learning rate學習率的設定

Learning Rate η 如果設定不好,Loss反而增大

系列筆記 | 深度學習連載(2):梯度下降

自适應的學習率 adaptive learning rate

很多小夥伴在機器學習代碼中,學習率一般都是設定為一個固定的數值(需要不斷調參)。

根據學習經驗,一般的我們有如下結論:

1. 訓練剛開始的時候,學習率較大

2. 經過幾輪訓練後,結果慢慢接近的時候,需要調國小習率

系列筆記 | 深度學習連載(2):梯度下降

Adagrad 的學習率是現有學習率 除以 導數的平方和的開根号

系列筆記 | 深度學習連載(2):梯度下降

Stochastic Gradient Decent (SGD)

讓訓練更加快速

一般的GD方法是所有的訓練資料後,進行一次參數更新

系列筆記 | 深度學習連載(2):梯度下降

SGD是一個樣本就可以更新參數

系列筆記 | 深度學習連載(2):梯度下降

GD和SGD的對比效果:

系列筆記 | 深度學習連載(2):梯度下降

特征裁剪 Feature Scaling

讓不同次元的資料,有相同的變化幅度

系列筆記 | 深度學習連載(2):梯度下降

訓練的時候,哪一個好train,一目了然

系列筆記 | 深度學習連載(2):梯度下降

歸一化方法:

系列筆記 | 深度學習連載(2):梯度下降

總結: Gradient Decent 是機器學習、深度學習求解Optimal問題的“普世”方法,但是也會遇到很多問題,例如local minima 和 saddle point 的問題。 我們以後會展開讨論。

系列筆記 | 深度學習連載(2):梯度下降

繼續閱讀