Alles, was unter idealen „Laborbedingungen“ entwickelt und getestet wird, kann in realen Umgebungen an Leistungsfähigkeit verlieren. Perfekte Bedingungen im Windkanal könnten eine Designerin glauben lassen, sie habe das beste Formel-1-Auto der Welt konstruiert. Doch an einem windigen Apriltag an der portugiesischen Küste können die Testmodelle buchstäblich aus dem Fenster geweht werden.
Gleiches gilt für Videoanalysen – weshalb Tests in echten Nutzerumgebungen entscheidend sind, um sicherzustellen, dass maschinelle Lernalgorithmen für bestimmte Anwendungsfälle und Szenarien effektiv funktionieren.
Vor dem Test kommt das Training
Bevor ein Algorithmus in der realen Welt getestet wird, muss er entwickelt und trainiert werden – etwa für die Objekterkennung und -klassifikation in Videoanalysen.
Für die Entwicklung einer Analyseanwendung auf Basis von Deep Learning oder maschinellem Lernen müssen große Datenmengen gesammelt werden. Im Bereich Videoanalyse bestehen diese typischerweise aus Bildern und Videoclips von Personen, Fahrzeugen oder anderen relevanten Objekten. Aufgrund der Vielfalt dieser Objekte können die benötigten Datensätze enorm groß sein.
Damit Maschinen oder Computer die Daten erkennen können, ist eine Datenannotation erforderlich, bei der relevante Objekte kategorisiert und markiert werden. Die annotierten Daten müssen eine ausreichend große Vielfalt an Beispielen abdecken, die für den Kontext der Anwendung relevant sind. Leider ist die Annotation meist ein manueller und arbeitsintensiver Prozess.
Das algorithmische Modell wird mit annotierten Daten gespeist und durch ein Trainingsframework iterativ angepasst und verbessert, bis die gewünschte Qualität erreicht ist. Anders gesagt: Das Modell wird darauf optimiert, die definierte Aufgabe zu lösen.
Trainingsmethoden im maschinellen Lernen
Das Training kann auf drei Hauptarten erfolgen:
- Überwachtes Lernen: Das Modell lernt, genaue Vorhersagen zu treffen
- Unüberwachtes Lernen: Das Modell lernt, Gruppen zu erkennen
- Bestärkendes Lernen: Das Modell lernt aus Fehlern
Überwachtes Lernen ist heute die gängigste Methode und lässt sich als „Lernen durch Beispiele“ beschreiben. Die Trainingsdaten sind klar annotiert, das heißt, die Eingabedaten sind bereits mit dem gewünschten Ergebnis verknüpft. Diese Methode erfordert sehr große Mengen annotierter Daten, und die Leistung des trainierten Algorithmus hängt direkt von deren Qualität ab.
Entscheidend ist, dass der Datensatz alle möglichen Eingaben aus einer realen Einsatzsituation abbildet. Für Objektdetektoren bedeutet das: Der Algorithmus muss mit einer Vielzahl von Bildern trainiert werden – mit unterschiedlichen Objektvarianten, Ausrichtungen, Größen, Lichtverhältnissen, Hintergründen und Ablenkungen. Nur wenn die Trainingsdaten repräsentativ für den geplanten Einsatz sind, kann die Anwendung später genaue Vorhersagen treffen.
Unüberwachtes Lernen analysiert und gruppiert nicht annotierte Datensätze. Diese Methode ist in der Branche weniger verbreitet, da sie viel Kalibrierung und Tests erfordert und die Qualität schwer vorhersehbar ist. Die Datensätze müssen zwar relevant sein, aber nicht eindeutig markiert.
Die manuelle Annotation entfällt, doch die Anzahl der benötigten Bilder oder Videos steigt um ein Vielfaches. Während der Trainingsphase erkennt das Modell gemeinsame Merkmale in den Datensätzen, unterstützt durch das Framework. In der Einsatzphase kann es Daten nach Mustern gruppieren und Abweichungen erkennen, die in keine der gelernten Gruppen passen.
Bestärkendes Lernen findet Anwendung in Bereichen wie Robotik, Automatisierung und Strategieplanung, ist aber aufgrund des hohen Feedbackbedarfs derzeit nur begrenzt nutzbar. Es geht darum, durch geeignete Entscheidungen eine Belohnung zu maximieren – je besser die Wahl, desto höher die Belohnung. Das Modell wird nicht mit Daten/Label-Paaren trainiert, sondern durch Interaktion mit der Umgebung und Messung der Belohnung optimiert. Ziel ist es, eine Handlungsstrategie zu erlernen, die die Belohnung maximiert.
Tests vor dem Einsatz – und in der realen Welt
Nach dem Training muss das Modell gründlich getestet werden – meist durch eine Kombination aus automatisierten Tests und umfangreichen Feldversuchen. Im automatisierten Teil wird die Anwendung mit neuen, bisher unbekannten Datensätzen geprüft. Sind die Ergebnisse nicht wie erwartet, beginnt der Prozess von vorn: Neue Trainingsdaten werden gesammelt, annotiert und das Modell erneut trainiert.
Nach Erreichen der gewünschten Qualität beginnt der Praxistest. Dabei wird die Anwendung echten Szenarien ausgesetzt. Umfang und Variation hängen vom Einsatzbereich ab: Je enger der Fokus, desto weniger Varianten müssen getestet werden; je breiter, desto mehr Tests sind nötig. Die Ergebnisse werden erneut verglichen und bewertet – und auch hier kann der Prozess neu starten, wenn die Resultate nicht stimmen. Alternativ können Bedingungen definiert werden, unter denen die Anwendung nur eingeschränkt empfohlen wird.
Eine Anwendung realen Szenarien auszusetzen, ist jedoch nicht dasselbe wie sie tatsächlich einzusetzen. Der Einsatz – auch Inferenz oder Vorhersage genannt – ist der Prozess, bei dem ein trainiertes Modell auf einem System ausgeführt wird, das reale Szenen verarbeitet. Dabei zeigt sich, ob der Algorithmus das Gelernte nutzt, um das gewünschte Ergebnis zu liefern. Erst in dieser Phase – wenn die „sauberen“ Entwicklungsdaten durch echte, oft qualitativ abweichende Daten ersetzt werden – zeigt sich, ob der Algorithmus für seinen Zweck geeignet ist.
Tests von Analyseanwendungen: oft unterschätzt
Vielleicht liegt es an der Vorstellung von immer „intelligenteren“ Prozessoren und Analysefunktionen, dass viele glauben, die Anwendung funktioniere sofort perfekt. Doch das ist nicht der Fall. Tests in der realen Welt sind entscheidend – und sollten in die Gesamtkosten eingeplant werden.
Videoanalyse wird weiter Fortschritte machen, präziser und effektiver werden – doch sie wird oft unter idealen Bedingungen entwickelt. Die reale, unperfekte Welt kann jeden Algorithmus herausfordern, und Tests unter diesen Bedingungen sind unerlässlich.
Unvollkommenheiten entstehen nicht automatisch durch die Anwendung selbst – oft sind sie das Ergebnis falscher Erwartungen. Tests helfen also nicht nur, Schwächen zu erkennen, sondern auch, die allgemeinen Fähigkeiten besser zu verstehen. Das wiederum hilft bei der optimalen Installation des Detektors (Kamera) und kann sogar zu Anpassungen der Szene führen (z. B. Beleuchtung).