Zum Inhalt springen

ImageNette Datensatz

Der ImageNette-Datensatz ist eine Teilmenge des grĂ¶ĂŸeren Imagenet-Datensatzes, enthĂ€lt aber nur 10 leicht unterscheidbare Klassen. Er wurde entwickelt, um eine schnellere und einfacher zu verwendende Version von Imagenet fĂŒr die Softwareentwicklung und den Unterricht bereitzustellen.

Hauptmerkmale

  • ImageNette enthĂ€lt Bilder aus 10 verschiedenen Klassen wie Schleie, English springer, Kassettenspieler, KettensĂ€ge, Kirche, Waldhorn, MĂŒllwagen, ZapfsĂ€ule, Golfball, Fallschirm.
  • Der Datensatz besteht aus farbigen Bildern mit unterschiedlichen Abmessungen.
  • ImageNette wird hĂ€ufig zum Trainieren und Testen im Bereich des maschinellen Lernens eingesetzt, insbesondere fĂŒr Bildklassifizierungsaufgaben.

Struktur des Datensatzes

Der ImageNette-Datensatz ist in zwei Teilmengen aufgeteilt:

  1. Training Set: Diese Teilmenge enthĂ€lt mehrere Tausend Bilder, die fĂŒr das Training von Machine-Learning-Modellen verwendet werden. Die genaue Anzahl variiert je nach Klasse.
  2. Validierungssatz: Diese Teilmenge besteht aus mehreren hundert Bildern, die zur Validierung und zum Benchmarking der trainierten Modelle verwendet werden. Auch hier variiert die genaue Anzahl je nach Klasse.

Anwendungen

Der ImageNette-Datensatz wird hĂ€ufig zum Trainieren und Bewerten von Deep-Learning-Modellen fĂŒr Bildklassifizierungsaufgaben verwendet, z. B. fĂŒr Convolutional Neural Networks (CNNs) und verschiedene andere Machine-Learning-Algorithmen. Das ĂŒbersichtliche Format und die gut ausgewĂ€hlten Klassen machen den Datensatz zu einer praktischen Ressource fĂŒr AnfĂ€nger und erfahrene Praktiker auf dem Gebiet des maschinellen Lernens und der Computer Vision.

Verwendung

Um ein Modell auf dem ImageNette-Datensatz fĂŒr 100 Epochen mit einer StandardbildgrĂ¶ĂŸe von 224x224 zu trainieren, kannst du die folgenden Codeschnipsel verwenden. Eine umfassende Liste der verfĂŒgbaren Argumente findest du auf der Seite Modelltraining.

Beispiel fĂŒr einen Zug

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n-cls.pt')  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data='imagenette', epochs=100, imgsz=224)
# Start training from a pretrained *.pt model
yolo detect train data=imagenette model=yolov8n-cls.pt epochs=100 imgsz=224

Beispielbilder und Anmerkungen

Der ImageNette-Datensatz enthĂ€lt farbige Bilder von verschiedenen Objekten und Szenen und bietet damit einen vielfĂ€ltigen Datensatz fĂŒr Bildklassifizierungsaufgaben. Hier sind einige Beispiele fĂŒr Bilder aus diesem Datensatz:

Datensatz Beispielbild

Das Beispiel zeigt die Vielfalt und KomplexitĂ€t der Bilder im ImageNette-Datensatz und verdeutlicht, wie wichtig ein vielfĂ€ltiger Datensatz fĂŒr das Training robuster Bildklassifizierungsmodelle ist.

ImageNette160 und ImageNette320

FĂŒr schnelleres Prototyping und Training ist der ImageNette-Datensatz auch in zwei reduzierten GrĂ¶ĂŸen erhĂ€ltlich: ImageNette160 und ImageNette320. Diese DatensĂ€tze enthalten die gleichen Klassen und die gleiche Struktur wie der vollstĂ€ndige ImageNette-Datensatz, aber die Bilder sind auf eine kleinere GrĂ¶ĂŸe reduziert. Daher sind diese Versionen des Datensatzes besonders nĂŒtzlich fĂŒr erste Modelltests oder wenn die Rechenressourcen begrenzt sind.

Um diese DatensÀtze zu verwenden, ersetze einfach "imagenette" durch "imagenette160" oder "imagenette320" im Trainingsbefehl. Die folgenden Codeschnipsel veranschaulichen dies:

Ausbildungsbeispiel mit ImageNette160

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n-cls.pt')  # load a pretrained model (recommended for training)

# Train the model with ImageNette160
results = model.train(data='imagenette160', epochs=100, imgsz=160)
# Start training from a pretrained *.pt model with ImageNette160
yolo detect train data=imagenette160 model=yolov8n-cls.pt epochs=100 imgsz=160

Zugbeispiel mit ImageNette320

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n-cls.pt')  # load a pretrained model (recommended for training)

# Train the model with ImageNette320
results = model.train(data='imagenette320', epochs=100, imgsz=320)
# Start training from a pretrained *.pt model with ImageNette320
yolo detect train data=imagenette320 model=yolov8n-cls.pt epochs=100 imgsz=320

Diese kleineren Versionen des Datensatzes ermöglichen schnelle Iterationen wÀhrend des Entwicklungsprozesses und liefern dennoch wertvolle und realistische Bildklassifizierungsaufgaben.

Zitate und Danksagungen

Wenn du den ImageNette-Datensatz in deiner Forschungs- oder Entwicklungsarbeit verwendest, erwĂ€hne ihn bitte in angemessener Weise. Weitere Informationen ĂŒber den ImageNette-Datensatz findest du auf der ImageNette-Datensatz-GitHub-Seite.



Erstellt am 2023-11-12, Aktualisiert am 2024-01-12
Autoren: glenn-jocher (3)

Kommentare