tensorflow的優化器比較

2021-08-07 06:11:19 字數 649 閱讀 8394

標準梯度下降法:彙總所有樣本的總誤差,然後根據總誤差更新權值

隨機梯度下降:隨機抽取乙個樣本誤差,然後更新權值 (每個樣本都更新一次權值,可能造成的誤差比較大)

批量梯度下降法:相當於前兩種的折中方案,抽取乙個批次的樣本計算總誤差,比如總樣本有10000個,可以抽取1000個作為乙個批次,然後根據該批次的總誤差來更新權值。(常用)

momentum:當前權值的改變會收到上一次權值的改變的影響,就像小球滾動時候一樣,由於慣性,當前狀態會受到上乙個狀態影響,這樣可以加快速度。

nag(nesterov accelerated gradient)與momentum相比,它更為聰明,因為momentum是乙個路痴,它不知道去**,而nag則知道我們的目標在**。也就是nag知道我們下乙個位置大概在**,然後提前計算下乙個位置的梯度。然後應用於當前位置指導下一步行動。

adagrad:核心思想是對於常見的資料給予比較小的學習率去調整引數,對於不常見的資料給予比較大的學習率調整引數。它可以自動調節學習率,但迭代次數多的時候,學習率也會下降。

rmsprob :採用前t-1次梯度平方的平均值 加上當前梯度的平方 的和再開放作為分母

adadelta :不使用學習率

adam :會把之前衰減的梯度和梯度平方儲存起來,使用rmsprob,adadelta相似的方法更新引數

tensorflow中的優化器

1.tf.train.gradientdescentoptimizer 標準梯度下降優化器 標準梯度下降先計算所有樣本彙總誤差,然後根據總誤差來更新權值 2.tf.train.adadeltaoptimizer adadelta優化器,在sgd的基礎上 3.tf.train.adagradoptim...

Tensorflow 優化器的使用

對於tensorflow中的優化器 optimizer 目前已有的有以下 不同的優化器有各自的特點,不能說誰好誰壞,有的收斂速度慢,有的收斂速度快。此處以mnist資料集識別分類為例進行不同優化器的測試 1 梯度下降法 tf.train.gradientdescentoptimizer import...

tensorflow常用的優化器

tf.train.momentumoptimizer learning rate,momentum,use locking false name momentum minimize loss learning rate 學習率,資料型別為tensor或float。momentum 動量引數,mome...