NoahsKI / NEURAL_NETWORK_VISUALIZATION.md
noah33565's picture
Upload 447 files
d613ffd verified
# πŸ“Š Neuronales Netzwerk - Visueller Überblick
## Netzwerk-Architektur Visualisierung
```
BEISPIEL 1: Einfaches Netzwerk fΓΌr Regression
═══════════════════════════════════════════════
Input Layer Hidden Layer 1 Hidden Layer 2 Output Layer
(5) (8) (4) (1)
x₁ ─┐ h₁₁ o₁₁ Ε· (Vorhersage)
β”‚ ╱─┬──────→ h₁₂ ─┬──────→ o₁₂ ─┐
xβ‚‚ ── β”‚ h₁₃ β”‚ o₁₃ β”‚
β”‚ β•± β”‚ h₁₄ β”‚ o₁₄ β”œβ”€β†’ Οƒ(z) ─→ Ε·
x₃ ── β”‚ ╱─┬───→ h₁₅ β”‚
β”‚ β”‚ β”‚ h₁₆ β”‚
xβ‚„ ── β”‚ ╱── h₁₇ β”‚
β”‚ β”‚ hβ‚β‚ˆ ──
xβ‚… β”€β”΄β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”˜
W₁ Gewichte: 5Γ—8 Wβ‚‚ Gewichte: 8Γ—4 W₃ Gewichte: 4Γ—1
b₁ Bias: 8 bβ‚‚ Bias: 4 b₃ Bias: 1
```
### Mathematik dahinter:
```
Input: [x₁, xβ‚‚, x₃, xβ‚„, xβ‚…]
Hidden 1: h₁ = ReLU(x Β· W₁ + b₁)
Hidden 2: hβ‚‚ = ReLU(h₁ Β· Wβ‚‚ + bβ‚‚)
Output: Ε· = Sigmoid(hβ‚‚ Β· W₃ + b₃)
Loss: L = (Ε· - y)Β²
```
---
## BEISPIEL 2: Klassifizierung (3 Klassen)
═════════════════════════════════════════
```
Input Features (10) β†’ Hidden 1 (16) β†’ Hidden 2 (8) β†’ Output (3)
Input: Klasse 1 (Katze)
[f₁] [o₁]
[fβ‚‚] [oβ‚‚] β†’ argmax β†’ Vorhersage
... ─→ W₁,b₁ β†’ ReLU β†’ Wβ‚‚,bβ‚‚ β†’ ReLU β†’ [o₃]
[f₁₀]
(Prob. fΓΌr jede Klasse)
```
---
## Trainings-Prozess Visualisierung
```
EPOCH 1: Loss = 0.85
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Batch 1 (16 Samples)
β”‚ Forward: Input β†’ HiddenLayers β†’ Output
β”‚ Loss: MSE(Ε·, y)
β”‚ Backward: βˆ‚L/βˆ‚W berechnen
β”‚ Update: W := W - Ξ± Γ— βˆ‚L/βˆ‚W
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Batch 2 (16 Samples)
β”‚ (wiederhole)
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
...
EPOCH 2: Loss = 0.72
(Gewichte sind besser, Loss sinkt)
EPOCH 3: Loss = 0.65
(Netzwerk lernt Muster)
EPOCH 20: Loss = 0.12 ← Gut trainiert! βœ…
```
---
## Gewichte & Bias Learning
```
Initiale Gewichte (zufΓ€llig):
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ W = [0.02, -0.15, β”‚
β”‚ 0.08, 0.11, β”‚ ← Random small values
β”‚ -0.03, 0.04] β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
Nach Training (gelernt):
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ W = [1.23, -2.15, β”‚
β”‚ 0.89, 1.51, β”‚ ← Großartig angepasst!
β”‚ -0.73, 0.94] β”‚ Diese Gewichte erkennen
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ jetzt Muster!
```
---
## Forward & Backward Propagation Fluss
```
FORWARD PROPAGATION (Vorhersage):
═════════════════════════════════
x (Input)
↓
Layer 1: z₁ = xΒ·W₁ + b₁
a₁ = ReLU(z₁)
↓
Layer 2: zβ‚‚ = a₁·Wβ‚‚ + bβ‚‚
aβ‚‚ = ReLU(zβ‚‚)
↓
Layer 3: z₃ = aβ‚‚Β·W₃ + b₃
Ε· = Sigmoid(z₃)
↓
Loss: L = (Ε· - y)Β²
BACKWARD PROPAGATION (Lernen):
════════════════════════════════
βˆ‚L/βˆ‚Ε· (Fehler an Output)
↑
βˆ‚L/βˆ‚z₃ (ΓΌber sigmoid)
βˆ‚L/βˆ‚W₃ (Grad fΓΌr W₃)
βˆ‚L/βˆ‚b₃ (Grad fΓΌr b₃)
↑
βˆ‚L/βˆ‚aβ‚‚ (Error rΓΌckwΓ€rts)
βˆ‚L/βˆ‚zβ‚‚ (ΓΌber ReLU)
βˆ‚L/βˆ‚Wβ‚‚ (Grad fΓΌr Wβ‚‚)
βˆ‚L/βˆ‚bβ‚‚ (Grad fΓΌr bβ‚‚)
↑
βˆ‚L/βˆ‚a₁ (Error rΓΌckwΓ€rts)
βˆ‚L/βˆ‚z₁ (ΓΌber ReLU)
βˆ‚L/βˆ‚W₁ (Grad fΓΌr W₁)
βˆ‚L/βˆ‚b₁ (Grad fΓΌr b₁)
WEIGHT UPDATE:
W := W - learning_rate Γ— βˆ‚L/βˆ‚W
```
---
## Integration mit EnhancedMLLearner
```
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ EnhancedMLLearner β”‚
β”‚ β”‚
β”‚ Integriert 5 Learning-Module: β”‚
β”‚ β”‚
β”‚ 1. Context Manager ──────┐ β”‚
β”‚ 2. Python Analyzer ─────── β”‚
β”‚ 3. Google Learner ──────┼──→ Learning β”‚
β”‚ 4. Feedback Learner ─────── Insights β”‚
β”‚ 5. Neural Networks β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚ ↓ β”‚
β”‚ πŸ“Š Learning Metrics: β”‚
β”‚ - context_awareness: 0.75 β”‚
β”‚ - python_quality: 0.82 β”‚
β”‚ - web_learning: 0.68 β”‚
β”‚ - feedback_quality: 0.91 β”‚
β”‚ - neural_network_accuracy: 0.87 ← NEW! β”‚
β”‚ - overall_improvement: 0.81 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
```
---
## Datenflusss-Diagramm
```
Benutzer Daten
↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Daten Vorbereitung β”‚
β”‚ (Normalisierung) β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Neural Network β”‚ β”‚ Gewichte W β”‚
β”‚ Training │←────→│ Bias b β”‚
β”‚ β”‚ β”‚ β”‚
β”‚ Forward Pass β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚ Backward Pass β”‚
β”‚ Weight Update β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Trainiertes Modell β”‚
β”‚ (Gewichte gelernt) β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Vorhersagen β”‚
β”‚ auf neuen Daten β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
↓
Ergebnisse
```
---
## Aktivierungsfunktionen Visualisierung
```
ReLU (Rectified Linear Unit):
────────────────────────────
β”‚ /
β”‚ /
f(x) β”‚ /
β”‚ /
β”‚_____ (nur β‰₯ 0)
────┼────── x
β”‚
SIGMOID:
────────
β”‚ ___
f(x) β”‚ _/
β”‚ /
____β”‚__ (zwischen 0-1)
β”‚ \
────┼────── x
β”‚
TANH:
────
β”‚
f(x) β”‚ / ___
β”‚ _/
────┼── (zwischen -1 to 1)
β”‚ \_
────┼────── x
```
---
## Loss-Verlauf wΓ€hrend Training
```
Loss
β”‚ Epoch 1
β”‚ β–² (Hoch - Netzwerk weiß noch wenig)
β”‚ \
β”‚ \ Epoch 5
β”‚ \β–Ό (Sinkt - Lernen findet statt)
β”‚ \
β”‚ \
β”‚ \ Epoch 15 (Konvergenz)
β”‚ β–Ό_____ (Flach - gut trainiert!)
β”‚ ────────
└─────────────────────────→ Epochs
0 5 10 15 20
```
---
## Grâße vs KomplexitÀt
```
Einfaches Problem: Komplexes Problem:
──────────────── ─────────────────
Input β†’ [Neuron] β†’ Output Input β†’ [32] β†’[16] β†’ Output
↓ ↓
Schnell zu trainieren Langsamer, aber
Weniger Parameter bessere Ergebnisse
Risiko: Underfitting Mehr Parameter
Risiko: Overfitting
```
---
## Batch Processing Visualisierung
```
Training Daten: 100 Samples, Batch Size: 32
EPOCH 1:
Batch 1: Samples 1-32 β†’ Forward/Backward β†’ Update W
Batch 2: Samples 33-64 β†’ Forward/Backward β†’ Update W
Batch 3: Samples 65-96 β†’ Forward/Backward β†’ Update W
Batch 4: Samples 97-100 β†’ Forward/Backward β†’ Update W
EPOCH 2:
(Wiederhole mit Samples in neuer Reihenfolge)
```
---
## Konvergenzbeobachtung
```
GUTES TRAINING: PROBLEMATISCHES TRAINING:
───────────────── ──────────────────────
Loss Loss
β”‚ β”‚
β”‚ \ β”‚ /β•²/β•² ← Oszillation
β”‚ \___ β”‚/──── (LR zu hoch)
β”‚ \___ β”‚
β”‚ \___ β”‚ ───── ← Stagnation
β”‚ └─ β”‚ (LR zu niedrig/falsch)
└──────────────→ Epochs β”‚
└──────────→ Epochs
```
---
## Parameter Beziehung
```
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Netzwerk Grâße β”‚
β”‚ (# of Neurons) β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
Grâßer = Komplexer
β”‚
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β–Ό β–Ό β–Ό
LΓ€ngeres Overfitting Bessere
Training Risiko Accuracy
HΓΆher
β”‚
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Learning Rate β”‚
β”‚ (Lerngeschw.) β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚
Higher = Schneller
β”‚
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β–Ό β–Ό β–Ό
Schneller Oszilation Kann divergieren
Training Risiko
HΓΆher
```
---
## Metriken Dashboard
```
╔══════════════════════════════════════════════╗
β•‘ NEURAL NETWORK STATUS β•‘
╠══════════════════════════════════════════════╣
β•‘ β•‘
β•‘ Network Name: response_quality β•‘
β•‘ Architecture: [12, 8, 4, 1] β•‘
β•‘ Status: βœ… TRAINED β•‘
β•‘ β•‘
β•‘ Metrics: β•‘
β•‘ β”œβ”€ Training Loss: 0.0234 βœ… (Gut!) β•‘
β•‘ β”œβ”€ Test Accuracy: 88.5% βœ… (Gut!) β•‘
β•‘ β”œβ”€ Epochs Trained: 25 β•‘
β•‘ β”œβ”€ Learning Rate: 0.05 β•‘
β•‘ └─ Model Size: 142 weights β•‘
β•‘ β•‘
β•‘ Last Updated: 2026-03-07 14:32:15 β•‘
β•‘ β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
```
---
## Checkliste fΓΌr Debugging
```
❌ Training konvergiert nicht
β†’ PrΓΌfe Daten-Normalisierung
β†’ Reduziere Learning Rate
β†’ Vergrâßere Netzwerk
❌ Overfitting (Test << Training)
β†’ Verkleinere Netzwerk
β†’ Stoppe Training frΓΌher
β†’ Mehr Trainingsdaten
❌ Underfitting (Test β‰ˆ Training, beide schlecht)
β†’ Vergrâßere Netzwerk
β†’ ErhΓΆhe Learning Rate
β†’ Trainiere lΓ€nger
❌ Langsames Training
β†’ Kleinere Batch Size
β†’ Vereinfachere Netzwerk-Architektur
β†’ Weniger versteckte Schichten
```
---
**Visualisierungen erstellt:** 7. MΓ€rz 2026
**Neural Network System:** βœ… VollstΓ€ndig implementiert