Pomiar wydajności modelu
Skoro sieć neuronowa jest już wytrenowana, czas sprawdzić jej wydajność i zobaczyć, jak dobrze przewiduje nowe wartości. W przeciwieństwie do modeli sklearn, nie ma tu wbudowanej metody .score(), dlatego skorzystamy z funkcji r2_score() z modułu sklearn.metrics. Oblicza ona współczynnik R\(^2\) na podstawie argumentów (y_true, y_predicted). Na koniec ponownie narysujemy wykres prognoz względem wartości rzeczywistych. Wkrótce da to ciekawe rezultaty – gdy zaimplementujemy własną funkcję straty.
To ćwiczenie jest częścią kursu
Uczenie maszynowe w finansach z Pythonem
Instrukcje do ćwiczenia
- Uzyskaj prognozy z modelu
model_1na podstawie danych ze skalowanego zbioru testowego (scaled_test_featuresitest_targets). - Wyświetl wynik R\(^2\) na zbiorze testowym (
test_targetsitest_preds). - Narysuj wykres punktowy
test_predswzględemtest_targetsza pomocąplt.scatter().
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
from sklearn.metrics import r2_score
# Calculate R^2 score
train_preds = model_1.predict(scaled_train_features)
test_preds = model_1.predict(____)
print(r2_score(train_targets, train_preds))
print(r2_score(____, ____))
# Plot predictions vs actual
plt.scatter(train_preds, train_targets, label='train')
plt.scatter(____)
plt.legend()
plt.show()