dedrone blog
Geschrieben von: Rafael Turner (Director of Artificial Intelligence, Dedrone), Alex Kimiavi (Computer Vision Engineer, Dedrone), Ivan Lebedev (Simulation Team Lead, Dedrone)
Wir freuen uns mitzuteilen, dass unseren Kunden die nächste Generation der Computer-Vision-Modelle (CV) von Dedrone zur Verfügung steht. Wir nennen es Pythagoras 1, benannt nach PyTorch, dem von Dedrone verwendeten leistungsstarken Framework für die Erstellung von Deep-Learning-Modellen, und zum Teil nach dem berühmten griechischen Mathematiker. Diese Version bietet Verbesserungen bei der Präzision für alle Objektklassen und der Wiedererkennung für die meisten Objektklassen. Die Version bietet auch eine erhebliche Verbesserung der Laufzeit des Modells. Dieses Modell der nächsten Generation kommt nun in allen Lösungen von Dedrone zum Einsatz, einschließlich unserer neuesten Sensor-Fusion-Lösungen zum Schutz vor Drohnen sowie DedroneBeyond.
Dedrones Machine-Learning Team (ML) nutzte drei Kernelemente, um eine der schnellsten und genauesten Lösungen zur Luftraumüberwachung zu entwickeln, die auf Sensor-Fusion basieren.
Zuallererst starteten wir mit der richtigen GPU (Graphics Processing Unit) begonnen, der H1000. Diese GPU ist dafür bekannt, dass sie als Trainingsmaschine für maschinelles Lernen Spitzenleistungen erbringt. Aktuell arbeitet Dedrone mit mehrerer dieser Maschinen rund um die Uhr, um unsere Lösung stetig zu verbessern.
Als Nächstes nutzen wir PyTorch als Framework für die Computer-Vision-Modelle von DedroneTracker.AI. Wir haben uns vorgenommen, die besten Modelle für die Sicherheit des unteren Luftraums zu entwickeln und dabei weiterhin unsere Performance bei der Drohnenabwehr zu gewährleisten. Wir haben das Feedback unserer Kunden berücksichtigt, um die Fehlalarmrate weiter zu senken und unsere Fähigkeit zur Erkennung von allen Flugobjekten zu verbessern, nicht nur von Drohnen. PyTorch ermöglichte es uns, eine völlig neue neuronale Netzwerkarchitektur zu verwenden. Pythagoras 1 gehört zum State-of-the-Art der Detektionstechnologie und ist ein großer Schritt nach vorne.
Außerdem haben wir Dedrones umfassende Bibliothek von Datensätzen der vergangenen sieben Jahre genutzt und sie durch simulierte Datensätze sowie Active Learning für die interessantesten Fälle erweitert und in unseren Modell-Trainingsprozess eingebunden.
Pythagoras 1 hat die Geschwindigkeit unseres Videotrackers um durchschnittlich 20 % erhöht und gleichzeitig die Genauigkeit deutlich verbessert, so dass sowohl die Zahl der "Falsch Positiven" als auch der "Falsch Negativen" Ergebnisse gesunken ist. Die nachfolgende Illustration zeigt Szenarien für "Richtig Positiv", "Falsch Positiv" und "Falsch Negativ":
Diese Verbesserungen lassen sich anhand der verbesserten durchschnittlichen Genauigkeit (Mean Average Precision, mAP) und des durchschnittlichen Wiedererkennungswerts (Mean Average Recall, mAR) messen. Recall und Precision sind die beiden Schlüsselkennzahlen zur Bewertung der Detektorleistung. In der Praxis gibt es einen Ausgleich zwischen diesen Kennzahlen. Eine Erhöhung des Schwellenwerts für die Klassifizierung eines Objekts im Luftraum führt zu weniger falsch-positiven Ergebnissen und verbessert somit die Präzision. In der Praxis führt dies jedoch zu mehr falsch-negativen Ergebnissen, so dass der Wiedererkennungswert nun geringer ist. Dieser Ausgleich funktioniert in beide Richtungen. Die beiden folgenden Gleichungen erläutern diese Metriken:
Darüber hinaus haben wir eine 14-fache Verbesserung der durchschnittlichen Genauigkeit bei extrem kleinen Drohnen festgestellt. Diese Verbesserungen wurden bei allen Objekten und in verschiedenen Maßstäben beobachtet. Die Erkennungsmetriken werden in den nachstehenden Tabellen detailliert aufgeführt:
Dedrone ist bestrebt, seine End-to-End-KI-Lösung zu verbessern. Zu diesem Zweck haben wir einen neuen Computer-Cluster angeschafft, der NVIDIAs Flaggschiff-Grafikprozessor (GPU), den H100, nutzt. Wir haben mit Lambda Labs zusammengearbeitet, um unseren neuen Computer-Cluster zu entwickeln. Diese neue Hardware verkürzte die Zeit, die wir zum Trainieren unseres Modells mit Millionen von Videobildern benötigten, da wir unseren Trainingscode an die Verwendung mehrerer GPUs anpassten. Dies wiederum ermöglichte es unserem Team, Experimente mit einer viel höheren Rate durchzuführen. Diese Experimente umfassten Änderungen an der Architektur des neuronalen Netzes sowie die geführte Abstimmung der Hyperparameter. Darüber hinaus basiert unsere Evaluierungsinfrastruktur auf Weights & Biases, was es uns ermöglicht, die Ergebnisse unseres Modells leicht zu visualisieren und zu verstehen, wo wir uns verbessern können. Darüber hinaus verfügt Weights & Biases über ein Hyperparameter-Tuning-Framework, Sweeps, das auf jede von uns trainierte Architektur angewendet wird.
Pythagoras 1 ist ein vollständiges Upgrade im Vergleich zu unserem vorherigen Modell, das eine neue Architektur des neuronalen Netzwerks sowie ein neues Training- und Deployment Framework nutzt. Die Architektur des neuronalen Netzwerks ermöglicht eine einfachere Zuordnung von Merkmalen und verhindert, dass andere Detektoren Annahmen treffen, die das Netzwerk verwirren können. Das Training Framework ist deutlich flexibler als das vorherige und ermöglicht uns Prototypen deutlich schneller zu erstellen und mit neuen Ideen zu experimentieren. Die neue Inferenzeinheit, die wir verwenden, verkürzt die Zeit, die unser Modell für die Auswertung eines Videos benötigt, erheblich, so dass wir im Vergleich zu unserem vorherigen Modell mehr "Neuronen" in unserem neuronalen Netzwerk nutzen können, und das bei ähnlichen Frames pro Sekunde. Darüber hinaus kann das Netzwerk mehr Pixel an Informationen nutzen, ohne dass die Laufzeit im Vergleich zu unserer vorherigen Deployment Methode stark beeinträchtigt wird. Durch diese Änderung können wir 4k-Videos schneller verarbeiten und analysieren, sodass wir für neue Herausforderungen bei der Überwachung des Luftraums bereit sind, wie z.B. DFR (Drone as first responder = Drohnen als Ersthelfer).
Beim Machine Learning sind Daten das A und O. Gute Daten können die Leistung eines Modells erheblich verbessern, während schlechte Daten zu suboptimalen Ergebnissen führen können, unabhängig von der Komplexität des Modells. Dieses Konzept wird in dem Sprichwort zusammengefasst:
"Gute Daten sind besser als noch mehr Daten".
Unsere Arbeit begann mit einem Basis-Datensatz mit der in der Abbildung dargestellten Objektverteilung. Die Daten wurden an verschiedenen Standorten gesammelt, enthielten aber hauptsächlich Drohnen. Diese Bilder wurden mit dem internen Programm von Dedrone annotiert und bildeten die Grundlage für unseren Trainingsdatensatz. Um die Leistung unseres Modells zu verbessern, mussten wir die Qualität unserer Daten diversifizieren und verbessern. Aufgrund der mangelnden Vielfältigkeit unseres Datensatzes haben wir verschiedene innovative Ansätze gewählt, um Daten zu kuratieren und optimieren (Data Curation and Perfection = DCAP).
Eine unserer wichtigsten Strategien zur Verbesserung der Datenqualität ist die Integration des active Learnings in unseren Modell-Trainingsprozess. Beim active Learning werden die informativsten Datenpunkte für die Annotation ausgewählt, wodurch die Modellleistung mit weniger Datenproben verbessert wird.
Bei unserem active Learning Prozess identifizieren wir Fehler, einschließlich falscher Alarme, falscher Klassifizierungen und verpasster Erkennungen, auch bei mehreren Objekten in der gleichen Szene. Solche Fehlversuche waren entscheidend für das Verständnis, wo unser System verbessert werden musste.
Diese Verbesserungsmethode wenden wir auch heute noch an. Indem wir aktiv nach Fehlläufen suchen, können wir einen umfassenderen und effektiveren Trainingsdatensatz zusammenstellen. Die ausgemachten Fehlversuche werden zur Annotation und Qualitätssicherung an ein externes Unternehmen weitergeleitet. Sobald dieser Prozess abgeschlossen ist, werden die neuen Daten in unseren Trainingsdatensatz integriert und stehen für die nächste Iteration des active Learnings bereit. Dieser Prozess gewährleistet eine kontinuierliche Verbesserung der Leistung unseres Modells. Vor kurzem haben wir auf diese Weise weitere 2 Millionen annotierte Bilder hinzugefügt.
Künstliche Daten sind für Machine Learning und Computer Vision von entscheidender Bedeutung, da sie helfen, Lücken in realen Datensätzen zu füllen, die Diversität zu erhöhen und die Verteilung der Klassifizierung auszugleichen. Durch die Erzeugung künstlicher Bilder können wir verschiedene Szenarien simulieren, vorhandene Daten ergänzen und herausfordernde Fälle schaffen, die die Flexibilität und Genauigkeit der Modelle verbessern. Dies wird umso wichtiger, wenn reale Daten knapp oder schwer zu beschaffen sind.
Um den Datensatz von Dedrone weiter zu verbessern, setzen wir daher Techniken zur Datenerweiterung mit unserem Tool AutoKat ein. AutoKat erweitert vorhandene Bilder, indem es künstliche Objekte mit oder ohne vorhandene Annotation ergänzt. Für dieses Projekt haben wir verschiedene Modelle beschafft, darunter 21 Hubschrauber, 7 Flugzeuge und 11 Drohnen (darunter Quadrocopter, Fixed Wings und sogar drei Group-3-Drohnen), die skaliert, ausgerichtet und in einer beliebigen Position innerhalb eines Bildes platziert werden können.
Mit dieser Methode können wir eine Vielzahl von Bildern erstellen, was besonders nützlich ist, um unseren Datensatz auszugleichen, indem wir viele Annotationen von Hubschraubern und Flugzeugen erzeugen. Sie hilft auch dabei, die Verteilung der Objektgröße zu berücksichtigen, was für die Weiterentwicklung unserer Modelle für die Arbeit mit 4K-Bildern entscheidend ist. Auch wenn die von AutoKat generierten Bilder das Rauschen, die Belichtung und die Schärfe realer Bilder nicht vollständig wiedergeben, tragen sie doch erheblich zur Verbesserung unseres Datensatzes bei. Im Folgenden finden Sie einige Beispiele für Bilder, die für das Pythagoras 1-Projekt erweitert wurden.
Ein weiterer vielversprechender Ansatz ist die Erzeugung vollständig künstlicher Bilder unter Verwendung simulierter Umgebungen und Objekte. Unser Simulationsteam arbeitet daran, realistische Bilder zu erstellen, bei denen alles zusammen gerendert wird, um umfassende Informationen über die tatsächliche Situation zu erhalten. Simulierte Umgebungen bieten die Flexibilität, mit verschiedenen Lichtverhältnissen, Wetterbedingungen und außergewöhnlichen Bedingungen zu experimentieren, die in der Realität nur schwer nachzubilden sind, wie z. B. Kamikaze-Drohnen, die über Städte fliegen. Die größte Herausforderung besteht darin, die simulierten Sensor- und Objektivkonfigurationen mit den in der Realität verwendeten abzugleichen. Trotz dieser Komplexität sind wir davon überzeugt, dass dieser Ansatz der simulierten Daten in Zukunft die Leistung unseres Modells weiter verbessern wird. Hier sind einige Bilder, die die von uns entwickelte simulierte Umgebung zeigen. Dieser Ansatz befindet sich noch in der Entwicklung und wird für die weitere Optimierung von Pythagoras 1 verwendet werden.
Daten sind es, die jedes ML-Modell zum Leben erwecken. Mit redundanten oder unzureichenden Daten kann das Modell unerwünschtes Verhalten erlernen oder nicht gut auf unbekannte Instanzen verallgemeinern. Durch unseren Ablationsprozess haben wir wichtige Datenerweiterungen identifiziert, die unser Modell verbessert haben. Die Daten, auf die unser Modell zurückgreift, sind auch schwierig zu erheben, z. B. Flugzeuge und Hubschrauber in sehr großer Entfernung von einer Kamera. Um dies in unserem Datensatz zu berücksichtigen, war das Simulationsteam in der Lage, synthetische Daten zu erzeugen. Das Data Curation and Perfection Team (DCAP) von Dedrone hat wünschenswerte und vielfältige Daten gesammelt und liefert diese auch weiterhin, damit Pythagoras darauf trainiert werden kann. Diese kontinuierlichen Verbesserungen unserer Daten tragen weiterhin zur Leistungssteigerung von Pythagoras bei.
Nachdem wir die Architektur unseres neuronalen Netzwerks verbessert, die Hyperparameter optimiert, die Daten korrigiert und die Lücken mit simulierten Daten aufgefüllt hatten, hat sich die mAP unseres Modells um 24,3 % verbessert!
Unsere Vision ist es, jedes Flugobjekt am Himmel zu erkennen, zu verfolgen und zu klassifizieren. Mit Pythagoras 1 haben wir einen großen Schritt in die richtige Richtung gemacht. Pythagoras 1 ermöglicht die weltweit schnellste und präzieseste Lösung für die Überwachung des unteren Luftraums sowie die Abwehr von Drohnen. Angetrieben von einem starken Team für Data Curation, Perfection, and Simulation nutzt das Modell die schnellste Verarbeitungstechnologie, die neueste ML-Modellforschung und -Entwicklung. Wir sind entschlossen, Pythagoras 1 stetig weiterzuentwickeln und werden in Kürze mehr Informationen zum Thema "Thermal Visions" veröffentlichen.
Veröffentlicht
17. Juli 2024
| Aktualisiert
10. August 2024
Über den Autor
Das Dedrone-Marketingteam ist dafür verantwortlich, die Öffentlichkeit und Organisationen weltweit über Neuigkeiten, Updates und Lösungen im Bereich der Drohnenabwehr auf dem Laufenden zu halten.