Stetige Zufallsvariablen und gängige Verteilungen
Eine stetige Zufallsvariable kann jeden Wert auf der reellen Zahlenachse annehmen.Die Normalverteilung (Gauß-Verteilung) ist die wichtigste Verteilung in der KI, ohne Gleichen.
Konzepterklärung
PDF: Wahrscheinlichkeitsdichtefunktion
Die PDF ist nicht selbst die Wahrscheinlichkeit; die Fläche ist die Wahrscheinlichkeit.Der PDF-Wert f(x) an einer bestimmten Stelle hat für sich genommen keine Bedeutung — die Wahrscheinlichkeit, dass eine stetige Variable einen bestimmten Wert annimmt, ist 0. Aber das Integral der PDF über ein Intervall = die Wahrscheinlichkeit, dass X in dieses Intervall fällt.
Normalverteilung N(μ, σ²)
\[ f(x) = \frac{1}{\sigma\sqrt{2\pi}} \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right) \]Bestimmt durch den Mittelwert μ (Lage) und die Standardabweichung σ (Breite). Etwa 68% der Daten liegen innerhalb von μ±σ und etwa 95% innerhalb von μ±2σ.
Zentraler Grenzwertsatz
Die Überlagerung vieler unabhängiger Faktoren → das Ergebnis nähert sich einer Normalverteilung an. Das erklärt, warum die Normalverteilung überall in der Natur und in der KI anzutreffen ist.
Gewichtsinitialisierung neuronaler Netze, Batch-Normalisierung, latenter Raum von VAEs und Verrauschen/Entrauschen in Diffusionsmodellen — alle beruhen auf der Normalverteilung.
Beispiele aus der Praxis
Menschliche Körpergröße: 170.1, 170.12, 170.128 cm — die Körpergröße kann jeden Wert in einem kontinuierlichen Bereich annehmen und folgt insgesamt einer Normalverteilung.
Die Körpergrößen der meisten Menschen liegen nahe am Durchschnitt; extrem große und extrem kleine Menschen sind eine Minderheit — das ist die Glockenkurve.
Praktische Python-Übung
Beispiel
samples = np.random.normal(0, 1, 10000)
print(f"N(0,1)-Stichprobenziehung: Mittelwert={samples.mean():.3f}, Standardabweichung={samples.std():.3f}")
# 68-95-99.7-Regel
for k in [1, 2, 3]:
within = np.mean(np.abs(samples) < k)
theory = {1:0.6827, 2:0.9545, 3:0.9973}[k]
print(f"μ±{k}σ: {within:.4f} (theoretisch {theory:.4f})")
# Zentraler Grenzwertsatz: Summe von 12 Würfeln ≈ normal
dice = np.random.randint(1,7,(100000,12)).sum(axis=1)
print(f"\nSumme von 12 Würfeln: Mittelwert={dice.mean():.1f} (theoretisch 42), annähernd normal)
Ausgabe:
N(0,1) 采样: 均值=-0.002, 标准差=1.001 μ±1σ: 0.6827 (理论 0.6827) μ±2σ: 0.9545 (理论 0.9545) μ±3σ: 0.9973 (理论 0.9973) 12个骰子和: 均值=42.0(理论42), 接近正态
Histogramm der Normalverteilung
Anwendungsszenarien in der KI
Gewichtsinitialisierung
Neuronale Netzwerkgewichte werden üblicherweise zufällig aus einer Normalverteilung oder Gleichverteilung initialisiert. Kaiming-Initialisierung (für ReLU-Netzwerke): \( W \sim N(0, \sqrt{2/n_{in}}) \); Xavier-Initialisierung: \( W \sim U(-\sqrt{6/(n_{in}+n_{out})}, \sqrt{6/(n_{in}+n_{out})}) \). Die sorgfältig gewählte Varianz stellt sicher, dass Signale im Vorwärts- und Rückwärtsdurchlauf stabil propagieren, weder explodieren noch verschwinden.
Batch-Normalisierung
BN geht davon aus, dass die Aktivierungen jeder Schicht annähernd einer Normalverteilung folgen. Sie subtrahiert den Mittelwert und dividiert durch die Standardabweichung, um sie auf N(0,1) zu standardisieren, und skaliert und verschiebt sie anschließend über lernbare \(\gamma\) und \(\beta\). Dies beschleunigt das Training, ermöglicht größere Lernraten und verringert die Empfindlichkeit gegenüber der Initialisierung. BN ist eine der wichtigsten Trainingstechniken in der Geschichte des Deep Learning.
VAE-Annahme über den latenten Raum
Der Variational Autoencoder nimmt an, dass die latente Variable z einer Standardnormalverteilung N(0, I) folgt. Der Encoder gibt μ und log(σ²) aus, und der Decoder zieht Stichproben für z aus N(μ, σ²), um die Eingabe zu rekonstruieren. Der KL-Divergenz-Verlust beschränkt N(μ, σ²) darauf, nahe am Prior N(0, I) zu liegen, und verhindert, dass der Encoder zu einer Dirac-Verteilung kollabiert.
Verrauschen und Entrauschen in Diffusionsmodellen
Der Vorwärtsprozess von Diffusionsmodellen (DDPM) fügt den Daten schrittweise gaußsches Rauschen \epsilon ∼ N(0, I) hinzu, bis sie zu reinem Rauschen werden. Der Rückwärtsprozess trainiert ein neuronales Netz darauf, das bei jedem Schritt hinzugefügte Rauschen vorherzusagen, und entrauscht schrittweise von reinem Rauschen, um Bilder zu erzeugen. Stable Diffusion und DALL·E basieren beide auf diesem Prinzip.
Weitere Erweiterungen