Erste SchritteKostenlos loslegen

Überanpassung und Unteranpassung

Die Interpretation der Modellkomplexität ist eine gute Möglichkeit, die Leistung des überwachten Lernens zu bewerten. Dein Ziel ist es, ein Modell zu erstellen, das die Beziehung zwischen den Merkmalen und der Zielvariablen interpretieren kann und auch bei neuen Beobachtungen gut verallgemeinert.

Die Trainings- und Testdatensätze wurden aus dem Datensatz churn_df erstellt und als X_train, X_test, y_train und y_test vorgeladen.

Außerdem wurde KNeighborsClassifier zusammen mit numpy als np für dich importiert.

Diese Übung ist Teil des Kurses

Überwachtes Lernen mit scikit-learn

Kurs anzeigen

Anleitung zur Übung

  • Erstelle neighbors als ein numpy-Array mit Werten von 1 bis einschließlich 12.
  • Instanziiere einen KNeighborsClassifier mit der Anzahl der Nachbarn gleich dem neighbor-Iterator.
  • Passe das Modell an die Trainingsdaten an.
  • Berechne separat die Korrektklassifikationsraten für die Trainingsmenge und die Testmenge mit der Methode .score() und weise die Ergebnisse den Dictionarys train_accuracies bzw. test_accuracies zu und nutze dabei den neighbor-Iterator als Index.

Interaktive Übung zum Anfassen

Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.

# 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)
Bearbeiten und Ausführen von Code