Ultralytics YOLO27:
Get Started

ImageWoof-Datensatz#

Der ImageWoof-Datensatz ist eine Teilmenge von ImageNet mit 10 Hunderassen, die absichtlich schwer voneinander zu unterscheiden sind. fast.ai hat ihn als anspruchsvollere Herausforderung für Bildklassifizierungsalgorithmen erstellt. Er enthält 12.954 Farbbilder – 9.025 für das Training und 3.929 für die Validierung – mit Rassen wie Beagle, Shih-Tzu und Golden Retriever. Dadurch müssen Modelle feine Unterschiede erkennen, statt lediglich offensichtliche Objektkategorien zu unterscheiden.

Wichtige Funktionen#

  • ImageWoof umfasst 12.954 Bilder aus 10 Hunderassen: Australian Terrier, Border Terrier, Samojede, Beagle, Shih-Tzu, Englischer Foxhound, Rhodesian Ridgeback, Dingo, Golden Retriever und Bobtail.
  • Der Datensatz enthält eine vordefinierte Aufteilung mit 9.025 Trainingsbildern und 3.929 Validierungsbildern. Die Bilder sind in verschiedenen Auflösungen verfügbar (Originalgröße, 320px, 160px), um unterschiedlichen Rechenbudgets gerecht zu werden.
  • Außerdem ist eine Version mit verrauschten Labels enthalten, die ein realistischeres Szenario bietet, in dem Labels nicht immer zuverlässig sind.

Datensatzstruktur#

ImageWoof enthält eine vordefinierte Aufteilung in Trainings- und Validierungsdaten. Jede Hunderasse befindet sich in einem eigenen Ordner:

AufteilungBilderKlassen
Trainieren9,02510
Validierung3,92910

Da alle 10 Klassen Hunderassen sind, soll die Aufteilung die Unterscheidung feinkörniger Klassen – also visuell ähnlicher Kategorien – prüfen und nicht die allgemeine Objekterkennung des vollständigen ImageNet-Datensatzes.

Anwendungsfälle#

Der ImageWoof-Datensatz wird häufig zum Trainieren und Auswerten von Deep-Learning-Modellen mit komplexeren und ähnlicheren Klassen verwendet. Die Herausforderung liegt in den feinen Unterschieden zwischen den Hunderassen, die die Leistungsfähigkeit und Generalisierung der Modelle auf die Probe stellen. Der Datensatz ist besonders wertvoll für:

  • Das Benchmarking der Klassifizierungsleistung bei feinkörnigen Kategorien
  • Das Testen der Robustheit von Modellen gegenüber ähnlich aussehenden Klassen
  • Die Entwicklung von Algorithmen, die feine visuelle Unterschiede erkennen können
  • Die Auswertung des Transferlernens von allgemeinen auf spezifische Anwendungsbereiche

Verwendung#

Um ein Klassifizierungsmodell 100 Epochen lang mit dem ImageWoof-Datensatz und einer Bildgröße von 224x224 zu trainieren, verwende die folgenden Codeausschnitte. Eine vollständige Liste der verfügbaren Argumente findest du auf der Seite zum Training von Modellen.

Trainingsbeispiel
from ultralytics import YOLO

# Ein Modell laden
model = YOLO("yolo26n-cls.pt")  # ein vortrainiertes Modell laden (für das Training empfohlen)

# Das Modell trainieren
results = model.train(data="imagewoof", epochs=100, imgsz=224)

Datensatzvarianten#

ImageWoof ist in drei Größen verfügbar, um unterschiedlichen Forschungsanforderungen und Rechenbudgets gerecht zu werden:

  1. Volle Größe (imagewoof): Die Originalversion mit Bildern in voller Größe, ideal für das abschließende Training und das Benchmarking der Leistung.
  2. Mittlere Größe (imagewoof320): Bilder, deren maximale Kantenlänge auf 320 Pixel verkleinert wurde. Diese Variante eignet sich für schnelleres Training, ohne die Modellleistung wesentlich zu beeinträchtigen.
  3. Kleine Größe (imagewoof160): Bilder, deren maximale Kantenlänge auf 160 Pixel verkleinert wurde. Diese Variante ist für schnelles Prototyping und Experimente gedacht, bei denen die Trainingsgeschwindigkeit entscheidend ist.

Um diese Varianten zu verwenden, ersetze im Datensatzargument einfach imagewoof durch imagewoof320 oder imagewoof160. Zum Beispiel:

Beispiel
from ultralytics import YOLO

# Ein Modell laden
model = YOLO("yolo26n-cls.pt")  # ein vortrainiertes Modell laden (für das Training empfohlen)

# Für den mittelgroßen Datensatz
model.train(data="imagewoof320", epochs=100, imgsz=224)

# Für den kleinen Datensatz
model.train(data="imagewoof160", epochs=100, imgsz=224)

Beachte, dass kleinere Bilder wahrscheinlich zu einer geringeren Klassifizierungsgenauigkeit führen, sich aber hervorragend für schnelle Entwicklungszyklen in frühen Entwicklungsphasen eines Modells eignen. Mit der Ultralytics Platform kannst du außerdem Klassifizierungsdatensätze verwalten und in der Cloud trainieren.

Beispielbilder und Annotationen#

Der ImageWoof-Datensatz enthält farbenfrohe Bilder verschiedener Hunderassen und bietet eine anspruchsvolle Datengrundlage für Bildklassifizierungsaufgaben. Hier sind einige Beispielbilder aus dem Datensatz:

Beispiele aus dem ImageWoof-Datensatz zur Klassifizierung von Hunderassen

Das Beispiel zeigt die feinen Unterschiede und Gemeinsamkeiten zwischen den verschiedenen Hunderassen und verdeutlicht die Komplexität und Schwierigkeit der Klassifizierungsaufgabe.

Zitate und Danksagungen#

Wenn du den ImageWoof-Datensatz in deiner Forschung oder Entwicklungsarbeit verwendest, erwähne bitte die Ersteller des Datensatzes und verlinke auf das offizielle Datensatz-Repository.

Wir möchten dem Team von fast.ai dafür danken, dass es ImageWoof erstellt und gepflegt hat und damit eine wertvolle Ressource für die Forschungsgemeinschaft in den Bereichen maschinelles Lernen und Computer Vision bereitstellt. Weitere Informationen zu ImageWoof findest du im ImageWoof-Datensatz-Repository.

Häufig gestellte Fragen#

  • Der ImageWoof-Datensatz ist eine anspruchsvolle Teilmenge von ImageNet, die sich auf 10 Hunderassen konzentriert und 12.954 Bilder umfasst (9.025 Trainings- und 3.929 Validierungsbilder). Der von fast.ai entwickelte Datensatz soll die Grenzen von Bildklassifizierungsmodellen ausloten und umfasst Rassen wie Beagle, Shih-Tzu und Golden Retriever. Der Datensatz ist in verschiedenen Auflösungen verfügbar (Originalgröße, 320 px, 160 px) und enthält sogar verrauschte Labels für realistischere Trainingsszenarien. Damit eignet er sich ideal für die Entwicklung fortgeschrittener Deep-Learning-Modelle.

  • ImageWoof umfasst insgesamt 12.954 Bilder — 9.025 Trainings- und 3.929 Validierungsbilder — aus 10 Hunderassen: Australian Terrier, Border Terrier, Samojede, Beagle, Shih-Tzu, Englischer Foxhound, Rhodesian Ridgeback, Dingo, Golden Retriever und Bobtail. Jede Rasse wird in einem eigenen Ordner abgelegt, entsprechend der standardmäßigen Klassifizierungsstruktur, die Ultralytics erwartet.

  • Um mit Ultralytics YOLO ein Klassifizierungsmodell auf dem ImageWoof-Datensatz 100 Epochen lang mit einer Bildgröße von 224x224 zu trainieren, verwende den folgenden Code:

    Trainingsbeispiel
    from ultralytics import YOLO
    
    model = YOLO("yolo26n-cls.pt")  # Vortrainiertes Modell laden
    results = model.train(data="imagewoof", epochs=100, imgsz=224)

    Weitere Informationen zu den verfügbaren Trainingsargumenten findest du auf der Seite Training.

  • Der ImageWoof-Datensatz ist in drei Größen verfügbar:

    1. Originalgröße (imagewoof): Ideal für das abschließende Training und Benchmarking; enthält Bilder in voller Größe.
    2. Mittlere Größe (imagewoof320): Bilder mit einer maximalen Kantenlänge von 320 Pixeln, geeignet für schnelleres Training.
    3. Kleine Größe (imagewoof160): Bilder mit einer maximalen Kantenlänge von 160 Pixeln, ideal für schnelles Prototyping.

    Verwende diese Versionen, indem du imagewoof im Datensatzargument entsprechend ersetzt. Beachte, dass kleinere Bilder möglicherweise eine geringere Genauigkeit bei der Klassifizierung liefern, aber schnellere Iterationen ermöglichen.

  • Verrauschte Labels im ImageWoof-Datensatz bilden reale Bedingungen nach, unter denen Labels nicht immer korrekt sind. Das Training mit diesen Daten trägt dazu bei, die Robustheit und Generalisierungsfähigkeit bei Bildklassifizierungsaufgaben zu verbessern. So lernen Modelle, mehrdeutige oder falsch beschriftete Daten zuverlässig zu verarbeiten, wie sie in praktischen Anwendungen häufig vorkommen.

  • Die größte Herausforderung bei ImageWoof sind die feinen Unterschiede zwischen den enthaltenen Hunderassen. Da der Datensatz sich auf 10 eng verwandte Rassen konzentriert, erfordert ihre Unterscheidung fortschrittlichere und gezielter abgestimmte Bildklassifizierungsmodelle. Dadurch eignet sich ImageWoof hervorragend als Benchmark, um die Leistungsfähigkeit und Verbesserungen von Deep-Learning-Modellen zu testen.

Kommentare