Heim > Technologie-Peripheriegeräte > KI > Leitfaden zum YOLOV11 -Modellgebäude von Grund auf neu von Grund auf mit Pytorch

Leitfaden zum YOLOV11 -Modellgebäude von Grund auf neu von Grund auf mit Pytorch

Lisa Kudrow
Freigeben: 2025-03-07 09:42:10
Original
223 Leute haben es durchsucht

yolov11: Ein tiefes Eintauchen in die Architektur und Implementierung eines modernen Objekterkennungsmodells

yolo (Sie sehen nur einmal aus) Modelle sind für ihre Effizienz und Genauigkeit bei Computer -Vision -Aufgaben bekannt, einschließlich Objekterkennung, Segmentierung, Posenschätzung und mehr. Dieser Artikel konzentriert sich auf die Architektur und Implementierung der neuesten Iteration Yolov11 mit Pytorch. Während Ultralytics, die Schöpfer, die praktische Anwendung vor formalen Forschungsarbeiten priorisieren, werden wir das Design analysieren und ein funktionales Modell erstellen.

Verständnis der Architektur von YOLOV11

yolov11 verwendet wie seine Vorgänger eine dreiteilige Architektur: Rückgrat, Hals und Kopf.

  • Rückgrat: extrahiert Merkmale mit effizienten Engpassblöcken (C3K2, eine Verfeinerung des C2F von YOLOV8). Dieses Rückgrat nutzt Darknet und DarkFPN, erzeugt drei Feature -Karten (P3, P4, P5), die verschiedene Detailebenen darstellen.

  • Hals: verarbeitet die Ausgabe des Rückgraters und vereint Merkmale über Skalen mit upsampling und Verkettung. Eine entscheidende Komponente ist der C2PSA-Block, der partielle räumliche Aufmerksamkeitsmodule (PSA) enthält, um die Fokussierung auf relevante räumliche Informationen in Merkmalen auf niedriger Ebene zu verbessern.

  • Kopf: verarbeitet aufgabenspezifische Vorhersagen. Für die Objekterkennung enthält es:

    • DFL (Verteilungsfokusverlust): Verfeinert die Begrenzungsbox -Vorhersagen.
    • Box -Erkennung: prognostiziert Begrenzungsbox -Koordinaten.
    • Klassenerkennung: sagt Objektklassen voraus. Das Modell unterstützt auch Segmentierungs- und Tastoint -Erkennungsköpfe.

Guide on YOLOv11 Model Building from Scratch using PyTorch

Kernbausteine: Faltungs- und Engpassschichten

Das Modell stützt sich stark auf:

  • Faltungsschichten: Features aus Eingabedaten extrahieren.
  • Engpassschichten: Verbesserung der Effizienz und des Lernens durch Verwendung von zwei Faltungsschichten mit einer Abkürzungsverbindung (Verkettung oder Restzusatz).
  • C3K- und C3K2
  • sppf (räumliches Pyramidenpooling schnell):
  • verbessert die Fähigkeit des Modells, Objekte unterschiedlicher Größen zu erkennen.

Guide on YOLOv11 Model Building from Scratch using PyTorch Guide on YOLOv11 Model Building from Scratch using PyTorch

Code -Implementierung Highlights (Pytorch)

Die folgenden Code -Snippets veranschaulichen Schlüsselkomponenten:

(simifified for the Tumity; siehe Originalartikel für vollständigen Code.)

# Simplified Conv Block
class Conv(nn.Module):
    def __init__(self, in_ch, out_ch, activation, ...):
        # ... (Initialization code) ...
    def forward(self, x):
        return activation(self.norm(self.conv(x)))

# Simplified Bottleneck Block (Residual)
class Residual(nn.Module):
    def __init__(self, ch, e=0.5):
        # ... (Initialization code) ...
    def forward(self, x):
        return x + self.conv2(self.conv1(x))

# Simplified SPPF
class SPPF(nn.Module):
    def __init__(self, c1, c2, k=5):
        # ... (Initialization code) ...
    def forward(self, x):
        # ... (MaxPooling and concatenation) ...
        return self.cv2(torch.cat((x, y1, y2, self.m(y2)), 1))

# ... (Other key blocks: C3K, C3K2, PSA, Attention, PSABlock, DFL) ...
Nach dem Login kopieren

Modellkonstruktion und Test

Das komplette Yolov11 -Modell wird durch Kombinieren des Rückgrats, des Hals und des Kopfes konstruiert. Verschiedene Modellgrößen (Nano, klein, mittel, groß, Xlarge) werden durch Anpassen von Parametern wie Tiefe und Breite erreicht. Der bereitgestellte Code enthält eine YOLOv11 Klasse, um dies zu erleichtern.

Modelltests mit einem zufälligen Eingangspfehlungszensor demonstriert die Ausgangsstruktur (Merkmalskarten im Trainingsmodus, verkettete Vorhersagen im Bewertungsmodus). Eine weitere Verarbeitung (Nicht-Maximum-Unterdrückung) ist erforderlich, um endgültige Objekterkennung zu erhalten.

Schlussfolgerung

yolov11 stellt einen signifikanten Fortschritt bei der Objekterkennung dar und bietet eine leistungsstarke und effiziente Architektur. Sein Design priorisiert praktische Anwendungen und macht es zu einem wertvollen Instrument für reale KI-Projekte. Die detaillierten Architektur- und Code -Snippets bieten eine solide Grundlage für Verständnis und Weiterentwicklung. Denken Sie daran, den ursprünglichen Artikel für den vollständigen, runnablen Code zu konsultieren.

Das obige ist der detaillierte Inhalt vonLeitfaden zum YOLOV11 -Modellgebäude von Grund auf neu von Grund auf mit Pytorch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage