tf.estimator.RunConfig
| Просмотреть исходный код на GitHub |
Этот класс определяет конфигурации для Estimator запуска.
tf.estimator.RunConfig(
model_dir=None, tf_random_seed=None, save_summary_steps=100,
save_checkpoints_steps=_USE_DEFAULT, save_checkpoints_secs=_USE_DEFAULT,
session_config=None, keep_checkpoint_max=5, keep_checkpoint_every_n_hours=10000,
log_step_count_steps=100, train_distribute=None, device_fn=None, protocol=None,
eval_distribute=None, experimental_distribute=None,
experimental_max_worker_delay_secs=None, session_creation_timeout_secs=7200,
checkpoint_save_graph_def=True
)
| Аргументы | |
|---|---|
model_dir |
директория, где сохраняются параметры модели, граф и т. д. Если это объект PathLike, путь будет разрешен. Если None, будет использовано значение по умолчанию, заданное оценщиком. |
tf_random_seed |
Случайное семя для инициализаторов TensorFlow. Установка этого значения обеспечивает согласованность при повторных запусках. |
save_summary_steps |
Сохранять сводки каждые столько шагов. |
save_checkpoints_steps |
Сохранять контрольные точки каждые столько шагов. Нельзя указать вместе с save_checkpoints_secs. |
save_checkpoints_secs |
Сохранять контрольные точки каждые столько секунд. Нельзя указать вместе с save_checkpoints_steps. По умолчанию 600 секунд, если и save_checkpoints_steps и save_checkpoints_secs не установлены в конструкторе. Если оба save_checkpoints_steps и save_checkpoints_secs не заданы, контрольные точки отключены. |
session_config |
ConfigProto для настройки параметров сеанса или None. |
keep_checkpoint_max |
Максимальное количество последних файлов контрольных точек для хранения. При создании новых файлов старые удаляются. Если None или 0, все файлы контрольных точек сохраняются. По умолчанию 5 (сохраняются 5 последних файлов контрольных точек). Если в оценщик передан saver, этот аргумент будет проигнорирован. |
keep_checkpoint_every_n_hours |
Количество часов между сохранением каждой контрольной точки. Значение по умолчанию 10 000 часов фактически отключает эту функцию. |
log_step_count_steps |
Частота (в глобальных шагах), с которой будут регистрироваться глобальный шаг и потеря во время обучения. Также контролирует частоту, с которой будут регистрироваться/записываться глобальные шаги/с во время обучения (и в сводки). |
train_distribute |
Необязательный экземпляр tf.distribute.Strategy. Если указано, оценщик будет распределять модель пользователя во время обучения, согласно политике, заданной этой стратегией. Рекомендуется указывать experimental_distribute.train_distribute. |
device_fn |
Функция, вызываемая для каждого Operation шага, которая принимает Operation и возвращает строку устройства. Если None, по умолчанию используется функция устройства, возвращаемая tf.train.replica_device_setter со стратегией round-robin. |
protocol |
Необязательный аргумент, определяющий протокол при запуске сервера. None означает использование grpc по умолчанию. |
eval_distribute |
Необязательный экземпляр tf.distribute.Strategy. Если указано, оценщик будет распределять модель пользователя во время оценки, согласно политике, заданной этой стратегией. Рекомендуется указывать experimental_distribute.eval_distribute. |
experimental_distribute |
Необязательный объект tf.contrib.distribute.DistributeConfig, определяющий конфигурацию, связанную с DistributionStrategy. train_distribute и eval_distribute могут быть переданы в качестве параметров RunConfig или установлены в experimental_distribute, но не оба сразу. |
experimental_max_worker_delay_secs |
Необязательное целое число, определяющее максимальное время ожидания рабочего процесса перед запуском. По умолчанию рабочие процессы запускаются с отсрочкой, с задержкой каждого рабочего процесса до 60 секунд. Это призвано уменьшить риск расхождений, которые могут возникнуть, когда множество рабочих процессов одновременно обновляют веса случайно инициализированной модели. Пользователи, которые запускают модели с предварительной загрузкой и обучают их в течение коротких периодов (несколько минут или меньше), должны рассмотреть возможность уменьшения этого значения по умолчанию, чтобы улучшить время обучения. |
session_creation_timeout_secs |
Максимальное время ожидания рабочими процессами доступности сеанса (при инициализации или при восстановлении сеанса) с MonitoredTrainingSession. По умолчанию 7200 секунд, но пользователи могут захотеть установить меньшее значение, чтобы быстрее обнаружить проблемы с переинициализацией переменных/сеанса. |
checkpoint_save_graph_def |
Сохранять GraphDef и MetaGraphDef в checkpoint_dir. GraphDef сохраняется после создания сеанса как graph.pbtxt. MetaGraphDef сохраняется для каждой контрольной точки как model.ckpt-*.meta. |
| Исключения | |
|---|---|
ValueError |
Если оба save_checkpoints_steps и save_checkpoints_secs заданы. |
| Атрибуты | |
|---|---|
checkpoint_save_graph_def |
|
cluster_spec |
|
device_fn |
Возвращает device_fn. Если device_fn не |
eval_distribute |
Необязательная tf.distribute.Strategy для оценки. |
evaluation_master |
|
experimental_max_worker_delay_secs |
|
global_id_in_cluster |
Глобальный идентификатор в кластере обучения. Все глобальные идентификаторы в кластере обучения присваиваются из возрастающей последовательности последовательных целых чисел. Первый идентификатор равен 0.
Примечание: Идентификатор задачи (поле свойства
cluster = {'chief': ['host0:2222'],
'ps': ['host1:2222', 'host2:2222'],
'worker': ['host3:2222', 'host4:2222', 'host5:2222']}
Узлы с типом задачи Глобальный идентификатор, т. е. это поле, отслеживает индекс узла среди ВСЕХ узлов в кластере. Он присваивается уникальным образом. Например, для указанного выше описания кластера глобальные идентификаторы назначаются следующим образом: task_type | task_id | global_id -------------------------------- chief | 0 | 0 worker | 0 | 1 worker | 1 | 2 worker | 2 | 3 ps | 0 | 4 ps | 1 | 5 |
| ... | |
Методы
replace
replace(
**kwargs
)
Возвращает новый экземпляр RunConfig, заменяя указанные свойства.
Допускается замена только свойств в следующем списке:
-
model_dir, -
tf_random_seed, -
save_summary_steps, -
save_checkpoints_steps, -
save_checkpoints_secs, -
session_config, -
keep_checkpoint_max, -
keep_checkpoint_every_n_hours, -
log_step_count_steps, -
train_distribute, -
device_fn, -
protocol. -
eval_distribute, -
experimental_distribute, -
experimental_max_worker_delay_secs,
Кроме того, можно установить либо save_checkpoints_steps, либо save_checkpoints_secs (не оба одновременно).
| Аргументы | |
|---|---|
**kwargs |
Имена свойств с новыми значениями. |
| Исключения | |
|---|---|
ValueError |
Если имя свойства в kwargs не существует, не допускается замена или установлены оба save_checkpoints_steps и save_checkpoints_secs. |
| Возвращает | |
|---|---|
Новый экземпляр RunConfig. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.4/api_docs/python/tf/estimator/RunConfig