Emoji zeichnen
Mal eins von diesen Emojis, und die Seite rät, was es ist. Mehrere Striche sind okay, und die Farben helfen beim Raten mit (grün und braun klingt eher nach Tanne). Du kannst direkt auf die Fläche malen oder, wie bei so einer alten Zeichentafel, an den zwei Knöpfen drehen. Wenn du fertig bist, drück auf „Raten!“ (oder Enter). Schütteln löscht alles.
Emoji-o-mat
Hier malen, oder an den Knöpfen drehen
Emoji auswählen, malen, speichern. Deine Vorlagen werden sofort mitbenutzt und bleiben in diesem Browser. Exportier sie und schick sie mir, dann bau ich sie fest ein.
Over- und Underfitting, an diesem Beispiel
Für diese Seite hab ich rund 110 Emojis selbst gezeichnet, bewusst locker. Die Frage war: Wie viele davon soll der Erkenner als Vorlage benutzen, ohne dass er am Ende nur noch meinen Stil auswendig kann?
Underfitting heißt, dass das Modell zu einfach ist oder zu wenige passende Beispiele kennt und deshalb schon grundsätzlich danebenliegt. Hier waren das die generierten, sehr ordentlichen Vorlagen allein, mit denen meine lockeren Zeichnungen nur zu 56 % erkannt wurden.
Overfitting ist das Gegenteil. Das Modell lernt die Trainingsbeispiele auswendig statt des Musters dahinter, sodass auf den Trainingsdaten alles perfekt aussieht, bei neuen Daten aber einbricht. Hier wurden nur mit meinen Vorlagen meine Zeichnungen zu 100 % erkannt, fremde Zeichnungen aber nur noch zu 71 %.
Getestet hab ich das mit 5-facher Kreuzvalidierung. Dabei wird ein Teil meiner Zeichnungen zur Vorlage, und der Rest muss erkannt werden, ohne dass der Erkenner ihn kennt. Mit 8 eigenen Vorlagen pro Emoji steigt die Trefferquote auf ungesehenen Zeichnungen von 56 auf 91 %, und fremde Zeichnungen bleiben bei 98 %. Deshalb nutzt die Seite beides zusammen. Ehrlicherweise sind die „fremden“ Zeichnungen simuliert, echte andere Menschen wären der bessere Test.
Was steckt dahinter?
Hier läuft kein neuronales Netz, sondern der $P-Recognizer von Vatavu, Anthony und Wobbrock (2012), ein Klassiker aus der HCI-Forschung für schnelle Prototypen. Deine Zeichnung wird auf 64 Punkte heruntergerechnet, auf eine Einheitsgröße skaliert und dann als Punktwolke mit allen Vorlagen verglichen: Für jeden Punkt wird der nächste freie Punkt der Vorlage gesucht, und die Summe der Abstände entscheidet. Weil nur die Wolke zählt, ist egal, in welcher Reihenfolge und Richtung du die Striche malst. Der Nachteil ist, dass er nur kennt, was in den Vorlagen steckt. Für hunderte Kategorien bräuchte man ein trainiertes Modell, zum Beispiel auf Googles Quick-Draw-Datensatz. Das steht schon auf der Roadmap. Zusätzlich zur Form schaut die Seite auf die Farben: Jedes Emoji hat typische Farben, und wie gut deine Farben dazu passen, geht als zweiter Hinweis mit in die Wertung ein, ähnlich wie ein Vorwissen in der Bayes-Statistik. Die Form bleibt aber der Hauptfaktor.