FR 3132156 A1 20230728 FR 2200618 A 20220125 Procédé d’évaluation de la couverture d’une base de données ayant servi à l’entraînement d’un modèle La présente invention concerne un procédé d’évaluation de la couverture d’une base de données (BD) ayant servi à l’entraînement d’un modèle (M), le modèle (M) étant propre à déterminer des actions en fonction d’observations décrivant un ensemble d’états, le procédé comprenant : la détermination de caractéristiques d’une représentation représentant des observations par des éléments dans un espace, les caractéristiques comprenant un rayon minimal, dit rayon global (ε TDA ), et un nombre, dit nombre global (N TDA ), la détermination d’un nombre, dit nombre perturbé (N AI² ), correspondant à un intervalle maximal de perturbations tolérées pour au moins un état, et la détermination d’une métrique relative à la couverture de la base de données (BD) en fonction du rayon global (ε TDA ), du rayon de perturbation (ε AI² ), du nombre global (N TDA ) et du nombre perturbé (N AI² ). Figure pour l'abrégé : 4 Procédé d’évaluation de la couverture d’une base de données ayant servi à l’entraînement d’un modèle La présente invention concerne un procédé d’évaluation de la couverture d’une base de données ayant servi à l’entraînement d’un modèle. La présente invention concerne aussi un produit programme d’ordinateur associé. Au cours des dernières années, la certification des outils d’apprentissage profond (en anglais « deep learning ») est devenue un sujet majeur de recherche dans le domaine de l’intelligence artificielle. En particulier, l’apprentissage par renforcement profond (en anglais « deep reinforcement learning »), qui combine des techniques d’apprentissage par renforcement (en anglais « reinforcement learrning ») et d’apprentissage profond, est principalement utilisé pour la manipulation de robots ou la navigation. Cependant, les modèles obtenus par de telles techniques sont considérés comme des algorithmes dits « boîte noire » en raison de l'utilisation de réseaux neuronaux profonds pour réaliser les prédictions. A cet effet, plusieurs approches ont été développées pour certifier la décision des modèles obtenus par un apprentissage par renforcement profond. Il est notamment connu des méthodes d'apprentissage par renforcement adverse utilisant deux agents, à savoir un adversaire et un protagoniste. Il est aussi connu des méthodes basées sur l'observation du pire état possible. D’autres méthodes utilisent des fonctions de contrôle où la politique apprise par le réseau de neurones appartient à un ensemble de politiques considérées comme sûres. Néanmoins, de telles méthodes ne permettent pas de répondre aux besoins de sûreté de fonctionnement en termes d’exigences et de spécifications industrielles. L’absence d’une réponse à ces besoins constitue la principale limite au déploiement et à l'industrialisation des modèles obtenus par un apprentissage profond. Il existe donc un besoin pour un moyen permettant une meilleure évaluation des performances d’un outil d’intelligence artificielle, notamment en termes de sûreté de fonctionnement et de robustesse. A cet effet, la présente description a pour objet un procédé d’évaluation de la couverture d’une base de données ayant servi à l’entraînement d’un modèle, le modèle étant un réseau de neurones entraîné pour déterminer une action, parmi un ensemble d’actions prédéfinies, en fonction d’une observation, chaque action déterminée par le modèle correspondant à une classe d’actions parmi au moins deux classes d’actions, chaque observation décrivant un ensemble d’états, chaque ensemble d’observations de la base de données correspondant à une même classe d’actions formant un groupement d’observations, le procédé étant mis en œuvre par ordinateur et comprenant, pour au moins un groupement d’observations, les étapes suivantes : la détermination, par un premier outil d’analyse, d’un intervalle maximal de perturbations tolérées pour au moins l’un des états des observations du groupement, une perturbation d’une observation étant dite tolérée lorsque l’action résultante déterminée par le modèle appartient à la même classe d’actions que l’action déterminée en l’absence de la perturbation, l’étendue de l’intervalle définissant une dimension appelée rayon de perturbation, la représentation, par un deuxième outil d’analyse, des observations du groupement par des éléments dans un espace, pour obtenir une représentation dite représentation globale, la détermination, par le deuxième outil d’analyse, de caractéristiques topologiques de la représentation globale, les caractéristiques topologiques comprenant au moins : un rayon minimal, dit rayon global, pour des figures formant un complexe simplicial de sorte que le complexe simplicial englobe l’ensemble des éléments de la représentation globale, et un nombre, dit nombre global, correspondant au nombre d’espaces vides englobés par le complexe simplicial, un espace vide étant un espace dépourvu d’éléments, la détermination, par le deuxième outil d’analyse, d’un nombre, dit nombre perturbé , correspondant au nombre d’espaces vides englobés par le complexe simplicial lorsque le rayon global est remplacé par le rayon de perturbation, et la détermination d’une métrique relative à la couverture de la base de données, pour la classe d’actions considérée, en fonction du rayon global , du rayon de perturbation, du nombre global (N TDA ) et du nombre perturbé. Suivant des modes de réalisation particuliers, le procédé comprend une ou plusieurs des caractéristiques suivantes, prise(s) isolément ou suivant toutes les combinaisons techniquement possibles : - l’étape de détermination des caractéristiques topologiques de la représentation globale comprend la détermination, par le deuxième outil, du complexe simplicial et d’un diagramme de persistance correspondant au complexe simplicial, les caractéristiques topologiques étant obtenues en fonction du diagramme de persistance ; - le complexe simplicial est un complexe de Cech ; - le nombre global et le nombre perturbé sont des nombres de Betti ; - la métrique est obtenue par une opération appliquée sur une première composante et une deuxième composante, la première composante dépendant du rayon global et du rayon de perturbation, la deuxième composante dépendant du nombre global et du nombre perturbé ; - la métrique est donnée par la formule suivante : Où : désigne la métrique, , , est le rayon de perturbation, est le rayon global, est le nombre global, et est le nombre perturbé - le premier outil est un modèle d’interprétation abstraite des données ; - le modèle est un modèle de conduite pour un véhicule, les actions prédéfinies étant des actions de conduite du véhicule, l’ensemble d’états de chaque observation caractérisant un scénario dans lequel le véhicule évolue dans un environnement, les classes des actions appartenant à deux classes d’actions parmi une classe d’actions tolérées pour la conduite du véhicule selon le scénario considéré et une classe d’actions critiques pour la conduite du véhicule selon le scénario considéré ; - les classes d’actions tolérées et critiques pour chaque scénario considéré sont déterminées en fonction de contraintes de sûreté, les contraintes de sûreté étant de préférence conformes à la norme ISO/PAS 21448 :2019 SOTIF ; La présente description se rapporte également à un produit programme d’ordinateur sur lequel est mémorisé un programme d’ordinateur comprenant des instructions de programme, le programme d’ordinateur étant chargé sur une unité de traitement de données et adapté pour entraîner la mise en œuvre d’un procédé tel que précédemment décrit lorsque le programme d’ordinateur est mis en œuvre sur l’unité de traitement des données. La présente description concerne aussi un support lisible d’informations sur lequel est mémorisé un produit programme d’ordinateur comprenant des instructions de programme, le programme d’ordinateur étant chargé sur une unité de traitement de données et entraînant la mise en œuvre d’un procédé tel que décrit précédemment lorsque le programme d’ordinateur est mis en œuvre sur l’unité de traitement des données D’autres caractéristiques et avantages de l’invention apparaîtront à la lecture de la description qui suit de modes de réalisation de l’invention, donnés à titre d’exemple uniquement et en référence aux dessins qui sont : , , une vue schématique d’un exemple d’ordinateur permettant la mise en œuvre d’un procédé d’évaluation de la couverture d’une base de données ayant servi à l’entraînement d’un modèle, , , un organigramme d’un exemple de mise en œuvre d’un procédé d’évaluation de la couverture d’une base de données ayant servi à l’entraînement d’un modèle, , , un exemple d’un scénario dans lequel un véhicule évolue dans un environnement, et , , un exemple illustrant l’utilisation de la base de données, du modèle et des outils d’analyse lors de la mise en œuvre d’un procédé d’évaluation de la couverture d’une base de données ayant servi à l’entraînement d’un modèle. Un calculateur 10 et un produit programme d’ordinateur 12 sont illustrés par la . Le calculateur 10, est de préférence, un ordinateur. Plus généralement, le calculateur 10 est un calculateur électronique propre à manipuler et/ou transformer des données représentées comme des quantités électroniques ou physiques dans des registres de calculateur 10 et/ou des mémoires en d’autres données similaires correspondant à des données physiques dans des mémoires, des registres ou d’autres types de dispositifs d’affichage, de transmission ou de mémorisation. Le calculateur 10 est en interaction avec le produit programme d’ordinateur 12. Comme illustré par la , le calculateur 10 comporte un processeur 14 comprenant une unité de traitement de données 16, des mémoires 18 et un lecteur 20 de support d’informations. Dans l’exemple illustré par la , le calculateur 10 comprend un clavier 22 et une unité d’affichage 24. Le produit programme d’ordinateur 12 comporte un support d’informations 26. Le support d’information 26 est un support lisible par le calculateur 10, usuellement par l’unité de traitement de données 16. Le support lisible d’informations 26 est un médium adapté à mémoriser des instructions électroniques et capable d’être couplé à un bus d’un système informatique. A titre d’exemple, le support d’informations 26 est une disquette ou disque souple (de la dénomination anglaise « Floppy disc »), un disque optique, un CD-ROM, un disque magnéto-optique, une mémoire ROM, une mémoire RAM, une mémoire EPROM, une mémoire EEPROM, une carte magnétique ou une carte optique. Sur le support d’informations 26 est mémorisé le programme d’ordinateur 12 comprenant des instructions de programme. Le programme d’ordinateur 12 est chargeable sur l’unité de traitement de données 16 et est adapté pour entraîner la mise en œuvre d’un procédé d’évaluation de la couverture d’une base de données BD ayant servi à l’entraînement d’un modèle M, lorsque le programme d’ordinateur 12 est mis en œuvre sur l’unité de traitement 16 du calculateur 10. Le fonctionnement du calculateur 10 va maintenant être décrit en référence à la , qui illustre schématiquement un exemple de mise en œuvre d’un procédé d’évaluation de la couverture d’une base de données BD ayant servi à l’entraînement d’un modèle M, et aux figures 3 et 4 qui sont des exemples permettant une meilleure appréhension de certaines des étapes du procédé. Le procédé d’évaluation vise à évaluer la couverture d’une base de données spécifique au modèle M. La base de données BD, aussi appelée base de données d’évaluation, est typiquement une base de données ayant servi à l’apprentissage et/ou au test, et/ou à la validation du modèle M. Par le terme « couverture », il est entendu la quantification de la couverture (ou complétude) de la base de données par rapport au champ des possibles. Une bonne couverture des données implique une meilleure connaissance des décisions prises par le modèle M. En outre, plus la couverture augmente, plus les zones de décisions sûres prises par le modèle M augmentent. Le modèle M est un réseau de neurones entraîné pour déterminer une action A t , parmi un ensemble d’actions prédéfinies, en fonction d’une observation O t . Chaque action A t déterminée par le modèle M appartient à une classe d’actions parmi au moins deux classes d’actions. Chaque observation O t décrit un ensemble d’états S t (au moins un état). De préférence, le modèle M a été entraîné selon une technique d’apprentissage par renforcement, notamment une technique d’apprentissage par renforcement profond. Cela signifie que les scénarios ayant servi à entraîner le modèle M ne sont initialement pas des données labellisées. L’apprentissage par renforcement met en œuvre un agent qui apprend à effectuer une tâche en maximisant des récompenses cumulatives décomptées. L'agent agit en choisissant séquentiellement des actions à partir d'observations sur une séquence de pas de temps. L'apprentissage par renforcement profond utilise des réseaux de neurones pour apprendre ou approximer certains composants (paramètres) de l'algorithme d’apprentissage par renforcement, tels que l'équation de Bellman, la transition d'état et la politique. Par exemple, le modèle M a été entraîné selon un algorithme dit d’optimisation de la politique proximale (en anglais « proximal policy optimization algorithm », abrégé en PPO) tel que décrit dans l’article Schulman, J., F. Wolski, P. Dhariwal, A. Radford, and O. Klimov (2017), Proximal policy optimization algorithms. arXi v p r eprin t arXiv:1707.06347 . Un tel algorithme PPO utilise un réseau neuronal critique et un réseau neuronal acteur. Le réseau critique produit une estimation d’une fonction de valeur qui est une estimation de la récompense actualisée cumulative future attendue à partir des états courants, en suivant une politique actuelle définie par le réseau acteur. En variante, le modèle M a été entraîné selon d’autres algorithmes d’apprentissage par renforcement. La base de données BD associe des observations O t à des actions A t . Chaque ensemble d’observations O t de la base de données BD correspondant à une même classe d’actions forme un groupement G d’observations O t . Les données de la base de données BD ont par exemple été obtenues par une technique d’apprentissage par renforcement profond telles que les techniques décrites précédemment, c’est-à-dire via un agent qui apprend en effectuant des tâches visant à maximiser une récompense. En variante, la base de données BD a, par exemple, été obtenue à partir de données labelisées. Dans un exemple de mise en œuvre, le modèle M est un modèle de conduite pour un véhicule. Le véhicule est de préférence un véhicule autonome, tel qu’une voiture autonome, ou un véhicule semi-autonome. Dans d’autres exemples, le véhicule est choisi parmi tous types de véhicules terrestres, aériens ou encore navals. Dans cet exemple, les actions A t prédéfinies sont des actions de conduite du véhicule. L’ensemble d’états S t de chaque observation O t caractérise un scénario dans lequel le véhicule évolue dans un environnement. Un scénario (aussi appelée épisode) est une succession de scènes dans le temps, les scènes s’enchaînant à des instants successifs. Les instants correspondent par exemple aux instants de prise d’images des scènes et dépendent donc de la fréquence image. Les états S t caractérisant le scénario sont donc les entrées du modèle de conduite M et les actions A t sont les potentielles sorties du modèle de conduite M. En particulier, les états S t caractérisent le véhicule et l’environnement dans lequel évolue le véhicule pour un scénario donné. De préférence, les états S t caractérisant chaque scénario comprennent la position et la vitesse du véhicule, ainsi que la position relative et, le cas échéant la vitesse relative, d’au moins un élément dans l’environnement du véhicule. Dans un mode de mise en œuvre, les états S t comprennent aussi une indication relative à la direction de déplacement du véhicule et des éventuels autres éléments en mouvement. En variante, il est supposé que le véhicule et les éventuels éléments se déplacent dans la même direction. Les éléments sont, par exemple, des obstacles à éviter par le véhicule. Les obstacles sont, par exemple, d’autres véhicules, des êtres humains, des animaux ou encore des installations ou des objets sur le parcours du véhicule. Les actions A t sont destinées à commander le véhicule de sorte à assurer la conduite du véhicule. Les actions A t sont destinées soit à être directement mises en œuvre sur le véhicule (conduite autonome), soit à servir d’aide à un conducteur (conduite semi-autonome). Dans un exemple, les actions de conduite A t sont choisies parmi les actions de conduite suivantes : accélérer, décélérer, tourner à droite, tourner à gauche, et ne rien faire. Les classes des actions appartiennent à deux classes d’actions parmi une classe d’actions tolérées pour la conduite du véhicule selon le scénario considéré et une classe d’actions critiques pour la conduite du véhicule selon le scénario considéré. Une action A t est dite tolérée lorsque sa mise en œuvre est conforme à des contraintes de sûreté pour le scénario considéré. Une action A t est dite critique sinon. De préférence, les actions A t tolérées et critiques pour chaque scénario considéré sont déterminées en fonction de contraintes (exigences) de sûreté prédéfinies. Les contraintes de sûreté sont, avantageusement, conformes à la norme ISO/PAS 21448 :2019 SOTIF. Cette norme définit des niveaux de sûreté acceptables pour un véhicule routier afin d’éviter des risques déraisonnables. Le concept de base est l’introduction d’un processus itératif de développement et de conception de la fonction qui comprend la validation et la vérification, ce qui conduit à une fonction considérée comme sûre. Cette approche suppose qu'il existe une zone de scénarios connus avec un comportement sûr du système et une zone inconnue avec des dommages potentiels. Dans l’exemple de mise en œuvre, la base de données BD comprend plusieurs scénarios dans lesquels le véhicule évolue dans un environnement, chaque scénario étant caractérisé par un ensemble d’états S t prenant différentes valeurs au cours du temps. Chaque état S t a une valeur initiale V c correspondant à l’instant de début (instant initial) du scénario correspondant. Les scénarios ont, par exemple, été générés via un outil de simulation de l’environnement (ou outil de génération de scénarios), tel que l’outil décrit dans l’article Leurent, E. (2018), An Environment for Autonomous Driving Decision-Making. En variante, les scénarios sont obtenus sur des cas réels via des mesures effectuées par des capteurs. La illustre un exemple d’une scène d’un scénario en deux dimensions dans lequel une voiture autonome évolue dans un environnement. Dans cet environnement, l'agent conduit un véhicule (voiture) sur une autoroute inﬁnie avec quatre voies de circulation allant toutes dans la même direction. L'agent observe trois voies, celle sur laquelle il se trouve VP, les deux voies adjacentes, gauche VG et droite VD. Le véhicule conduit par l'agent (l'ego-véhicule 40) est inséré dans un flux de traﬃc (les exo-véhicules 42). Chaque exo-véhicule 42 suit un algorithme de conduite de base. L'objectif de l'agent est de conduire le plus rapidement possible sans collision. L'épisode se termine lorsque l'ego-véhicule 40 entre en collision avec un autre véhicule 42 ou lorsqu’une durée prédéterminée de l’épisode est atteinte. Sur l’exemple de la , il est illustré les zones Z C correspondant à des actions A t critiques pour le véhicule et les zones Z T correspondant à des actions A t tolérées pour le véhicule. En particulier, pour la scène du scénario de la , la seule action A t critique est de tourner à droite. Dans ces scénarios, les états S t comprennent les états suivants : la position de l'ego-véhicule 40 sur la largeur de la route, la vitesse de l'ego-véhicule 40, les positions des exo-véhicules 42 les plus proches, avant et arrière, droite et gauche, sur chacune des voies adjacentes par rapport à l'ego-véhicule 40, et leurs vitesses par rapport à la vitesse de l'ego-véhicule 40. Les actions A t possibles pour le modèle de conduite M pour ces scénarios sont les suivantes : accélérer, décélérer, tourner à droite, tourner à gauche, et ne rien faire (rester sur la même voie avec la même vitesse). Une accélération est, par exemple, une augmentation de la vitesse de 5 mètres par seconde. De même, une décélération est, par exemple, une diminution de la vitesse de 5 mètres par seconde. Dans cet exemple, la fonction de récompense du modèle de conduite M est de la forme suivante : Où : est la vitesse du véhicule ego, est la moyenne des vitesses des véhicules exos, et désigne le maximum de X. Le procédé d’évaluation comprend plusieurs étapes décrites dans ce qui suit. Ces étapes sont mises en œuvre pour au moins un groupement G d’observations O t , c’est-à-dire pour au moins une classe d’actions, telle que la classe d’actions tolérées. De préférence, ces étapes sont mises en œuvre pour toutes les classes d’actions, et donc dans le cas d’espèce aussi bien pour la classe d’actions tolérées que pour la classe d’actions critiques. Les étapes du procédé décrites dans ce qui suit sont mises en œuvre par le calculateur 10 en interaction avec le produit programme d’ordinateur 12, c’est-à-dire sont mises en œuvre par ordinateur. Le procédé d’évaluation comprend une étape 100 de détermination par un premier outil d’analyse, d’un intervalle maximal de perturbations tolérées pour au moins l’un des états S t des observations O t du groupement G. La valeur initiale de l’état S t soumis à la perturbation est comprise dans l’intervalle maximal de perturbations. Une perturbation d’une observation O t est dite tolérée lorsque l’action A t résultante déterminée par le modèle M appartient à la même classe d’action que l’action déterminée en l’absence de la perturbation. L’étendue de l’intervalle définit une dimension appelée rayon de perturbation ε AI² . L’intervalle maximal de perturbations est, de préférence, commun à toutes les observations O t du groupement G. Le premier outil est, de préférence, un modèle d’interprétation abstraite des données. Le premier outil est, par exemple, construit sur la base des librairies ERAN et ELINA. Un modèle d’interprétation abstraite est un ensemble de fonctions. Le modèle d’interprétation abstraite a été conçu en conformité avec la théorie de l’interprétation abstraite. Des exemples de réalisation d’un modèle d’interprétation abstraite sont décrits dans les articles suivants : Article 1 : Patrick Cousot & Radhia Cousot. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In Conference Record of the Sixth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages , pages 238—252, Los Angeles, California, 1977. ACM Press, New York. Article 2 : Gehr, T., M. Mirman, D. Drachsler-Cohen, P. Tsankov, S. Chaudhuri et M. Vechev (2018). Ai2 : Safety and robustness certification of neural networks with abstract interpretation. In 2018 IEEE Symposium on Security and Privacy (SP), pp 3-18 IEEE. L’interprétation abstraite telle que décrite dans l’article 1 est une théorie d'approximation discrète de la sémantique des systèmes informatiques, principalement utilisée pour l'analyse et la vériﬁcation statique des logiciels. La sémantique des programmes décrit l'ensemble de tous les comportements possibles de ces programmes lorsqu'ils sont exécutés pour toutes les données d'entrée possibles. En d'autres termes, le comportement de tout programme peut être formellement décrit pour toutes les relations et transitions qui le constituent. Globalement, l'interprétation abstraite est une méthode classique de sur-approximation robuste et précise d'un ensemble potentiellement illimité ou inﬁni de comportements de programmes. Les idées clés derrière ce concept sont (i) les transformateurs abstraits pour approcher le comportement du programme. Ils sont déﬁnis pour les instructions utilisées par le programme ; (ii) le domaine abstrait qui est simplement un ensemble d'éléments abstraits (approximations) généralement ordonnés dans un treillis (ensemble ordonné où toute paire d'éléments à une borne supérieure et une borne inférieure). L’article 2 développe une méthode de vériﬁcation appelée AI2 basée sur l’interprétation abstraite qui peut raisonner sur la sûreté et la robustesse des systèmes de Deep Learning. AI2 vise à évaluer un travail de réseau neuronal profond contre des perturbations locales ou globales. Elle garantit également l'absence d'attaques adverses dans un intervalle certifié. Le modèle d’interprétation abstraite est, par exemple, conforme au modèle décrit dans cet article. Par exemple, dans le cas d’un modèle M de conduite, le ou les états S t considérés pour la perturbation sont, de préférence, des états relatifs au véhicule d’étude, et non des états de l’environnement. Les états perturbés sont avantageusement choisis parmi la position et la vitesse du véhicule. Par exemple, dans le cas de la scène du scénario illustrée en , il est considéré une perturbation en position pour l’ego véhicule qui s’étend sur un intervalle de 0 à 8,75 mètres, et une perturbation en vitesse pour l’ego véhicule qui s’étend sur un intervalle de 0 à 1,75 m/s. Le procédé d’évaluation comprend une étape 110 de représentation, par un deuxième outil d’analyse, des observations O t du groupement G par des éléments dans un espace pour obtenir une représentation, dite représentation globale. La représentation globale est typiquement un nuage de points, chaque point correspondant à une observation O t . La position de chaque point dépend ainsi des valeurs des états S t de l’observation O t correspondante. Le procédé d’évaluation comprend une étape 120 de détermination, par le deuxième outil d’analyse, de caractéristiques topologiques de la représentation globale. Les caractéristiques topologiques sont des caractéristiques décrivant la topologie de la représentation globale selon le principe de l’analyse topologique des données. L'analyse topologique des données (TDA) est un domaine qui vise à comprendre et à exploiter la structure topologique et géométrique des données en extrayant les caractéristiques topologiques et géométriques du collecteur auquel appartiennent les données discrètes. La TDA combine la topologie algébrique et d'autres outils issus des mathématiques pures pour permettre une étude mathématique rigoureuse de la "forme". L'outil principal est appelé homologie persistante : une adaptation de l'homologie aux données des nuages de points. L'homologie persistante a été appliquée à de nombreux types de données dans de nombreux domaines. En outre, sa base mathématique a également une importance théorique et repose sur la notion de complexes simpliciaux. Un complexe simplicial est un ensemble composé de points, de segments de ligne, de triangles et de leurs équivalents à n dimensions. On peut générer le complexe simplicial en reliant les points les plus proches selon une métrique. C'est une façon de représenter les données sous la forme d'un graphe. Cette représentation facilite le traitement de données volumineuses. La transition d'un nuage de points vers un complexe simplicial est appelée ﬁltration. L'homologie persistante permet ensuite de déduire des signatures et des caractéristiques capables de décrire le collecteur. Les documents suivants décrivent des exemples de mise en œuvre de l’analyse topologique des données : T. Lacombe, M. Carrière, F. Chazal, Y. Ike, M. Glisse, Y. Umeda. Topological Uncertainty: Monitoring trained neural networks through persistence of activation graphs}. Proc. IJCAI 2021. Niezi Mharsi. Cloud-Radio Access Networks : design, optimization and algorithms. Networking and Internet Architecture [cs.NI]. Université Paris-Saclay, 2019. Le deuxième outil est, ainsi, un modèle d’analyse topologique des données. Les caractéristiques topologiques comprennent au moins : un rayon minimal, dit rayon global ε TDA , pour des figures (de section circulaire) formant un complexe simplicial de sorte que le complexe simplicial englobe (recouvre) l’ensemble des éléments de la représentation globale, et un nombre, dit nombre global N TDA , correspondant au nombre d’espaces vides englobés par le complexe simplicial, un espace vide étant un espace dépourvu d’éléments qui s’appelle le nombre de Betti. Dans un exemple de mise en œuvre, l’étape de détermination des caractéristiques topologiques de la représentation globale comprend la détermination, par le deuxième outil, du complexe simplicial et d’un diagramme de persistance correspondant au complexe simplicial. Les caractéristiques topologiques sont obtenues en fonction du diagramme de persistance. Le complexe simplifical est une figure elle-même formée de figures ayant une dimension minimale (rayon minimale) choisie de sorte que le complexe simplicial englobe les éléments de la représentation globale. Le complexe simplicial est, de préférence, un complexe de Cech. Le diagramme de persistance décrit des caractéristiques du complexe simplicial. Par exemple, le diagramme de persistance décrit l’évolution de nombre d’espaces vides en fonction du rayon des figures formant le complexe simplicial. Le procédé d’évaluation comprend une étape 130 de détermination, par le deuxième outil d’analyse, d’un nombre, dit nombre perturbé N AI² , correspondant au nombre d’espaces vides englobés par le complexe simplicial lorsque le rayon global ε TDA est remplacé par le rayon de perturbation ε AI² . Le nombre perturbé N AI² est typiquement inférieur ou égal au nombre global N TDA . Le nombre perturbé N AI² est aussi un nombre de Betti. Dans un exemple de mise en œuvre le nombre perturbé N AI² est obtenu en fonction du diagramme de persistance. La représente l’ensemble des éléments ayant permis d’obtenir le rayon global ε TDA , le rayon de perturbation ε AI² , le nombre global N TDA et le nombre perturbé N AI² . Comme visible sur cette , le premier outil, dénommé IA², prend en entrée le modèle M et la base de données BD et ressort en sortie le rayon de perturbation ε AI² . Le deuxième outil, dénommé TDA, prend en entrée la base de données BD et le rayon de perturbation ε AI² , et ressort en sortie le rayon global ε TDA , le nombre global N TDA et le nombre perturbé N AI² . Le procédé d’évaluation comprend une étape 140 de détermination d’une métrique relative à la couverture de la base de données BD, pour la classe d’actions considérée, en fonction du rayon global ε TDA , du rayon de perturbation ε AI² , du nombre global N TDA et du nombre perturbé N AI² . La métrique permet de quantifier la couverture de la base de données BD par rapport au champ des possibles. La métrique est, de préférence, obtenue par application d’une opération sur une première composante et une deuxième composante. La première composante dépend du rayon global ε TDA et du rayon de perturbation ε AI² . La deuxième composante dépend du nombre global N TDA et du nombre perturbé N AI² . L’opération est par exemple un produit, une somme ou encore une moyenne. Par exemple, la métrique est donnée par la formule suivante : Où : est le rayon de perturbation, est le rayon global, est le nombre global, et est le nombre perturbé. Dans cet exemple, la métrique prend des valeurs entre 0 et 1. Une valeur proche de 1 indique une bonne couverture de la base de données BD pour la classe d’actions considérée, alors qu’une valeur proche de 0 indique une mauvaise couverture, et donc de probables défaillances dans le modèle M entraîné. A l’issue du procédé, il est ainsi obtenu une métrique pour au moins une classe d’actions considérée, par exemple pour la classe d’actions tolérées. Lorsque les étapes du procédé sont répétées pour d’autres ou toutes les classes d’actions tolérées, il est aussi obtenu une métrique propre à chacune de ces classes d’actions. Ces métriques permettent d’évaluer la couverture de la base de données, et ainsi, la fiabilité, la sûreté et la robustesse du modèle M. La robustesse du modèle M désigne la capacité du modèle M à réagir correctement à une petite modification dans les données d’entrée. En fonction des métriques obtenues, le modèle M est, par exemple, validé et/ou certifié, ou est invalidé. Dans le cas, où la couverture est jugée insuffisante pour une classe d’actions, la base de données BD est, par exemple, enrichie, et le modèle M est réentraîné sur la base de données enrichie. Ainsi, le présent procédé permet une meilleure évaluation des performances d’un outil d’intelligence artificielle, notamment en termes de sûreté de fonctionnement et de robustesse. Un tel procédé est particulièrement adapté à l’évaluation des performances de modèles obtenus par apprentissage par renforcement, pour lesquels plusieurs décisions tolérées peuvent être prises par un modèle. L’homme du métier comprendra que les modes de réalisation et variantes précédemment décrits peuvent être combinés pour former de nouveaux modes de réalisation pourvu qu’ils soient compatibles techniquement. En outre, il est à noter que l’ordre des différentes étapes du procédé est donné à titre d’exemple dans la description. Ainsi, cet ordre est susceptible d’être modifié tant que l’enchaînement des étapes est compatible techniquement. Par exemple, l’étape 100 peut être réalisée après l’étape 120. Procédé d’évaluation de la couverture d’une base de données (BD) ayant servi à l’entraînement d’un modèle (M), le modèle (M) étant un réseau de neurones entraîné pour déterminer une action (A t ), parmi un ensemble d’actions (A t ) prédéfinies, en fonction d’une observation (O t ), chaque action (A t ) déterminée par le modèle (M) correspondant à une classe d’actions parmi au moins deux classes d’actions, chaque observation (O t ) décrivant un ensemble d’états (S t ), chaque ensemble d’observations (O t ) de la base de données (BD) correspondant à une même classe d’actions formant un groupement (G) d’observations (O t ), le procédé étant mis en œuvre par ordinateur et comprenant, pour au moins un groupement (G) d’observations (O t ), les étapes suivantes : la détermination, par un premier outil d’analyse, d’un intervalle maximal de perturbations tolérées pour au moins l’un des états (S t ) des observations (O t ) du groupement (G), une perturbation d’une observation (O t ) étant dite tolérée lorsque l’action (A t ) résultante déterminée par le modèle (M) appartient à la même classe d’actions que l’action déterminée en l’absence de la perturbation, l’étendue de l’intervalle définissant une dimension appelée rayon de perturbation (ε AI² ), la représentation, par un deuxième outil d’analyse, des observations (O t ) du groupement (G) par des éléments dans un espace, pour obtenir une représentation dite représentation globale, la détermination, par le deuxième outil d’analyse, de caractéristiques topologiques de la représentation globale, les caractéristiques topologiques comprenant au moins : un rayon minimal, dit rayon global (ε TDA ), pour des figures formant un complexe simplicial de sorte que le complexe simplicial englobe l’ensemble des éléments de la représentation globale, et un nombre, dit nombre global (N TDA ), correspondant au nombre d’espaces vides englobés par le complexe simplicial, un espace vide étant un espace dépourvu d’éléments, la détermination, par le deuxième outil d’analyse, d’un nombre, dit nombre perturbé (N AI² ), correspondant au nombre d’espaces vides englobés par le complexe simplicial lorsque le rayon global (ε TDA ) est remplacé par le rayon de perturbation (ε AI² ), et la détermination d’une métrique relative à la couverture de la base de données (BD), pour la classe d’actions considérée, en fonction du rayon global (ε TDA ), du rayon de perturbation (ε AI² ), du nombre global (N TDA ) et du nombre perturbé (N AI² ). Procédé selon la revendication 1, dans lequel l’étape de détermination des caractéristiques topologiques de la représentation globale comprend la détermination, par le deuxième outil, du complexe simplicial et d’un diagramme de persistance correspondant au complexe simplicial, les caractéristiques topologiques étant obtenues en fonction du diagramme de persistance. Procédé selon la revendication 1 ou 2, dans lequel le complexe simplicial est un complexe de Cech. Procédé selon l’une quelconque des revendications 1 à 3, dans lequel le nombre global (N TDA ) et le nombre perturbé (N AI² ) sont des nombres de Betti. Procédé selon l’une quelconque des revendications 1 à 4, dans lequel la métrique est obtenue par une opération appliquée sur une première composante et une deuxième composante, la première composante dépendant du rayon global (ε TDA ) et du rayon de perturbation (ε AI² ), la deuxième composante dépendant du nombre global (N TDA ) et du nombre perturbé (N AI² ). Procédé selon l’une quelconque des revendications 1 à 5, dans lequel la métrique est donnée par la formule suivante : Où : désigne la métrique, , , est le rayon de perturbation, est le rayon global, est le nombre global, et est le nombre perturbé Procédé selon l’une quelconque des revendications 1 à 6, dans lequel le premier outil est un modèle d’interprétation abstraite des données. Procédé selon l’une quelconque des revendications 1 à 7, dans lequel le modèle (M) est un modèle de conduite pour un véhicule, les actions (A t ) prédéfinies étant des actions de conduite du véhicule, l’ensemble d’états (S t ) de chaque observation (O t ) caractérisant un scénario dans lequel le véhicule évolue dans un environnement, les classes des actions appartenant à deux classes d’actions parmi une classe d’actions tolérées pour la conduite du véhicule selon le scénario considéré et une classe d’actions critiques pour la conduite du véhicule selon le scénario considéré. Procédé selon la revendication 8, dans lequel les classes d’actions tolérées et critiques pour chaque scénario considéré sont déterminées en fonction de contraintes de sûreté, les contraintes de sûreté étant de préférence conformes à la norme ISO/PAS 21448 :2019 SOTIF. Produit programme d’ordinateur sur lequel est mémorisé un programme d’ordinateur comprenant des instructions de programme, le programme d’ordinateur étant chargé sur une unité de traitement de données et entraînant la mise en œuvre d’un procédé selon l’une quelconque des revendications 1 à 9 lorsque le programme d’ordinateur est mis en œuvre sur l’unité de traitement des données.