Ocena wydajności modelu
Na koniec – jak zawsze – warto ocenić wydajność najlepszego modelu i sprawdzić, jak dobrze sobie radzi. Najlepszym rozwiązaniem byłoby przeprowadzenie backtestingu, ale to złożony proces, który wykracza poza zakres tego kursu.
Zapoznaliśmy się już z wynikami R\(^2\), więc teraz przyjrzyjmy się wykresowi punktowemu porównującemu przewidywania z rzeczywistymi wartościami – z użyciem biblioteki matplotlib. Idealne przewidywania układają się wzdłuż linii przekątnej biegnącej od lewego dolnego do prawego górnego rogu.
To ćwiczenie jest częścią kursu
Uczenie maszynowe w finansach z Pythonem
Instrukcje do ćwiczenia
- Użyj najlepszej wartości parametru
max_featuresdlaRandomForestRegressor(rfr), którą znaleziono w poprzednim ćwiczeniu (była to wartość 4). - Wygeneruj przewidywania za pomocą modelu, korzystając z
train_featuresitest_features. - Utwórz wykres punktowy, porównując rzeczywiste wartości docelowe (train/test_targets) z przewidywaniami (train/test_predictions), i oznacz zbiory danych etykietami
trainoraztest.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Use the best hyperparameters from before to fit a random forest model
rfr = RandomForestRegressor(n_estimators=200, max_depth=3, max_features=____, random_state=42)
rfr.fit(train_features, train_targets)
# Make predictions with our model
train_predictions = rfr.predict(____)
test_predictions = ____
# Create a scatter plot with train and test actual vs predictions
plt.scatter(train_targets, train_predictions, label='train')
plt.scatter(____)
plt.legend()
plt.show()