Meet YOLO26: next-gen vision AI.

Link to this sectionYOLO26 Trainingsrezept#

Link to this sectionEinführung#

Dieser Leitfaden dokumentiert das genaue Training-Rezept, das verwendet wurde, um die offiziellen vortrainierten YOLO26-Checkpoints auf COCO zu erstellen. Jeder hier gezeigte Hyperparameter ist bereits in den veröffentlichten .pt-Gewichten eingebettet und kann programmgesteuert überprüft werden.

Wenn du weißt, was in die offiziellen Checkpoints eingeflossen ist – nicht nur die Architektur, sondern auch die Lernraten-Zeitpläne, Augmentierungspipelines und Verlustgewichtungen, die ihre Leistung bestimmt haben –, hilft dir das dabei, bessere Entscheidungen beim Fine-Tuning zu treffen: welche Datenaugmentierungen du beibehalten solltest, welche Gewichtungen der Verlustfunktion du anpassen solltest und welche Optimierereinstellungen für deine Datensatzgröße am besten funktionieren.

Link to this sectionTrainingsübersicht#

Alle YOLO26-Basismodelle wurden auf COCO bei einer Auflösung von 640x640 mit dem MuSGD-Optimierer und einer Batch-Größe von 128 trainiert. Anstatt in einem einzigen Durchlauf mit zufälligen Gewichten zu beginnen, wurden die Modelle mit zwischenzeitlichen vortrainierten Gewichten initialisiert und mit Hyperparametern verfeinert, die durch evolutionäre Suche gefunden wurden. Vollständige Trainingsprotokolle und Metriken für jede Modellgröße sind auf der Ultralytics Platform verfügbar:

Wichtige Designentscheidungen über alle Größen hinweg:

  • End-to-End-Training (end2end=True) mit NMS-freiem One-to-One-Head
  • MuSGD-Optimierer, der SGD mit orthogonalisierten Updates im Muon-Stil für Gewichtsmatrizen kombiniert (Parameter mit ndim >= 2, wie z. B. Conv- und lineare Gewichte)
  • Starke Mosaik-Augmentierung (~0,9-1,0 Wahrscheinlichkeit), die in den letzten 10 Epochen deaktiviert wurde (close_mosaic=10)
  • Aggressive Skalen-Augmentierung (0,56-0,95), um Objekte unterschiedlicher Größe zu verarbeiten
  • Minimale Rotation/Scherung für die meisten Größen, um geometrische Verzerrungen gering zu halten

Link to this sectionÜberprüfung der YOLO26-Checkpoint-Trainingsargumente#

Jeder Ultralytics-Checkpoint speichert die vollständige Trainingskonfiguration, die zu seiner Erstellung verwendet wurde, sodass du jede Zahl auf dieser Seite selbst überprüfen kannst:

Trainingsargumente des Checkpoints prüfen
from ultralytics import YOLO

model = YOLO("yolo26n.pt")
print(model.ckpt["train_args"])

Die Ausgabe listet die vollständige Konfiguration von über 100 Einträgen auf, einschließlich jedes Rezeptwerts, der auf dieser Seite dokumentiert ist. Ein Auszug für yolo26n.pt:

batch: 128
...
box: 5.62767
...
close_mosaic: 10
cls: 0.56099
...
dfl: 9.03871
...
epochs: 245
...
lr0: 0.0054
lrf: 0.04952
...
optimizer: MuSGD

Dies funktioniert für jeden .pt-Checkpoint – sowohl für offizielle Releases als auch für deine eigenen feinabgestimmten Modelle. Eine vollständige Liste der konfigurierbaren Trainingsargumente findest du in der Referenz zur Trainingskonfiguration.

Link to this sectionYOLO26-Trainingshyperparameter pro Modellgröße#

Die unten stehenden Tabellen gruppieren das Rezept nach Kategorie – Optimierer und Zeitplan, Verlustgewichtungen und Augmentierung. Jeder Wert stammt direkt aus den train_args, die in den veröffentlichten Checkpoints eingebettet sind.

Link to this sectionOptimierer und Lernrate#

Diese Optimierer- und Zeitplaneinstellungen steuerten das COCO-Vortraining für jede Größe; beachte, wie sich das N-Modell von den anderen unterscheidet:

EinstellungNSMLX
optimizerMuSGDMuSGDMuSGDMuSGDMuSGD
lr00.00540.000380.000380.000380.00038
lrf0.04950.8820.8820.8820.882
momentum0.9470.9480.9480.9480.948
weight_decay0.000640.000270.000270.000270.00027
warmup_epochs0.980.990.990.990.99
epochs24570806040
batch128128128128128
imgsz640640640640640
Lernratenstrategie

Das N-Modell verwendete eine höhere anfängliche Lernrate mit steilem Abfall (lrf=0.0495), während die S/M/L/X-Modelle eine viel niedrigere anfängliche Lernrate mit einem sanfteren Zeitplan verwendeten (lrf=0.882). Dies spiegelt die unterschiedliche Konvergenzdynamik von kleineren gegenüber größeren Modellen wider – kleinere Modelle benötigen aggressivere Updates, um effektiv zu lernen.

Link to this sectionVerlustgewichte#

Verlustgewichtungen balancieren die drei Komponenten des Detektionsverlusts aus – Bounding-Box IoU-Regression (box), Klassifizierung (cls) und ein Box-Distanz-Regressionsterm (dfl). Beachte, dass das DFL-freie YOLO26 die dfl-Verstärkung umwidmet, um einen L1-Verlust auf normalisierten Box-Distanzen zu gewichten, anstatt den Verteilungsfokusverlust zu verwenden:

EinstellungNSMLX
box5.639.839.839.839.83
cls0.560.650.650.650.65
dfl9,040.960.960.960.96

Das N-Modell priorisiert den dfl-Distanz-Regressionsterm, während S/M/L/X-Modelle den Schwerpunkt auf die IoU-basierte Box-Regression verlagern. Der Klassifizierungsverlust bleibt über alle Größen hinweg relativ konsistent.

Link to this sectionAugmentierungspipeline#

Für eine detaillierte Erklärung jeder Technik, siehe den YOLO-Datenaugmentierungs-Leitfaden.

EinstellungNSMLX
mosaic0.9090.9920.9920.9920.992
mixup0.0120.050.4270.4270.427
copy_paste0.0750.4040.3040.4040.404
scale0.5620.90.950.950.95
fliplr0.6060.3040.3040.3040.304
degrees1.11~0~0~0~0
shear1.46~0~0~0~0
translate0.0710.2750.2750.2750.275
hsv_h0.0140.0130.0130.0130.013
hsv_s0.6450.3530.3530.3530.353
hsv_v0.5660.1940.1940.1940.194
bgr0.1060.00.00.00.0

Werte, die als ~0 angezeigt werden, liegen in den tatsächlichen Checkpoints unter 0,01 (zum Beispiel degrees=0.00012 für das S-Modell) – die Augmentierung ist effektiv deaktiviert.

Größere Modelle verwenden insgesamt eine aggressivere Augmentierung (höhere Mixup-, Copy-Paste- und Skalenwerte), da sie über eine größere Kapazität verfügen und von einer stärkeren Regularisierung profitieren. Das N-Modell ist die einzige Größe mit nennenswerter Rotation, Scherung und BGR-Augmentierung.

Link to this sectionInterne Trainingsparameter#

Fortgeschritten: interne Pipeline-Parameter

Die Checkpoints enthalten auch Parameter, die in der internen Trainingspipeline verwendet wurden, aber nicht als benutzerkonfigurierbare Einstellungen in default.yaml verfügbar gemacht werden:

EinstellungBeschreibungNSMLX
muon_wMuon-Update-Gewichtung in MuSGD0.5280.4360.4360.4360.436
sgd_wSGD-Update-Gewichtung in MuSGD0.6740,4790,4790,4790,479
cls_wInternes Klassifizierungsgewicht2,743,483,483,483,48
o2mGewicht des One-to-Many-Head-Loss1.00,7050,7050,7050,705
topkTop-k-Label-Zuweisung85555

Siehe den FAQ-Eintrag zu diesen Parametern, um zu erfahren, was sie beim Fine-Tuning bedeuten.

Link to this sectionFine-Tuning von YOLO26 auf deinem eigenen Datensatz#

Beim Fine-Tuning von YOLO26 auf deinem eigenen Datensatz musst du das vollständige Pretraining-Rezept nicht nachbilden. Die vortrainierten Gewichte enthalten bereits das Wissen über Augmentierung und Optimierung aus dem COCO-Training. Für allgemeinere Best Practices beim Training siehe Tipps für das Modelltraining.

Link to this sectionFine-Tuning mit Standardeinstellungen#

Fine-Tuning mit Standardwerten
from ultralytics import YOLO

model = YOLO("yolo26n.pt")
results = model.train(data="your-dataset.yaml", epochs=100, imgsz=640)

Das Fine-Tuning mit Standardwerten ist eine starke Basis. Passe Hyperparameter nur an, wenn du einen spezifischen Grund dafür hast.

Link to this sectionWann du YOLO26 Hyperparameter anpassen solltest#

Kleine Datensätze (< 1.000 Bilder):

  • Reduziere die Augmentierungsstärke: mosaic=0.5, mixup=0.0, copy_paste=0.0
  • Verringere die Lernrate: lr0=0.001
  • Verwende weniger Epochen mit Patience: epochs=50, patience=20
  • Erwäge das Einfrieren von Backbone-Layern: freeze=10

Große Datensätze (> 50.000 Bilder):

  • Richte dich genauer nach dem Pretraining-Rezept
  • Erwäge optimizer=MuSGD für längere Läufe
  • Erhöhe die Augmentierung: mosaic=1.0, mixup=0.3, scale=0.9

Domänenspezifische Bilder (Luftaufnahmen, medizinische Bilder, Unterwasseraufnahmen):

  • Erhöhe flipud=0.5, wenn die vertikale Ausrichtung variiert
  • Erhöhe degrees, wenn Objekte in beliebigen Rotationen erscheinen
  • Passe hsv_s und hsv_v an, wenn die Lichtverhältnisse signifikant von COCO abweichen

Für die automatisierte Hyperparameter-Optimierung siehe den Hyperparameter-Tuning-Leitfaden.

Link to this sectionWähle eine Modellgröße#

ModellAm besten fürLeitfaden zur Batch-Größe
YOLO26nEdge-Geräte, Mobilgeräte, Echtzeit auf CPUGroße Batches (64-128) auf Consumer-GPUs
YOLO26sAusgewogene Geschwindigkeit und GenauigkeitMittlere Batches (32-64)
YOLO26mHöhere Genauigkeit bei moderatem RechenaufwandKleinere Batches (16-32)
YOLO26lHohe Genauigkeit bei verfügbarer GPUKleine Batches (8-16) oder Multi-GPU
YOLO26xMaximale Genauigkeit, Server-BereitstellungKleine Batches (4-8) oder Multi-GPU

Für Export- und Deployment-Optionen siehe den Export-Leitfaden und Modell-Deployment-Optionen.

Link to this sectionFazit#

Die YOLO26-Checkpoints werden mit ihrem vollständigen, eingebetteten Trainingsrezept geliefert, sodass die genauen Hyperparameter hinter jeder Modellgröße immer über ein train_args-Nachschlagen abrufbar sind. Beginne das Fine-Tuning mit den Standardwerten, passe sie bewusst unter Verwendung der Tabellen auf dieser Seite an und überprüfe jede Änderung mit deinem eigenen Validierungsset. Wenn währenddessen Fragen aufkommen, frage die Community im Ultralytics GitHub-Repository oder auf dem Ultralytics Discord-Server.

Link to this sectionFAQ#

Link to this sectionWie sehe ich die genauen Hyperparameter, die für einen Checkpoint verwendet wurden?#

Lade den Checkpoint mit torch.load() und greife auf den train_args-Schlüssel zu, oder verwende model.ckpt["train_args"] mit der Ultralytics API. Siehe Inspektion der YOLO26 Checkpoint-Trainingsargumente für vollständige Beispiele.

Link to this sectionWarum sind die Epochen-Anzahlen für jede Modellgröße unterschiedlich?#

Größere Modelle benötigten auf COCO im Allgemeinen weniger Epochen, da ihre größere Kapazität die Konvergenz beschleunigt – das X-Modell trainierte 40 Epochen gegenüber 245 für N –, obwohl die Anzahlen nicht streng monoton sind (S nutzte 70, M nutzte 80). Beim Fine-Tuning auf deinem eigenen Datensatz hängt die optimale Anzahl der Epochen von der Größe und Komplexität deines Datensatzes ab, nicht von der Modellgröße. Nutze Early Stopping (patience), um den richtigen Stopppunkt automatisch zu finden.

Link to this sectionSollte ich MuSGD für das Fine-Tuning verwenden?#

Normalerweise musst du dich nicht entscheiden: Mit dem Standard optimizer=auto wählt Ultralytics automatisch MuSGD für längere Trainingsläufe (>10.000 Iterationen) und AdamW für kürzere Läufe. Du kannst explizit optimizer=MuSGD festlegen, falls du möchtest. Mehr dazu, wie MuSGD funktioniert, findest du in der Trainingsdokumentation.

Link to this sectionWas sind muon_w, sgd_w, cls_w, o2m und topk im Checkpoint?#

Dies sind interne Parameter aus der Trainings-Pipeline, die die Basis-Checkpoints erzeugt hat, und die zur Reproduzierbarkeit in train_args aufgezeichnet wurden. Es sind keine vom Benutzer konfigurierbaren Einstellungen in default.yaml, und deren Übergabe an model.train() löst einen Fehler wegen ungültiger Argumente aus – das öffentliche Paket liest sie nicht aus. Du musst sie beim Fine-Tuning nicht festlegen; siehe Interne Trainingsparameter für ihre Werte je Modellgröße.

Link to this sectionKann ich das Pretraining exakt von Grund auf neu replizieren?#

Nicht exakt – die Checkpoints wurden unter Verwendung eines internen Trainings-Branch mit zusätzlichen Funktionen erstellt, die nicht im öffentlichen Code enthalten sind (wie konfigurierbare o2m-Gewichte und cls_w). Du kannst mit den auf dieser Seite dokumentierten Hyperparametern im öffentlichen Ultralytics-Paket sehr nahe Ergebnisse erzielen, aber eine exakte Reproduktion erfordert den internen Branch.

Kommentare