Обучение с Keras

Введение в TensorFlow на Python

Isaiah Hull

Visiting Associate Professor of Finance, BI Norwegian Business School

Обзор обучения и оценки

  1. Загрузка и очистка данных
  2. Определение модели
  3. Обучение и валидация модели
  4. Оценка модели
Введение в TensorFlow на Python

Как обучить модель

# Import tensorflow
import tensorflow as tf

# Define a sequential model
model = tf.keras.Sequential()
# Define the hidden layer
model.add(tf.keras.layers.Dense(16, activation='relu', input_shape=(784,)))
# Define the output layer
model.add(tf.keras.layers.Dense(4, activation='softmax'))
Введение в TensorFlow на Python

Как обучить модель

# Compile model
model.compile('adam', loss='categorical_crossentropy')
# Train model
model.fit(image_features, image_labels)
Введение в TensorFlow на Python

Операция fit()

  • Обязательные аргументы
    • features
    • labels
  • Множество необязательных аргументов
    • batch_size
    • epochs
    • validation_split
Введение в TensorFlow на Python

Размер батча и эпохи

Диаграмма показывает, как набор данных делится на батчи и как их совокупность образует одну эпоху.

Введение в TensorFlow на Python

Выполнение валидации

На изображении показано разделение набора данных на обучающую и валидационную выборки.

Введение в TensorFlow на Python

Выполнение валидации

# Train model with validation split
model.fit(features, labels, epochs=10, validation_split=0.20)
Введение в TensorFlow на Python

Выполнение валидации

На изображении показаны результаты обучения и валидации за 10 эпох.

Введение в TensorFlow на Python

Изменение метрики

# Recomile the model with the accuracy metric
model.compile('adam', loss='categorical_crossentropy', metrics=['accuracy'])
# Train model with validation split
model.fit(features, labels, epochs=10, validation_split=0.20)
Введение в TensorFlow на Python

Изменение метрики

На изображении показаны результаты обучения и валидации за 10 эпох.

Введение в TensorFlow на Python

Операция evaluate()

На изображении показано разделение набора данных на обучающую, валидационную и тестовую выборки.

# Evaluate the test set
model.evaluate(test)
Введение в TensorFlow на Python

Давайте потренируемся!

Введение в TensorFlow на Python

Preparing Video For Download...