Implantation certifiable et efficace de réseaux de neurones sur des systèmes embarqués temps-réel critiques.
Auteur / Autrice : | Iryna De albuquerque silva |
Direction : | Claire Pagetti, Thomas Carle, Werner De rammelaere |
Type : | Projet de thèse |
Discipline(s) : | Informatique et Télécommunications |
Date : | Inscription en doctorat le Soutenance le 16/07/2024 |
Etablissement(s) : | Toulouse, ISAE |
Ecole(s) doctorale(s) : | École doctorale Mathématiques, informatique et télécommunications |
Partenaire(s) de recherche : | Laboratoire : ISAE-ONERA MOIS MOdélisation et Ingénierie des Systèmes |
Jury : | Président / Présidente : Isabelle Puaut |
Examinateurs / Examinatrices : Claire Pagetti, Liliana Cucu-grosjean, Pierre-Emmanuel Hladik, Albert Cohen, Tomasz Kloda, Victor Jegu, Thomas Carle | |
Rapporteurs / Rapporteuses : Liliana Cucu-grosjean, Pierre-Emmanuel Hladik |
Mots clés
Mots clés libres
Résumé
Contexte. Le monde de laéronautique envisage lutilisation dalgorithmes dapprentissage automatique, et en particulier de réseaux de neurones, pour faciliter et améliorer des tâches telles que la navigation, la maintenance prédictive et le contrôle du trafic aérien. Toutefois, leur utilisation dans des systèmes critiques soulève de nombreuses questions de sécurité et de conformité aux exigences de certification. Ces dernières visent à garantir la correction de la conception jusquà limplantation de la fonction attendue. Récemment de nouvelles directives, telles que le standard ARP6983 [152], sont en cours décriture pour compléter les textes réglementaires existant afin de permettre lintroduction dalgorithmes dapprentissage automatique dans des systèmes avioniques. Ces directives complètent notamment la DO-178C [67], le standard de référence pour le développement de logiciels. Cette thèse étudie limplantation en temps réel et en toute sécurité de réseaux de neurones feed-forward sur des systèmes avioniques embarqués. En particulier, nous nous concentrons sur le modèle de réseau neuronal entrainé et vérifié hors ligne, appelé modèle dinférence. Lobjectif est de définir une approche de développement logiciel de modèles dinférence en conformité avec exigences de lavionique. Approche. Nous avons défini un certain nombre dobjectifs nécessaires pour garantir limplantation sûre et correcte dun modèle dinférence. Ces objectifs sont un sous-ensemble de ceux listés dans les normes de certification, mais ont été identifiés comme difficiles à atteindre pour le processus traditionnel de développement de logiciels dapprentissage automatique et sont cohérents avec les directives en cours délaboration, à savoir les feuilles de route de lEASA et la norme ARP6983. Plus précisément, les objectifs sélectionnés dans la thèse sont (i) la description précise et non ambigüe de la fonctionnalité du modèle dinférence, (ii) la préservation de la sémantique et la traçabilité de la description du modèle dinférence jusquà lexécutable final, (iii) la prédictibilité temporelle de limplantation, et (iv) une utilisation efficace des ressources disponibles. Contributions. Pour implanter correctement un modèle dinférence, il est important de définir formellement sa sémantique. Cela correspond à la première contribution de la thèse et nous avons formalisé chaque couche du modèle dinférence sous forme de fonctions mathématiques. Ensuite, nous avons développé ACETONE, de langlais Avionics C code generator for Neural Networks. ACETONE est un framework qui, à partir de la description dun modèle dinférence, génère automatiquement un code C sémantiquement équivalent et prédictible. Nous avons évalué le framework sur un ensemble réaliste de cas dutilisation pour valider lapproche en regard des objectifs de certification choisis. En outre, nous avons comparé lapproche à des outils de létat de lart. Une fois le framework défini et disponible sur GitHub, nous avons choisi un axe damélioration et doptimisation de code pour accélérer les temps de calcul. Plus précisément nous nous sommes concentrés sur les convolutions. Lidée est de reprendre les travaux classiques qui transforment une convolution en une multiplication matricielle. Cependant, les routines dalgèbre linéaire disponibles sur étagère ne sont pas compatibles avec les exigences de lavionique. Cest la raison pour laquelle, nous avons proposé notre propre implantation prédictive, traçable et efficace dun algorithme de multiplication matrice-matrice (GEMM) par blocs. Nous avons montré comment configurer un tel algorithme pour une cible donnée tout en proposant une méthode formelle de calcul du nombre daccès à la mémoire et du nombre de cache misses, ce qui ouvre la voie à une analyse statique du WCET.