MulaiMulai sekarang secara gratis

Overfitting dan underfitting

Menafsirkan kompleksitas model adalah cara yang sangat baik untuk mengevaluasi kinerja supervised learning. Tujuan Anda adalah menghasilkan model yang dapat menangkap hubungan antara fitur dan variabel target, sekaligus melakukan generalisasi dengan baik saat dihadapkan pada observasi baru.

Himpunan latih dan uji telah dibuat dari himpunan data churn_df dan dimuat sebagai X_train, X_test, y_train, dan y_test.

Selain itu, KNeighborsClassifier telah diimpor untuk Anda bersama numpy sebagai np.

Latihan ini adalah bagian dari kursus

Supervised Learning dengan scikit-learn

Lihat Kursus

Petunjuk latihan

  • Buat neighbors sebagai array numpy berisi nilai dari 1 hingga 12 (inklusif).
  • Instansiasi KNeighborsClassifier dengan jumlah tetangga sama dengan iterator neighbor.
  • Latih model pada data latih.
  • Hitung skor akurasi untuk himpunan latih dan himpunan uji secara terpisah menggunakan metode .score(), lalu tetapkan hasilnya ke kamus train_accuracies dan test_accuracies, masing-masing menggunakan iterator neighbor sebagai indeks.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Create neighbors
neighbors = np.arange(____, ____)
train_accuracies = {}
test_accuracies = {}

for neighbor in neighbors:
  
	# Set up a KNN Classifier
	knn = ____(____=____)
  
	# Fit the model
	knn.____(____, ____)
  
	# Compute accuracy
	train_accuracies[____] = knn.____(____, ____)
	test_accuracies[____] = knn.____(____, ____)
print(neighbors, '\n', train_accuracies, '\n', test_accuracies)
Edit dan Jalankan Kode