РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
367 of 824 menu

Метод on_test_begin класса Callback

Метод on_test_begin класса Callback вызывается в начале процесса тестирования модели. Он позволяет выполнить произвольные действия перед началом оценки модели на тестовых данных. Метод принимает один параметр - logs, который представляет собой словарь с информацией о текущем состоянии тестирования. По умолчанию метод не выполняет никаких действий, но его можно переопределить в собственном классе колбэка.

Синтаксис

class MyCallback(tf.keras.callbacks.Callback): def on_test_begin(self, logs=None): # логика метода

Пример

Давайте создадим простой колбэк, который выводит сообщение в начале тестирования модели:

import tensorflow as tf tf.random.set_seed(0) class TestBeginCallback(tf.keras.callbacks.Callback): def on_test_begin(self, logs=None): print("Testing started") model = tf.keras.Sequential([ tf.keras.layers.Dense(1, input_shape=(1,)) ]) model.compile(optimizer='sgd', loss='mse') x = tf.constant([[1.0], [2.0], [3.0], [4.0]]) y = tf.constant([[2.0], [4.0], [6.0], [8.0]]) callback = TestBeginCallback() model.evaluate(x, y, callbacks=[callback], verbose=0)

Результат выполнения кода:

"Testing started"

Пример

Давайте создадим колбэк, который сохраняет время начала тестирования в атрибут:

import tensorflow as tf import time tf.random.set_seed(0) class TimeTestCallback(tf.keras.callbacks.Callback): def on_test_begin(self, logs=None): self.test_start_time = time.time() print("Test start time saved") def on_test_end(self, logs=None): elapsed = time.time() - self.test_start_time print(f"Testing took {elapsed:.4f} seconds") model = tf.keras.Sequential([ tf.keras.layers.Dense(1, input_shape=(1,)) ]) model.compile(optimizer='sgd', loss='mse') x = tf.constant([[1.0], [2.0], [3.0], [4.0]]) y = tf.constant([[2.0], [4.0], [6.0], [8.0]]) callback = TimeTestCallback() model.evaluate(x, y, callbacks=[callback], verbose=0)

Результат выполнения кода:

"Test start time saved" "Testing took 0.0123 seconds"

Смотрите также

  • класс Callback,
    который представляет базовый класс для создания колбэков
  • метод on_test_end,
    который вызывается в конце тестирования модели
  • метод on_train_begin,
    который вызывается в начале обучения модели
  • метод on_predict_begin,
    который вызывается в начале предсказания модели
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить