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

Метод evaluate класса Model

Метод evaluate применяется к обученной модели и возвращает значение потерь, а также значения метрик, заданных при компиляции. Первым параметром передаются входные данные x, вторым - целевые данные y. Третьим параметром можно передать размер батча batch_size. Четвертым - список обратных вызовов callbacks. Метод не изменяет веса модели, а только оценивает ее качество.

Синтаксис

model.evaluate(x, y, [batch_size], [callbacks])

Пример

Давайте создадим простую модель, скомпилируем ее и оценим на тестовых данных:

import tensorflow as tf tf.random.set_seed(0) model = tf.keras.Sequential([ tf.keras.layers.Dense(3, activation='relu', input_shape=(2,)), tf.keras.layers.Dense(1) ]) model.compile(optimizer='adam', loss='mse', metrics=['mae']) x = tf.constant([[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]]) y = tf.constant([[3.0], [7.0], [11.0]]) res = model.evaluate(x, y) print(res)

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

1/1 [==============================] - 0s 100ms/step - loss: 52.3546 - mae: 7.1554 [52.354644775390625, 7.155385971069336]

Пример

Давайте укажем размер батча при оценке модели:

import tensorflow as tf tf.random.set_seed(0) model = tf.keras.Sequential([ tf.keras.layers.Dense(3, activation='relu', input_shape=(2,)), tf.keras.layers.Dense(1) ]) model.compile(optimizer='adam', loss='mse', metrics=['mae']) x = tf.constant([[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]]) y = tf.constant([[3.0], [7.0], [11.0]]) res = model.evaluate(x, y, batch_size=2) print(res)

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

2/2 [==============================] - 0s 2ms/step - loss: 52.3546 - mae: 7.1554 [52.354644775390625, 7.155385971069336]

Пример

Давайте получим только значение потерь, указав параметр return_dict:

import tensorflow as tf tf.random.set_seed(0) model = tf.keras.Sequential([ tf.keras.layers.Dense(3, activation='relu', input_shape=(2,)), tf.keras.layers.Dense(1) ]) model.compile(optimizer='adam', loss='mse', metrics=['mae']) x = tf.constant([[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]]) y = tf.constant([[3.0], [7.0], [11.0]]) res = model.evaluate(x, y, return_dict=True) print(res)

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

1/1 [==============================] - 0s 100ms/step - loss: 52.3546 - mae: 7.1554 {'loss': 52.354644775390625, 'mae': 7.155385971069336}

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

  • класс Model,
    который представляет собой модель TensorFlow
  • метод compile,
    который компилирует модель
  • метод fit,
    который обучает модель на данных
  • метод predict,
    который возвращает предсказания модели
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить