Eine Sammlung von Verkehrsschildern klassifizieren
Nachdem das autonome Fahrzeug erfolgreich selbstständig angehalten hat, ist dein Team zuversichtlich und lässt das Auto den Testkurs weiterfahren.
Der Testkurs enthält 59 weitere Verkehrsschilder, aufgeteilt in drei Typen:

Am Ende des Versuchs sollst du die Gesamtleistung des Autos bei der Erkennung dieser Schilder messen.
Das Paket class und der Datensatz signs sind bereits in deinem Workspace geladen. Ebenfalls vorhanden ist das Dataframe test_signs, das eine Menge 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
test_signsmitknn().- Setze
trainauf die Beobachtungen insigns– allerdings ohne Labels. - Verwende für das Argument
testtest_signs, ebenfalls ohne Labels. - Für das Argument
clnutzt du den bereitgestellten Vektor mit Labels.
- Setze
- Verwende
table(), um die Leistung des Klassifikators bei der Erkennung der drei Schildtypen zu untersuchen (die Konfusionsmatrix).- Erzeuge den Vektor
signs_actual, indem du die Labels austest_signsextrahierst. - Übergib den Vektor der Vorhersagen und den Vektor der tatsächlichen Schilder an
table(), um sie zu kreuztabellieren.
- Erzeuge den Vektor
- Berechne die Gesamtgenauigkeit des kNN-Lerners mit der Funktion
mean().
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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(___ == ___)