Evaluasi kinerja KNN
Kita baru saja melihat beberapa hal pada skor KNN. Pertama, skor pelatihan mulai tinggi dan menurun seiring meningkatnya n, yang merupakan pola umum. Kinerja himpunan uji mencapai puncak pada 5, dan kita akan menggunakan nilai tersebut sebagai pengaturan pada model KNN final.
Seperti yang telah kita lakukan beberapa kali, kita akan memeriksa kinerja secara visual. Ini membantu kita melihat seberapa baik model memprediksi pada berbagai rentang nilai aktual. Kita akan mendapatkan prediksi dari model knn menggunakan metode .predict() pada fitur yang telah diskalakan. Lalu kita akan menggunakan plt.scatter() dari matplotlib untuk membuat plot sebar nilai aktual versus nilai prediksi.
Latihan ini merupakan bagian dari kursus
Machine Learning untuk Keuangan dengan Python
Instruksi latihan
- Atur
n_neighborspadaKNeighborsRegressorke nilai dengan kinerja terbaik, yaitu 5 (ditemukan pada latihan sebelumnya). - Dapatkan prediksi menggunakan model
knndariscaled_train_featuresdanscaled_test_features. - Buat plot sebar antara
test_targetsdantest_predictionsdan beri labeltest.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# 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()