Künstliche Intelligenz
YOLOv7: Der fortschrittlichste Objekterkennungsalgorithmus?

Der 6. Juli 2022 wird als Meilenstein in der KI-Geschichte gelten, da an diesem Tag YOLOv7 veröffentlicht wurde. Seit seiner Einführung ist YOLOv7 das heißeste Thema in der Computer Vision-Entwicklergemeinschaft, und das aus den richtigen Gründen. YOLOv7 gilt bereits als Meilenstein in der Objekterkennungsbranche.
Kurz nachdem das YOLOv7-Artikel wurde veröffentlicht, Es erwies sich als das schnellste und genaueste Echtzeitmodell zur Erkennung von Einwänden. Aber wie übertrifft YOLOv7 seine Vorgänger? Was macht YOLOv7 so effizient bei der Ausführung von Computer-Vision-Aufgaben?
In diesem Artikel werden wir versuchen, das YOLOv7-Modell zu analysieren und die Antwort auf die Frage zu finden, warum YOLOv7 jetzt zum Industriestandard wird. Aber bevor wir das beantworten können, müssen wir einen Blick auf die kurze Geschichte der Objekterkennung werfen.
Was ist Objekterkennung?
Die Objekterkennung ist ein Zweig der Computer Vision das Objekte in einem Bild oder einer Videodatei identifiziert und lokalisiert. Die Objekterkennung ist der Baustein zahlreicher Anwendungen, darunter selbstfahrende Autos, überwachte Überwachung und sogar Robotik.
Ein Objekterkennungsmodell kann in zwei verschiedene Kategorien eingeteilt werden: Single-Shot-Detektoren, und Multi-Shot-Detektoren.
Objekterkennung in Echtzeit
Um wirklich zu verstehen, wie YOLOv7 funktioniert, ist es wichtig, dass wir das Hauptziel von YOLOv7 verstehen: „Objekterkennung in Echtzeit“. Die Echtzeit-Objekterkennung ist eine Schlüsselkomponente der modernen Computer Vision. Die Echtzeit-Objekterkennungsmodelle versuchen, interessierende Objekte in Echtzeit zu identifizieren und zu lokalisieren. Echtzeit-Objekterkennungsmodelle machten es für Entwickler äußerst effizient, interessante Objekte in einem bewegten Bild wie einem Video oder einer Live-Überwachungseingabe zu verfolgen.

Echtzeit-Objekterkennungsmodelle sind den herkömmlichen Bilderkennungsmodellen im Wesentlichen einen Schritt voraus. Während Ersteres zum Verfolgen von Objekten in Videodateien verwendet wird, lokalisiert und identifiziert Letzteres Objekte innerhalb eines stationären Rahmens wie einem Bild.
Daher sind Echtzeit-Objekterkennungsmodelle äußerst effizient für Videoanalysen, autonome Fahrzeuge, Objektzählung, Verfolgung mehrerer Objekte und vieles mehr.
Was ist YOLO?
YOLO oder „Sie sehen nur einmal„ist eine Familie von Echtzeit-Objekterkennungsmodellen. Das YOLO-Konzept wurde erstmals 2016 von Joseph Redmon eingeführt und sorgte fast sofort für großes Aufsehen, da es viel schneller und viel genauer war als die bestehenden Objekterkennungsalgorithmen. Es dauerte nicht lange, bis der YOLO-Algorithmus zum Standard in der Computer-Vision-Branche wurde.

Das grundlegende Konzept, das der YOLO-Algorithmus vorschlägt, besteht darin, ein durchgängiges neuronales Netzwerk zu verwenden, das Begrenzungsrahmen und Klassenwahrscheinlichkeiten verwendet, um Vorhersagen in Echtzeit zu treffen. YOLO unterschied sich vom vorherigen Objekterkennungsmodell in dem Sinne, dass es einen anderen Ansatz zur Objekterkennung durch Umnutzung von Klassifikatoren vorschlug.
Die Änderung des Ansatzes funktionierte, da YOLO bald zum Industriestandard wurde, da der Leistungsunterschied zwischen ihm und anderen Echtzeit-Objekterkennungsalgorithmen erheblich war. Aber was war der Grund, warum YOLO so effizient war?
Im Vergleich zu YOLO verwendeten Objekterkennungsalgorithmen damals Region Proposal Networks, um mögliche Regionen von Interesse zu erkennen. Der Erkennungsprozess wurde dann für jede Region separat durchgeführt. Infolgedessen führten diese Modelle häufig mehrere Iterationen für dasselbe Bild durch, was zu mangelnder Genauigkeit und einer längeren Ausführungszeit führte. Andererseits verwendet der YOLO-Algorithmus eine einzelne vollständig verbundene Schicht, um die Vorhersage auf einmal durchzuführen.
Wie funktioniert YOLO?
Es gibt drei Schritte, die erklären, wie ein YOLO-Algorithmus funktioniert.
Neuformulierung der Objekterkennung als einzelnes Regressionsproblem
Die Der YOLO-Algorithmus versucht, die Objekterkennung als einzelnes Regressionsproblem neu zu definieren, einschließlich Bildpixel, zu Klassenwahrscheinlichkeiten und Begrenzungsrahmenkoordinaten. Daher muss der Algorithmus das Bild nur einmal betrachten, um die Zielobjekte in den Bildern vorherzusagen und zu lokalisieren.
Gründet das Image weltweit
Außerdem sind Wenn der YOLO-Algorithmus Vorhersagen trifft, begründet er das Bild global. Es unterscheidet sich von auf Regionsvorschlägen basierenden und gleitenden Techniken, da der YOLO-Algorithmus während des Trainings und Tests des Datensatzes das vollständige Bild sieht und in der Lage ist, Kontextinformationen über die Klassen und deren Darstellung zu kodieren.
Vor YOLO war Fast R-CNN einer der beliebtesten Objekterkennungsalgorithmen, der den größeren Kontext im Bild nicht erkennen konnte, weil er Hintergrundflecken in einem Bild fälschlicherweise für ein Objekt hielt. Im Vergleich zum Fast R-CNN-Algorithmus ist YOLO 50 % genauer wenn es um Hintergrundfehler geht.
Verallgemeinert die Darstellung von Objekten
Schließlich zielt der YOLO-Algorithmus auch darauf ab, die Darstellungen von Objekten in einem Bild zu verallgemeinern. Als ein YOLO-Algorithmus auf einen Datensatz mit natürlichen Bildern ausgeführt und auf die Ergebnisse getestet wurde, übertraf YOLO daher bestehende R-CNN-Modelle bei weitem. Da YOLO in hohem Maße verallgemeinerbar ist, war die Wahrscheinlichkeit, dass es bei der Implementierung bei unerwarteten Eingaben oder neuen Domänen zusammenbricht, gering.
YOLOv7: Was ist neu?
Nachdem wir nun ein grundlegendes Verständnis davon haben, was Echtzeit-Objekterkennungsmodelle sind und was der YOLO-Algorithmus ist, ist es an der Zeit, den YOLOv7-Algorithmus zu diskutieren.
Optimierung des Trainingsprozesses
Der YOLOv7-Algorithmus versucht nicht nur die Modellarchitektur zu optimieren, sondern zielt auch darauf ab, den Trainingsprozess zu optimieren. Ziel ist der Einsatz von Optimierungsmodulen und -methoden, um die Genauigkeit der Objekterkennung zu verbessern, die Schulungskosten zu erhöhen und gleichzeitig die Interferenzkosten aufrechtzuerhalten. Diese Optimierungsmodule können als a bezeichnet werden trainierbare Tüte mit Gratisartikeln.
Grob-zu-fein geführte Etikettenzuweisung
Der YOLOv7-Algorithmus plant, anstelle der herkömmlichen eine neue geführte Etikettenzuweisung von grob nach fein zu verwenden Dynamische Etikettenzuweisung. Dies liegt daran, dass das Training eines Modells mit mehreren Ausgabeebenen bei der Zuweisung dynamischer Labels einige Probleme verursacht. Das häufigste Problem besteht darin, wie dynamische Ziele für verschiedene Zweige und deren Ausgaben zugewiesen werden.
Neuparametrisierung des Modells
Die Neuparametrisierung von Modellen ist ein wichtiges Konzept bei der Objekterkennung und ihre Verwendung führt im Allgemeinen zu einigen Problemen während des Trainings. Der YOLOv7-Algorithmus plant die Verwendung des Konzepts von Der Gradientenausbreitungspfad analysiert die Richtlinien zur Neuparametrisierung des Modells anwendbar auf verschiedene Schichten im Netzwerk.
Erweitern und zusammengesetzte Skalierung
Der YOLOv7-Algorithmus führt auch das ein erweiterte und zusammengesetzte Skalierungsmethoden die Parameter und Berechnungen für die Objekterkennung in Echtzeit zu nutzen und effektiv zu nutzen.

YOLOv7: Verwandte Arbeit
Objekterkennung in Echtzeit
YOLO ist derzeit der Industriestandard und die meisten Echtzeit-Objektdetektoren nutzen YOLO-Algorithmen und FCOS (Fully Convolutional One-Stage Object-Detection). Ein hochmoderner Echtzeit-Objektdetektor weist normalerweise die folgenden Eigenschaften auf
- Stärkere und schnellere Netzwerkarchitektur.
- Eine effektive Methode zur Funktionsintegration.
- Eine genaue Methode zur Objekterkennung.
- Eine robuste Verlustfunktion.
- Eine effiziente Methode zur Etikettenzuweisung.
- Eine effiziente Trainingsmethode.
Der YOLOv7-Algorithmus verwendet keine selbstüberwachten Lern- und Destillationsmethoden, die oft große Datenmengen erfordern. Umgekehrt verwendet der YOLOv7-Algorithmus eine trainierbare Bag-of-Freebies-Methode.
Neuparametrisierung des Modells
Modellneuparametrisierungstechniken werden als Ensembletechnik betrachtet, die mehrere Rechenmodule in einer Interferenzphase zusammenführt. Die Technik kann weiter in zwei Kategorien unterteilt werden: Ensemble auf Modellebene, und Ensemble auf Modulebene.
Um nun das endgültige Interferenzmodell zu erhalten, verwendet die Neuparametrisierungstechnik auf Modellebene zwei Vorgehensweisen. Die erste Übung verwendet unterschiedliche Trainingsdaten, um zahlreiche identische Modelle zu trainieren, und ermittelt dann den Durchschnitt der Gewichte der trainierten Modelle. Alternativ mittelt die andere Vorgehensweise die Gewichte von Modellen während verschiedener Iterationen.
Die Neuparametrisierung auf Modulebene erfreut sich in letzter Zeit großer Beliebtheit, da sie während der Trainingsphase ein Modul in verschiedene Modulzweige oder verschiedene identische Zweige aufteilt und diese verschiedenen Zweige dann während der Interferenz in ein äquivalentes Modul integriert.
Allerdings können Neuparametrisierungstechniken nicht auf alle Arten von Architektur angewendet werden. Es ist der Grund, warum die Der YOLOv7-Algorithmus verwendet neue Techniken zur Neuparametrisierung von Modellen, um entsprechende Strategien zu entwerfen Geeignet für verschiedene Architekturen.
Modellskalierung
Bei der Modellskalierung wird ein vorhandenes Modell vergrößert oder verkleinert, sodass es auf verschiedene Computergeräte passt. Bei der Modellskalierung werden im Allgemeinen verschiedene Faktoren wie die Anzahl der Schichten verwendet(Tiefe), Größe der Eingabebilder(Auflösung), Anzahl der Feature-Pyramiden(Stufe) und Anzahl der Kanäle(Breite). Diese Faktoren spielen eine entscheidende Rolle bei der Gewährleistung eines ausgewogenen Kompromisses zwischen Netzwerkparametern, Interferenzgeschwindigkeit, Berechnung und Genauigkeit des Modells.
Eine der am häufigsten verwendeten Skalierungsmethoden ist NAS- oder Netzwerkarchitektursuche das ohne komplizierte Regeln automatisch nach passenden Skalierungsfaktoren in Suchmaschinen sucht. Der größte Nachteil der Verwendung des NAS besteht darin, dass es sich um einen teuren Ansatz für die Suche nach geeigneten Skalierungsfaktoren handelt.
Nahezu jedes Modell zur Neuparametrisierung von Modellen analysiert einzelne und einzigartige Skalierungsfaktoren unabhängig voneinander und optimiert diese Faktoren darüber hinaus sogar unabhängig voneinander. Dies liegt daran, dass die NAS-Architektur mit nicht korrelierten Skalierungsfaktoren arbeitet.
Es ist erwähnenswert, dass verkettungsbasierte Modelle wie VoVNet or Dichtes Netz Ändern Sie die Eingabebreite einiger Ebenen, wenn die Tiefe der Modelle skaliert wird. YOLOv7 arbeitet auf einer vorgeschlagenen verkettungsbasierten Architektur und verwendet daher eine zusammengesetzte Skalierungsmethode.

Die oben genannte Abbildung vergleicht die erweiterte effiziente Layer-Aggregationsnetzwerke (E-ELAN) verschiedener Modelle. Die vorgeschlagene E-ELAN-Methode behält den Gradientenübertragungspfad der ursprünglichen Architektur bei, zielt jedoch darauf ab, die Kardinalität der hinzugefügten Merkmale durch Gruppenfaltung zu erhöhen. Der Prozess kann die von verschiedenen Karten erlernten Funktionen verbessern und die Verwendung von Berechnungen und Parametern noch effizienter gestalten.
YOLOv7-Architektur
Das YOLOv7-Modell verwendet die Modelle YOLOv4, YOLO-R und Scaled YOLOv4 als Basis. YOLOv7 ist das Ergebnis der Experimente, die mit diesen Modellen durchgeführt wurden, um die Ergebnisse zu verbessern und das Modell genauer zu machen.
Erweitertes Efficient Layer Aggregation Network oder E-ELAN
E-ELAN ist der grundlegende Baustein des YOLOv7-Modells und basiert auf bereits vorhandenen Modellen zur Netzwerkeffizienz, hauptsächlich dem ELAN.
Die wichtigsten Überlegungen beim Entwurf einer effizienten Architektur sind die Anzahl der Parameter, die Rechendichte und der Rechenaufwand. Andere Modelle berücksichtigen auch Faktoren wie den Einfluss des Eingangs-/Ausgangskanalverhältnisses, Verzweigungen im Architekturnetzwerk, Netzwerkinterferenzgeschwindigkeit, Anzahl der Elemente in den Tensoren des Faltungsnetzwerks und mehr.
Die CSPVoNet Das Modell berücksichtigt nicht nur die oben genannten Parameter, sondern analysiert auch den Gradientenpfad, um vielfältigere Merkmale zu lernen, indem es die Gewichte verschiedener Schichten ermöglicht. Der Ansatz ermöglicht, dass die Interferenzen viel schneller und genauer erfolgen. Der ELAN Die Architektur zielt darauf ab, ein effizientes Netzwerk zu entwerfen, um den kürzesten und längsten Gradientenpfad zu steuern, damit das Netzwerk effektiver lernen und konvergieren kann.
ELAN hat unabhängig von der Stapelanzahl der Rechenblöcke und der Länge des Gradientenpfads bereits ein stabiles Stadium erreicht. Der stabile Zustand kann zerstört werden, wenn Rechenblöcke unbegrenzt gestapelt werden, und die Parameterauslastungsrate nimmt ab. Der Die vorgeschlagene E-ELAN-Architektur kann das Problem lösen, da sie Erweiterungs-, Shuffling- und Merging-Kardinalität nutzt um die Lernfähigkeit des Netzwerks kontinuierlich zu verbessern und gleichzeitig den ursprünglichen Gradientenpfad beizubehalten.
Wenn man außerdem die Architektur von E-ELAN mit ELAN vergleicht, Der einzige Unterschied besteht im Rechenblock, während die Architektur der Übergangsschicht unverändert bleibt.
E-ELAN schlägt vor, die Kardinalität der Rechenblöcke zu erweitern und den Kanal durch Verwendung zu erweitern Gruppenfaltung. Die Feature-Map wird dann berechnet und gemäß dem Gruppenparameter in Gruppen gemischt und dann miteinander verkettet. Die Anzahl der Kanäle in jeder Gruppe bleibt dieselbe wie in der ursprünglichen Architektur. Zuletzt werden die Gruppen von Feature-Maps hinzugefügt, um die Kardinalität durchzuführen.
Modellskalierung für verkettungsbasierte Modelle
Die Modellskalierung hilft dabei Anpassen der Attribute der Modelle Dies hilft bei der Erstellung von Modellen gemäß den Anforderungen und in verschiedenen Maßstäben, um den unterschiedlichen Interferenzgeschwindigkeiten gerecht zu werden.

In der Abbildung geht es um die Modellskalierung für verschiedene verkettungsbasierte Modelle. Wie in Abbildung (a) und (b) zu sehen ist, nimmt die Ausgabebreite des Rechenblocks mit zunehmender Tiefenskalierung der Modelle zu. Dadurch wird die Eingangsbreite der Übertragungsschichten vergrößert. Wenn diese Methoden in einer verkettungsbasierten Architektur implementiert werden, wird der Skalierungsprozess ausführlich durchgeführt und ist in Abbildung (c) dargestellt.
Daraus lässt sich schließen, dass es bei verkettungsbasierten Modellen nicht möglich ist, die Skalierungsfaktoren unabhängig voneinander zu analysieren, sondern sie vielmehr gemeinsam betrachtet bzw. analysiert werden müssen. Daher gilt für ein verkettungsbasiertes Modell: Es ist geeignet, die entsprechende Skalierungsmethode des zusammengesetzten Modells zu verwenden. Wenn der Tiefenfaktor skaliert wird, muss außerdem auch der Ausgabekanal des Blocks skaliert werden.
Trainierbare Tüte mit Freebies
Eine Tüte Gratisgeschenke ist ein Begriff, den Entwickler zur Beschreibung verwenden eine Reihe von Methoden oder Techniken, die die Trainingsstrategie oder die Kosten verändern können in einem Versuch, die Modellgenauigkeit zu erhöhen. Was sind also diese trainierbaren Taschen voller Gratisartikel in YOLOv7? Werfen wir einen Blick.
Geplante neu parametrisierte Faltung
Der YOLOv7-Algorithmus verwendet zur Bestimmung Gradientenflussausbreitungspfade wie man ein Netzwerk idealerweise mit der neu parametrisierten Faltung kombiniert. Dieser Ansatz von YOLov7 ist ein Gegenversuch RepConv-Algorithmus Das funktioniert zwar beim VGG-Modell einwandfrei, bei direkter Anwendung auf die DenseNet- und ResNet-Modelle ist die Leistung jedoch schlecht.
Um die Verbindungen in einer Faltungsschicht zu identifizieren, wird die Der RepConv-Algorithmus kombiniert 3×3-Faltung und 1×1-Faltung. Wenn wir den Algorithmus, seine Leistung und die Architektur analysieren, werden wir feststellen, dass RepConv das zerstört Verkettung in DenseNet und das Residuum in ResNet.

Die obige Abbildung zeigt ein geplantes, neu parametrisiertes Modell. Es ist ersichtlich, dass der YOLov7-Algorithmus festgestellt hat, dass eine Schicht im Netzwerk mit Verkettungs- oder Restverbindungen keine Identitätsverbindung im RepConv-Algorithmus haben sollte. Folglich ist ein Wechsel mit RepConvN ohne Identitätsverbindungen akzeptabel.
Grob für Auxiliary und Fein für Bleiverlust
Umfassende Überwachung ist ein Zweig der Informatik, der häufig im Trainingsprozess tiefer Netzwerke Anwendung findet. Das Grundprinzip der Tiefenaufsicht besteht darin fügt einen zusätzlichen Hilfskopf in den mittleren Schichten des Netzwerks hinzu zusammen mit den flachen Netzwerkgewichten mit Assistentenverlust als Leitfaden. Der YOLOv7-Algorithmus bezeichnet den Kopf, der für die Endausgabe verantwortlich ist, als Hauptkopf, und der Hilfskopf ist der Kopf, der beim Training hilft.
Im weiteren Verlauf verwendet YOLOv7 eine andere Methode für die Labelzuweisung. Herkömmlicherweise wurde die Etikettenzuweisung verwendet, um Etiketten zu generieren, indem direkt auf die Grundwahrheit verwiesen wurde und auf der Grundlage eines bestimmten Regelsatzes. In den letzten Jahren spielen jedoch die Verteilung und Qualität der Vorhersageeingaben eine wichtige Rolle bei der Generierung eines zuverlässigen Labels. YOLOv7 generiert ein Softlabel des Objekts unter Verwendung der Vorhersagen von Bounding Box und Ground Truth.
Darüber hinaus nutzt die neue Etikettenzuweisungsmethode des YOLOv7-Algorithmus die Vorhersagen des Lead-Kopfes, um sowohl den Lead- als auch den Hilfskopf zu leiten. Für die Etikettenzuweisungsmethode werden zwei Strategien vorgeschlagen.
Lead Head Guided Label Assigner
Die Strategie führt Berechnungen auf der Grundlage der Vorhersageergebnisse des Lead-Heads und der Grundwahrheit durch und nutzt dann die Optimierung, um Soft Labels zu generieren. Diese Softlabels werden dann als Trainingsmodell sowohl für den Leitkopf als auch für den Hilfskopf verwendet.
Die Strategie geht davon aus, dass die von ihm generierten Etiketten repräsentativer sein und zwischen der Quelle und dem Ziel korrelieren sollten, da der leitende Kopf über eine größere Lernfähigkeit verfügt.
Grob-zu-Fein-Leitungskopf-geführter Etikettenzuweiser
Diese Strategie führt auch Berechnungen auf der Grundlage der Vorhersageergebnisse des Lead-Heads und der Grundwahrheit durch und nutzt dann die Optimierung, um Soft Labels zu generieren. Es gibt jedoch einen entscheidenden Unterschied. Bei dieser Strategie gibt es zwei Sätze von Soft Labels: grobe Ebene, und feines Etikett.
Die grobe Markierung wird durch Lockerung der Einschränkungen der positiven Probe erzeugt
Zuweisungsprozess, der mehr Raster als positive Ziele behandelt. Dies geschieht, um das Risiko des Informationsverlusts aufgrund der schwächeren Lernfähigkeit des Hilfsleiters zu vermeiden.

Die obige Abbildung erläutert die Verwendung einer trainierbaren Tasche mit Gratisartikeln im YOLOv7-Algorithmus. Für den Hilfskopf wird „grob“ und für den Führungskopf „fein“ angezeigt. Wenn wir ein Modell mit Hilfskopf (b) mit dem Normalmodell (a) vergleichen, werden wir feststellen, dass das Schema in (b) einen Hilfskopf hat, während er in (a) nicht vorhanden ist.
Abbildung (c) zeigt den allgemeinen unabhängigen Label-Zuweiser, während Abbildung (d) und Abbildung (e) den Lead Guided Assigner bzw. den Coarse-toFine Lead Guided Assigner darstellen, die von YOLOv7 verwendet werden.
Andere trainierbare Tasche mit Gratisartikeln
Zusätzlich zu den oben genannten verwendet der YOLOv7-Algorithmus zusätzliche Taschen voller Gratisartikel, obwohl diese ursprünglich nicht von ihm vorgeschlagen wurden. Sie sind
- Chargennormalisierung in der Conv-Bn-Aktivierungstechnologie: Diese Strategie wird verwendet, um eine Faltungsschicht direkt mit der Batch-Normalisierungsschicht zu verbinden.
- Implizites Wissen in YOLOR: Der YOLOv7 kombiniert die Strategie mit der Convolutional Feature Map.
- EMA-Modell: Das EMA-Modell wird in YOLOv7 als endgültiges Referenzmodell verwendet, obwohl seine primäre Verwendung darin besteht, in der Mean-Teacher-Methode verwendet zu werden.
YOLOv7: Experimente
Versuchsaufbau
Der YOLOv7-Algorithmus verwendet die Microsoft COCO-Datensatz für Training und Validierung ihr Objekterkennungsmodell, und nicht alle dieser Experimente verwenden ein vorab trainiertes Modell. Die Entwickler verwendeten den Zugdatensatz 2017 für das Training und den Validierungsdatensatz 2017 für die Auswahl der Hyperparameter. Abschließend wird die Leistung der YOLOv7-Objekterkennungsergebnisse mit modernsten Algorithmen zur Objekterkennung verglichen.
Entwickler haben ein Basismodell dafür entworfen Edge-GPU (YOLOv7-tiny), normale GPU (YOLOv7) und Cloud-GPU (YOLOv7-W6). Darüber hinaus verwendet der YOLOv7-Algorithmus auch ein Basismodell für die Modellskalierung entsprechend unterschiedlicher Serviceanforderungen und erhält unterschiedliche Modelle. Beim YOLOv7-Algorithmus erfolgt die Stapelskalierung am Hals und die vorgeschlagenen Verbindungen werden verwendet, um die Tiefe und Breite des Modells zu vergrößern.
Baselines
Der YOLOv7-Algorithmus verwendet frühere YOLO-Modelle und den YOLOR-Objekterkennungsalgorithmus als Basis.

Die obige Abbildung vergleicht die Basislinie des YOLOv7-Modells mit anderen Objekterkennungsmodellen und die Ergebnisse sind ziemlich offensichtlich. Im Vergleich mit dem Der YOLOv4-Algorithmus und YOLOv7 verwenden nicht nur 75 % weniger Parameter, sondern auch 15 % weniger Rechenaufwand und weisen eine um 0.4 % höhere Genauigkeit auf.
Vergleich mit modernsten Objektdetektormodellen

Die obige Abbildung zeigt die Ergebnisse, wenn YOLOv7 mit modernsten Objekterkennungsmodellen für mobile und allgemeine GPUs verglichen wird. Es ist zu beobachten, dass die vom YOLOv7-Algorithmus vorgeschlagene Methode den besten Kompromiss zwischen Geschwindigkeit und Genauigkeit aufweist.
Ablationsstudie: Vorgeschlagene Methode zur Skalierung von Verbindungen

Die oben gezeigte Abbildung vergleicht die Ergebnisse der Verwendung verschiedener Strategien zur Skalierung des Modells. Die Skalierungsstrategie im YOLOv7-Modell skaliert die Tiefe des Rechenblocks um das 1.5-fache und die Breite um das 1.25-fache.
Im Vergleich zu einem Modell, das nur die Tiefe skaliert, schneidet das YOLOv7-Modell um 0.5 % besser ab und verbraucht weniger Parameter und Rechenleistung. Im Vergleich zu Modellen, die nur die Tiefe skalieren, ist die Genauigkeit von YOLOv7 hingegen um 0.2 % verbessert, aber die Anzahl der Parameter muss um 2.9 % und die Berechnung um 1.2 % skaliert werden.
Vorgeschlagenes geplantes neu parametrisiertes Modell
Um die Allgemeingültigkeit des vorgeschlagenen neu parametrisierten Modells zu überprüfen, hat das Der YOLOv7-Algorithmus verwendet es zur Verifizierung auf residuenbasierten und verkettungsbasierten Modellen. Für den Verifizierungsprozess wird der YOLOv7-Algorithmus verwendet 3-gestapeltes ELAN für das verkettungsbasierte Modell und CSPDarknet für das residuenbasierte Modell.
Für das verkettungsbasierte Modell ersetzt der Algorithmus die 3×3 Faltungsschichten im 3-Stack-ELAN durch RepConv. Die folgende Abbildung zeigt die detaillierte Konfiguration von Planned RepConv und 3-Stack-ELAN.

Darüber hinaus verwendet der YOLOv7-Algorithmus beim Umgang mit dem residuenbasierten Modell einen umgekehrten dunklen Block, da der ursprüngliche dunkle Block keinen 3×3-Faltungsblock hat. Die folgende Abbildung zeigt die Architektur des Reversed CSPDarknet, das die Positionen der 3×3- und der 1×1-Faltungsschicht umkehrt. 
Vorgeschlagener Verlust des stellvertretenden Leiters
Für den Assistentenverlust für den Hilfskopf vergleicht das YOLOv7-Modell die unabhängige Etikettenzuweisung für die Methoden Hilfskopf und Führungskopf.

Die obige Abbildung enthält die Ergebnisse der Studie zum vorgeschlagenen Hilfskopf. Es ist ersichtlich, dass die Gesamtleistung des Modells mit zunehmendem Assistentenverlust zunimmt. Darüber hinaus schneidet die vom YOLOv7-Modell vorgeschlagene Lead-geführte Label-Zuweisung besser ab als unabhängige Lead-Zuweisungsstrategien.
YOLOv7-Ergebnisse
Basierend auf den obigen Experimenten ist hier das Ergebnis der Leistung von YOLov7 im Vergleich zu anderen Objekterkennungsalgorithmen.

In der obigen Abbildung wird das YOLOv7-Modell mit anderen Objekterkennungsalgorithmen verglichen. Es ist deutlich zu erkennen, dass YOLOv7 andere Einwanderkennungsmodelle in Bezug auf übertrifft Durchschnittliche Präzision (AP) vs. Batch-Interferenz.
Darüber hinaus vergleicht die folgende Abbildung die Leistung von YOLOv7 mit anderen Echtzeit-Algorithmen zur Einspruchserkennung. Wieder einmal übertrifft YOLOv7 andere Modelle in Bezug auf Gesamtleistung, Genauigkeit und Effizienz.

Hier sind einige zusätzliche Beobachtungen aus den YOLOv7-Ergebnissen und -Leistungen.
- Der YOLOv7-Tiny ist mit über 6 Millionen Parametern das kleinste Modell der YOLO-Familie. Der YOLOv7-Tiny hat eine durchschnittliche Präzision von 35.2 % und übertrifft die YOLOv4-Tiny-Modelle mit vergleichbaren Parametern.
- Das YOLOv7-Modell hat über 37 Millionen Parameter und übertrifft Modelle mit höheren Parametern wie YOLov4.
- Das YOLOv7-Modell hat die höchste Karten- und FPS-Rate im Bereich von 5 bis 160 FPS.
Fazit
YOLO oder You Only Look Once ist das hochmoderne Objekterkennungsmodell in der modernen Computer Vision. Der YOLO-Algorithmus ist für seine hohe Genauigkeit und Effizienz bekannt und findet daher umfangreiche Anwendung in der Echtzeit-Objekterkennungsbranche. Seit der Einführung des ersten YOLO-Algorithmus im Jahr 2016 konnten Entwickler das Modell durch Experimente kontinuierlich verbessern.
Das YOLOv7-Modell ist das neueste Mitglied der YOLO-Familie und der bisher leistungsstärkste YOLo-Algorithmus. In diesem Artikel haben wir über die Grundlagen von YOLOv7 gesprochen und versucht zu erklären, was YOLOv7 so effizient macht.












