15–20 J
📖 Page 02 von 8 · ~30 Min

Neural Networks: aus Punkten wird Verstehen 🕸️

Heute schauen wir uns das einzelne Neuron an — den Lego-Stein, aus dem GPT-5, Claude und jede Bilderkennung gebaut sind. Klingt geheimnisvoll, ist aber im Kern: Eingaben × Gewichte + Bias → Aktivierung. Das war's. Mit Lego-Steinen.

🧮 Mathe wie auf Niveau Sek I 🎮 Interaktives Neuron-Demo 📚 Reine Foundation
x₁ x₂ x₃ w₁ w₂ w₃ Σ + b activation y y = f(Σ wᵢ·xᵢ + b) "Das ganze Neuron in einer Zeile"

01Was ist ein künstliches Neuron?

Ein Lego-Stein. Du kennst die Funktion in einer Zeile, dann erweitern wir.

Ein Neuron nimmt mehrere Zahlen rein, multipliziert sie mit Gewichten, addiert alles zusammen + einen Bias — und schickt das Ergebnis durch eine "Aktivierungsfunktion".

🧠 Die Bio-Analogie

Ein echtes Hirn-Neuron hat Dendriten (empfangen Signale), einen Zellkörper (summiert sie auf) und ein Axon (sendet Output weiter, wenn ein Schwellwert überschritten ist). Künstliche Neuronen sind extrem stark vereinfacht — kein Biologe würde sie als „realistisch" bezeichnen. Aber sie haben dieselbe Idee: viele Eingänge in eine Entscheidung pressen.

🔢 Die Mathe-Form

z = (w₁·x₁) + (w₂·x₂) + (w₃·x₃) + b
y = activation(z)
  • x = Inputs (z.B. Pixel-Werte, Sensor-Daten)
  • w = Weights (lernbare Parameter)
  • b = Bias (Verschiebung)
  • activation() = nonlineare Funktion (mehr unten)
💡
Mentales Modell: Ein Neuron ist wie ein gewichteter Mittelwert mit einem „Verstärker" am Ende. Die Weights sagen, wie wichtig jeder Input ist. Der Bias kann das ganze Neuron sensibler oder weniger sensibel machen. Die Aktivierungsfunktion entscheidet, ob/wie stark das Neuron „feuert".

02Live-Demo: Spiel mit einem Neuron 🎮

Bewege die Slider — du veränderst Inputs (x), Weights (w) und Bias (b). Schau, wie sich Output (y) ändert. Das ist Forward-Pass durch ein Neuron, live.

x₁ x₂ x₃ w₁=0.5 w₂=0.5 w₃=0.5 Σ + b z=? ReLU max(0, z) y
z = sum + bias 1.5
y = ReLU(z) 1.5
🎉
Bro... du hast gerade Forward-Pass gemacht. Genau das passiert bei jedem ChatGPT-Prompt millionenfach pro Sekunde — nur dass das Netz ~175 Milliarden Weights hat statt 4. Aber die Rechen-Operation ist exakt dieselbe.

03Aktivierungs-Funktionen: warum man sie braucht

Ohne Aktivierung wäre ein Neural Net nur eine grosse lineare Funktion — und könnte nur Geraden zeichnen. Die nichtlineare Aktivierung macht es fähig, krummelige Muster zu lernen. Die drei wichtigsten:

ReLU

max(0, z)

Negative Werte → 0. Positive bleiben. Standard heute — billig + funktioniert.

Sigmoid

1/(1+e^-z)

Drückt alles auf 0–1. Für Wahrscheinlichkeiten (z.B. „ist das ein Apfel?").

Tanh

tanh(z)

Wie Sigmoid aber -1 bis +1. Schöner zentriert, oft in RNNs.

🤓
Warum nichtlinear? Wenn du nur Linien zusammenpapst (linear × linear = linear), kannst du auch mit 100 Layers nichts Komplexes lernen. Erst die nichtlineare Aktivierung erlaubt dem Netz, krummelige Entscheidungsgrenzen zu zeichnen. Das ist der eigentliche Trick.

04Vom Neuron zum Layer — und zum Netz

Ein Neuron allein kann nur einfache Entscheidungen treffen. Mehrere Neuronen in einem Layer machen es schon spannender. Mehrere Layers hintereinander = "Deep Learning".

1 Neuron

Kann nur Linien trennen.

Tiefes Netz

Kann krummelige Grenzen.

Konkrete Anatomie eines kleinen Netzes:

  • Input Layer — nimmt die Rohdaten (z.B. 28×28 = 784 Pixel für eine handgeschriebene Ziffer)
  • Hidden Layer 1 — z.B. 128 Neuronen. Lernt einfache Features (Kanten, Striche).
  • Hidden Layer 2 — z.B. 64 Neuronen. Lernt mittlere Features (Kurven, Schleifen).
  • Output Layer — 10 Neuronen für „Ziffer 0–9", je mit Wahrscheinlichkeit.
🎯
Universal Approximation Theorem: Mathematiker haben bewiesen — schon ein einziges Hidden Layer mit „genug" Neuronen kann jede stetige Funktion beliebig genau approximieren. Aber: tief ist effizienter als breit. Deshalb baut man heute Modelle mit 100+ Layers statt 1 grossem.

05Aber wie lernt das Netz was es lernen soll?

Spoiler: durch Anpassen der Gewichte. Das ist „Training" — die nächste Page ist komplett darüber.

Im Moment hat unser Demo-Neuron oben einfach zufällige Weights. Wenn wir es trainieren würden auf z.B. „erkenne Äpfel auf Bildern", würden wir:

  1. 1000 Apfel-Bilder zeigen und sagen „das ist ein Apfel" (= Output sollte hoch sein)
  2. 1000 Bananen-Bilder zeigen und sagen „das ist kein Apfel" (= Output sollte tief sein)
  3. Bei jedem Bild den Fehler messen (= „Loss")
  4. Die Weights ein klein wenig in Richtung „weniger Fehler" verschieben
  5. Tausende Male wiederholen, bis das Netz gut wird
📚
Genauer auf Page 03: Wir schauen uns Loss-Funktionen, Gradient Descent und Backpropagation an — die Mathe-Magie, mit der ein Netz aus Beispielen lernt.

06Wie sieht das in Code aus?

In PyTorch (dem populärsten ML-Framework) ist ein 3-Layer-Netz erstaunlich kurz:

PyTorch / Pythonimport torch import torch.nn as nn class MeinNetz(nn.Module): def __init__(self): super().__init__() self.layer1 = nn.Linear(784, 128) # 784 → 128 Neuronen self.layer2 = nn.Linear(128, 64) # 128 → 64 self.layer3 = nn.Linear(64, 10) # 64 → 10 Klassen self.relu = nn.ReLU() def forward(self, x): x = self.relu(self.layer1(x)) x = self.relu(self.layer2(x)) return self.layer3(x)
🤯
13 Zeilen Code. Das ist ein vollständig funktionsfähiges Neural Network, das du auf MNIST (handgeschriebene Ziffern) trainieren kannst und das ~98% Genauigkeit erreicht. Verstehen, wie es funktioniert: 90% des Kurses. Schreiben: 10 Sekunden.

🎯Key Takeaways aus Page 02