Klassifizierung einer Sammlung von Straßenschildern
Nachdem das autonome Fahrzeug erfolgreich von selbst angehalten hat, ist dein Team zuversichtlich, dass es die Teststrecke fortsetzen kann.
Die Teststrecke umfasst 59 zusätzliche Verkehrszeichen, die in drei Typen unterteilt sind:
Am Ende des Versuchs wirst du gebeten, die Gesamtleistung des Autos beim Erkennen dieser Zeichen zu bewerten.
Das Paket class
und das Dataset signs
sind bereits in deinem Arbeitsbereich geladen. Das Gleiche gilt für den Datenrahmen test_signs
, der eine Reihe von Beobachtungen enthält, mit denen du dein Modell testen wirst.
Diese Übung ist Teil des Kurses
Überwachtes Lernen in R: Klassifikation
Anleitung zur Übung
Klassifiziere die Daten von
test_signs
mitknn()
.Setze
train
gleich den Beobachtungen insigns
ohne Labels.Verwende
test_signs
für das Argumenttest
, wiederum ohne Bezeichnungen.Für das Argument
cl
verwendest du den Vektor der Labels, der dir zur Verfügung gestellt wird.
Nutze
table()
, um die Leistung des Klassifikators bei der Erkennung der drei Zeichentypen zu untersuchen (die Konfusionsmatrix).Erstelle den Vektor
signs_actual
, indem du die Labels austest_signs
extrahierst.Gib den Vektor der Vorhersagen und den Vektor der tatsächlichen Vorzeichen an
table()
weiter, um sie miteinander zu vergleichen.
Berechne die Gesamtgenauigkeit des kNN-Learners mithilfe der Funktion
mean()
.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Use kNN to identify the test road signs
sign_types <- signs$sign_type
signs_pred <- knn(train = ___[-1], test = ___[-1], cl = ___)
# Create a confusion matrix of the predicted versus actual values
signs_actual <- ___
table(___, ___)
# Compute the accuracy
mean(___ == ___)