tf.keras.callbacks.LambdaCallback
| Просмотреть исходный код на GitHub |
Обработчик для создания простых пользовательских обратных вызовов на лету.
Наследуется от: Callback
tf.keras.callbacks.LambdaCallback(
on_epoch_begin=None, on_epoch_end=None, on_batch_begin=None, on_batch_end=None,
on_train_begin=None, on_train_end=None, **kwargs
)
Этот обработчик создается с анонимными функциями, которые будут вызываться в соответствующее время. Обратите внимание, что обработчики ожидают позиционные аргументы, как:
-
on_epoch_beginиon_epoch_endожидают два позиционных аргумента:epoch,logs -
on_batch_beginиon_batch_endожидают два позиционных аргумента:batch,logs -
on_train_beginиon_train_endожидают один позиционный аргумент:logs
| Аргументы | |
|---|---|
on_epoch_begin | вызывается в начале каждой эпохи. |
on_epoch_end | вызывается в конце каждой эпохи. |
on_batch_begin | вызывается в начале каждой партии. |
on_batch_end | вызывается в конце каждой партии. |
on_train_begin | вызывается в начале обучения модели. |
on_train_end | вызывается в конце обучения модели. |
Пример:
# Print the batch number at the beginning of every batch.
batch_print_callback = LambdaCallback(
on_batch_begin=lambda batch,logs: print(batch))
# Stream the epoch loss to a file in JSON format. The file content
# is not well-formed JSON but rather has a JSON object per line.
import json
json_log = open('loss_log.json', mode='wt', buffering=1)
json_logging_callback = LambdaCallback(
on_epoch_end=lambda epoch, logs: json_log.write(
json.dumps({'epoch': epoch, 'loss': logs['loss']}) + '\n'),
on_train_end=lambda logs: json_log.close()
)
# Terminate some processes after having finished model training.
processes = ...
cleanup_callback = LambdaCallback(
on_train_end=lambda logs: [
p.terminate() for p in processes if p.is_alive()])
model.fit(...,
callbacks=[batch_print_callback,
json_logging_callback,
cleanup_callback])
Методы
set_model
set_model(
model
)
set_params
set_params(
params
)
© 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/keras/callbacks/LambdaCallback