Die zweite Version unserer Vision-API

Titelbild zur neuen Vision-API

Vor einigen Monaten haben wir neue Konventionen eingeführt, um die Erstellung eines Machine-Learning-Modells zu erleichtern, das handgezeichnete Wireframes interpretieren kann. Wir wollten die Mehrdeutigkeit für die Person verringern, die jedes Bild annotiert, das zum Trainieren des Machine-Learning-Modells benötigt wird.

Neuer Datensatz

Das Ergebnis ist ein Leitfaden, den wir allen Nutzern unserer API empfehlen, damit sie die Technologie optimal nutzen können.

Neuer Leitfaden für die Vision-API

Nachdem wir verstanden hatten, nach welchen Daten wir suchten, machten wir uns an die umfangreiche Aufgabe, genügend Daten zum Trainieren unseres Modells zu sammeln.

Parallel zu diesen Bemühungen mussten wir zwei wichtige Aspekte des maschinellen Lernens abwägen: Bias und Varianz. Einerseits brauchten wir Richtlinien, die den Umfang auf etwas eingrenzten, das das Modell bewältigen und erlernen konnte (dadurch verringerten wir den Bias bei der Annotation). Andererseits benötigten wir weiterhin vielfältige Bilder, gezeichnet von verschiedenen Personen, in unterschiedlichen Farben usw. (wir wollten einen heterogenen Datensatz). Neue Bilder sind jedoch verzerrt, wenn die ursprünglichen Richtlinien nicht eingehalten werden, und werden deshalb falsch vorhergesagt.

Einige Wireframes aus unserem neuen Datensatz (beachten Sie die unterschiedlichen Lichtverhältnisse und Layouts)

Ein wichtiger Aspekt beim Trainieren von Machine-Learning-Modellen ist die Repräsentativität des Datensatzes (wenn möglich, sollte jede Klasse gleichmäßig vertreten sein). Bei der Untersuchung der Annotationen in unserem Datensatz stellten wir fest, dass einige Klassen unterrepräsentiert sind. Dadurch sind sie für das Modell schwieriger zu erkennen (Tabelle, Bewertung, Liste, Textbereich, Stepper-Eingabe). Bei der Analyse untersuchten wir außerdem die Größenverteilung der einzelnen Elemente – ein entscheidendes Merkmal von Datensätzen zur Objekterkennung. Einige Elemente sind kleiner, etwa Links und Optionsfelder, und daher naturgemäß schwieriger zu erkennen. Größere Elemente wie Container oder Bilder sind dagegen leichter zu erkennen.

Größenverteilung der einzelnen Elemente unseres Datensatzes; rote und blaue Linien markieren die Schwellenwerte von 1 % bzw. 10 %

Ergebnisse

Es ist schwierig vorherzusagen, wann wir genügend Bilder für unser Modell gesammelt haben werden. Klar ist jedoch, dass sich die Qualität des Modells proportional zur Anzahl der für das Training verwendeten Bilder verbessert. Da wir die bisher gesammelten Daten für vorläufige Modelle als ausreichend betrachten, haben wir beschlossen, mit dem Training zu beginnen, bevor wir den ersten Schritt des Datenerfassungsprozesses abschließen.

Zur Bewertung unserer Modelle verwendeten wir die mittlere durchschnittliche Präzision bei einer Intersection over Union von 50 % (mAP@IOU 0.5) – weitere Informationen finden Sie hier. Mit dieser Metrik erreichte die erste Version der API eine Leistung von 40 %. Im Dezember veröffentlichten wir eine Version mit einer Genauigkeit von 55 %, bei der synthetische Daten zur Verbesserung des Modells verwendet wurden. Das mit der aktuellen Version veröffentlichte Modell erreicht im Testdatensatz 85 %. Wir vermuten jedoch, dass dieser Wert zu optimistisch ist. Deshalb stellen wir außerdem gemeinsam mit einem anderen Team einen ergänzenden Testdatensatz zusammen.

Vergleich der Vorhersagen der vorherigen (links) und der aktuellen Version (rechts)

Es liegt noch Arbeit vor uns: Das Modell hat Schwierigkeiten, Wireframes mit vielen bzw. mehreren Elementen zu erkennen. Außerdem stellen die unausgewogenen Datensätze eine zusätzliche Herausforderung dar, wenn seltene Klassen wie Schieberegler und Bewertungen verwendet werden.

Ein problematisches Wireframe mit zu vielen Elementen

Maschinelles Lernen zur Unterstützung, nicht zum Ersatz

Wie bei künstlicher Intelligenz und maschinellem Lernen häufig der Fall, entsteht letztlich eine symbiotische Beziehung zwischen den beiden Parteien, anstatt dass die Maschine den Menschen ersetzt. Ebenso erfordert diese neue Technologie vom Endanwender viel Ausprobieren, um ihr Potenzial auszuschöpfen.

Wie bei künstlicher Intelligenz und maschinellem Lernen häufig der Fall, entsteht letztlich eine symbiotische Beziehung zwischen den beiden Parteien, anstatt dass die Maschine den Menschen ersetzt. Ebenso erfordert diese neue Technologie vom Endanwender viel Ausprobieren, um ihr Potenzial auszuschöpfen.

Produkt

Ähnliche Beiträge

Kommentare

Noch keine Kommentare. Teilen Sie als Erste Ihre Gedanken mit.

Kommentar hinterlassen

Deine E-Mail-Adresse wird niemals öffentlich angezeigt.
Kommentare werden geprüft, bevor sie angezeigt werden.