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