如果指標在給定的最大步長內沒有增加,則創建掛鉤以停止。
用法
tf.estimator.experimental.stop_if_no_increase_hook(
estimator, metric_name, max_steps_without_increase, eval_dir=None, min_steps=0,
run_every_secs=60, run_every_steps=None
)
參數
-
estimator
tf.estimator.Estimator
實例。 -
metric_name
str
,要跟蹤的指標。 "loss"、"accuracy"等 -
max_steps_without_increase
int
,在給定指標沒有增加的情況下的最大訓練步數。 -
eval_dir
如果設置,則包含帶有評估指標的摘要文件的目錄。默認情況下,將使用estimator.eval_dir()
。 -
min_steps
int
,如果全局步長小於此值,則永遠不會請求停止。默認為 0。 -
run_every_secs
如果指定,則以run_every_secs
秒的間隔調用should_stop_fn
。默認為 60 秒。必須設置這個或run_every_steps
。 -
run_every_steps
如果指定,則每run_every_steps
步驟調用should_stop_fn
。必須設置這個或run_every_secs
。
返回
-
SessionRunHook
類型的 early-stopping 鉤子,它定期檢查給定的指標是否顯示超過給定的最大訓練步數沒有增加,如果為真則啟動提前停止。
使用示例:
estimator = ...
# Hook to stop training if accuracy does not increase in over 100000 steps.
hook = early_stopping.stop_if_no_increase_hook(estimator, "accuracy", 100000)
train_spec = tf.estimator.TrainSpec(..., hooks=[hook])
tf.estimator.train_and_evaluate(estimator, train_spec, ...)
警告:當前實現支持 early-stopping 在本地模式下進行訓練和評估。在分布式模式下,可以停止訓練,但評估(這是一項單獨的工作)將無限期地等待新模型檢查點的評估,因此您將需要其他方法來檢測和停止它。分布式模式下的Early-stopping 評估需要更改train_and_evaluate
API,並將在未來的修訂版中解決。
相關用法
- Python tf.estimator.experimental.stop_if_no_decrease_hook用法及代碼示例
- Python tf.estimator.experimental.stop_if_lower_hook用法及代碼示例
- Python tf.estimator.experimental.stop_if_higher_hook用法及代碼示例
- Python tf.estimator.experimental.LinearSDCA用法及代碼示例
- Python tf.estimator.experimental.RNNClassifier用法及代碼示例
- Python tf.estimator.experimental.make_early_stopping_hook用法及代碼示例
- Python tf.estimator.experimental.InMemoryEvaluatorHook用法及代碼示例
- Python tf.estimator.experimental.RNNEstimator用法及代碼示例
- Python tf.estimator.TrainSpec用法及代碼示例
- Python tf.estimator.LogisticRegressionHead用法及代碼示例
- Python tf.estimator.MultiHead用法及代碼示例
- Python tf.estimator.PoissonRegressionHead用法及代碼示例
- Python tf.estimator.WarmStartSettings用法及代碼示例
- Python tf.estimator.RunConfig用法及代碼示例
- Python tf.estimator.MultiLabelHead用法及代碼示例
- Python tf.estimator.BaselineEstimator用法及代碼示例
- Python tf.estimator.DNNLinearCombinedEstimator用法及代碼示例
- Python tf.estimator.Estimator用法及代碼示例
- Python tf.estimator.LinearRegressor用法及代碼示例
- Python tf.estimator.LinearEstimator用法及代碼示例
注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.estimator.experimental.stop_if_no_increase_hook。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。