tensorflow筆記之反向傳播時用到的幾種方法


1. 梯度下降, tf.train.GradientDescentOptimizer(0.05),梯度下降的問題在與不一定能獲得全局最優解,並且因為要在所有數據上最小化損失,所以損失函數是在所有訓練數據上的損失和,所以在大數據情況下,需要的時間相當長。

2.隨機梯度下降,隨機梯度下降優化的不是全部數據上的損失函數,在每一輪迭代中,都隨機選擇一條訓練數據進行優化,這樣訓練時間大大減小,但是由於某一條數據上的全局最小不一定代表所有數據的全局最小,所以隨機梯度下降也不一定能達到全局最優解。

為了綜合梯度下降和隨機梯度下降的優點,在實際訓練中通常將訓練數據分為多個batch,每次只訓練一個batch,這樣可以大大減小收斂所需的迭代次數。

3. MomentumOptimizer(),解決了梯度下降無法跳出局部極小值的問題。

4. AdagradOptimizer(),根據每個變量變換優化步長,考慮了變量梯度的整個歷史。

5. AdadeltaOptimizer(),Adagrad有時候會很快使梯度到0,為了解決這個問題,Adadelta可以限制最少使用多少步。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM