Was ist Machine Learning?
Die Grundlage von allem – verstehe, bevor du trainierst
Machine Learning (ML) ist ein Teilgebiet der künstlichen Intelligenz, das Computer befähigt, aus Erfahrung zu lernen. Statt einem Computer exakte Regeln zu geben, zeigst du ihm Beispieldaten – und er findet selbst die Muster darin. Das Ergebnis heißt Modell.
Klassische Programmierung vs. Machine Learning
ML: Daten + Antworten → Regeln (das Modell)
Beim ML lernt der Computer die Regeln selbst heraus.
Die drei grundlegenden Lernparadigmen
Supervised Learning
Du gibst dem Modell Daten MIT korrekten Antworten (Labels). Es lernt die Zuordnung von Eingabe zu Ausgabe.
Beispiel: E-Mail → "Spam" oder "Kein Spam"
Anwendung: Klassifikation, Regression, NLP
Unsupervised Learning
Das Modell bekommt nur Daten OHNE Labels. Es sucht selbst nach Mustern, Clustern und Strukturen.
Beispiel: Kunden nach Kaufverhalten gruppieren
Anwendung: Clustering, Dimensionsreduktion
Reinforcement Learning
Das Modell lernt durch Belohnung und Bestrafung in einer Umgebung. Es optimiert seine Strategie.
Beispiel: Schach spielen, RLHF bei ChatGPT
Anwendung: Robotik, Spiele, RLHF
Wichtige ML-Begriffe – das Vokabular
Die "Intelligenz" – eine mathematische Funktion mit Millionen gelernter Parameter, die Eingaben auf Ausgaben abbildet.
Die internen Zahlen des Modells. Sie werden beim Training optimiert und sind das "Wissen" des Modells.
Der Prozess, bei dem das Modell seine Parameter durch Beispieldaten iterativ verbessert.
Das Anwenden des fertig trainierten Modells auf neue, ungesehene Daten.
Die Sammlung von Trainingsbeispielen. Qualität und Quantität sind entscheidend.
Ein vollständiger Durchlauf durch ALLE Trainingsdaten.
Eine kleine Untergruppe der Trainingsdaten, die gleichzeitig verarbeitet wird.
Ein Zahlenwert, der angibt, wie "falsch" das Modell aktuell liegt. Je niedriger, desto besser.
Die mathematische Richtungsangabe, in die Parameter geändert werden müssen, um den Loss zu senken.
Das Modell lernt Trainingsdaten "auswendig" statt zu generalisieren – schlechte Performance auf neuen Daten.
Das Modell ist zu einfach oder zu kurz trainiert – schlechte Performance auf Training UND Testdaten.
Die Fähigkeit, auf ungesehenen Daten gut zu performen. Das eigentliche Ziel des Trainings.
Warum Fine-Tuning statt Training von Grund auf?
Ein LLM wie GPT oder LLaMA von Grund auf zu trainieren kostet Millionen von Euro und erfordert tausende GPUs über Wochen. Mit Fine-Tuning nimmst du ein bereits vortrainiertes Modell – das schon Sprache, Fakten und Logik kennt – und spezialisierst es für deine Aufgabe. In Stunden statt Monaten, auf deiner eigenen GPU.
Training von Grund auf (Pretraining)
- ⏱ Wochen bis Monate Rechenzeit
- 💰 Hunderttausende bis Millionen €
- 📦 Milliarden Trainingsdaten benötigt
- 🖥 Hunderte bis tausende GPUs gleichzeitig
- 🧑💻 Nur für große Organisationen realistisch
Fine-Tuning (mit FrameTrain)
- ⏱ Minuten bis wenige Stunden
- 💰 Praktisch kostenlos (eigene Hardware)
- 📦 Hundert bis tausend Beispiele reichen
- 🖥 1 GPU – dein eigener Computer
- 🧑💻 Für jeden machbar
Transferlernen: Das Fundament von Fine-Tuning
Fine-Tuning basiert auf Transfer Learning: Das Vorwissen eines großen vortrainierten Modells (Grammatik, Fakten, Logik, Code) wird auf eine neue, spezifische Aufgabe übertragen. Nur ein Bruchteil der Parameter muss angepasst werden.
Basismodell
(7B Parameter)
Spezialisiertes
Modell
Das Basismodell "kennt" bereits Sprache. Fine-Tuning lehrt es deinen spezifischen Anwendungsfall.
Neuronale Netzwerke
Die Bauweise moderner KI-Modelle verstehen
Ein künstliches neuronales Netz (ANN) ist lose vom menschlichen Gehirn inspiriert. Es besteht aus Schichten von Neuronen, die miteinander verbunden sind. Jede Verbindung hat ein Gewicht – das Wissen, das beim Training gelernt wird.
Aufbau eines einfachen neuronalen Netzes
Wie ein einzelnes Neuron funktioniert
Jedes Neuron empfängt Eingaben von allen Neuronen der vorherigen Schicht, multipliziert sie mit Gewichten, summiert alles auf und wendet eine Aktivierungsfunktion an:
Neuron-Berechnung (vereinfacht): output = Aktivierung(w₁·x₁ + w₂·x₂ + ... + wₙ·xₙ + b) w₁...wₙ = Gewichte (werden beim Training gelernt) x₁...xₙ = Eingaben vom vorherigen Layer b = Bias (Verschiebungswert) Aktivierung = Nichtlineare Funktion (ReLU, Sigmoid, etc.) Beispiel mit ReLU: output = max(0, w₁·x₁ + w₂·x₂ + b) → alles < 0 wird zu 0 → Netz lernt "feuert / feuert nicht"
Aktivierungsfunktionen
ReLU (Rectified Linear Unit)
f(x) = max(0, x)Einfachste und häufigste Aktivierung. Alles unter 0 → 0, sonst linear. Schnell, wenig Vanishing Gradient.
Verwendet in: Standard in Hidden Layers von klassischen Netzen
GeLU (Gaussian Error Linear Unit)
f(x) ≈ x · Φ(x)Sanftere Version von ReLU, verwendet von BERT, GPT. Leicht besser für Transformer-Architekturen.
Verwendet in: Transformer Feed-Forward Layers (BERT, GPT, LLaMA)
SiLU / Swish
f(x) = x · σ(x)Selbstgegated, glatt und differenzierbar überall. Verwendet in neueren Architekturen wie LLaMA 2/3.
Verwendet in: LLaMA, Mistral, neuere Decoder-Modelle
Softmax
f(xᵢ) = e^xᵢ / Σe^xⱼWandelt rohe Scores in Wahrscheinlichkeiten um, die sich zu 1 summieren. Nur in Output-Layer für Klassifikation.
Verwendet in: Output-Layer bei Klassifikation und LM-Head
Wichtige Schichttypen in modernen Netzen
Dense / Fully Connected (Linear)
Jedes Neuron mit jedem der vorherigen Schicht verbunden. Universell für Klassifikation und Regression. In Transformer: FFN-Schichten.
Embedding Layer
Wandelt diskrete Tokens (Wörter/Zeichen) in kontinuierliche Vektoren um. Fundamental für Sprachmodelle – die "Repräsentation" jedes Wortes.
Multi-Head Attention
Kernstück von Transformern. Mehrere parallele Attention-Köpfe berechnen Beziehungen zwischen allen Token-Paaren in der Sequenz.
Layer Normalization
Normalisiert Aktivierungen innerhalb eines Layers. Unverzichtbar für stabile Transformer-Trainings. Verhindert explodierendes/verschwindendes Gradient-Problem.
Dropout
Schaltet zufällig Neuronen während des Trainings ab. Erzwingt Redundanz, wirkt als starker Regularisierer gegen Overfitting.
Residual / Skip Connections
Direktverbindung vom Eingang zum Ausgang eines Blocks (x + f(x)). Ermöglicht sehr tiefe Netze ohne Gradient-Degradierung.
Tiefe vs. Breite: Warum Tiefe besser ist
Ein tiefes Netz (viele Schichten) lernt hierarchische Repräsentationen: Untere Schichten lernen einfache Muster (Kanten, Silben), mittlere Schichten kombinieren sie (Formen, Wörter), obere Schichten erkennen komplexe Konzepte (Gesichter, Bedeutungen). Breite allein reicht nicht.
Transformer & LLMs
Die Architektur hinter GPT, LLaMA, BERT & Co.
Seit dem Paper "Attention Is All You Need" (Vaswani et al., 2017) dominiert die Transformer-Architektur die KI-Welt. Alle modernen LLMs – GPT-4, LLaMA, Mistral, BERT – basieren auf ihr. Der Schlüssel: der Self-Attention Mechanismus.
Revolutionäre Idee: Nur Attention, keine Rekurrenz
Self-Attention: Die Kernidee
Self-Attention erlaubt jedem Token im Text, jeden anderen Token zu "betrachten", um seinen Kontext zu verstehen. Drei Projektionen (Query, Key, Value) bestimmen, wie stark jedes Token auf andere achtet:
Für jeden Token i: Query_i = Token_i × W_Q (Was suche ich?) Key_j = Token_j × W_K (Was biete ich an?) Value_j = Token_j × W_V (Was ist mein Inhalt?) Attention-Score(i,j) = softmax(Query_i · Key_j / √d_k) Output_i = Σ_j [Attention-Score(i,j) × Value_j] → Jeder Token bekommt einen Output, der eine gewichtete Kombination aller anderen Token ist.
Multi-Head Attention
Statt einer einzigen Attention-Berechnung verwendet man h parallele Heads. Jeder Head lernt, auf andere Arten von Beziehungen zu achten: Head 1 → syntaktische Abhängigkeiten, Head 2 → Koreeferenz, Head 3 → semantische Ähnlichkeit, etc.
Transformer-Block Aufbau
Moderne LLMs im Überblick
BERT / RoBERTa
EncoderKlassifikation, NER, Question Answering
GPT-2 / GPT-J
DecoderText-Generierung, Completion
LLaMA 2/3
DecoderChat, Instruction Following
Mistral 7B
DecoderEffizient, stark (GQA, SWA)
T5 / Flan-T5
Enc-DecÜbersetzung, Summarisierung
Phi-3 / Gemma 2B
DecoderKleine, effiziente Modelle
VRAM-Bedarf für LLM Fine-Tuning
Speicherbedarf für Full Fine-Tuning (optimistische Schätzung mit mixed precision):
Die Konsequenz: LoRA & QLoRA sind Game-Changer
Mit QLoRA: 7B Fine-Tuning = ~4 GB VRAM (RTX 3070 reicht!).
Wie KI "lernt"
Backpropagation und Gradient Descent vollständig verstehen
Hinter jedem Training stecken zwei fundamentale Algorithmen: Backpropagation (berechnet, wie falsch das Modell liegt und warum) und Gradient Descent (passt die Parameter in die richtige Richtung an).
Der vollständige Lernzyklus
Forward Pass
Trainingsdaten laufen vorwärts durch alle Schichten. Jede Schicht transformiert die Eingabe, bis eine Vorhersage (Prediction) entsteht.
Loss berechnen
Die Prediction wird mit dem korrekten Label verglichen. Eine Loss-Funktion quantifiziert den Fehler als einzelne Zahl. Je größer, desto schlechter.
Backward Pass (Backpropagation)
Mithilfe der Kettenregel der Differentialrechnung wird berechnet, wie viel jeder einzelne Parameter zum Gesamtfehler beigetragen hat. Ergebnis: ein Gradient für jeden Parameter.
Gewichte aktualisieren
Optimizer verschiebt jeden Parameter entgegen dem Gradienten: W_neu = W_alt - LR × Gradient. Die Schrittgröße bestimmt die Learning Rate.
Gradient zurücksetzen
Gradienten werden auf 0 gesetzt. Wichtig! Sonst akkumulieren sich Gradienten über Batches (außer bei absichtlicher Gradient Accumulation).
Wiederholen
Dieser Zyklus wiederholt sich für jeden Batch in jeder Epoche. Nach tausenden bis Millionen Iterationen hat das Modell die Daten "gelernt".
Gradient Descent: Schritt für Schritt zum Minimum
Die Learning Rate: Der Schieberegler des Lernens
Die Learning Rate (LR) bestimmt, wie groß jeder Schritt bergab ist. Zu groß: Man überspringt das Minimum und springt wild umher. Zu klein: Man kommt fast nie an.
Gewichts-Update: W_neu = W_alt - α × ∂L/∂W α (alpha) = Learning Rate (z.B. 0.00002 = 2e-5) ∂L/∂W = Gradient (Ableitung des Loss nach W) Beispiel: W_alt = 0.5, Gradient = 0.3, LR = 0.01 W_neu = 0.5 - 0.01 × 0.3 = 0.5 - 0.003 = 0.497
Stochastisches Gradient Descent (SGD) vs. Batch GD
Full Batch GD
Batch: Alle Daten
Speed: 🐌 Langsam
Qualität: 🎯 Stabil
Speicher: 💾 Viel
Mini-Batch GD ⭐
Batch: Kleine Batches (8–64)
Speed: ⚡ Schnell
Qualität: 🎯 Gut
Speicher: 💾 Wenig
Stochastic GD
Batch: 1 Beispiel
Speed: ⚡ Sehr schnell
Qualität: 📉 Noisig
Speicher: 💾 Minimal
Warum Lokale Minima kein Problem sind (bei großen LLMs)
In niedrig-dimensionalen Räumen (2D oder 3D) gibt es viele lokale Minima, aus denen man nicht herauskommt. In hochdimensionalen Parameterräumen mit Milliarden Parametern ist das fundamental anders: Fast alle kritischen Punkte sind Sattelpunkte oder flache Regionen, keine echten lokalen Minima. Zudem sind alle "guten" lokalen Minima ähnlich gut wie das globale Minimum.
Die Kernaussage
Vanishing & Exploding Gradients
Bei sehr tiefen Netzen können Gradienten beim Rückwärtsdurchlauf verschwinden (→ Gewichte ändern sich kaum, Training stagniert) oder explodieren (→ Gewichte werden riesig, Training bricht ab). Moderne Architekturen lösen dies durch:
Gegen Vanishing:
- ✓ Residual Connections (Skip-Verbindungen)
- ✓ Layer Normalization
- ✓ Bessere Aktivierungen (ReLU, GeLU)
- ✓ Sorgfältige Initialisierung
Gegen Exploding:
- ✓ Gradient Clipping (max_grad_norm = 1.0)
- ✓ Niedrigere Learning Rate
- ✓ LR Warmup am Anfang
- ✓ Adaptive Optimizer (Adam, AdamW)