Sofortantwort
Data Augmentation einfach erklärt
Künstliche Vergrößerung von Datensätzen durch Transformationen.
- Kurz gesagt
- Vergrößert Trainingsdatensätze ohne neue Daten zu sammeln
- Typischer Einsatz
- Bildklassifikation, NLP, Audio
- Wichtig zu wissen
- Domänenspezifisch: Bilder, Text, Audio haben unterschiedliche Techniken
Data Augmentation im Überblick
Data Augmentation ist eine Technik, die den effektiven Umfang eines Trainingsdatensatzes vergrößert, indem aus vorhandenen Daten neue Varianten erzeugt werden. Für Bilder bedeutet das: Spiegeln, Rotieren, Zuschneiden, Helligkeit ändern, Rauschen hinzufügen. Für Text: Paraphrasieren, Synonyme ersetzen, Übersetzung und Rückübersetzung. Das Modell lernt dadurch, invariant gegenüber diesen Transformationen zu sein – und generalisiert besser auf neue Daten. Data Augmentation ist besonders wertvoll, wenn echte Daten knapp oder teuer sind.
Data Augmentation vergrößert Trainingsdatensätze künstlich durch Transformationen. Aus einem Bild einer Katze werden zehn: Original, gespiegelt, rotiert, heller, dunkler, zugeschnitten…
Warum funktioniert das?
Das Modell lernt, dass eine Katze eine Katze bleibt – egal ob sie nach links oder rechts schaut. Das verbessert die Generalisierung auf neue, ungesehene Daten.
Beispiel Bildaugmentation:
Original-Bild
↓
┌───────────────────────────────────┐
│ Horizontal Flip │ Rotation 15° │
│ Brightness +20% │ Crop 90% │
│ Gaussian Noise │ Color Jitter │
└───────────────────────────────────┘
↓
7 Trainingsbeispiele statt 1
Technisch betrachtet
Bild-Augmentation
import albumentations as A
transform = A.Compose([
A.HorizontalFlip(p=0.5),
A.RandomBrightnessContrast(p=0.3),
A.Rotate(limit=15, p=0.3),
A.GaussNoise(p=0.2),
A.RandomCrop(height=224, width=224, p=1.0),
])
augmented = transform(image=image)["image"]
Text-Augmentation
| Technik | Beschreibung | Beispiel |
|---|---|---|
| Synonym-Ersetzung | Wörter durch Synonyme ersetzen | “schnell” → “rasch” |
| Back-Translation | Übersetzen und zurück | DE→EN→DE |
| Random Insertion | Zufällige Wörter einfügen | Kontextbasiert |
| Random Deletion | Zufällige Wörter löschen | Mit Wahrscheinlichkeit p |
import nlpaug.augmenter.word as naw
aug = naw.SynonymAug(aug_src='wordnet')
augmented_text = aug.augment("Der schnelle Fuchs springt.")
# "Der rasche Fuchs hüpft."
Best Practices
- Domänenspezifisch: Augmentationen müssen zur Aufgabe passen
- Realistische Transformationen: Keine unmöglichen Variationen
- Online vs. Offline: Online (während Training) spart Speicher
- Validierung nicht augmentieren: Test/Val-Daten bleiben original
Schritt für Schritt
Wie Data Augmentation Generalisierung unterstützen kann
Einsatzsituation und Lücken prüfen
Untersuche, welche Varianten das Modell im Alltag bewältigen muss und welche davon in den Trainingsdaten fehlen. Augmentation beginnt bei einer realen Lücke, nicht bei möglichst vielen künstlichen Veränderungen.
Zulässige Transformationen definieren
Wähle Änderungen, die die Bedeutung des Beispiels erhalten: etwa plausible Beleuchtung bei Bildern oder begrenzte Formulierungsvarianten bei Text. Für jede Transformation muss klar sein, wann sie das Label verändert.
Herkunft und Verteilung dokumentieren
Halte fest, welche Daten erzeugt wurden, mit welchen Regeln und in welchem Verhältnis sie zum Original stehen. Synthetische Varianten dürfen reale, seltene oder besonders wichtige Fälle nicht verdecken.
Wirkung auf echte Prüfungen bewerten
Vergleiche Modelle mit und ohne Augmentation gegen strikt getrennte, realitätsnahe Prüfdatensätze. Prüfe besonders Fehlergruppen, Sicherheit und mögliche Verschlechterungen außerhalb des erwarteten Bereichs.
Konkretes Beispiel
Ein Bildermodell lernt robuste, aber plausible Varianten
Ein Team trainiert ein Modell zur Erkennung von Schäden an Bauteilen. Die Fotos stammen bisher überwiegend aus gleichmäßig beleuchteten Innenräumen.
Datenlücke
Im späteren Einsatz treten unterschiedliche Blickwinkel und Lichtverhältnisse auf. Eine beliebige Bildveränderung könnte jedoch Schäden verdecken oder neue Muster erzeugen, die in der Realität nie vorkommen.
Gezielte Ergänzung
Das Team verwendet nur fachlich plausible Transformationsregeln, dokumentiert ihre Grenzen und bewertet sie gegen getrennte Fotos aus realen Einsatzsituationen. Schwache Fehlergruppen werden zusätzlich mit echten Daten ergänzt.
Einordnung
Vorteile und Grenzen
Das spricht dafür
- Kann Modelle robuster gegenüber realistischen Varianten ihrer Einsatzsituation machen.
- Hilft, begrenzte Trainingsdaten gezielt um bekannte, plausible Lücken zu ergänzen.
- Macht Annahmen über gewünschte Invarianz explizit und testbar.
Das solltest du beachten
- Unrealistische Transformationen können falsche Muster und irreführende Sicherheit erzeugen.
- Synthetische Daten ersetzen nicht die Prüfung gegen echte, repräsentative Einsatzfälle.
- Augmentation kann Verzerrungen verstärken, wenn Herkunft und Fehlergruppen nicht geprüft werden.
Vertiefung · für FortgeschritteneDatenvariation mit klaren Grenzen
Plausible Varianten
- Dataset
- Eine Sammlung strukturierter Daten für das Training von KI-Modellen.
- Datenannotation
- Der Prozess, Rohdaten mit Informationen für KI-Modelle zu versehen.
- Imbalanced Data
- Ungleiche Klassenverteilung in Trainingsdaten.
- Cross-Validation
- Verfahren zur zuverlässigen Schätzung der Modellleistung durch mehrfache Datenaufteilung.
- Data Quality
- Messung und Sicherstellung der Qualität von Daten.