Open Pasta Data
von Prof. Jens Flemming
Wozu man 23000 Fotos von Buchstabennudeln braucht und was man damit lernen kann.
Die Idee
Die Idee ist nicht mehr ganz neu, siehe Blog-Beitrag Pasta Science: Könnte man nicht mit Mitteln des Data Science, genauer: des maschinellen Lernens, herausfinden wie oft welcher Buchstabe in einer Buchstabensuppe vorkommt?
Der erste Anlauf zur Beantwortung dieser Frage wurde im Praktikum zur Veranstaltung Data Science III von Studierenden unternommen. Die Aufnahmetechnik hatte allerdings Grenzen. Insbesondere das gleichmäßige Verteilen der Nudeln auf dem blauen Hintergrund war sehr aufwändig. Zu viele Nudeln haben sich gegenseitig berührt, sodass zu wenige mit den verwendeten Methoden der Bildverarbeitung als Einzelobjekte extrahiert werden konnten.
Nichtsdestotrotz konnten erste Zählergebnisse erzielt werden. Im Wesentlichen schienen alle Buchstaben etwa gleich oft vorzukommen. Was fehlte waren zuverlässige absolute Zahlen (Wie viele Nudeln sind in der Suppe?) und genauere Werte für die Verteilung (Wirklich eine Gleichverteilung?).
Es blieb also genug Arbeit für die nächsten Jahrgänge im Studiengang Data Science übrig. Zwei Probleme galt es bis dahin für die Lehrenden zu lösen:
Erstens: Können wir die Aufnahmetechnik verbessern, sodass sich möglichst (fast) keine Nudeln berühren?
Zweitens: Können wir die Aufnahmen als feste Datensammlung zur Verfügung stellen, damit in den Lehrveranstaltungen mehr Zeit für die Auswertung bleibt?
Umsetzung
Wie so oft fanden sich mehrere scheinbar unabhängige Vorgänge irgendwie zusammen und liefertenn neue Sichten und Lösungen. Für das Reinforcement-Learning im vierten Semester (Grundlage autonomer Roboter) wurden kürzlich einige programmierbare LEGO-Sets beschafft. Aus denen müsste sich doch auch eine "Nudelmaschine" bauen lassen. Irgendein Mechanismus, der Buchstabennudeln an einer Kamera vorbeitransportiert. Gesagt, getan. Hier ein kurzes Video der "Nudelmaschine":
Nach etlichen Versuchen und Nachbesserungen konnte die Maschine 250 Gramm Nudeln in ca. vier Stunden "digitalisieren".
Ergebnis
Wesensmerkmal von LEGO-Modellen ist, dass sie früher oder später wieder zerlegt werden (Bauen macht mehr Spaß als Spielen). Deshalb wurden alle aufgenommenen Bilder als frei verfüg- und verwendbarer Datensatz im Internet veröffentlicht. So können zukünftige Studierende und der Rest der Welt die Daten zur Analyse nutzen; auch wenn die "Nudelmaschine" schon wieder zerlegt ist.
Der Datensatz ist auf der Website von Jens Flemming zu finden.
Entstanden sind Bilder von ca. 23000 Nudeln (3 Sorten zu je 250 Gramm). Veröffentlicht wurden die Rohdaten von der Kamera und daraus extrahierte Einzelbilder. Wie die Einzelbilder entstanden sind, wird nicht verraten. Das sollen Sie sich in Ihrem Data-Science-Studium selbst überlegen...
Einsatz finden die Bilder zum Beispiel als Demonstrator für das Semisupervised Learning. Dort geht es um Zeichenerkennung ohne dass vorher manuell klassifizierte Zeichen zur Verfügung stehen. Wichtigstes Tool dafür sind Clustering-Verfahren, die eigenständig Strukturen in Daten suchen und so Ordnung in große unübersichtliche Datenmengen bringen können.