blog dedrone

Comment Dedrone vient de fournir sa solution de sécurité de l'espace aérien la plus rapide et la plus précise à ce jour

Par

Dedrone

La PMA de notre modèle s'est améliorée de 24,3 %.

Rédigé par : Rafael Turner (Directeur de l'intelligence artificielle, Dedrone), Alex Kimiavi (Ingénieur en vision artificielle, Dedrone), Ivan Lebedev (Chef de l'équipe de simulation, Dedrone)

Principaux enseignements

  1. Aujourd'hui, Dedrone a livré sa solution de sensibilisation à l'espace aérien inférieur la plus rapide et la plus précise en s'appuyant sur PyTorch, Weights & Biases et le H100 de Nvidia pour créer un nouveau modèle que nous appelons Pythagore 1.
  2. Trois éléments fondamentaux doivent être réunis pour créer la solution de sécurité de l'espace aérien la plus rapide et la plus précise au monde. Il s'agit du matériel, de l'architecture du réseau neuronal et des données. Dans chaque cas, Dedrone a réuni les composants les plus performants disponibles.
  3. Ce moteur de base peut être utilisé à la fois pour se protéger contre les drones non autorisés et pour permettre aux drones productifs de naviguer en toute sécurité dans un espace aérien de plus en plus complexe.
  4. Pythagore 1 a déjà permis d'améliorer considérablement les performances, notamment la vitesse et la précision de détection pour l'identification d'oiseaux, d'hélicoptères, de drones quadricoptères, de drones à voilure fixe et d'avions.

Introduction

Aujourd'hui, nous sommes ravis de vous annoncer que la prochaine génération de modèles de vision artificielle (CV) de Dedrone est disponible pour une large utilisation par nos clients. Nous l'appelons Pythagore 1, d'après PyTorch, le cadre complet de construction de modèles d'apprentissage profond utilisé par Dedrone, et en partie d'après le célèbre mathématicien grec. Cette version présente des améliorations en termes de précision sur toutes les classes d'objets et de rappel sur la plupart des classes d'objets. La version comprend également une amélioration significative de la durée d'exécution du modèle. Ce modèle de nouvelle génération alimente désormais tous les produits de Dedrone, y compris nos dernières solutions de protection des drones par fusion de capteurs ainsi que DedroneBeyond.  

L'équipe dédiée à l'apprentissage automatique (ML) de Dedrone s'est appuyée sur trois déclencheurs principaux pour fournir l'une des solutions de sécurité de l'espace aérien basées sur la fusion de capteurs les plus rapides et les plus précises au monde.  

Tout d'abord, nous avons commencé avec le bon GPU, le H100. Cette machine est bien connue pour offrir les meilleures capacités actuelles en tant que machine d'apprentissage automatique. Nous possédons aujourd'hui plusieurs de ces machines, qui tournent 24 heures sur 24 pour améliorer en permanence notre solution.

Ensuite, nous utilisons PyTorch comme cadre pour les modèles de vision par ordinateur de DedroneTracker.AI, nous avons entrepris de construire les meilleurs modèles pour la sécurité de l'espace aérien inférieur tout en maintenant nos performances pour la mission de contre-drone. Nous voulions tenir compte des commentaires de nos clients sur la réduction des taux de fausses alarmes et l'amélioration de notre capacité à détecter des objets volants bien au-delà des quadcoptères traditionnels. PyTorch nous a permis d'utiliser une toute nouvelle architecture de réseau neuronal. Pythagoras 1 est un grand pas en avant et est vraiment à la pointe de la technologie pour les détecteurs d'objets dans la sensibilisation à l'espace aérien inférieur.  

Enfin, nous avons pris l'impressionnante bibliothèque de sept années d'ensembles de données déjà constitués et nous l'avons encore augmentée grâce à des ensembles de données simulées et à l'intégration de l'apprentissage actif des cas les plus intéressants, que nous avons ensuite réintégrés dans notre processus de formation de modèles.

Quels ont été les résultats de l'amélioration des performances ?

Pythagore 1 a permis une augmentation moyenne de 20 % de la vitesse de notre traqueur vidéo, ainsi qu'une amélioration significative de la précision, en réduisant à la fois les faux positifs et les faux négatifs. Une illustration détaillant les scénarios pour les vrais positifs, les faux positifs et les faux négatifs est présentée ci-dessous :

Ces améliorations peuvent être mesurées par l'amélioration de la précision moyenne (mAP) et du rappel moyen (mAR). Le rappel et la précision sont les deux principales mesures utilisées pour évaluer les performances des détecteurs. Dans la pratique, il existe un compromis entre ces mesures. En augmentant le seuil de classification d'un objet dans l'espace aérien, on réduit le nombre de faux positifs, ce qui améliore la précision. Toutefois, cela tend à permettre davantage de faux négatifs dans la pratique, de sorte que le rappel est désormais plus faible. Cela fonctionne également dans les deux sens. Les deux équations ci-dessous expliquent ces mesures :

Rappel et précision

En outre, nous constatons une amélioration de 14x de notre précision moyenne pour les drones extrêmement petits. Ces améliorations ont été observées pour tous les objets et à plusieurs échelles spatiales. Les mesures de détection sont détaillées dans les tableaux ci-dessous :

 

Comment ces résultats ont-ils été obtenus ?

Le besoin de vitesse : mise en œuvre d'une infrastructure haut de gamme

Dedrone s'est engagé à améliorer sa solution d'IA de bout en bout et, pour ce faire, nous avons acheté une nouvelle grappe d'ordinateurs utilisant l'unité de traitement graphique (GPU) ML phare de NVIDIA, le H100. Nous avons travaillé avec Lambda Labs pour construire notre nouvelle grappe d'ordinateurs. Ce nouveau matériel a permis de réduire le temps nécessaire à l'entraînement de notre modèle sur des millions d'images vidéo, car nous avons adapté notre code d'entraînement pour utiliser plusieurs GPU. Cela a permis à notre équipe d'effectuer des expériences à un rythme beaucoup plus élevé. Ces expériences ont impliqué des modifications de l'architecture du réseau neuronal ainsi que le réglage guidé des hyperparamètres. En outre, notre infrastructure d'évaluation est basée sur Weights & Biases, ce qui nous permet de visualiser facilement les résultats de notre modèle et de comprendre où nous pouvons nous améliorer. En outre, Weights & Biases est livré avec un cadre de réglage des hyperparamètres, Sweeps, qui est appliqué à chaque architecture que nous formons.

Nouvelle architecture de réseau neuronal

Pythagore 1 est une mise à jour complète de notre modèle précédent, qui s'appuie sur une nouvelle architecture de réseau neuronal, un nouveau cadre d'apprentissage et un nouveau cadre de déploiement. L'architecture du réseau neuronal permet de relier plus facilement les caractéristiques et de se débarrasser de certaines hypothèses que d'autres détecteurs font et qui peuvent embrouiller le réseau. Le cadre de formation est beaucoup plus robuste que notre cadre précédent, ce qui nous permet de créer rapidement des prototypes et d'expérimenter de nouvelles idées. Le nouveau moteur d'inférence que nous utilisons réduit considérablement le temps d'exécution de notre modèle sur une vidéo, ce qui nous permet d'exploiter davantage de "neurones" dans notre réseau neuronal pour un coût similaire en termes d'images par seconde par rapport à notre modèle précédent. En outre, le réseau peut exploiter davantage de pixels d'information sans que la durée d'exécution soit trop longue par rapport à notre ancienne méthode de déploiement. Ce changement nous a permis de traiter et de déduire rapidement ce qui se trouve dans une vidéo 4k, nous permettant ainsi d'être prêts pour les nouveaux défis de sensibilisation à l'espace aérien tels que le Drone as First Responder (DFR).

Tout est dans les données : Des données de qualité valent mieux que des données plus nombreuses

Dans le domaine de l'apprentissage automatique, les données sont essentielles. De bonnes données peuvent améliorer de manière significative les performances d'un modèle, tandis que de mauvaises données peuvent conduire à des résultats sous-optimaux, quelle que soit la complexité du modèle. Ce concept est résumé dans l'adage suivant :

"De bonnes données valent mieux que davantage de données.

Notre voyage a commencé par un ensemble de données de base avec la distribution d'objets vue dans l'image ci-dessous. Les données ont été collectées à partir d'une variété de sites, mais contenaient principalement des drones. Ces images ont été annotées à l'aide de l'outil interne de Dedrone, formant ainsi la base de notre ensemble de données d'entraînement. Pour améliorer les performances de notre modèle, nous devions diversifier et améliorer la qualité de nos données. La compréhension du manque de richesse de notre ensemble de données nous a conduits à adopter diverses approches innovantes pour la curation et la perfection des données (DCAP), que nous aborderons dans les sections suivantes.

Ensemble de données initiales de Dedrone

La curation et la perfection des données (DCAP)

L'une de nos principales stratégies pour améliorer la qualité des données a été l'intégration de l'apprentissage actif dans notre processus de formation des modèles. L'apprentissage actif consiste à sélectionner intelligemment les points de données les plus informatifs pour l'annotation, ce qui permet d'améliorer les performances du modèle avec moins d'échantillons de données.

Le DCAP par l'apprentissage actif

Notre boucle d'apprentissage actif implique l'identification des cas d'échec, notamment les fausses alertes, les classifications incorrectes et les détections manquées, y compris dans les cas où il y a plusieurs objets dans la scène. Les cas d'échec ont été cruciaux pour comprendre où notre système devait être amélioré.

Cette méthodologie d'amélioration se poursuit aujourd'hui ; en recherchant activement les cas d'échec, nous pouvons constituer un ensemble de données de formation plus complet et plus efficace. Les cas défaillants identifiés sont envoyés à une société d'annotation externalisée pour une annotation approfondie et une assurance qualité. Une fois ce processus terminé, les nouvelles données sont intégrées à notre ensemble de formation, prêtes pour la prochaine itération d'apprentissage actif. Ce processus itératif garantit une amélioration continue des performances de notre modèle. Nous avons récemment ajouté 2 millions d'images annotées supplémentaires grâce à cette méthodologie.

Données artificielles

Les données artificielles sont cruciales en ML et CV car elles permettent de combler les lacunes dans les ensembles de données du monde réel, d'améliorer la diversité et d'équilibrer les distributions de classes. En générant des images synthétiques, nous pouvons simuler divers scénarios, augmenter les données existantes et créer des cas difficiles qui améliorent la robustesse et la précision des modèles. Cela est d'autant plus important lorsque les données réelles sont rares ou difficiles à obtenir.

Par conséquent, pour améliorer encore l'ensemble de données de Dedrone, nous employons des techniques d'augmentation des données à l'aide de notre outil AutoKat. AutoKat augmente les images existantes en y peignant des objets artificiels, avec ou sans annotations existantes. Pour ce projet, nous avons acquis divers modèles, dont 21 hélicoptères, 7 avions et 11 drones (y compris des quadcoptères, des drones à voilure fixe et même trois drones du groupe 3), qui peuvent être mis à l'échelle, orientés et placés dans n'importe quelle position dans une image.

Cette méthode nous permet de créer un ensemble diversifié d'images, particulièrement utile pour équilibrer notre ensemble de données en générant de nombreuses annotations d'hélicoptères et d'avions. Elle permet également de traiter la distribution de la taille des objets, ce qui est crucial pour faire évoluer nos modèles afin qu'ils puissent fonctionner avec des images 4K. Même si les images générées par AutoKat ne rendent pas totalement compte du bruit, de l'éclairage et de la netteté des images du monde réel, elles contribuent de manière significative à l'amélioration de notre ensemble de données. Voici quelques exemples d'images étendues pour le projet Pythagore 1.

Exemples d'images AutoKat
Exemples d'images AutoKat

Une autre approche prometteuse est la génération d'images entièrement artificielles à l'aide d'environnements et d'objets simulés. Notre équipe de simulation travaille à la création d'images réalistes où tout est rendu ensemble, fournissant des informations complètes sur la réalité du terrain. Les environnements simulés offrent la souplesse nécessaire pour expérimenter diverses conditions d'éclairage, des scénarios météorologiques et des situations uniques difficiles à reproduire dans la réalité, comme les drones kamikazes survolant les villes. Le principal défi consiste à faire correspondre les configurations des capteurs et des objectifs simulés avec celles utilisées dans la vie réelle. Malgré cette difficulté, nous pensons qu'à l'avenir, cette approche des données simulées améliorera encore les performances de notre modèle. Voici quelques images illustrant le monde simulé que nous avons développé. Cette approche est encore en cours de développement et sera utilisée pour les prochaines étapes d'amélioration de Pythagore 1.

Exemples d'images simulées
Exemples d'images simulées

Les données sont ce qui donne vie à tout modèle de ML. Avec des données redondantes ou de mauvaise qualité, le modèle peut apprendre des comportements indésirables ou ne pas bien se généraliser à des cas inédits. Grâce à notre processus d'ablation, nous avons identifié des augmentations de données clés qui ont amélioré notre modèle. Les données que notre modèle exploite sont également difficiles à collecter, comme les avions et les hélicoptères situés à une distance très éloignée d'une caméra. Pour tenir compte de ces éléments dans notre ensemble de données, l'équipe de simulation a été en mesure de générer des données synthétiques. L'équipe de Dedrone chargée de la conservation et de la perfection des données (DCAP) a recueilli et continue de fournir des données désirables et diversifiées sur lesquelles Pythagore peut être entraîné. Ces améliorations continues de nos données continuent d'alimenter l'amélioration des performances de Pythagore.

Résultat

Après avoir amélioré l'architecture de notre réseau neuronal, optimisé les hyperparamètres, éliminé les données et comblé les lacunes avec des données simulées. Le mAP de notre modèle s'est amélioré de 24,3 % !

Ce que l'on peut attendre de Dedrone

Notre objectif est de détecter, de suivre et de classer tous les objets volants dans le ciel. Avec Pythagore 1, nous avons fait un grand pas vers cet objectif. Pythagore 1 apporte la solution la plus rapide et la plus précise au monde pour la sensibilisation à l'espace aérien inférieur et la lutte contre les UAS en tirant parti de la technologie de traitement la plus rapide, des dernières avancées en matière de recherche et de développement de modèles ML, et du soutien d'une solide équipe de curation, de perfectionnement et de simulation des données. Nous nous engageons à poursuivre la croissance et le développement de Pythagore 1 et publierons bientôt des versions thermiques.

Publié

17 juillet 2024

| Mise à jour

10 août 2024

A propos de l'auteur

L'équipe marketing de Dedrone est chargée de partager les nouvelles, les mises à jour et les solutions en matière de défense contre les drones avec les organisations du monde entier.