Кривая обучения и кривая проверки sklearn

#python #machine-learning #scikit-learn #neural-network #mnist

#python #машинное обучение #scikit-learn #нейронная сеть #mnist

Вопрос:

Я новичок в машинном обучении, пытаюсь использовать нейронную сеть для классификации набора данных MNIST

 from sklearn.neural_network import MLPClassifier
from sklearn.datasets import fetch_openml
import matplotlib.pyplot as plt
import numpy as np

X, y = fetch_openml('mnist_784', return_X_y=True)
X_train, X_test = X[:60000], X[60000:]
y_train, y_test = y[:60000], y[60000:]

mlp = MLPClassifier(
                random_state=1,
                hidden_layer_sizes = (64,),
                activation = 'relu',
                solver = 'adam',
                learning_rate_init = 1e-3,
                alpha = 0,
                n_iter_no_change = 25,
                max_iter=500,
                )

mlp.fit(X_train, y_train)

fig, ax = plt.subplots(figsize=(6,4))
ax.plot(mlp.loss_curve_)
ax.set_xlabel('Number of iterations')
ax.set_ylabel('Loss')
plt.show()
 

Это график, который я получил из этого кода.
график 1 - X_train и y_train

Я пытаюсь построить другой график с помощью X_test, y_test, чтобы построить график примерно так: график 2 - X_test и y_test

Что мне нужно сделать, чтобы получить график, подобный 2-му изображению?

Комментарии:

1. Я надеюсь, что вы сможете найти лучшее решение, но вы могли бы зацикливаться mlp.partial_fit и сохранять каждую y_test потерю.