tf.keras.callbacks.LambdaCallback
Обработчик для создания простых пользовательских обработчиков на лету.
Наследуется от: Callback
tf.keras.callbacks.LambdaCallback(
on_epoch_begin=None,
on_epoch_end=None,
on_train_begin=None,
on_train_end=None,
on_train_batch_begin=None,
on_train_batch_end=None,
**kwargs
)
Используется в блокнотах
| Используется в учебниках |
|---|
This callback is constructed with anonymous functions that will be called
at the appropriate time (during `Model.{fit | evaluate | predict}`).
Note that the callbacks expects positional arguments, as:
- `on_epoch_begin` and `on_epoch_end` expect two positional arguments:
`epoch`, `logs`
- `on_train_begin` and `on_train_end` expect one positional argument:
`logs`
- `on_train_batch_begin` and `on_train_batch_end` expect two positional
arguments: `batch`, `logs`
- See `Callback` class definition for the full list of functions and their
expected arguments.
Args:
on_epoch_begin: called at the beginning of every epoch.
on_epoch_end: called at the end of every epoch.
on_train_begin: called at the beginning of model training.
on_train_end: called at the end of model training.
on_train_batch_begin: called at the beginning of every train batch.
on_train_batch_end: called at the end of every train batch.
kwargs: Any function in `Callback` that you want to override by
passing `function_name=function`. For example,
`LambdaCallback(.., on_train_end=train_end_fn)`. The custom function
needs to have same arguments as the ones defined in `Callback`.
Example:
```python
# Print the batch number at the beginning of every batch.
batch_print_callback = LambdaCallback(
on_train_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']}) + '
'),
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])
```
| Атрибуты | |
|---|---|
model | |
Методы
on_batch_begin
on_batch_begin(
batch, logs=None
)
Псевдоним обратной совместимости для on_train_batch_begin.
on_batch_end
on_batch_end(
batch, logs=None
)
Псевдоним обратной совместимости для on_train_batch_end.
on_epoch_begin
on_epoch_begin(
epoch, logs=None
)
Вызывается в начале эпохи.
Подклассы должны переопределять для выполнения любых действий. Эта функция должна вызываться только в режиме TRAIN.
| Аргументы | |
|---|---|
epoch | Целое число, индекс эпохи. |
logs | Словарь. В настоящее время для этого метода данные не передаются, но это может измениться в будущем. |
on_epoch_end
on_epoch_end(
epoch, logs=None
)
Вызывается в конце эпохи.
Подклассы должны переопределять для выполнения любых действий. Эта функция должна вызываться только в режиме TRAIN.
| Аргументы | |
|---|---|
epoch | Целое число, индекс эпохи. |
logs | Словарь, результаты метрик для этой эпохи обучения и для эпохи валидации, если выполняется валидация. Ключи результатов валидации имеют префикс val_. Для эпохи обучения возвращаются значения метрик Model. Пример: {'loss': 0.2, 'accuracy': 0.7}. |
on_predict_batch_begin
on_predict_batch_begin(
batch, logs=None
)
Вызывается в начале пакета в методах predict.
Подклассы должны переопределять для выполнения любых действий.
Обратите внимание, что если аргумент steps_per_execution для compile в Model установлен в N, этот метод будет вызываться только каждые N пакеты.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. В настоящее время для этого метода данные не передаются, но это может измениться в будущем. |
on_predict_batch_end
on_predict_batch_end(
batch, logs=None
)
Вызывается в конце пакета в методах predict.
Подклассы должны переопределять для выполнения любых действий.
Обратите внимание, что если аргумент steps_per_execution для compile в Model установлен в N, этот метод будет вызываться только каждые N пакеты.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. Сводные результаты метрик до этого пакета. |
on_predict_begin
on_predict_begin(
logs=None
)
Вызывается в начале прогнозирования.
Подклассы должны переопределять для выполнения любых действий.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время для этого метода данные не передаются, но это может измениться в будущем. |
on_predict_end
on_predict_end(
logs=None
)
Вызывается в конце прогнозирования.
Подклассы должны переопределять для выполнения любых действий.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время для этого метода данные не передаются, но это может измениться в будущем. |
on_test_batch_begin
on_test_batch_begin(
batch, logs=None
)
Вызывается в начале пакета в методах evaluate.
Также вызывается в начале пакета валидации в методах fit, если предоставлены данные валидации.
Подклассы должны переопределять для выполнения любых действий.
Обратите внимание, что если аргумент steps_per_execution для compile в Model установлен в N, этот метод будет вызываться только каждые N пакеты.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. В настоящее время для этого метода данные не передаются, но это может измениться в будущем. |
on_test_batch_end
on_test_batch_end(
batch, logs=None
)
Вызывается в конце пакета в методах evaluate.
Также вызывается в конце пакета валидации в методах fit, если предоставлены данные валидации.
Подклассы должны переопределять для выполнения любых действий.
Обратите внимание, что если аргумент steps_per_execution для compile в Model установлен в N, этот метод будет вызываться только каждые N пакеты.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. Сводные результаты метрик до этого пакета. |
on_test_begin
on_test_begin(
logs=None
)
Вызывается в начале оценки или валидации.
Подклассы должны переопределять для выполнения любых действий.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время для этого метода данные не передаются, но это может измениться в будущем. |
on_test_end
on_test_end(
logs=None
)
Вызывается в конце оценки или проверки.
Подклассы должны переопределять для выполнения любых действий.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время в этот аргумент передается результат последнего вызова on_test_batch_end() для этого метода, но это может измениться в будущем. |
on_train_batch_begin
on_train_batch_begin(
batch, logs=None
)
Вызывается в начале пакетной тренировки в методах fit.
Подклассы должны переопределять для выполнения любых действий.
Обратите внимание, что если аргумент steps_per_execution для compile в Model установлен в N, этот метод будет вызываться только каждые N пакетов.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. В настоящее время для этого метода в этот аргумент не передаются данные, но это может измениться в будущем. |
on_train_batch_end
on_train_batch_end(
batch, logs=None
)
Вызывается в конце пакетной тренировки в методах fit.
Подклассы должны переопределять для выполнения любых действий.
Обратите внимание, что если аргумент steps_per_execution для compile в Model установлен в N, этот метод будет вызываться только каждые N пакетов.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. Результаты агрегированных метрик до этого пакета. |
on_train_begin
on_train_begin(
logs=None
)
Вызывается в начале тренировки.
Подклассы должны переопределять для выполнения любых действий.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время для этого метода в этот аргумент не передаются данные, но это может измениться в будущем. |
on_train_end
on_train_end(
logs=None
)
Вызывается в конце тренировки.
Подклассы должны переопределять для выполнения любых действий.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время в этот аргумент передается результат последнего вызова on_epoch_end() для этого метода, но это может измениться в будущем. |
set_model
set_model(
model
)
set_params
set_params(
params
)
© 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/api_docs/python/tf/keras/callbacks/LambdaCallback