Steinbeis-Transferzentrum Data Analytics und Predictive Modelling
VisualApp

Neuronales Netz

Ein einfaches neuronales Netz erkennt handgeschriebene Ziffern — live im Browser, ohne Installation. Gewichte, Aktivierungen und Lernfortschritt werden in Echtzeit visualisiert.

Über die App

Die App visualisiert ein einfaches neuronales Netz – wie es lernt und wie es arbeitet – am Beispiel der Erkennung handgeschriebener Ziffern. Diese können mit der Maus live auf ein einfaches Zeichenfeld bestehend aus 5 x 3 Pixeln geschrieben werden. Die geschriebene Ziffer wird vom neuronalen Netz dabei unmittelbar in die erkannte Ziffer übersetzt. Wie gut das gelingt, hängt davon ab, wie gut das neuronale Netz trainiert ist.

Das Training erfolgt in der App ebenfalls live in Form von iterativen Lernzykeln. In diesen wird sukzessive der Gesamtfehler verringert, der sich aus dem Vergleich der zehn Trainingsziffern in Pixeldarstellung und der zugehörigen erkannten Ziffer ergibt. Hierbei wird das sogenannte Gradientenverfahren verwendet, welches die Parameter des neuronalen Netzes in jedem Schritt so anpasst, dass der verbleibende Gesamtfehler möglichst stark verringert wird — Schritt in Richtung des steilsten Abstiegs im Fehlergebirge. Das Gradientenverfahren wird effizient durch den Backpropagation-Algorithmus umgesetzt, ein fast magisches Konzept, welches die Leistungsfähigkeit neuronaler Netze begründet.

Was kann ich tun?

Zunächst können Sie beobachten, wie das neuronale Netz lernt. Während die Anzahl der Lernzykeln (Learning Cycles) hochzählt, verringert sich der Gesamtfehler (Error), den das Netz bei seinen Vorhersagen macht, immer weiter. Dadurch erhöht sich allmählich die Ziffernerkennungsleistung des Netzes.

Sie können diese testen, indem Sie ins Zeichenfeld links mit der Maus eine Ziffer schreiben (rot auf blauem Hintergrund) und beobachten, welche Ziffer das Netz erkennt (blaues Feld rechts). Die gesamthafte Erkennungsleistung des Netzes können Sie auch anhand der tabellarischen Balkendarstellung verfolgen: das Netz ist umso besser trainiert, je größer die Balken in der Diagonale und je kleiner alle anderen Balken sind.

Die Lerngeschwindigkeit kann durch die Learning Rate eingestellt werden, die der Schrittweite im Gradientenverfahren entspricht. Aber Vorsicht: zu große Learning Rates können zu Instabilitäten führen. Sie können zudem verschiedene Formen neuronaler Netze ausprobieren, indem Sie im Bereich Settings die Anzahl der Hidden Layers und deren jeweilige Neuronenanzahl verändern — der Lernprozess beginnt dabei von vorn.

Interesse an KI-Visualisierungen in der Lehre?

Die VisualApps entstehen als Lehr- und Transferprojekt an der Hochschule Reutlingen und kommen in Firmentrainings und Vorträgen zum Einsatz.

Kontakt aufnehmen