KNN-Leistung bewerten
Wir haben uns gerade ein paar Dinge zu unseren KNN-Scores angeschaut. Zum einen starteten die Trainingsscores hoch und nahmen mit steigendem n ab – das ist typisch. Die Test-Performance erreichte jedoch bei 5 ein Maximum, und diesen Wert verwenden wir als Einstellung im finalen KNN-Modell.
Wie wir es jetzt schon ein paarmal gemacht haben, prüfen wir unsere Performance visuell. So sehen wir, wie gut das Modell in verschiedenen Bereichen der tatsächlichen Werte vorhersagt. Wir holen Vorhersagen aus unserem knn-Modell mit der Methode .predict() auf unseren skalierten Features. Anschließend verwenden wir matplotlib mit plt.scatter(), um ein Streudiagramm der tatsächlichen gegenüber den vorhergesagten Werten zu erstellen.
Diese Übung ist Teil des Kurses
<Kurs>Maschinelles Lernen für Finanzen in Python</Kurs>Übungsanweisungen
- Setze
n_neighborsimKNeighborsRegressorauf den bestleistenden Wert 5 (aus der vorherigen Übung). - Erzeuge Vorhersagen mit dem
knn-Modell aus denscaled_train_featuresundscaled_test_features. - Erstelle ein Streudiagramm der
test_targetsgegenüber dentest_predictionsund beschrifte es mittest.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Create the model with the best-performing n_neighbors of 5
knn = KNeighborsRegressor(____)
# Fit the model
knn.fit(scaled_train_features, train_targets)
# Get predictions for train and test sets
train_predictions = ____
test_predictions = ____
# Plot the actual vs predicted values
plt.scatter(train_predictions, train_targets, label='train')
plt.scatter(____)
plt.legend()
plt.show()