Ultralytics YOLO27: Trag dich in die Warteliste ein.
YOLO lizenzieren
Zurück zum Ultralytics-Glossar

Test Data

Testdaten sind eine zurückgehaltene Teilmenge, die erst nach Abschluss des gesamten Trainings und der Feinabstimmung ausgewertet wird, um die Leistung bei neuen Daten zu schätzen. Behandelt werden Aufteilung, Umfang, Fallstricke und Code.

Testdaten, auch Testsatz oder Holdout-Satz genannt, sind der Teil eines Datensatzes, der für die Bewertung eines fertig trainierten Modells für maschinelles Lernen (ML) reserviert ist. Die Testdaten fließen weder in die Anpassung der Modellgewichte noch in Entwicklungsentscheidungen ein, etwa zur Architektur, zu Hyperparametern, zum Prüfpunkt oder zum Konfidenz-Schwellenwert. Sie werden erst bewertet, wenn diese Entscheidungen endgültig getroffen sind. Da weder das Modell noch seine Entwickler an die Testdaten angepasst wurden, liefern ihre Genauigkeit, ihr Recall oder ihre mittlere durchschnittliche Präzision (mAP) eine unverzerrte Schätzung dafür, wie das Modell mit neuen Daten aus derselben Verteilung abschneidet. Anhand dieser Zahl entscheiden Teams, ob ein Modell zur Bereitstellung bereit ist.

Aufteilung in Trainings-, Validierungs- und Testsätze#

Ein Datensatz wird üblicherweise in drei voneinander getrennte Sätze mit unterschiedlichen Aufgaben aufgeteilt:

  • Trainingsdaten: Beispiele, anhand derer der Optimierer lernt und die Gewichte anpasst, um den Verlust zu verringern.
  • Validierungsdaten: Werden während der Entwicklung wiederholt bewertet, um Hyperparameter zu vergleichen, das Training frühzeitig zu beenden und den besten Prüfpunkt auszuwählen.
  • Testdaten: Werden am Ende einmalig bewertet, um die Metrik anzugeben, anhand derer das Projekt beurteilt wird.

Bei Datensätzen mit Tausenden von Beispielen sind Aufteilungen wie 80/10/10 oder 70/15/15 üblich; bei Millionen von Beispielen können wenige Prozent zurückgehalten werden. Wie groß ein Testsatz sein muss, hängt von der erforderlichen Genauigkeit ab: Der Standardfehler einer auf n Beispielen gemessenen Genauigkeit p ist die Quadratwurzel aus p(1 − p)/n. Bei 1.000 Testbildern und 90 % Genauigkeit liegt das 95-%-Konfidenzintervall daher bei etwa ±1,9 Prozentpunkten; bei 10.000 Bildern verengt es sich auf etwa ±0,6. Die Bezeichnungen unterscheiden sich je nach Fachgebiet. Viele Arbeiten geben ihre endgültigen ImageNet-Ergebnisse für den offiziellen Validierungssatz an, da die Testlabels von ImageNet nicht öffentlich sind. In Ultralytics YOLO erfordert eine Dataset-YAML-Datei die Pfade train und val und akzeptiert optional den Pfad test. Beim Training wird val nach jeder Epoche bewertet, um best.pt auszuwählen. Mit model.val(data="data.yaml", split="test") bewertest du das fertige Modell anhand der zurückgehaltenen Bilder im Validierungsmodus.

Warum der Testsatz unberührt bleiben muss#

Jede Entscheidung, die du anhand eines Ergebnisses triffst, passt ein wenig an diese Daten an. Wenn viele Konfigurationen auf dem Validierungssatz verglichen werden, ist das ausgewählte Modell teilweise einfach dasjenige, das bei genau diesen Beispielen Glück hatte. Sein Validierungsergebnis überschätzt daher seine Leistung bei anderen Daten. Das folgende scikit-learn-Experiment wählt für einen K-Nächste-Nachbarn-Klassifikator auf einem kleinen, verrauschten Datensatz die beste Anzahl an Nachbarn aus und vergleicht die Genauigkeit des ausgewählten Modells auf Validierungs- und Testdaten für 30 zufällige Datensätze:

import numpy as np
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier

val_scores, test_scores = [], []
for seed in range(30):
    # A small, noisy dataset split 60/20/20 into train, validation, and test
    X, y = make_classification(n_samples=400, n_features=20, n_informative=4, flip_y=0.2, random_state=seed)
    X_train, X_rest, y_train, y_rest = train_test_split(X, y, test_size=0.4, random_state=seed)
    X_val, X_test, y_val, y_test = train_test_split(X_rest, y_rest, test_size=0.5, random_state=seed)

    # Model selection: keep the neighbor count with the best validation accuracy
    scores = {k: KNeighborsClassifier(k).fit(X_train, y_train).score(X_val, y_val) for k in range(1, 51)}
    best_k = max(scores, key=scores.get)
    val_scores.append(scores[best_k])

    # The test set is scored once, after the choice is final
    test_scores.append(KNeighborsClassifier(best_k).fit(X_train, y_train).score(X_test, y_test))

print(f"Chosen model, mean of 30 runs: validation {np.mean(val_scores):.3f}, test {np.mean(test_scores):.3f}")

Die ausgewählten Modelle erreichen im Durchschnitt 0,805 auf den Validierungsdaten und 0,758 auf den Testdaten. Die Auswahl unter 50 Kandidaten hat die Validierungsschätzung also um fast fünf Prozentpunkte erhöht. Eine Abstimmung anhand der Testdaten würde diese Abweichung verbergen und denselben Optimismus auf das veröffentlichte Ergebnis übertragen – eine Form von Datenleckage. Öffentliche Benchmarks beugen dem vor, indem sie Labels zurückhalten: Die Ergebnisse auf dem Test-dev-Satz von COCO werden durch das Einreichen von Vorhersagen bei einem Bewertungsserver ermittelt. Bei großen Sprachmodellen (LLMs) verfälschen Testfragen, die in den Webdaten des Vortrainings enthalten sind, einen Benchmark. Deshalb nimmt LiveCodeBench fortlaufend neue Wettbewerbsaufgaben auf und bewertet jedes Modell anhand von Aufgaben, die nach dem Ende seines Trainings veröffentlicht wurden.

Einen zuverlässigen Testsatz erstellen#

Ein Testergebnis sagt die Leistung in der Praxis nur dann voraus, wenn der Testsatz den Daten ähnelt, auf die das Modell treffen wird – seien es Straßenaufnahmen für autonome Fahrzeuge oder Scans für die medizinische Bildanalyse:

  • Einsatzbedingungen abbilden: Kameras, Beleuchtung, Jahreszeiten, geografische Regionen und Klassenverteilung sollten der Produktionsumgebung entsprechen. Ein Fahrdetektor braucht Nacht-, Regen- und Schneeszenen im Testsatz, selbst wenn die meisten Fahrten bei klarem Wetter stattfinden.
  • Halte es unabhängig: Frames aus demselben Video, Scans derselben Patientin oder desselben Patienten und Fotos derselben Szene gehören in denselben Split. Zeitlich geordnete Daten werden nach Datum aufgeteilt, sodass das Modell mit zukünftigen Daten getestet wird.
  • Quellenübergreifend testen: In der medizinischen Bildgebung zeigt die externe Validierung anhand von Scans anderer Krankenhäuser und Scannermodelle, ob ein Modell Anatomie oder die Geräte eines einzelnen Standorts gelernt hat.
  • Labels bereinigen: Fehler in Testlabels begrenzen die messbare Genauigkeit und können die Rangfolge von Modellen verändern. Deshalb sollten Testlabels besonders sorgfältig geprüft werden.
  • Ergebnisse aufschlüsseln: Metriken pro Klasse und Bedingung decken Fehler auf, die ein einziger Durchschnittswert verbirgt.

Selbst ein sorgfältig neu zusammengestellter Testsatz kann zu anderen Ergebnissen führen: Als Forschende den ImageNet-Testsatz nach dem ursprünglichen Erfassungsverfahren neu erstellten, sank die Genauigkeit bei einer breiten Modellpalette um 11 bis 14 Prozentpunkte. Die Verbesserungen beim ursprünglichen Testsatz übertrugen sich jedoch; die Autoren führten den Rückgang auf etwas schwierigere Bilder und nicht auf die jahrelange Wiederverwendung des Testsatzes zurück.

  • Kreuzvalidierung: Wechselt durch, welcher Teil der Entwicklungsdaten als Validierungsdaten dient, und liefert so eine stabilere Schätzung für die Modellauswahl. Ein separater Testsatz liefert weiterhin den endgültigen Wert.
  • Benchmark-Datensatz: Ein öffentlich zugänglicher Testsatz, den ein Forschungsgebiet gemeinsam nutzt. Da alle Teams ihn jahrelang auswerten, handelt es sich nach und nach nicht mehr um unbekannte Daten.
  • Golden-Datensatz: Ein sorgfältig zusammengestellter, hochwertiger Referenzdatensatz mit geprüften Antworten, der häufig als fester Testsatz für Regressionstests von LLM-Anwendungen dient.

Lösungen entdecken

Computer Vision im Sport

Computer Vision im Sport

Entdecke, wie Ultralytics YOLO die Sportbildanalyse voranbringt – mit Spieler- und Ballverfolgung, Leistungsanalysen, Erkenntnissen für das Coaching und der Rehabilitation von Athleten.
Mehr erfahren
Computer Vision für Luftbilder

Computer Vision für Luftbilder

Verwandle Drohnen- und Luftbilder mit Ultralytics YOLO in Echtzeit-Erkenntnisse für Landwirtschaft, Aquakultur, Naturschutz und Geodatenanalyse.
Mehr erfahren
Computer Vision in der Luft- und Raumfahrt

Computer Vision in der Luft- und Raumfahrt

Setze Computer Vision in der Luft- und Raumfahrt mit Ultralytics YOLO ein – für Flugzeuginspektionen, die Erkennung von Fremdkörpern auf Start- und Landebahnen, den Bodenbetrieb am Flughafen und die Erkennung von Verbundwerkstofffehlern.
Mehr erfahren
Computer Vision im Sicherheitsbereich

Computer Vision im Sicherheitsbereich

Schütze jeden Standort mit Ultralytics YOLO-Modellen. Vision-KI ermöglicht die Überwachung von Grundstücksgrenzen, die Erkennung von Bedrohungen, die Kennzeichenerkennung und die Sicherheit am Arbeitsplatz.
Mehr erfahren
Computer Vision in der Robotik

Computer Vision in der Robotik

Mach Maschinen mit Ultralytics YOLO-Modellen leistungsfähiger. Vision-KI in der Robotik ermöglicht autonome Navigation, Wahrnehmung, Objektverfolgung und Steuerung in Echtzeit.
Mehr erfahren
Bildverarbeitung in der Logistik

Bildverarbeitung in der Logistik

Optimiere die Logistik mit Ultralytics YOLO-Modellen. Vision AI ermöglicht die Paketprüfung, Sortierung und Fahrzeugverfolgung sowie die Sicherheitsüberwachung von Lagerhäusern in Echtzeit.
Mehr erfahren
Bildverarbeitung im Einzelhandel

Bildverarbeitung im Einzelhandel

Gestalte den Einzelhandel mit Ultralytics YOLO-Modellen neu. Vision AI ermöglicht Bestandsverfolgung, Regalüberwachung und Warteschlangenmanagement und liefert bessere Einblicke in das Kundenverhalten.
Mehr erfahren
Bildverarbeitung im Gesundheitswesen

Bildverarbeitung im Gesundheitswesen

Entwickle Lösungen für das Gesundheitswesen mit Ultralytics YOLO-Modellen. Vision AI ermöglicht im Gesundheitswesen schnellere medizinische Bildgebung, bessere Diagnostik und die Überwachung von Patienten.
Mehr erfahren
Computer Vision in der Fertigung

Computer Vision in der Fertigung

Optimiere die Fertigung mit Ultralytics-YOLO-Modellen. Vision AI ermöglicht Qualitätskontrolle, Fehlererkennung, die Überprüfung der Einhaltung von Vorgaben zu persönlicher Schutzausrüstung und die Automatisierung von Montagelinien.
Mehr erfahren
Computer Vision in der Automobilbranche

Computer Vision in der Automobilbranche

Setze Computer Vision in der Automobilbranche mit Ultralytics-YOLO-Modellen ein. Vision AI verbessert die Verkehrssicherheit, Fahrerassistenz und Fahrzeugautomatisierung – für intelligentere Straßen.
Mehr erfahren
Computer Vision in der Landwirtschaft

Computer Vision in der Landwirtschaft

Setze mit Ultralytics YOLO-Modellen KI für Bildverarbeitung in der intelligenten Landwirtschaft ein. Ermögliche die Überwachung von Nutzpflanzen, die Verfolgung von Nutztieren und Präzisionslandwirtschaft für höhere und nachhaltigere Erträge.
Mehr erfahren

Lass uns gemeinsam die Zukunft der KI gestalten!

Starte deine Reise in die Zukunft des maschinellen Lernens