Data-Centric AI
Datenzentrierte KI verbessert Modelle, indem Bezeichnungen, Abdeckung und Qualität der Trainingsdaten systematisch optimiert werden, während die Modellarchitektur unverändert bleibt.
Datenzentrierte KI ist die Praxis, ein KI-System durch systematische Verbesserung seiner Daten weiterzuentwickeln, darunter die Konsistenz der Labels, die Abdeckung realer Bedingungen, die Klassenverteilung und die Datenqualität, während Modell und Trainingscode weitgehend unverändert bleiben. Andrew Ng machte den Begriff 2021 bekannt und argumentierte, dass Architekturen wie Faltungsneuronale Netze und Transformer inzwischen ausgereift genug seien, sodass die meisten Anwendungen mehr von besseren Daten als von einem besseren Modell profitieren. Das Gegenstück, modellzentrierte KI, hält einen Benchmark-Datensatz fest und iteriert an Architekturen, Verlustfunktionen und der Abstimmung von Hyperparametern – so funktionieren die meisten akademischen Bestenlisten.
Ngs bekanntestes Beispiel stammt aus der Inspektion von Stahlblechen: Ein Fehlerdetektor, der bei 76,2 % Genauigkeit feststeckte, profitierte nicht von modellzentrierten Verbesserungen. Durch die Korrektur inkonsistenter Labels stieg die Genauigkeit auf 93,1 %. Später im selben Jahr veranstalteten DeepLearning.AI und Landing AI einen Wettbewerb für datenfokussierte KI, bei dem das Modell unverändert blieb und die Teilnehmenden ausschließlich einen verrauschten Datensatz zur Bildklassifikation handgeschriebener römischer Ziffern verbessern durften. Der Datensatz war auf 10.000 Bilder begrenzt.
Zentrale Praktiken#
- Konsistente Datenbeschriftung: Annotatoren befolgen schriftliche Regeln für unklare Fälle, etwa ob ein Begrenzungsrahmen den Außenspiegel eines Autos einschließt oder wie eine teilweise verdeckte Person zu labeln ist. Zwei Annotatoren, die solche Fälle unterschiedlich behandeln, erzeugen Labelrauschen, das kein Modell ausgleichen kann.
- Label-Fehler finden: Abweichungen eines Modells von den vorgegebenen Labels deuten auf wahrscheinliche Fehler hin. Eine Studie von Northcutt, Athalye und Mueller aus dem Jahr 2021 fand Label-Fehler in durchschnittlich mindestens 3,3 % der Testbeispiele in 10 beliebten Datensätzen und in mindestens 6 % der ImageNet-Validierungsdaten.
- Gezielte Datenerfassung und synthetische Daten: Eine Fehleranalyse nach Klasse, Szene, Beleuchtung oder Objektgröße zeigt, wo ein Modell versagt. Neue Beispiele genau für diese Teilmengen helfen mehr als zufällige Ergänzungen.
- Datenbereinigung: Beschädigte Dateien, irrelevante Bilder und Duplikate entfernen, insbesondere nahezu identische Bilder, die sowohl in der Trainings- als auch in der Testaufteilung vorkommen.
- Datenerweiterung: Die Bandbreite der Beleuchtung, des Maßstabs und der Blickwinkel erweitern, die das Modell sieht, ohne neue Bilder zu erfassen.
Duplikate in verschiedenen Aufteilungen verursachen Datenlecks, die Testergebnisse aufblähen. Eine unausgewogene Klassenverteilung ermöglicht einem Modell eine hohe Genauigkeit, obwohl es die wichtige seltene Klasse übersieht, etwa bei der Erkennung von Fertigungsfehlern, wo fehlerhafte Teile selten sind. In der medizinischen Bildanalyse sind Datensätze klein und Expertenlabels teuer, daher sind konsistente, überprüfte Labels wichtiger als die Datenmenge.
Der datenorientierte Kreislauf#
Ein datenorientiertes Team lässt das Modell unverändert, untersucht seine Fehler mit Werkzeugen wie einer Konfusionsmatrix und passt die Daten daraufhin an. In der Lektion Erste Feinabstimmung und der Iterationskreislauf wird etwa die schwächste Klasse eines YOLO26-Modells zum Ansatzpunkt für die nächste Anpassung des Datensatzes:
Dieses Beispiel verfälscht 20 % der Labels im handgeschriebenen Zifferndatensatz von scikit-learn, markiert Beispiele, deren Out-of-Fold-Vorhersage nicht mit ihrem Label übereinstimmt, und trainiert dasselbe Modell anschließend ohne diese Beispiele erneut:
import numpy as np
from sklearn.datasets import load_digits
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import cross_val_predict, train_test_split
X, y = load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)
# Replace 20% of the training labels with random digits to mimic annotation errors
rng = np.random.default_rng(0)
noisy = y_train.copy()
flip = rng.random(len(noisy)) < 0.2
noisy[flip] = rng.integers(0, 10, flip.sum())
wrong = noisy != y_train # some random digits match the true label
# The model stays fixed; only the training data changes
model = LogisticRegression(max_iter=5000)
print(f"noisy labels: {model.fit(X_train, noisy).score(X_test, y_test):.1%} test accuracy")
# Flag examples whose out-of-fold prediction disagrees with their label, then drop them
keep = cross_val_predict(model, X_train, noisy, cv=5) == noisy
print(f"flagged {(~keep).sum()} examples, {(~keep & wrong).sum()} of {wrong.sum()} wrong labels")
print(f"cleaned labels: {model.fit(X_train[keep], noisy[keep]).score(X_test, y_test):.1%} test accuracy")Die Testgenauigkeit steigt von 87,0 % auf 94,1 %, ohne das Modell zu verändern. Der Filter markiert 354 Beispiele: 211 der 213 falsch gelabelten Beispiele und 143 ungewöhnliche, aber korrekt gelabelte Beispiele. Der bereinigte Datensatz verliert also neben fast allen Fehlern auch einige gültige Beispiele.
Um Datenänderungen vergleichen zu können, muss genau bekannt sein, welche Daten zum Training welches Modells verwendet wurden. Die Ultralytics Platform speichert unveränderliche Datensatzversionen: Die Option zum Speichern einer Datensatzversion beim Cloud-Training verknüpft jedes Modell mit dem Snapshot, mit dem es trainiert wurde. „Versionen vergleichen“ listet die Bilder, Annotationen und Klassen auf, die sich zwischen zwei Snapshots geändert haben. Der Tab „Modelle“ des Datensatzes zeigt neben wichtigen Kennzahlen wie mAP50-95 auch die Datensatzversion jedes Modells an.
Datenzentrierte KI und verwandte Begriffe#
- Aktives Lernen: Wählt aus, welche ungelabelten Beispiele als Nächstes gelabelt werden sollen, üblicherweise jene, bei denen sich das Modell am unsichersten ist. Es ist eine Technik der datenorientierten KI.
- Datenkreislauf: Der Produktionskreislauf, in dem die Eingaben und Fehler eines bereitgestellten Modells zu neuen Trainingsdaten werden, sodass die datenorientierte Arbeit mit jeder Version erneut beginnt.
- Betrieb von Machine-Learning-Systemen (MLOps): Die technischen Praktiken zum Versionieren, Trainieren, Bereitstellen und Überwachen von Modellen. Sie machen Datenänderungen reproduzierbar und vergleichbar.










