Quellen
Papers & Quellen, kommentiert
Diese Liste ist keine Sammlung von Links, sondern eine Auswahl mit Begründung. Zu jedem Eintrag steht, was die Arbeit beiträgt und an welcher Stelle sie in DrawLa tatsächlich wirkt — von der Modellarchitektur über die Trainingsdetails bis zum Deployment.
Skizzen als Sequenz
-
A Neural Representation of Sketch Drawings
David Ha und Douglas Eck, 2017. Sketch-RNN modelliert Zeichnungen als Vektorsequenzen: Ein Encoder-Decoder mit LSTM sagt nicht einen Punkt vorher, sondern eine Wahrscheinlichkeitsverteilung über den nächsten Stiftversatz, kombiniert mit drei Stiftzuständen (zeichnen, absetzen, Ende). Dadurch kann das Modell Skizzen erzeugen, fortsetzen und zwischen ihnen interpolieren.
Bezug zu DrawLa: die Gegenposition zur hier gewählten Architektur. Warum wir trotzdem beim Bild geblieben sind, steht im Vergleich RNN gegen CNN.
Datengrundlage
-
The Quick, Draw! Dataset
Google Creative Lab. Über 50 Millionen Zeichnungen in 345 Kategorien, veröffentlicht unter CC BY 4.0. Die Dokumentation beschreibt die vier Formate — roh mit Zeitstempeln, vereinfacht, binär und als fertige 28 × 28-Bitmaps — sowie die Metadaten je Zeichnung.
Bezug: DrawLa nutzt das vereinfachte Strichformat mit 5 000 Zeichnungen je Kategorie und rastert selbst. Die Eigenheiten des Satzes erklärt der Datensatz-Artikel.
-
Quick, Draw! — das Originalspiel
Der Kontext, in dem die Daten entstanden sind. Wichtig zu wissen: Eine Runde endet, sobald Googles Modell den Begriff errät. Der Datensatz enthält deshalb überwiegend gerade eben erkennbare Zeichnungen — eine Verzerrung, die jedes darauf trainierte Modell erbt.
-
QuickDraw Component & API
Archiviertes Repository des Google Creative Lab: eine Web Component, die einzelne Doodles per API lädt und auf ein Canvas zeichnet oder animiert. Kein Trainingscode, sondern ein Abspielwerkzeug.
Bezug: Einordnung unter Google QuickDraw auf GitHub.
Bausteine der Architektur
-
Deep Residual Learning for Image Recognition
He, Zhang, Ren und Sun, 2015. Die Kernidee ist schlicht: Statt eine Abbildung direkt zu lernen, lernt eine Schicht nur die Abweichung von der Identität. Der Shortcut daneben lässt das Signal ungehindert passieren. Erst das machte sehr tiefe Netze trainierbar.
Bezug: Das Modell in DrawLa besteht aus vier Stufen zu je zwei Residual-Blöcken. Auch bei den hier verwendeten acht Blöcken stabilisieren die Shortcuts das Training spürbar.
-
Batch Normalization
Ioffe und Szegedy, 2015. Normalisiert die Eingaben jeder Schicht über den Mini-Batch und erlaubt dadurch deutlich höhere Lernraten. Die ursprüngliche Erklärung über „internal covariate shift" gilt inzwischen als überholt — spätere Arbeiten führen die Wirkung eher darauf zurück, dass die Verlustlandschaft glatter wird. Dass es funktioniert, ist unbestritten.
Bezug: hinter jeder Faltung im Modell. Ohne sie wäre Lernrate 10⁻³ zu Beginn des Trainings nicht stabil.
-
Sigmoid-Weighted Linear Units (SiLU)
Elfwing, Uchibe und Doya, 2017. Die Funktion
x · σ(x)ist glatt und erlaubt im Gegensatz zu ReLU kleine negative Werte, statt sie hart auf null zu setzen.Bezug: durchgehend als Aktivierung verwendet. Der Unterschied zu ReLU ist bei einem Modell dieser Größe klein, aber messbar.
-
Searching for Activation Functions (Swish)
Ramachandran, Zoph und Le, 2017. Per automatisierter Suche gefunden — und mit
x · σ(βx)für β = 1 identisch zu SiLU. Ein hübsches Beispiel dafür, dass Suchverfahren dieselbe Lösung wiederfanden, die anderswo bereits hergeleitet worden war.
Trainingsverfahren
-
Decoupled Weight Decay Regularization (AdamW)
Loshchilov und Hutter, 2017. Zeigt, dass Adam mit L2-Term im Verlust nicht dasselbe ist wie echtes Weight Decay: Die adaptive Skalierung schwächt die Regularisierung dort ab, wo sie am nötigsten wäre. AdamW trennt beides sauber.
Bezug: der verwendete Optimierer, mit Weight Decay 10⁻⁴.
-
SGDR: Stochastic Gradient Descent with Warm Restarts
Loshchilov und Hutter, 2016. Führte den Cosine-Verlauf der Lernrate ein, der heute Standard ist: langsames, gleichmäßiges Absenken statt stufenweiser Sprünge.
Bezug: Der Cosine-Schedule senkt die Lernrate über 40 Epochen von 10⁻³ auf 10⁻⁵ — ohne Warm Restarts.
-
Rethinking the Inception Architecture (Label Smoothing)
Szegedy und Kollegen, 2015. Enthält neben der Inception-v3-Architektur die Einführung von Label Smoothing: Statt auf Wahrscheinlichkeit 1,0 für die richtige Klasse zu trainieren, wird ein wenig Wahrscheinlichkeitsmasse auf alle anderen verteilt.
Bezug: mit Faktor 0,1 verwendet — bei einem Datensatz mit fehlerhaften Labels keine Feinheit, sondern notwendig, damit das Modell nicht lernt, sich bei falschen Vorgaben sicher zu sein.
-
Dropout
Srivastava und Kollegen, 2014. Schaltet im Training zufällig Neuronen ab und verhindert so, dass sich einzelne Merkmale zu stark aufeinander verlassen.
Bezug: mit p = 0,2 vor der Klassifikationsschicht.
Betrieb und On-Device-Inferenz
-
ONNX und ONNX Runtime
Ein herstellerneutrales Austauschformat für neuronale Netze samt zugehöriger Laufzeitumgebung. Trennt die Trainingsumgebung von der Inferenzumgebung.
Bezug: Das Modell wird mit Opset 18 exportiert; auf dem Server läuft ONNX Runtime auf der CPU — ohne PyTorch im Container.
-
LiteRT und Google AI Edge
Googles On-Device-Runtime in der Nachfolge von TensorFlow Lite, zuständig für quantisierte Modelle auf Mobilgeräten und Edge-Plattformen.
Bezug: der Weg, den DrawLa gehen würde, wenn die Erkennung auf das Gerät wandern soll — siehe Mobile & Edge AI.
-
Core ML Tools und ExecuTorch
Die plattformspezifischen Gegenstücke: Core ML nutzt auf Apple-Geräten die Neural Engine, ExecuTorch ist PyTorchs eigener Weg zu schlanker Geräte-Inferenz.
Bezug: die Exportpfade, die iPhone & Android gegenüberstellt.
-
Qualcomm GenieX
Eine aktuelle On-Device-Inferenzruntime für Qualcomm-Hardware. Als Kontext interessant: Mobile Netze laufen zunehmend auf der NPU statt in der Cloud.