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, будет использовано значение по умолчанию, заданное Estimator. |
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 последних файлов контрольных точек сохраняются). Если в оценщик передаётся сохранитель, этот аргумент будет проигнорирован. |
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 со стратегией циклического чередования. |
protocol | Необязательный аргумент, определяющий протокол, используемый при запуске сервера. None означает использование протокола gRPC по умолчанию. |
eval_distribute | Необязательный экземпляр tf.distribute.Strategy. Если указан, то оценщик распределит модель пользователя во время оценки в соответствии с политикой, заданной этой стратегией. Предпочтительно задавать experimental_distribute.eval_distribute. |
experimental_distribute | Необязательный объект, задающий конфигурацию, связанную со стратегией распределения. 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. MetaGraphDefs сохраняются для каждой контрольной точки как 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 |
is_chief | |
keep_checkpoint_every_n_hours | |
keep_checkpoint_max | |
log_step_count_steps | |
master | |
model_dir | |
num_ps_replicas | |
num_worker_replicas | |
protocol | Возвращает необязательное значение протокола. |
save_checkpoints_secs | |
save_checkpoints_steps | |
save_summary_steps | |
service | Возвращает определяемый платформой (в TF_CONFIG) словарь служб. |
session_config | |
session_creation_timeout_secs | |
task_id | |
task_type | |
tf_random_seed | |
train_distribute | Необязательная tf.distribute.Strategy для обучения. |
Методы
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. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/estimator/RunConfig