Vyhodnocení výkonu KNN
Právě jsme si všimli několika věcí ohledně skóre KNN. Trénovací skóre začínalo vysoko a s rostoucím n klesalo, což je typické chování. Výkon na testovací sadě dosáhl vrcholu při hodnotě 5 – tu použijeme jako nastavení v konečném KNN modelu.
Jako už několikrát předtím, zkontrolujeme výkon vizuálně. Díky tomu uvidíme, jak dobře model předpovídá v různých oblastech skutečných hodnot. Předpovědi z modelu knn získáme pomocí metody .predict() aplikované na škálované příznaky. Pak použijeme plt.scatter() z knihovny matplotlib a vytvoříme bodový graf skutečných hodnot oproti předpovězeným.
Toto cvičení je součástí kurzu
Machine Learning for Finance in Python
Pokyny k cvičení
- Nastav
n_neighborsvKNeighborsRegressorna nejlepší hodnotu 5 (zjištěnou v předchozím cvičení). - Získej předpovědi pomocí modelu
knnzscaled_train_featuresascaled_test_features. - Vytvoř bodový graf
test_targetsoprotitest_predictionsa označ ho jakotest.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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()