Backprop Lab 1.2 — ein neuronales Netz beim Lernen zusehen.
Backprop Lab ist ein Simulator für kleine neuronale Netze im Browser. Es klassifiziert
Punkte in der Ebene: jeder Punkt hat zwei Koordinaten x₁ und x₂ und
gehört zu einer von zwei Klassen. Das Netz soll lernen, die Ebene so einzufärben, dass die
Farbe zur Klasse passt.
Gerechnet wird echte Backpropagation mit stochastischem Gradientenabstieg — kein Video, keine Animation, keine vorberechnete Kurve. Jede Epoche geht die Trainingsdaten wirklich durch, bildet Gradienten und ändert die Gewichte. Es steckt keine Bibliothek dahinter; das gesamte Netz sind rund 120 Zeilen JavaScript in einer einzigen HTML-Datei.
Der Zweck ist Anschauung: Man sieht nicht nur die Verlustkurve fallen, sondern jedes einzelne Neuron dabei, wie es sich seinen Teil der Ebene zurechtschneidet.
Noch nie mit neuronalen Netzen zu tun gehabt? Dann zuerst die Einführung lesen — sie erklärt Neuron, Gewicht, Verlust und Backpropagation von Grund auf. Dieses Handbuch setzt die Begriffe voraus.
x₁x₂ zuschalten — und es erneut versuchen.Alle Regler wirken sofort. Änderungen an Architektur, Aktivierung oder Datensatz setzen das Training zurück, weil ein anderes Netz gebaut werden muss. Lernrate, Batch-Größe und Regularisierung greifen dagegen mitten im Lauf.
Oben liegt die Steuerung mit den Kennzahlen, darunter drei Spalten: links die Einstellungen, in der Mitte das Netz, rechts die Auswertung.
| Element | Bedeutung |
|---|---|
| Trainieren | Startet die Trainingsschleife, ein Bild pro Epoche. Der Knopf heißt dann Pause. |
| Schritt | Rechnet genau eine Epoche und hält wieder an. Gut, um eine Änderung Schritt für Schritt zu verfolgen. |
| Zurücksetzen | Neue Zufallsgewichte, Epochenzähler auf null, Verlaufskurve leer. Die Daten bleiben. |
| Epoche | Zahl der vollständigen Durchläufe durch die Trainingsdaten. |
| Verlust Test | Mittlerer Fehler auf den zurückgehaltenen Testpunkten — die ehrliche Zahl. |
| Verlust Training | Mittlerer Fehler auf den Punkten, mit denen gelernt wurde. |
| Trefferquote | Anteil der Testpunkte, deren Vorzeichen das Netz richtig trifft. |
Oben rechts neben den Knöpfen steht ein Paar Schalter, DE und EN. Die Wahl wirkt sofort und mitten im Training: Gewichte, Epochenzähler und Verlustkurve bleiben stehen, nur die Wörter wechseln. Beim ersten Aufruf richtet sich die Seite nach der Sprache des Browsers; danach gilt die zuletzt gewählte. Gespeichert wird sie im lokalen Speicher des Browsers — der einzige Wert, den die Seite überhaupt ablegt.
Vier Aufgaben, aufsteigend nach Schwierigkeit. Ein Klick auf ein Vorschaubild zieht eine neue Stichprobe und setzt das Netz zurück.
| Datensatz | Regel | Anspruch |
|---|---|---|
| Cluster | Zwei Gauß-Wolken um (−2,4 | −2,4) und (2,4 | 2,4). | Eine gerade Linie genügt — schafft auch ein Netz ganz ohne verborgene Schicht. |
| Kreis | Innen die eine Klasse, außen der Ring. | Braucht eine verborgene Schicht — oder die Merkmale x₁² und x₂². |
| Quadranten | Klasse nach dem Vorzeichen von x₁·x₂. |
Das klassische XOR-Problem. Mit dem Merkmal x₁x₂ wird es trivial. |
| Spirale | Zwei ineinander gedrehte Arme. | Der harte Fall: mehrere Schichten, viele Neuronen, Geduld. |
Rauschen (0 bis 50 %) verschiebt die Punkte zufällig, bevor das Etikett vergeben wird. Bei hohem Rauschen liegen einzelne Punkte auf der falschen Seite — 100 % Trefferquote sind dann nicht mehr erreichbar, und wer es trotzdem erzwingt, lernt das Rauschen auswendig.
Trainingspunkte (100 bis 500) legt fest, wie viele Punkte zum Lernen dienen. Es wird stets die gleiche Menge zusätzlich gezogen und als Testmenge zurückgehalten; das Netz bekommt sie nie zu sehen. Neue Stichprobe würfelt beide Mengen neu.
Die linke Spalte im Netzdiagramm ist die Eingabe. Nicht nur die rohen Koordinaten stehen zur Wahl, sondern auch fertig ausgerechnete Kombinationen. Ein Klick auf eine Kachel oder ihre Beschriftung schaltet das Merkmal zu oder ab; mindestens eines bleibt immer an.
| Merkmal | Wert | Wofür |
|---|---|---|
| x₁, x₂ | die Koordinaten selbst | Grundausstattung, ab Werk aktiv. |
| x₁², x₂² | Quadrate | Machen aus dem Kreis eine gerade Trennung. |
| x₁x₂ | Produkt | Löst die Quadranten mit einem einzigen Gewicht. |
| sin x₁, sin x₂ | Sinus | Streifenmuster; hilft bei der Spirale, verleitet aber zum Überanpassen. |
Merkmale sind Handarbeit am Problem. Wer x₁² und x₂² zuschaltet,
löst den Kreis auch ohne jede verborgene Schicht — nur hat dann der Mensch die Arbeit gemacht,
nicht das Netz. Genau das ist der Unterschied zwischen Feature Engineering und Deep Learning,
und hier lässt er sich nebeneinanderlegen.
Über dem Diagramm steht die Zahl der verborgenen Schichten, null bis fünf. Über jeder Schichtspalte sitzt ein eigener Zähler für die Neuronen, eins bis acht. Eine neue Schicht startet mit drei Neuronen.
Ohne verborgene Schicht bleibt ein lineares Modell: die Eingänge gehen direkt auf das Ausgabeneuron. Das reicht für Cluster und, mit den quadratischen Merkmalen, für den Kreis. Jede weitere Schicht faltet den Raum ein weiteres Mal — sichtbar daran, dass die Kacheln in den hinteren Schichten kompliziertere Muster zeigen als in den vorderen.
Das Ausgabeneuron ist immer eines und rechnet immer mit tanh, damit sein Wert
zwischen −1 und +1 liegt und direkt mit dem Etikett vergleichbar ist.
| Einstellung | Bereich | Wirkung |
|---|---|---|
| Lernrate | 0.001 – 1 | Schrittweite des Gradientenabstiegs. Zu klein: es passiert kaum etwas. Zu groß: der Verlust springt oder explodiert. 0.03 ist ein guter Ausgangspunkt. |
| Aktivierung | tanh, ReLU, Sigmoid, linear | Die Funktion in den verborgenen Neuronen. Sie gilt für alle gleichzeitig. |
| Regularisierung | keine, L1, L2 | Straft große Gewichte ab. L2 macht sie klein, L1 drückt viele auf exakt null — im Diagramm verschwinden dann Linien. |
| Stärke | 0 – 0.1 | Wie hart gestraft wird. Ohne Wirkung, solange keine Regularisierung gewählt ist. |
| Batch-Größe | 1 – 30 | Wie viele Punkte gemittelt werden, bevor die Gewichte sich ändern. Klein heißt zappelig und schnell, groß heißt ruhig und träge. |
| Funktion | Verhalten |
|---|---|
| tanh | Weiche Übergänge zwischen −1 und +1, runde Entscheidungsflächen. Der brauchbarste Standard. |
| ReLU | Schneidet Negatives ab. Erzeugt kantige, aus Geraden zusammengesetzte Flächen und lernt schnell — mit hoher Lernrate sterben aber Neuronen ab und bleiben für immer grau. |
| Sigmoid | Zwischen 0 und 1, also nie negativ. Lernt spürbar langsamer, weil die Gradienten früh klein werden. |
| linear | Gar keine Nichtlinearität. Egal wie viele Schichten — das Ergebnis bleibt eine gerade Trennlinie. Sehr lehrreich, einmal auszuprobieren. |
Jedes Neuron trägt ein kleines Bild. Es zeigt nicht seinen Zustand für einen einzelnen Punkt, sondern seine Ausgabe für die gesamte Ebene: Für jeden Bildpunkt wird gefragt, was das Neuron ausgibt, wenn dort ein Datenpunkt läge. So sieht man, worauf ein Neuron reagiert.
| Farbe | Bedeutung |
|---|---|
| orange | Stark negative Aktivierung, in der Ausgabe die Klasse −1. |
| neutral | Nahe null — hier ist sich das Neuron nicht sicher. In der Ausgabefläche ist das die Entscheidungsgrenze. |
| grün | Stark positive Aktivierung, in der Ausgabe die Klasse +1. |
Abgeschaltete Merkmale erscheinen gestrichelt und blass und sind mit nichts verbunden.
| Linie | Bedeutung |
|---|---|
| grün | Positives Gewicht: das Neuron übernimmt das Signal. |
| orange | Negatives Gewicht: das Neuron kehrt das Signal um. |
| dick / dünn | Die Strichstärke entspricht dem Betrag des Gewichts. Dicke Linien tragen die Entscheidung. |
| gestrichelt | Von Hand gekappt — die Verbindung überträgt nichts und wird nicht mehr trainiert. |
Der Mauszeiger auf einer Linie zeigt das Gewicht auf drei Nachkommastellen, auf einem Neuron dessen Bias. Ein Klick auf eine Linie kappt sie, ein zweiter stellt sie wieder her.
Eine dicke Verbindung zu kappen, während das Training läuft, ist das aufschlussreichste Experiment der App: Der Verlust springt hoch, und man sieht in Echtzeit zu, wie die übrigen Neuronen die Aufgabe untereinander neu aufteilen.
Das große Bild rechts ist die Ausgabe des Netzes über dem Bereich von −6 bis +6 in beiden Richtungen, mit den Datenpunkten darüber. Passt die Farbe unter einem Punkt zu seiner eigenen, liegt das Netz dort richtig.
Die Form eines Punktes sagt, wozu er dient:
| Form | Bedeutung |
|---|---|
| gefüllt | Trainingspunkt — mit ihm wurde gelernt. Immer sichtbar. |
| Ring | Testpunkt — vom Netz nie gesehen. Erscheint erst mit dem Schalter Testpunkte einblenden. |
Solange nur gefüllte Punkte zu sehen sind, gibt es nichts zu unterscheiden; sobald die Ringe dazukommen, nennt eine Legende unter der Fläche beide Formen. Das ist der schnellste Blick auf Überanpassung: Liegen die Ringe genauso sauber in ihrem Farbbereich wie die gefüllten Punkte, hat das Netz die Regel erfasst und nicht die Stichprobe auswendig gelernt.
Zwei Linien über den Epochen: durchgezogen grün der Testverlust, gestrichelt grau der Trainingsverlust. Die Höhe der Kurve richtet sich nach dem größten Wert der ersten Epochen; die Zahl daneben nennt diesen Maßstab.
Laufen beide Linien zusammen nach unten, lernt das Netz. Fällt die graue weiter, während die grüne wieder steigt, lernt es die Trainingspunkte auswendig — dann helfen weniger Neuronen, mehr Daten oder Regularisierung.
| Zeile | Bedeutung |
|---|---|
| Parameter | Alle Zahlen, die gelernt werden: sämtliche Gewichte plus ein Bias je Neuron. |
| Aktive Verbindungen | Nicht gekappte von allen Verbindungen. |
| Ø |Gewicht| | Mittlerer Betrag. Wächst er unaufhörlich, ist die Lernrate zu hoch oder es fehlt Regularisierung. |
| Größtes Gewicht | Der größte Betrag im Netz. Ein einzelner Ausreißer heißt meist: eine Verbindung macht die ganze Arbeit. |
Die Etiketten sind −1 und +1, gemessen wird der halbe quadratische Fehler. Eine Epoche geht die gemischten Trainingspunkte einmal durch und ändert die Gewichte nach jeweils einem Batch.
Vorwärts z = b + Σ wᵢ·aᵢ a = f(z)Dabei ist f die gewählte Aktivierung, η die Lernrate, o
die Netzausgabe und t das Etikett. Die Gradienten werden über den Batch gemittelt,
nicht summiert — deshalb ändert die Batch-Größe die nötige Lernrate kaum.
Ist Regularisierung gewählt, kommt vor jedem Schritt ein zusätzlicher Zug in Richtung null
hinzu, mit der Stärke λ:
Bei L1 wird ein Gewicht, das über die Null hinausschießen würde, exakt auf null gesetzt statt das Vorzeichen zu wechseln. So bleiben die Linien im Diagramm sauber verschwunden, statt zu flackern.
Quadranten wählen, Aktivierung auf linear, drei Schichten mit je acht Neuronen.
Trainieren. Es bleibt bei einer geraden Trennlinie, die Trefferquote klebt bei etwa 50 %. Zurück
auf tanh — dieselbe Architektur löst die Aufgabe in wenigen Sekunden.
Quadranten, alle verborgenen Schichten entfernen, dann x₁x₂ zuschalten. Das
Modell hat jetzt drei Gewichte und liegt nach kurzer Zeit fast perfekt.
Kreis, Rauschen auf 50 %, Trainingspunkte auf 100, drei Schichten mit acht Neuronen, alle Merkmale an, Batch-Größe 1. Lange trainieren und die Testpunkte einblenden: Der Trainingsverlust fällt gegen null — jeder Trainingspunkt sitzt —, die Fläche bekommt Zipfel und Inseln um einzelne Punkte, und die grüne Testkurve steigt wieder, nachdem sie ihr Minimum durchlaufen hat.
Das gelingt nicht in jedem Anlauf. In Messungen mit dieser Einstellung stieg der Testverlust nach seinem Minimum in etwa drei von fünf Stichproben deutlich an; bei weniger Trainingspunkten tritt es zuverlässiger auf. Wenn nichts passiert: Neue Stichprobe und noch einmal.
Dann L2 mit Stärke 0.01 zuschalten und weiterlaufen lassen. Der Rand glättet sich,
der Testverlust sinkt mindestens auf die Hälfte, die Trefferquote steigt — in drei geprüften
Läufen von 94, 90 und 93 % auf 98, 96 und 96 %.
Aktivierung ReLU, Lernrate 1, trainieren. Einzelne Kacheln werden
vollständig neutral und bleiben es: Diese Neuronen geben für jede Eingabe null aus, damit ist
auch ihr Gradient null, und sie erholen sich nie wieder.
Merkmale x₁, x₂, dazu sin x₁ und sin x₂;
drei Schichten mit acht, acht und sechs Neuronen; Lernrate 0.03, Batch-Größe
10. Das braucht einige tausend Epochen — laufen lassen und gelegentlich hinsehen.
| Beobachtung | Ursache und Abhilfe |
|---|---|
| Verlust bewegt sich kaum | Lernrate zu klein, oder die Aufgabe braucht mehr Kapazität. Erst die Lernrate um den Faktor zehn erhöhen, dann Neuronen. |
| Verlust springt wild | Lernrate zu groß. Kleiner wählen oder die Batch-Größe erhöhen. |
| Fläche bleibt eine Gerade | Aktivierung steht auf linear, oder es gibt keine verborgene Schicht. |
| Kacheln sind alle neutral | Abgestorbene ReLU-Neuronen. Zurücksetzen und mit kleinerer Lernrate neu starten. |
| Trefferquote hakt bei 100 % nicht | Bei hohem Rauschen liegen Punkte auf der falschen Seite. Das ist die Grenze der Daten, nicht des Netzes. |
| Test schlechter als Training | Überanpassung: weniger Neuronen, mehr Trainingspunkte oder Regularisierung. |
Dieselbe Simulation gibt es als Android-App — kein eingepacktes Webfenster, sondern eine eigene Fassung in Kotlin: Netz, Datensätze und Training sind noch einmal geschrieben, ohne Android-Abhängigkeiten und durch Unit-Tests abgedeckt, die Darstellung läuft über Compose Canvas. Bedient wird sie wie die Weboberfläche, nur mit dem Finger: Merkmal antippen schaltet es um, eine Verbindung antippen kappt sie.
Die App hat vier Ziele, erreichbar über die untere Leiste oder über die Schublade hinter dem Menüzeichen oben links:
| Ziel | Inhalt |
|---|---|
| Labor | Die Simulation selbst — alles, was auch die Weboberfläche zeigt. |
| Einstellungen | Sprache und Darstellung, siehe unten, dazu App teilen und App bewerten. |
| Hilfe | Kurzfassung dieses Handbuchs im Gerät, auf sechs Abschnitte eingedampft, darunter die Fassung samt Build-Nummer, Rückmeldung per E-Mail, der Weg zur Bewertung und der Knopf für die Einführung. Steht nur in der Schublade — mit vier Einträgen würde die untere Leiste eng. |
| Über | Kurzbeschreibung, Fassungsnummer und die Verweise nach draußen: Webseite, weitere Apps, Datenschutzerklärung, Nutzungsbedingungen. Sie öffnen den Browser mit der Seite in der Sprache, die in der App eingestellt ist. |
Die Schublade führt alle vier Ziele mit vollem Namen und darunter zwei Handgriffe, die sonst weit unten im Laborbildschirm liegen: Neustart würfelt die Gewichte neu, Neue Stichprobe zieht neue Punkte. Beide springen anschließend ins Labor zurück.
Der Wechsel zwischen den Zielen hält das Training nicht an: Netz und Rechenschleife hängen am Rahmen der App, nicht am Laborbildschirm. Wer während des Trainings in die Einstellungen schaut und zurückkehrt, findet die Epochen weitergezählt.
Beim allerersten Start liegt eine Einführung über der App: fünf Seiten, die erklären, was eine Kachel zeigt, was Farbe und Strichstärke einer Verbindung bedeuten und warum es auf die Ringe ankommt. Die Bilder darin sind keine Zeichnungen, sondern dieselben Zeichenwege wie im Labor — dieselbe Farbskala, dieselbe Art, Punkte und Ringe zu setzen.
Überspringen beendet sie sofort, Los geht’s am Ende ebenso. Danach kommt sie nicht von selbst wieder; unter Hilfe steht am Fuß Einführung erneut anzeigen. Gemerkt wird das wie Sprache und Darstellung, also dauerhaft.
Das Netzdiagramm ist eine Zeichenfläche — für sich genommen also stumm. Deshalb trägt es eine Beschreibung, die den aktuellen Stand nennt: wie viele Merkmale an sind, wie die Schichten aussehen, wie viele Verbindungen noch stehen. Dieselbe Auskunft geben Entscheidungsfläche (mit Trefferquote) und Verlustkurve (mit Epoche und beiden Verlusten); die Zahlen wandern mit dem Training mit.
Die sieben Merkmalskacheln liegen zusätzlich als eigene, umschaltbare Elemente über der Zeichnung: TalkBack liest den Namen und sagt ein oder aus, ein Doppeltipp schaltet um. Nur das Kappen einzelner Verbindungen bleibt dem Finger auf der Zeichenfläche vorbehalten — dafür wären zwei Dutzend kaum unterscheidbare Ziele nötig.
Die Knöpfe mit − und + heißen für den Screenreader, was sie tun („Neuron entfernen aus Schicht 1"), und sind in einem Feld von 48 dp zu treffen, auch wenn sie kleiner aussehen.
Wo eine Beschriftung über ihrer Zahl steht — Epoche und 180, Parameter und 25 —, ist beides ein Halt und wird in einem Stück vorgelesen: „Epoche 180". Zwei Halte wären hier nur doppelt so viel Wischen für dieselbe Auskunft. Dasselbe gilt für die Schieber: Sie nennen ihren Namen und ihren Wert zusammen.
Welche greift, entscheidet die Fensterbreite — nicht die Geräteklasse. Ein aufgeklapptes Foldable bekommt dieselbe Anordnung wie ein Tablet.
| Breite | Anordnung |
|---|---|
| unter 600 dp Telefon hoch |
Eine rollende Spalte: Knöpfe, Kennzahlen, Schichtregler, Netz, Entscheidungsfläche, Verlauf, Status und die Regler für Daten und Lernverfahren. |
| ab 600 dp Telefon quer, Tablet |
Zwei Spalten: links Kennzahlen, Schichtregler und Netz, rechts Entscheidungsfläche, Verlauf, Status und die Regler. Beide rollen für sich. |
Quer ist nicht die Breite knapp, sondern die Höhe. Deshalb wandern die Knöpfe Trainieren, Schritt und Neustart dort in die sonst halb leere Kopfzeile und bleiben beim Rollen sichtbar; Kennzahlen und Schichtregler stehen einreihig, und die Höhe des Netzdiagramms richtet sich nach dem, was übrig bleibt — auf dem Tablet füllt es die Spalte, quer auf dem Telefon bleibt es beim Mindestmaß, unter dem die sieben Merkmalsplätze nicht mehr nebeneinander passen.
Drehen unterbricht nichts: Das Training läuft über den Wechsel hinweg weiter, Gewichte und Verlaufskurve bleiben stehen. Wer die App in den Hintergrund schiebt, hält sie damit an — es werden keine Bilder mehr angefordert, also rechnet auch niemand weiter.
Unter Einstellungen steht die Anzeigesprache zur Wahl: Aus System folgt der Spracheinstellung des Geräts, Deutsch und Englisch legen sie fest. Die Wahl wirkt sofort und bleibt über den Neustart der App erhalten.
Auch die Zahlen folgen ihr: Auf Deutsch steht dort 0,021 und 99,0 %,
auf Englisch 0.021 und 99.0% — unabhängig davon, wie das Gerät
eingestellt ist.
Darunter dasselbe für hell und dunkel: Aus System, Hell, Dunkel. Beim Umschalten werden auch die Kacheln neu eingefärbt — der Nullpunkt der Farbskala liegt auf der Kachelfarbe, und die ist im Dunkeln eine andere.
Umgeschaltet wird ohne Neustart des Bildschirms — auch hier aus einem handfesten Grund: Ein Neustart würde das laufende Training samt Gewichten und Verlaufskurve verlieren. Stattdessen liefert ein eigens konfigurierter Context nur andere Texte, alles andere bleibt stehen.
Für Apple-Geräte gibt es eine dritte Fassung, wieder kein eingepacktes Webfenster: Netz, Datensätze und Training sind in Swift noch einmal geschrieben, Zeile für Zeile nach der Android-App und mit denselben Tests; gezeichnet wird mit SwiftUI. Ein und dieselbe App läuft auf iPhone und iPad (ab iOS 17) und als echte Mac-App (ab macOS 14). Rechnung, Farben, Texte und Einstellungen sind dieselben wie auf Android — dieser Abschnitt beschreibt nur, was anders ist.
Dieselben vier Ziele wie auf Android — Labor, Einstellungen, Hilfe und Über —, aber ohne Schublade:
| Gerät | Wo die Ziele stehen |
|---|---|
| iPhone | In der Leiste unten, alle vier — auch die Hilfe, die auf Android nur in der Schublade steht. Neustart und Neue Stichprobe liegen im Labor hinter dem Knopf … oben rechts. |
| iPad | In der Leiste oben, sonst wie auf dem iPhone. |
| Mac | In der Seitenleiste links, darunter die Fassung samt Build-Nummer. Die Handgriffe stehen im Menü Labor der Menüleiste. |
Auch hier hält der Wechsel zwischen den Zielen das Training nicht an.
Das Menü Labor trägt alles, was man während des Trainings braucht. Auf dem iPad mit Tastatur gelten dieselben Kürzel.
| Kürzel | Wirkung |
|---|---|
⌘ ↩ | Trainieren / Pause |
⌘ . | Schritt — genau eine Epoche |
⌘ R | Neustart — neue Zufallsgewichte |
⇧ ⌘ R | Neue Stichprobe |
⌘ T | Testpunkte ein- und ausblenden |
Merkmale und Verbindungen werden auf dem Mac angeklickt statt angetippt; die Wirkung ist dieselbe.
Die Grenze liegt wie auf Android bei 600 Punkten Breite: darunter eine rollende Spalte (iPhone hoch), darüber zwei Spalten (iPhone quer, iPad, Mac-Fenster), die für sich rollen. Anders als auf Android bleiben Trainieren, Schritt und Neustart auch zweispaltig oben in der linken Spalte. Auf dem Mac richtet sich die Anordnung nach der Fensterbreite — wer das Fenster schmal zieht, bekommt die Telefonansicht.
Auf iPhone und iPad hält das Training an, sobald die App in den Hintergrund geht. Auf dem Mac
rechnet es weiter, solange die App läuft, auch wenn ihr Fenster hinter anderen liegt — ein
Druck auf ⌘ ↩ hält es an.
Dieselben Beschreibungen wie unter TalkBack: Netzdiagramm, Entscheidungsfläche und Verlustkurve sagen, was zu sehen ist, Beschriftung und Zahl sind ein Halt. Die sieben Merkmalskacheln sind einzeln erreichbar, VoiceOver nennt sie „ausgewählt", solange sie an sind, und ein Doppeltipp schaltet um. Die Knöpfe − und + sind in einem Feld von 44 Punkten zu treffen.
iOS 26.5 · iPhone17,1 oder
macOS 26.0 · Mac16,10.Die App ist eine einzelne HTML-Datei ohne Framework und ohne Aufbaustufe. Netz, Backpropagation, Datensätze und sämtliche Darstellungen sind handgeschrieben; gezeichnet wird mit Canvas (Kacheln und Flächen) und SVG (Verbindungen).
Jede Kachel ist ein Raster von 64 × 64 Vorwärtsdurchläufen über den Bereich −6 bis +6. Während des Trainings werden die Kacheln aus Rücksicht auf die Bildrate jede zweite Epoche neu gerechnet, die Kennzahlen und die Kurve bei jeder.
Die Android-Fassung teilt keinen Code mit dieser Datei, wohl aber die Rechenwege: gleiche Formeln, gleiche Datensätze, gleiche Farbskala. Sie bringt rund 1,1 MB mit und rechnet ebenfalls vollständig auf dem Gerät.
Die Fassung für iPhone, iPad und Mac ist eine Übertragung der Android-App nach Swift, ohne fremde Bibliothek: dieselbe Rechnung, die Rechentests der Android-App plus Prüfungen für Einstellungen, Adressen und Zahlenformate, Kacheln aus 48 × 48 Vorwärtsdurchläufen wie auf Android. Auf dem Mac läuft sie in Apples Sandbox, ohne irgendein Recht darüber hinaus.
Es läuft alles im Browser. Es gibt keine Konten, keine Werbung, keine Auswertung, und es werden keine Daten übertragen — die einzige Anfrage nach außen holt die Schriftarten. Die Datenpunkte entstehen bei jedem Aufruf neu per Zufallsgenerator. Was die Apps auf dem Gerät ablegen, steht in der Datenschutzerklärung.
| Version | Datum | Änderungen |
|---|---|---|
| 1.2 | 25.09.2026 | Weboberfläche: Sprachwahl Deutsch/Englisch mit einem Schalterpaar
in der Kopfzeile, Fußzeile mit Verweisen auf Handbuch, Datenschutz und Impressum. App für Android: Einführung beim ersten Start, aus der Hilfe wieder aufrufbar; Rückmeldung per E-Mail und der Weg zur Bewertung in der Hilfe, dazu ab dem dritten Start eine einmalige Frage danach; App teilen und App bewerten in den Einstellungen; Beschreibungen für Screenreader an Netzdiagramm, Fläche und Kurve, umschaltbare Merkmalskacheln, größere Tippflächen an den Steppknöpfen und ein dunklerer Akzent im hellen Schema; im Infobildschirm Verweise auf Webseite, weitere Apps, Datenschutzerklärung und Nutzungsbedingungen; Zahlen folgen der in der App gewählten Sprache; die Transportknöpfe halten größere Systemschrift aus. Dazu: alle Seiten dieses Handbuchs auch auf Englisch, samt Startseite, Hilfeseite und Rechtstexten. App für iPhone, iPad und Mac (Oktober 2026): erste Fassung, mit allem, was die Android-App 1.2 kann; auf dem Mac mit Seitenleiste, Menü Labor und Tastenkürzeln. |
| 1.1 | 11.09.2026 | Weboberfläche: Legende für die Punktformen, Testpunkte als Ring
statt als blasse Füllung. App für Android: untere Leiste und Schublade mit vier Zielen, Hilfeseite, Wahl von Sprache und Darstellung, eigenes Querformat-Layout ab 600 dp Breite, Datensätze als Vorschaubilder. |
| 1.0 | 08.09.2026 | Erste Fassung: vier Datensätze, sieben Merkmale, bis zu fünf verborgene Schichten, vier Aktivierungen, L1/L2, Kacheln je Neuron, kappbare Verbindungen, Entscheidungsfläche und Verlustverlauf. |