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 erstellt, um eine schnellere und einfacher zu verwendende Version von ImageNet für die Softwareentwicklung und den Bildungsbereich bereitzustellen.

Hauptmerkmale

  • ImageNette enthält Bilder aus 10 verschiedenen Klassen, wie z. B. Tench, English Springer, Kassettenabspielgerät, Kettensäge, Kirche, Waldhorn, Müllwagen, Zapfsäule, Golfball, Fallschirm.
  • Der Datensatz umfasst Farbbilder mit unterschiedlichen Abmessungen.
  • ImageNette wird häufig für das Training und Testen im Bereich des maschinellen Lernens verwendet, insbesondere für Bildklassifizierungsaufgaben.

Dataset-Struktur

Der ImageNette-Datensatz ist in zwei Teilmengen unterteilt:

  1. Trainingsdatensatz: Diese Teilmenge enthält mehrere Tausend Bilder, die zum Trainieren von Modellen des maschinellen Lernens verwendet werden. Die genaue Anzahl variiert je nach Klasse.
  2. Validierungsdatensatz: 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 Evaluieren von Deep-Learning-Modellen in Bildklassifizierungsaufgaben verwendet, wie z. B. Convolutional Neural Networks (CNNs) und verschiedene andere Algorithmen für maschinelles Lernen. Das unkomplizierte Format und die gut gewählten Klassen des Datensatzes machen ihn zu einer praktischen Ressource für Anfänger und erfahrene Praktiker auf dem Gebiet des maschinellen Lernens und der Computer Vision.

Nutzung

Um ein Modell auf dem ImageNette-Datensatz für 100 Epochen mit einer Standardbildgröße von 224x224 zu trainieren, können Sie die folgenden Code-Snippets verwenden. Eine umfassende Liste der verfügbaren Argumente finden Sie auf der Seite Training des Modells.

Trainingsbeispiel

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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 classify train data=imagenette model=yolo11n-cls.pt epochs=100 imgsz=224

sample_images und Anmerkungen

Der ImageNette-Datensatz enthält Farbbilder verschiedener Objekte und Szenen und bietet einen vielfältigen Datensatz für Bildklassifizierungs-Aufgaben. Hier sind einige Beispiele für Bilder aus dem Datensatz:

Beispielbild des Datensatzes

Das Beispiel demonstriert die Vielfalt und Komplexität der Bilder im ImageNette-Datensatz und unterstreicht die Bedeutung eines vielfältigen Datensatzes für das Training robuster Bildklassifizierungsmodelle.

ImageNette160 und ImageNette320

Für ein schnelleres Prototyping und Training ist der ImageNette-Datensatz auch in zwei reduzierten Größen verfügbar: ImageNette160 und ImageNette320. Diese Datensätze behalten die gleichen Klassen und die gleiche Struktur wie der vollständige ImageNette-Datensatz bei, aber die Bilder werden auf eine kleinere Dimension skaliert. Daher sind diese Versionen des Datensatzes besonders nützlich für vorläufige Modelltests oder wenn die Rechenressourcen begrenzt sind.

Um diese Datensätze zu verwenden, ersetzen Sie einfach 'imagenette' durch 'imagenette160' oder 'imagenette320' im Trainingsbefehl. Die folgenden Code-Snippets veranschaulichen dies:

Trainingsbeispiel mit ImageNette160

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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 classify train data=imagenette160 model=yolo11n-cls.pt epochs=100 imgsz=160

Trainingsbeispiel mit ImageNette320

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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 classify train data=imagenette320 model=yolo11n-cls.pt epochs=100 imgsz=320

Diese kleineren Versionen des Datensatzes ermöglichen schnelle Iterationen während des Entwicklungsprozesses und bieten gleichzeitig wertvolle und realistische Bildklassifizierungsaufgaben.

Zitate und Danksagungen

Wenn Sie den ImageNette-Datensatz in Ihrer Forschungs- oder Entwicklungsarbeit verwenden, würdigen Sie ihn bitte entsprechend. Weitere Informationen über den ImageNette-Datensatz finden Sie auf der ImageNette-Datensatz GitHub-Seite.

FAQ

Was ist der ImageNette-Datensatz?

Der ImageNette-Datensatz ist eine vereinfachte Teilmenge des größeren ImageNet-Datensatzes, die nur 10 leicht unterscheidbare Klassen wie z. B. Schleie, English Springer und Waldhorn enthält. Er wurde erstellt, um einen besser handhabbaren Datensatz für das effiziente Training und die Bewertung von Bildklassifizierungsmodellen anzubieten. Dieser Datensatz ist besonders nützlich für die schnelle Softwareentwicklung und für Bildungszwecke im Bereich maschinelles Lernen und Computer Vision.

Wie kann ich den ImageNette-Datensatz zum Trainieren eines YOLO-Modells verwenden?

Um ein YOLO-Modell auf dem ImageNette-Datensatz für 100 Epochen zu trainieren, können Sie die folgenden Befehle verwenden. Stellen Sie sicher, dass die Ultralytics YOLO-Umgebung eingerichtet ist.

Trainingsbeispiel

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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 classify train data=imagenette model=yolo11n-cls.pt epochs=100 imgsz=224

Weitere Informationen finden Sie auf der Trainingsdokumentationsseite.

Warum sollte ich ImageNette für Bildklassifizierungsaufgaben verwenden?

Der ImageNette-Datensatz bietet aus mehreren Gründen Vorteile:

  • Schnell und einfach: Es enthält nur 10 Klassen, wodurch es weniger komplex und zeitaufwändig ist als größere Datensätze.
  • Pädagogische Nutzung: Ideal zum Erlernen und Lehren der Grundlagen der Bildklassifizierung, da es weniger Rechenleistung und Zeit benötigt.
  • Vielseitigkeit: Weit verbreitet zum Trainieren und Benchmarking verschiedener Modelle des maschinellen Lernens, insbesondere bei der Bildklassifizierung.

Weitere Informationen zum Modelltraining und zur Dataset-Verwaltung finden Sie im Abschnitt Dataset-Struktur.

Kann der ImageNette-Datensatz mit verschiedenen Bildgrößen verwendet werden?

Ja, das ImageNette-Dataset ist auch in zwei verkleinerten Versionen verfügbar: ImageNette160 und ImageNette320. Diese Versionen helfen bei der schnelleren Prototypenerstellung und sind besonders nützlich, wenn die Rechenressourcen begrenzt sind.

Trainingsbeispiel mit ImageNette160

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-cls.pt")

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

Weitere Informationen finden Sie unter Training mit ImageNette160 und ImageNette320.

Was sind einige praktische Anwendungen des ImageNette-Datensatzes?

Der ImageNette-Datensatz wird häufig verwendet in:

  • Bildungsumgebungen: Um Anfänger in maschinellem Lernen und Computer Vision auszubilden.
  • Softwareentwicklung: Für schnelles Prototyping und Entwicklung von Bildklassifizierungsmodellen.
  • Deep-Learning-Forschung: Zur Evaluierung und zum Benchmarking der Leistung verschiedener Deep-Learning-Modelle, insbesondere von Convolutional Neural Networks (CNNs).

Detaillierte Anwendungsfälle finden Sie im Abschnitt Anwendungen.



📅 Vor 1 Jahr erstellt ✏️ Vor 5 Monaten aktualisiert

Kommentare