TensorFlow 实战(二)—— tf.train(优化算法)
Training | TensorFlow
tf 下以大寫字母開頭的含義為名詞的一般表示一個類(class)
1. 優化器(optimizer)
優化器的基類(Optimizer base class)主要實現了兩個接口,一是計算損失函數的梯度,二是將梯度作用于變量。tf.train 主要提供了如下的優化函數:
tf.train.Optimizer
tf.train.GradientDescentOptimizer
tf.train.AdadeltaOpzimizer
Ada delta
tf.train.AdagradDAOptimizer
tf.train.MomentumOptimizer
tf.train.AdamOptimizer
tf.train.FtrlOptimizer
tf.train.ProximalGradientDescentOptimizer
tf.train.ProximalAdagradOptimizer
tf.train.RMSPropOptimizer
2. 梯度計算
TensorFlow 同時也提供了給定 TensorFlow 計算圖(computation graph)的導數。上節提到的優化器類(optimizer classes)會自動計算 computation graph 的導數,但用戶自定義優化器時,可以使用如下低級別的函數:
tf.gradients
tf.AggregationMethod
tf.stop_gradient
tf.hessians
2. 學習率衰減(decaying the learning rate)
tf.train.exponential_decay
# 實現的是如下的操作
decayed_lr = lr * decay_rate ^ (global_step/decay_steps)
在其 tf 下的使用為:
lr = tf.train.exponential_decay(0.1, global_step, 100, .96, staircase=True)
tf.train.inverse_time_decay
tf.train.natural_exp_decay
tf.train.piecewise_constant
tf.train.polynomial_decay
總結
以上是生活随笔為你收集整理的TensorFlow 实战(二)—— tf.train(优化算法)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信公众平台宣布增加接口IP白名单提高安
- 下一篇: 广汽菲克败走中国!广汽透露原因:美资方负