Подготовка участка, проверка и тестирование на одном участке - PullRequest
0 голосов
/ 19 февраля 2020

Вот как я сегментировал данные

(X, y), (X_test, y_test) = mnist.load_data()
X_train, X_val, y_train, y_val = train_test_split(X, 
                                                  y, 
                                                  test_size=0.1, 
                                                  random_state=1)

Приведенный ниже код отображает X_train и X_val, я бы хотел добавить X_test для графика

history = model.fit(
    x= X_train,
    y= y_train,
    epochs = 10,
    validation_data = (X_val, y_val),
    batch_size = 128
)

from matplotlib import pyplot as plt


plt.plot(history.history['loss'])
plt.plot(history.history['val_loss'])
plt.title('model loss')
plt.ylabel('loss')
plt.xlabel('epoch')
plt.legend(['train', 'val'], loc='upper left')
plt.show()

Можно ли построить график test_loss поверх этого, чтобы получить обзор всех трех на одном участке?

Нет history.history['test_loss'].

enter image description here

1 Ответ

1 голос
/ 19 февраля 2020

Вы еще не рассчитали test_loss. Сначала вам нужно спрогнозировать некоторые метки с помощью X_test, а затем рассчитать потери на основе прогнозируемых значений и y_test. В качестве альтернативы вы можете использовать оценку, чтобы сделать это напрямую:

test_loss = model.evaluate(X_test, y_test)

Вы не можете построить их вместе, так как test_loss - это одно значение, которое вычисляется один раз в конце обучения, а не для каждой эпохи, как проверка.

Тем не менее, вы не должны использовать X_test и y_test при обучении, так как вы будете тренироваться на всех доступных данных, чтобы вы больше не могли тестировать.

X_test и y_test должны использоваться только в конце все шаги для проверки работоспособности модели.

Данные проверки служат основой для «данных теста» во время обучения. После того, как вы выполнили все обучение и оптимизацию, вы можете затем переобучить сеть на комбинированном наборе данных проверки рекламы поезда и использовать полученную сеть, чтобы проверить ее эффективность на наборе тестовых данных (X_test, y_test)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...