Modell Training mit Ultralytics YOLO
Einführung
Training a deep learning model involves feeding it data and adjusting its parameters so that it can make accurate predictions. Train mode in Ultralytics YOLO11 is engineered for effective and efficient training of object detection models, fully utilizing modern hardware capabilities. This guide aims to cover all the details you need to get started with training your own models using YOLO11's robust set of features.
Pass auf: How to Train a YOLO model on Your Custom Dataset in Google Colab.
Warum Ultralytics YOLO für die Ausbildung wählen?
Here are some compelling reasons to opt for YOLO11's Train mode:
- Effizienz: Hol das Beste aus deiner Hardware heraus, egal ob du mit einem einzelnenGPU System arbeitest oder über mehrere GPUs skalierst.
- Vielseitigkeit: Trainiere mit benutzerdefinierten Datensätzen zusätzlich zu den bereits verfügbaren wie COCO, VOC und ImageNet.
- Benutzerfreundlich: Einfache, aber leistungsstarke Schnittstellen CLI und Python sorgen für ein unkompliziertes Training.
- Flexibilität der Hyperparameter: Eine breite Palette von anpassbaren Hyperparametern zur Feinabstimmung der Modellleistung.
Hauptmerkmale des Zugmodus
The following are some notable features of YOLO11's Train mode:
- Automatischer Datensatz-Download: Standarddatensätze wie COCO, VOC und ImageNet werden bei der ersten Verwendung automatisch heruntergeladen.
- Multi-GPU Unterstützung: Skaliere deine Trainingsbemühungen nahtlos auf mehrere GPUs, um den Prozess zu beschleunigen.
- Hyperparameter-Konfiguration: Die Option, Hyperparameter über YAML-Konfigurationsdateien oder CLI Argumente zu ändern.
- Visualisierung und Überwachung: Echtzeit-Tracking von Trainingsmetriken und Visualisierung des Lernprozesses für bessere Einblicke.
Tipp
- YOLO11 datasets like COCO, VOC, ImageNet and many others automatically download on first use, i.e.
yolo train data=coco.yaml
Verwendungsbeispiele
Train YOLO11n on the COCO8 dataset for 100 epochs at image size 640. The training device can be specified using the device
Argument. Wenn kein Argument übergeben wird GPU device=0
wird verwendet, falls verfügbar, ansonsten device='cpu'
verwendet werden. Eine vollständige Liste der Trainingsargumente findest du im Abschnitt Argumente weiter unten.
Single-GPU und CPU Ausbildungsbeispiel
Das Gerät wird automatisch bestimmt. Wenn ein GPU verfügbar ist, wird es verwendet, ansonsten beginnt das Training auf CPU.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n.yaml") # build a new model from YAML
model = YOLO("yolo11n.pt") # load a pretrained model (recommended for training)
model = YOLO("yolo11n.yaml").load("yolo11n.pt") # build from YAML and transfer weights
# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Build a new model from YAML and start training from scratch
yolo detect train data=coco8.yaml model=yolo11n.yaml epochs=100 imgsz=640
# Start training from a pretrained *.pt model
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640
# Build a new model from YAML, transfer pretrained weights to it and start training
yolo detect train data=coco8.yaml model=yolo11n.yaml pretrained=yolo11n.pt epochs=100 imgsz=640
Multi-GPU Ausbildung
Multi-GPU Training ermöglicht eine effizientere Nutzung der verfügbaren Hardware-Ressourcen, indem die Trainingslast auf mehrere GPUs verteilt wird. Diese Funktion ist sowohl über die Python API als auch über die Befehlszeilenschnittstelle verfügbar. Um das Multi-GPU training zu aktivieren, gibst du die GPU Geräte-IDs an, die du verwenden möchtest.
Multi-GPU Ausbildungsbeispiel
Um mit 2 GPUs zu trainieren, CUDA Geräte 0 und 1, verwende die folgenden Befehle. Erweitere bei Bedarf auf weitere GPUs.
Apple M1 und M2 MPS Schulung
Mit der Unterstützung der Apple M1 und M2 Chips, die in den Ultralytics YOLO Modellen integriert sind, ist es jetzt möglich, deine Modelle auf Geräten zu trainieren, die das leistungsstarke Metal Performance Shaders (MPS) Framework nutzen. Die MPS bietet eine leistungsstarke Möglichkeit, Berechnungen und Bildverarbeitungsaufgaben auf Apples kundenspezifischem Silizium auszuführen.
Um das Training auf Apple M1- und M2-Chips zu aktivieren, solltest du beim Starten des Trainingsprozesses "mps" als Gerät angeben. Im Folgenden findest du ein Beispiel dafür, wie du dies in Python und über die Befehlszeile tun kannst:
MPS Ausbildung Beispiel
Dadurch wird die Rechenleistung der M1/M2-Chips genutzt, was eine effizientere Bearbeitung der Trainingsaufgaben ermöglicht. Ausführlichere Anleitungen und erweiterte Konfigurationsoptionen findest du in der DokumentationPyTorch MPS .
Wiederaufnahme unterbrochener Schulungen
Die Wiederaufnahme des Trainings aus einem zuvor gespeicherten Zustand ist eine wichtige Funktion bei der Arbeit mit Deep Learning-Modellen. Dies kann in verschiedenen Szenarien nützlich sein, z. B. wenn der Trainingsprozess unerwartet unterbrochen wurde oder wenn du ein Modell mit neuen Daten oder für mehrere Epochen weiter trainieren möchtest.
When training is resumed, Ultralytics YOLO loads the weights from the last saved model and also restores the optimizer state, learning rate scheduler, and the epoch number. This allows you to continue the training process seamlessly from where it was left off.
Du kannst das Training auf Ultralytics YOLO einfach wieder aufnehmen, indem du die resume
Argument zu True
beim Aufruf der train
Methode und die Angabe des Pfads zur .pt
Datei, die die teilweise trainierten Modellgewichte enthält.
Im Folgenden findest du ein Beispiel, wie du ein unterbrochenes Training mit Python und über die Kommandozeile wieder aufnehmen kannst:
Beispiel Lebenslauf Ausbildung
Durch die Einstellung resume=True
, die train
Funktion setzt das Training an der Stelle fort, an der es aufgehört hat, und verwendet dabei den Status, der in der Datei "path/to/last.pt" gespeichert ist. Wenn die resume
Argument weggelassen oder auf False
, die train
Funktion wird eine neue Trainingseinheit gestartet.
Remember that checkpoints are saved at the end of every epoch by default, or at fixed intervals using the save_period
Argument, sodass du mindestens 1 Epoche abschließen musst, um einen Trainingslauf fortzusetzen.
Zug Einstellungen
The training settings for YOLO models encompass various hyperparameters and configurations used during the training process. These settings influence the model's performance, speed, and accuracy. Key training settings include batch size, learning rate, momentum, and weight decay. Additionally, the choice of optimizer, loss function, and training dataset composition can impact the training process. Careful tuning and experimentation with these settings are crucial for optimizing performance.
Argument | Standard | Beschreibung |
---|---|---|
model |
None |
Gibt die Modelldatei für das Training an. Akzeptiert einen Pfad zu entweder einer .pt vortrainiertes Modell oder ein .yaml Konfigurationsdatei. Wichtig für die Definition der Modellstruktur oder die Initialisierung der Gewichte. |
data |
None |
Pfad zur Konfigurationsdatei des Datensatzes (z. B., coco8.yaml ). This file contains dataset-specific parameters, including paths to training and validation data, class names, and number of classes. |
epochs |
100 |
Total number of training epochs. Each epoch represents a full pass over the entire dataset. Adjusting this value can affect training duration and model performance. |
time |
None |
Maximale Trainingszeit in Stunden. Falls festgelegt, übersteuert dies die epochs Argument, so dass das Training nach der angegebenen Dauer automatisch beendet wird. Nützlich für zeitlich begrenzte Trainingsszenarien. |
patience |
100 |
Number of epochs to wait without improvement in validation metrics before early stopping the training. Helps prevent overfitting by stopping training when performance plateaus. |
batch |
16 |
Batch size, with three modes: set as an integer (e.g., batch=16 ), Auto-Modus für 60% GPU Speicherauslastung (batch=-1 ), oder Auto-Modus mit festgelegtem Nutzungsanteil (batch=0.70 ). |
imgsz |
640 |
Target image size for training. All images are resized to this dimension before being fed into the model. Affects model accuracy and computational complexity. |
save |
True |
Enables saving of training checkpoints and final model weights. Useful for resuming training or model deployment. |
save_period |
-1 |
Häufigkeit der Speicherung von Modellprüfpunkten, angegeben in Epochen. Ein Wert von -1 deaktiviert diese Funktion. Nützlich zum Speichern von Zwischenmodellen während langer Trainingseinheiten. |
cache |
False |
Ermöglicht das Zwischenspeichern von Datensatzbildern im Speicher (True /ram ), auf der Festplatte (disk ), oder deaktiviert sie (False ). Verbessert die Trainingsgeschwindigkeit, indem es die Festplattenein- und -ausgabe auf Kosten einer erhöhten Speichernutzung reduziert. |
device |
None |
Legt die Recheneinheit(en) für das Training fest: eine einzelne GPU (device=0 ), mehrere GPUs (device=0,1 ), CPU (device=cpu ), oder MPS für Apple-Silizium (device=mps ). |
workers |
8 |
Anzahl der Worker-Threads für das Laden von Daten (pro RANK wenn Multi-GPU Training). Beeinflusst die Geschwindigkeit der Datenvorverarbeitung und der Einspeisung in das Modell, besonders nützlich in MultiGPU setups. |
project |
None |
Name des Projektverzeichnisses, in dem die Trainingsergebnisse gespeichert werden. Ermöglicht die organisierte Speicherung verschiedener Experimente. |
name |
None |
Name des Trainingslaufs. Wird für die Erstellung eines Unterverzeichnisses im Projektordner verwendet, in dem die Trainingsprotokolle und -ergebnisse gespeichert werden. |
exist_ok |
False |
Bei True kann ein bestehendes Projekt/Namensverzeichnis überschrieben werden. Nützlich für iterative Experimente, ohne dass die vorherigen Ausgaben manuell gelöscht werden müssen. |
pretrained |
True |
Legt fest, ob das Training mit einem vorher trainierten Modell beginnen soll. Kann ein boolescher Wert oder ein String-Pfad zu einem bestimmten Modell sein, von dem die Gewichte geladen werden sollen. Erhöht die Trainingseffizienz und die Leistung des Modells. |
optimizer |
'auto' |
Wähle einen Optimierer für die Ausbildung. Die Optionen umfassen SGD , Adam , AdamW , NAdam , RAdam , RMSProp usw., oder auto für die automatische Auswahl auf Basis der Modellkonfiguration. Beeinflusst die Konvergenzgeschwindigkeit und Stabilität. |
verbose |
False |
Aktiviert die ausführliche Ausgabe während des Trainings und liefert detaillierte Protokolle und Fortschrittsberichte. Nützlich für die Fehlersuche und die genaue Überwachung des Trainingsprozesses. |
seed |
0 |
Legt den zufälligen Seed für das Training fest, um die Reproduzierbarkeit der Ergebnisse bei verschiedenen Läufen mit denselben Konfigurationen zu gewährleisten. |
deterministic |
True |
Erzwingt die Verwendung deterministischer Algorithmen, was die Reproduzierbarkeit sicherstellt, aber aufgrund der Beschränkung auf nicht-deterministische Algorithmen Leistung und Geschwindigkeit beeinträchtigen kann. |
single_cls |
False |
Behandelt alle Klassen in Mehrklassen-Datensätzen beim Training als eine einzige Klasse. Nützlich für binäre Klassifizierungsaufgaben oder wenn der Fokus eher auf der Anwesenheit von Objekten als auf der Klassifizierung liegt. |
rect |
False |
Ermöglicht ein rechteckiges Training, bei dem die Stapelzusammensetzung für minimale Auffüllungen optimiert wird. Dies kann die Effizienz und Geschwindigkeit verbessern, kann aber die Modellgenauigkeit beeinträchtigen. |
cos_lr |
False |
Utilizes a cosine learning rate scheduler, adjusting the learning rate following a cosine curve over epochs. Helps in managing learning rate for better convergence. |
close_mosaic |
10 |
Disables mosaic data augmentation in the last N epochs to stabilize training before completion. Setting to 0 disables this feature. |
resume |
False |
Setzt das Training ab dem letzten gespeicherten Kontrollpunkt fort. Lädt automatisch die Modellgewichte, den Optimierungsstatus und die Epochenzahl und setzt das Training nahtlos fort. |
amp |
True |
Enables Automatic Mixed Precision (AMP) training, reducing memory usage and possibly speeding up training with minimal impact on accuracy. |
fraction |
1.0 |
Gibt den Teil des Datensatzes an, der für das Training verwendet werden soll. Ermöglicht das Training auf einer Teilmenge des gesamten Datensatzes, was für Experimente oder bei begrenzten Ressourcen nützlich ist. |
profile |
False |
Ermöglicht die Erstellung von Profilen der Geschwindigkeiten von ONNX und TensorRT während des Trainings, was für die Optimierung des Modelleinsatzes nützlich ist. |
freeze |
None |
Freezes the first N layers of the model or specified layers by index, reducing the number of trainable parameters. Useful for fine-tuning or transfer learning. |
lr0 |
0.01 |
Anfängliche Lernrate (d. h. SGD=1E-2 , Adam=1E-3 ) . Die Anpassung dieses Wertes ist entscheidend für den Optimierungsprozess und beeinflusst, wie schnell die Modellgewichte aktualisiert werden. |
lrf |
0.01 |
Endgültige Lernrate als ein Bruchteil der anfänglichen Rate = (lr0 * lrf ), die in Verbindung mit Schedulern verwendet werden, um die Lernrate im Laufe der Zeit anzupassen. |
momentum |
0.937 |
Momentum factor for SGD or beta1 for Adam optimizers, influencing the incorporation of past gradients in the current update. |
weight_decay |
0.0005 |
L2 regularization term, penalizing large weights to prevent overfitting. |
warmup_epochs |
3.0 |
Anzahl der Epochen für das Aufwärmen der Lernrate, wobei die Lernrate schrittweise von einem niedrigen Wert auf die anfängliche Lernrate erhöht wird, um das Training frühzeitig zu stabilisieren. |
warmup_momentum |
0.8 |
Anfangsschwung für die Aufwärmphase, der sich im Laufe der Aufwärmphase allmählich an den eingestellten Schwung anpasst. |
warmup_bias_lr |
0.1 |
Lernrate für Bias-Parameter während der Aufwärmphase, um das Modelltraining in den ersten Epochen zu stabilisieren. |
box |
7.5 |
Weight of the box loss component in the loss function, influencing how much emphasis is placed on accurately predicting bounding box coordinates. |
cls |
0.5 |
Gewicht des Klassifizierungsverlusts in der Gesamtverlustfunktion, das die Bedeutung der korrekten Klassenvorhersage im Vergleich zu anderen Komponenten bestimmt. |
dfl |
1.5 |
Gewicht des Verteilungsfokusverlustes, der in bestimmten Versionen von YOLO für eine feinkörnige Klassifizierung verwendet wird. |
pose |
12.0 |
Gewicht des Posenverlusts in Modellen, die für die Posenschätzung trainiert wurden, was den Schwerpunkt auf die genaue Vorhersage der Posen-Keypoints legt. |
kobj |
2.0 |
Gewichtung des Objektivitätsverlusts von Schlüsselpunkten in Modellen zur Posenschätzung, die die Erkennungssicherheit mit der Posengenauigkeit in Einklang bringen. |
label_smoothing |
0.0 |
Die Glättung von Labels, d.h. die Aufweichung harter Labels zu einer Mischung aus dem Ziel-Label und einer gleichmäßigen Verteilung über die Labels, kann die Generalisierung verbessern. |
nbs |
64 |
Nominale Losgröße zur Normalisierung des Verlustes. |
overlap_mask |
True |
Determines whether segmentation masks should overlap during training, applicable in instance segmentation tasks. |
mask_ratio |
4 |
Downsample-Verhältnis für Segmentierungsmasken, das sich auf die Auflösung der beim Training verwendeten Masken auswirkt. |
dropout |
0.0 |
Dropout-Rate für die Regularisierung bei Klassifizierungsaufgaben, die eine Überanpassung durch zufälliges Weglassen von Einheiten während des Trainings verhindert. |
val |
True |
Ermöglicht die Validierung während des Trainings, so dass die Leistung des Modells regelmäßig an einem separaten Datensatz bewertet werden kann. |
plots |
False |
Erzeugt und speichert Diagramme von Trainings- und Validierungskennzahlen sowie Vorhersagebeispiele, die einen visuellen Einblick in die Modellleistung und den Lernfortschritt geben. |
Hinweis zu den Einstellungen der Chargengröße
Die batch
Argument kann auf drei Arten konfiguriert werden:
- Fixed Batch Size: Legen Sie einen ganzzahligen Wert fest (z. B.
batch=16
), indem du die Anzahl der Bilder pro Stapel direkt angibst. - Auto-Modus (60% GPU Speicher):Gebrauchen
batch=-1
um die Stapelgröße automatisch so anzupassen, dass der Speicher zu etwa 60 % genutzt wird CUDA . - Auto-Modus mit Auslastungsanteil: Legen Sie einen Bruchwert fest (z. B.
batch=0.70
), um die Stapelgröße auf der Grundlage des angegebenen Anteils der GPU Speichernutzung anzupassen.
Erweiterungseinstellungen und Hyperparameter
Augmentation techniques are essential for improving the robustness and performance of YOLO models by introducing variability into the training data, helping the model generalize better to unseen data. The following table outlines the purpose and effect of each augmentation argument:
Argument | Typ | Standard | Reichweite | Beschreibung |
---|---|---|---|---|
hsv_h |
float |
0.015 |
0.0 - 1.0 |
Passt den Farbton des Bildes um einen Bruchteil des Farbkreises an und sorgt so für Farbvariabilität. Hilft dem Modell, sich an unterschiedliche Lichtverhältnisse anzupassen. |
hsv_s |
float |
0.7 |
0.0 - 1.0 |
Ändert die Sättigung des Bildes um einen Bruchteil und beeinflusst so die Intensität der Farben. Nützlich, um unterschiedliche Umgebungsbedingungen zu simulieren. |
hsv_v |
float |
0.4 |
0.0 - 1.0 |
Ändert den Wert (die Helligkeit) des Bildes um einen Bruchteil, damit das Modell bei verschiedenen Lichtverhältnissen gut funktioniert. |
degrees |
float |
0.0 |
-180 - +180 |
Dreht das Bild zufällig innerhalb des angegebenen Gradbereichs und verbessert so die Fähigkeit des Modells, Objekte in verschiedenen Ausrichtungen zu erkennen. |
translate |
float |
0.1 |
0.0 - 1.0 |
Verschiebt das Bild horizontal und vertikal um einen Bruchteil der Bildgröße und hilft so beim Lernen, teilweise sichtbare Objekte zu erkennen. |
scale |
float |
0.5 |
>=0.0 |
Skaliert das Bild mit einem Verstärkungsfaktor und simuliert so Objekte in unterschiedlichen Entfernungen zur Kamera. |
shear |
float |
0.0 |
-180 - +180 |
Schert das Bild um einen bestimmten Grad, um den Effekt nachzuahmen, dass Objekte aus verschiedenen Winkeln betrachtet werden. |
perspective |
float |
0.0 |
0.0 - 0.001 |
Wendet eine zufällige perspektivische Transformation auf das Bild an, um die Fähigkeit des Modells zu verbessern, Objekte im 3D-Raum zu verstehen. |
flipud |
float |
0.0 |
0.0 - 1.0 |
Stellt das Bild mit der angegebenen Wahrscheinlichkeit auf den Kopf, wodurch die Datenvariabilität erhöht wird, ohne die Eigenschaften des Objekts zu beeinträchtigen. |
fliplr |
float |
0.5 |
0.0 - 1.0 |
Spiegelt das Bild mit der angegebenen Wahrscheinlichkeit von links nach rechts. Dies ist nützlich, um symmetrische Objekte zu lernen und die Vielfalt der Datensätze zu erhöhen. |
bgr |
float |
0.0 |
0.0 - 1.0 |
Dreht die Bildkanäle mit der angegebenen Wahrscheinlichkeit von RGB auf BGR um, was nützlich ist, um die Robustheit gegenüber einer falschen Kanalreihenfolge zu erhöhen. |
mosaic |
float |
1.0 |
0.0 - 1.0 |
Kombiniert vier Trainingsbilder zu einem einzigen und simuliert so verschiedene Szenenkompositionen und Objektinteraktionen. Sehr effektiv für das Verstehen komplexer Szenen. |
mixup |
float |
0.0 |
0.0 - 1.0 |
Fügt zwei Bilder und ihre Beschriftungen zu einem zusammengesetzten Bild zusammen. Verbessert die Verallgemeinerungsfähigkeit des Modells, indem es Rauschen und visuelle Variabilität einbringt. |
copy_paste |
float |
0.0 |
0.0 - 1.0 |
Kopiert Objekte aus einem Bild und fügt sie in ein anderes ein. Das ist nützlich, um die Anzahl der Objektinstanzen zu erhöhen und Objektverdeckung zu lernen. |
copy_paste_mode |
str |
flip |
- | Copy-Paste augmentation method selection among the options of ("flip" , "mixup" ). |
auto_augment |
str |
randaugment |
- | Wendet automatisch eine vordefinierte Erweiterungsrichtlinie an (randaugment , autoaugment , augmix ), die durch die Diversifizierung der visuellen Merkmale für Klassifizierungsaufgaben optimiert werden. |
erasing |
float |
0.4 |
0.0 - 0.9 |
Löscht einen Teil des Bildes während des Klassifizierungstrainings nach dem Zufallsprinzip, um das Modell dazu zu bringen, sich auf weniger offensichtliche Merkmale für die Erkennung zu konzentrieren. |
crop_fraction |
float |
1.0 |
0.1 - 1.0 |
Beschneidet das Klassifizierungsbild auf einen Bruchteil seiner Größe, um die zentralen Merkmale hervorzuheben und sich an den Maßstab des Objekts anzupassen, wodurch die Ablenkung durch den Hintergrund reduziert wird. |
Diese Einstellungen können angepasst werden, um den spezifischen Anforderungen des Datensatzes und der jeweiligen Aufgabe gerecht zu werden. Das Experimentieren mit verschiedenen Werten kann helfen, die optimale Erweiterungsstrategie zu finden, die zur besten Modellleistung führt.
Info
Weitere Informationen über Ausbildungserweiterungen findest du im Referenzteil.
Loggen
In training a YOLO11 model, you might find it valuable to keep track of the model's performance over time. This is where logging comes into play. Ultralytics' YOLO provides support for three types of loggers - Comet, ClearML, and TensorBoard.
Um einen Logger zu verwenden, wähle ihn aus dem Dropdown-Menü im obigen Codeschnipsel aus und führe ihn aus. Der ausgewählte Logger wird installiert und initialisiert.
Comet
Comet ist eine Plattform, mit der Datenwissenschaftler und Entwickler Experimente und Modelle verfolgen, vergleichen, erklären und optimieren können. Sie bietet Funktionen wie Echtzeit-Metriken, Code-Diffs und die Verfolgung von Hyperparametern.
Um Comet zu verwenden:
Denke daran, dich auf der Website Comet anzumelden und deinen API-Schlüssel zu erhalten. Diesen musst du zu deinen Umgebungsvariablen oder deinem Skript hinzufügen, um deine Experimente zu protokollieren.
ClearML
ClearML ist eine Open-Source-Plattform, die die Verfolgung von Experimenten automatisiert und bei der effizienten gemeinsamen Nutzung von Ressourcen hilft. Sie wurde entwickelt, um Teams dabei zu helfen, ihre ML-Arbeit effizienter zu verwalten, auszuführen und zu reproduzieren.
Um ClearML zu verwenden:
Nachdem du dieses Skript ausgeführt hast, musst du dich bei deinem ClearML Konto im Browser anmelden und deine Sitzung authentifizieren.
TensorBoard
TensorBoard is a visualization toolkit for TensorFlow. It allows you to visualize your TensorFlow graph, plot quantitative metrics about the execution of your graph, and show additional data like images that pass through it.
Um TensorBoard in Google Colab zu verwenden:
Um TensorBoard lokal zu verwenden, führe den folgenden Befehl aus und sieh dir die Ergebnisse unter http://localhost:6006/ an.
Dadurch wird TensorBoard geladen und in das Verzeichnis geleitet, in dem deine Trainingsprotokolle gespeichert sind.
Nachdem du deinen Logger eingerichtet hast, kannst du mit dem Training deines Modells fortfahren. Alle Trainingsdaten werden automatisch auf der von dir gewählten Plattform protokolliert und du kannst auf diese Protokolle zugreifen, um die Leistung deines Modells im Laufe der Zeit zu überwachen, verschiedene Modelle zu vergleichen und Bereiche mit Verbesserungsbedarf zu identifizieren.
FAQ
How do I train an object detection model using Ultralytics YOLO11?
To train an object detection model using Ultralytics YOLO11, you can either use the Python API or the CLI. Below is an example for both:
Single-GPU und CPU Ausbildungsbeispiel
Weitere Informationen findest du im Abschnitt " Einstellungen für den Zug ".
What are the key features of Ultralytics YOLO11's Train mode?
The key features of Ultralytics YOLO11's Train mode include:
- Automatischer Datensatz-Download: Lädt automatisch Standarddatensätze wie COCO, VOC und ImageNet herunter.
- Multi-GPU Unterstützung: Skaliere das Training über mehrere GPUs für eine schnellere Verarbeitung.
- Hyperparameter-Konfiguration: Anpassungen von Hyperparametern über YAML-Dateien oder CLI Argumente.
- Visualisierung und Überwachung: Echtzeit-Tracking von Trainingsmetriken für bessere Einblicke.
Diese Funktionen machen das Training effizient und lassen sich an deine Bedürfnisse anpassen. Weitere Informationen findest du im Abschnitt " Hauptmerkmale des Trainingsmodus ".
How do I resume training from an interrupted session in Ultralytics YOLO11?
Um das Training nach einer unterbrochenen Sitzung fortzusetzen, setzen Sie die resume
Argument zu True
und gib den Pfad zum letzten gespeicherten Checkpoint an.
Beispiel Lebenslauf Ausbildung
Weitere Informationen findest du im Abschnitt über die Wiederaufnahme unterbrochener Schulungen.
Can I train YOLO11 models on Apple M1 and M2 chips?
Yes, Ultralytics YOLO11 supports training on Apple M1 and M2 chips utilizing the Metal Performance Shaders (MPS) framework. Specify 'mps' as your training device.
MPS Ausbildung Beispiel
Weitere Informationen findest du im Abschnitt Apple M1 und M2 MPS Training.
Was sind die üblichen Trainingseinstellungen und wie kann ich sie konfigurieren?
Ultralytics YOLO11 allows you to configure a variety of training settings such as batch size, learning rate, epochs, and more through arguments. Here's a brief overview:
Argument | Standard | Beschreibung |
---|---|---|
model |
None |
Pfad zur Modelldatei für das Training. |
data |
None |
Pfad zur Konfigurationsdatei des Datensatzes (z. B., coco8.yaml ). |
epochs |
100 |
Gesamtzahl der Trainingsepochen. |
batch |
16 |
Losgröße, einstellbar als Ganzzahl oder im Automodus. |
imgsz |
640 |
Zielbildgröße für das Training. |
device |
None |
Rechengerät(e) für die Ausbildung wie cpu , 0 , 0,1 , oder mps . |
save |
True |
Ermöglicht das Speichern von Trainingskontrollpunkten und endgültigen Modellgewichten. |
Eine ausführliche Anleitung zu den Trainingseinstellungen findest du im Abschnitt Trainingseinstellungen.