1. 程式人生 > >TensorFlow Training 優化函數

TensorFlow Training 優化函數

ner dao erro repl ops board UNC orf 計算

tf.train 提供了一組幫助訓練模型的類和函數。

優化器

優化器基類提供了計算漸變的方法,並將漸變應用於變量。子類的集合實現了經典的優化算法,如 GradientDescent和Adagrad。

您永遠不會實例化優化器類本身,而是實例化其中一個子類。

  • tf.train.Optimizer
  • tf.train.GradientDescentOptimizer
  • tf.train.AdadeltaOptimizer
  • tf.train.AdagradOptimizer
  • tf.train.AdagradDAOptimizer
  • tf.train.MomentumOptimizer
  • tf.train.AdamOptimizer
  • tf.train.FtrlOptimizer
  • tf.train.ProximalGradientDescentOptimizer
  • tf.train.ProximalAdagradOptimizer
  • tf.train.RMSPropOptimizer

梯度計算

TensorFlow 提供了計算給定 TensorFlow 計算圖的導數的函數,並將運算添加到圖中。優化器類自動在您的關系圖上計算派生,但是新的優化或專家用戶的創建者可以調用下面的低級函數。

  • tf.gradients
  • tf.AggregationMethod
  • tf.stop_gradient
  • tf.hessians

梯度剪輯

TensorFlow 提供了幾種操作,您可以使用它們為您的圖形添加剪切功能。您可以使用這些功能執行一般的數據剪輯,但它們對於處理已推翻或消失的漸變特別有用。

  • tf.clip_by_value
  • tf.clip_by_norm
  • tf.clip_by_average_norm
  • tf.clip_by_global_norm
  • tf.global_norm

降低學習率

  • tf.train.exponential_decay
  • tf.train.inverse_time_decay
  • tf.train.natural_exp_decay
  • tf.train.piecewise_constant
  • tf.train.polynomial_decay

移動平均線

一些訓練算法,例如 GradientDescent 和動量,通常會在優化過程中保持變量的移動平均值而受益。使用移動平均值進行評估通常會顯著改善結果。

  • tf.train.ExponentialMovingAverage

協調員和 QueueRunner

有關如何使用線程和隊列的操作,請參見線程和隊列。有關隊列 API 的文檔,請參見隊列。

  • tf.train.Coordinator
  • tf.train.QueueRunner
  • tf.train.LooperThread
  • tf.train.add_queue_runner
  • tf.train.start_queue_runners

分布式執行

分布式執行
有關如何配置分布式 TensorFlow 程序的詳細信息,請參閱分布式 TensorFlow。

  • tf.train.Server
  • tf.train.Supervisor
  • tf.train.SessionManager
  • tf.train.ClusterSpec
  • tf.train.replica_device_setter
  • tf.train.MonitoredTrainingSession
  • tf.train.MonitoredSession
  • tf.train.SingularMonitoredSession
  • tf.train.Scaffold
  • tf.train.SessionCreator
  • tf.train.ChiefSessionCreator
  • tf.train.WorkerSessionCreator

從事件文件中讀取摘要

有關摘要、事件文件和 TensorBoard 中的可視化的概述,請參見摘要和 TensorBoard。

  • tf.train.summary_iterator

Training Hooks

Hooks 是在模型的訓練/評估過程中運行的工具:

  • tf.train.SessionRunHook
  • tf.train.SessionRunArgs
  • tf.train.SessionRunContext
  • tf.train.SessionRunValues
  • tf.train.LoggingTensorHook
  • tf.train.StopAtStepHook
  • tf.train.CheckpointSaverHook
  • tf.train.NewCheckpointReader
  • tf.train.StepCounterHook
  • tf.train.NanLossDuringTrainingError
  • tf.train.NanTensorHook
  • tf.train.SummarySaverHook
  • tf.train.GlobalStepWaiterHook
  • tf.train.FinalOpsHook
  • tf.train.FeedFnHook

Training 工具

    • tf.train.global_step
    • tf.train.basic_train_loop
    • tf.train.get_global_step
    • tf.train.assert_global_step
    • tf.train.write_graph

TensorFlow Training 優化函數