Visualisierung ihres Datensatzes
- GestureRecognition.visualization.evaluate_classifier()
TODO: Evaluation deines Klassifikators
Ziel:
Implementiere eine sinnvolle Auswertung deines Modells auf Testdaten.
Warum ist das wichtig?
Du brauchst objektive Metriken für die Qualität deines Modells
Training allein reicht nicht, entscheidend ist die Generalisierung
Anforderungen / Ideen:
Lade ein trainiertes Modell
Lade Testdaten (getrennt vom Training!)
Berechne Vorhersagen
Vergleiche Vorhersagen mit Ground Truth
Metriken:
Klassifikationsgenauigkeit (Accuracy)
Confusion Matrix
Tipp
- Eine Confusion Matrix zeigt dir:
Welche Klassen gut erkannt werden
Wo dein Modell Fehler macht
Warnung
Testdaten dürfen nicht aus dem Training stammen!
Interpretation:
Du solltest erklären können: - Welche Klassen gut funktionieren - Welche Klassen verwechselt werden - Warum das passieren könnte
Bemerkung
- Schlechte Performance liegt oft an:
schlechten Trainingsdaten
zu wenigen Beispielen
ungeeigneten Features
Erweiterung (optional):
Weitere Metriken (Precision, Recall, F1)
Vergleich verschiedener Modelle
- GestureRecognition.visualization.replay_recordings()
TODO: Exploration und Replay der aufgenommenen Rohdaten
Ziel:
Ermögliche es, aufgenommene Sequenzen erneut abzuspielen und qualitativ zu überprüfen.
Warum ist das wichtig?
Du kannst überprüfen, ob deine Aufnahmen korrekt sind
Fehler in der Datenerfassung werden früh sichtbar
Du entwickelst ein besseres Verständnis für deine Daten
Anforderungen / Ideen:
Lade gespeicherte Aufnahmen
Spiele diese erneut ab (z. B. über SignalHub / Replay-Modus)
Iteriere über verschiedene Labels und Beispiele
Tipp
- Besonders hilfreich:
Vergleiche mehrere Beispiele derselben Klasse
Suche nach inkonsistenten Bewegungen
Warnung
Schlechte oder inkonsistente Aufnahmen führen fast immer zu schlechten Modellen. Überprüfe deine Daten frühzeitig!
Abgabe:
Du solltest zeigen können, wie deine Daten aussehen (Replay)
- Du solltest erklären können:
Welche Beispiele gut sind
Welche problematisch sind
Erweiterung (optional):
Automatisches Filtern schlechter Sequenzen
Kombination mit Visualisierung
- GestureRecognition.visualization.visualize_dataset()
TODO: Visualisierung des eigenen Datensatzes
Ziel:
Entwickle eine Möglichkeit, deinen aufgenommenen Datensatz visuell zu inspizieren und zu verstehen.
Warum ist das wichtig?
Du musst nachvollziehen können, was dein Modell eigentlich „sieht“
Fehler im Datensatz lassen sich visuell oft sofort erkennen
Qualität der Daten ist entscheidend für die Modellperformance
Anforderungen / Ideen:
Lade deinen Trainingsdatensatz
Visualisiere mehrere Sequenzen pro Klasse
- Stelle sicher, dass:
unterschiedliche Gesten klar unterscheidbar sind
Sequenzen sinnvoll aussehen (keine Ausreißer, keine leeren Daten)
Tipp
- Ein einfacher Ansatz:
Plotte Trajektorien (z. B. x/y-Koordinaten)
Zeige mehrere Beispiele pro Klasse übereinander
Bemerkung
- Du kannst selbst entscheiden:
Wie viele Sequenzen du anzeigst
Welche Features du visualisierst
Ob du interaktive Elemente einbaust
Tipp
Interaktivität (z. B. Klick auf eine Sequenz) kann hilfreich sein, um einzelne Beispiele genauer zu untersuchen.
Abgabe:
Du musst in der Lage sein, deinen Datensatz visuell zu präsentieren
- Du solltest erklären können:
Wie unterscheiden sich die Klassen?
Gibt es problematische Beispiele?
Erweiterung (optional):
Mittelwerte oder typische Sequenzen pro Klasse darstellen
Ausreißer automatisch erkennen