Aan de slagBegin gratis

KNN-prestaties evalueren

We zagen zojuist een paar dingen bij onze KNN-scores. Zo begonnen de trainingsscores hoog en namen ze af naarmate n toenam, wat typisch is. De prestaties op de testset bereikten echter een piek bij 5, en dat gebruiken we als instelling in het uiteindelijke KNN-model.

Zoals we nu al een paar keer hebben gedaan, controleren we onze prestaties ook visueel. Dat helpt ons te zien hoe goed het model voorspelt in verschillende gebieden van de werkelijke waarden. We halen voorspellingen op uit ons knn-model met de .predict()-methode op onze geschaalde features. Daarna gebruiken we matplotlib's plt.scatter() om een spreidingsdiagram te maken van de werkelijke versus voorspelde waarden.

Deze oefening maakt deel uit van de cursus

Machine Learning voor finance in Python

Bekijk cursus

Oefeninstructies

  • Stel n_neighbors in de KNeighborsRegressor in op de best presterende waarde 5 (gevonden in de vorige oefening).
  • Haal voorspellingen op met het knn-model vanaf de scaled_train_features en scaled_test_features.
  • Maak een spreidingsdiagram van de test_targets tegenover de test_predictions en label het als test.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# 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()
Code bewerken en uitvoeren