Interaktive Visualisierung eines neuronalen Netzes
Diese Anwendung zeigt ein kompaktes Multi-Layer-Perceptron (MLP), das auf MNIST trainiert wurde. Zeichnen Sie eine Ziffer und beobachten Sie, wie die Aktivierungen in Echtzeit durch alle vollvernetzten Schichten propagieren.
So funktioniert es:
- Zeichnen: Im 2D-Raster (links oben) klicken und ziehen, um eine Ziffer zu skizzieren
- Beobachten: Verfolgen Sie, wie Ihre Skizze durch die Schichten des Netzes im 3D-Raum wandert
- Vorhersage: Prüfen Sie die Wahrscheinlichkeit für jede Ziffer (0–9) im Diagramm (rechts oben)
Netzarchitektur (Standardexport):
- Eingabeschicht: 28×28 Pixelraster (Ihre Zeichnung)
- Dichtes Layer 1: 784 → 64 Neuronen mit ReLU
- Dichtes Layer 2: 64 → 32 Neuronen mit ReLU
- Ausgabeschicht: 32 → 10 Logits → Softmax-Wahrscheinlichkeiten
3D-Steuerung:
- Drehen: Linke Maustaste gedrückt halten und ziehen
- Verschieben: Rechte Maustaste gedrückt halten und ziehen
- Zoomen: Mausrad benutzen
Farbkodierung:
- Knoten: Die Farbe zeigt die Aktivierungsstärke (dunkle Blautöne für niedrige/negative Werte, kräftige Korallenfarben für starke positive Aktivierungen)
- Verbindungen: Warme Farben kennzeichnen starke positive Beiträge, kühle Töne negative Einflüsse, gedämpfte Linien nahezu Null.
Eigenes Modell trainieren:
python training/mlp_train.pystarten, um das MLP zu trainieren (inkl. Apple-Metal-Beschleunigung, falls verfügbar).- Das Skript schreibt
exports/mlp_weights.json, das der Visualisierer beim Laden einliest. - Anzahl versteckter Neuronen, Epochen oder Exportpfade über die in
training/mlp_train.pydokumentierten CLI-Optionen verändern.
Echtzeitfunktionen:
- Schichtaktivierungen: Instanzen von Kugeln zeigen Aktivierungen pro Neuron mit farbcodierter Stärke.
- Wichtige Verbindungen: Jedes Zielneuron hebt seine stärksten Eingangsgewichte für bessere Lesbarkeit hervor.
- Live-Wahrscheinlichkeiten: Das Balkendiagramm aktualisiert die Logits → Softmax-Werte in Echtzeit.
Das Netzwerk ist bewusst kompakt gehalten, um eine flüssige Echtzeitdarstellung zu gewährleisten. Sie können gern mit anderen Schichtgrößen neu trainieren – halten Sie die Architektur nur schlank, damit die 3D-Ansicht reaktionsschnell bleibt.