Brevet FR3163185A1 — publié le 20251212

Procédé de conception des blocs matériels et dispositifs associés La présente invention concerne un procédé de conception des blocs matériels d’un système physique comportant un dispositif de prédiction prédisant pour des entrées données une sortie, le procédé comportant une étape de : - obtention de jeux de données correspondant aux sorties données par le dispositif en présence des d’entrées du jeu de données, - réception de la probabilité qu’un jeu de données soit observé lors d’une utilisation prédéfinie, - collection des sorties prédites, - détermination de la distribution de la précision de prédiction de la sortie prédite pour chaque jeu de données, - agrégation des distributions déterminées, - application d’une métrique de risque à l’évolution temporelle de la distribution de précision de prédiction agrégée pour obtenir une grandeur représentative du domaine de performance du dispositif, et - modification des blocs en fonction de la grandeur obtenue. Figure pour l'abrégé : figure 2 Procédé de conception des blocs matériels et dispositifs associés La présente invention concerne un procédé de conception des blocs matériels d’un système physique adapté pour une utilisation prédéfinie. L’invention se rapporte aussi à un produit programme d’ordinateur et un support lisible d’informations. La présente invention se situe dans le domaine de la mise au point de systèmes critiques embarqués utilisant des dispositifs de prédiction implémentant un algorithme ayant été appris par utilisation d’une technique d’apprentissage machine. L’apprentissage machine est désigné par de nombreux termes différents comme le terme anglais de « machine learning », le terme « apprentissage automatique », le terme « apprentissage artificiel » ou encore le terme « apprentissage statistique ». L’apprentissage machine consiste à utiliser des données pour apprendre un algorithme de prédiction. Toutefois, si l’algorithme de prédiction ainsi appris est performant pour le jeu de données utilisé pour son apprentissage, cela ne montre pas que l’algorithme de prédiction soit adapté au cas d’usage dans lequel il est prévu de l’utiliser. Différentes approches existent pour évaluer les performances algorithmiques, comme par exemple, la conduite d’expériences d’analyse de robustesse ou encore l’utilisation de méthodes formelles pour la certification dans une plage de données prédéfinies. Cependant, ces approches ne donnent que des réponses partielles au problème de mesure et ne prennent pas en compte tous les cas d’utilisation, ce qui les rend imprécises. Cela conduit en particulier à obtenir des systèmes embarqués non adaptés aux performances voulues dans l’usage prévu pour ceux-ci. Il existe donc un besoin pour un procédé de conception des blocs matériels d’un système physique adapté pour une utilisation prédéfinie qui permette d’obtenir un système physique plus adapté. A cet effet, la description décrit un procédé de conception des blocs matériels d’un système physique adapté pour une utilisation prédéfinie, l’utilisation correspondant à un domaine de valeurs possibles pour plusieurs données, le système physique comportant un dispositif de prédiction, le dispositif de prédiction étant propre à prédire pour des entrées données la valeur d’une ou plusieurs sorties, le procédé comportant : - une phase d’obtention d’au moins une grandeur pour une configuration donnée des blocs matériels du système physique, une configuration étant définie par la valeur de l’ensemble des propriétés caractérisant les blocs, la phase d’obtention étant mise en œuvre par ordinateur et comportant les étapes de : - obtention de jeux de données, chaque donnée d’un jeu de données correspondant aux valeurs de sortie que devrait donner le dispositif de prédiction en présence des valeurs d’entrées du jeu de données, - réception de la probabilité pour chaque jeu de données qu’un jeu de données soit observé lors de l’utilisation prédéfinie pour la configuration donnée, - collection des sorties prédites par le dispositif de prédiction pour chaque valeur d’entrées des données des jeux de données, - détermination de la distribution de la précision de prédiction de la sortie prédite pour chaque jeu de données, pour obtenir des distributions déterminées, - agrégation des distributions déterminées par emploi d’une fonction d’agrégation utilisant les probabilités reçues, pour obtenir une distribution de précision de prédiction agrégée, la fonction d’agrégation est une somme pondérée dont les poids dépendent des probabilités reçues, - détermination d’une variation temporelle possible des poids avec une simulation de mouvement Brownien à partir des poids utilisés à l’étape d’agrégation, pour obtenir une évolution temporelle de la fonction d’agrégation résultant en une évolution temporelle de la distribution de précision de prédiction agrégée, - application d’au moins une métrique de risque à l’évolution temporelle de la distribution de précision de prédiction agrégée pour obtenir au moins une grandeur représentative du domaine dans lequel le dispositif de prédiction présente un seuil de performance prédéfini, et - une phase de modification des blocs du système physique en fonction de la grandeur obtenue. Selon des modes de réalisation particuliers, le procédé de conception présente une ou plusieurs des caractéristiques suivantes, prise(s) isolément ou selon toutes les combinaisons techniquement possibles : - il est défini une frontière pour le domaine, une grandeur obtenue à l’étape d’application étant une mesure représentative de la variation temporelle de la taille de la frontière au cours du temps. - le domaine est un ensemble de jeux de données représentatifs de l’utilisation prédéfinie, une grandeur obtenue à l’étape d’application étant l’intervalle de temps durant lequel la performance du dispositif de prédiction sur l’ensemble de jeux de données conserve une valeur supérieure au seuil de performance. - une grandeur obtenue à l’étape d’application est, pour un jeu de données, l’appartenance ou non du jeu de données associée au domaine dans lequel le dispositif de prédiction présente un seuil de performance prédéfini. - la simulation implique une variation temporelle exponentielle du poids par rapport au poids de l’étape d’agrégation. - l’étape d’application comporte également une opération additionnelle d’analyse statistique du résultat de la métrique de risque. - lors de l’opération d’analyse statistique, il est obtenu un élément parmi l’espérance de la borne supérieure du résultat, un quantile prédéfini du résultat et un moment statistique de la distribution statistique du résultat. - l’étape d’obtention est mise en œuvre par génération de chaque jeu de données à partir d’un jeu de données de référence selon une loi de probabilité donnée ou par génération par un modèle génératif de données initiales et par sélection selon une loi de probabilité donnée des données initiales pour former le jeu de données. - l’étape d’obtention comporte la modification des jeux de données en introduisant des imperfections de l’environnement du système physique ou en introduisant des perturbations adverses visant à manipuler les sorties du dispositif de prédiction. - les blocs du système physique sont choisis dans la liste constituée d’un capteur, d’une mémoire, d’un processeur, d’un élément de stockage, d’une unité d’affichage et d’une unité d’entrée. - les propriétés caractérisant les blocs sont choisies dans la liste constituée de la taille, de la capacité de calcul et de la dynamique de sensibilité. - au moins l’un parmi les entrées et/ou les sorties sont des données grandeurs physiques correspondant à des mesures issues d’un ou plusieurs capteurs. - le procédé comporte : - la mise en œuvre itérative des phases d’obtention et de modification jusqu’à ce qu’un critère prédéfini soit rempli, pour obtenir une configuration préférée, et - la fabrication du système physique selon la configuration préférée. La description décrit aussi un produit programme d’ordinateur comportant un support lisible d’informations, sur lequel est mémorisé un programme d’ordinateur comprenant des instructions de programme, le programme d’ordinateur étant chargeable sur une unité de traitement de données et mettant en œuvre 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 description propose également un support lisible d’informations comportant des instructions de programme formant un programme d’ordinateur, le programme d’ordinateur étant chargeable sur une unité de traitement de données et mettant en œuvre un procédé tel que précédemment décrit lorsque le programme d’ordinateur est mis en œuvre sur l’unité de traitement de données. Dans la présente description, l’expression « propre à » signifie indifféremment « adapté pour », « adapté à » ou « configuré pour ». Des caractéristiques et avantages de l’invention apparaîtront à la lecture de la description qui va suivre, donnée uniquement à titre d’exemple non limitatif, et faite en référence aux dessins annexés, sur lesquels : - FIG. 1 , la FIG. 1 est une représentation schématique d’un système et d’un produit programme d’ordinateur, et - FIG. 2 , la FIG. 2 est un ordinogramme d’un exemple de mise en œuvre d’un procédé de conception des blocs matériels d’un système physique adapté pour une utilisation prédéfinie. Un système 10 et un produit programme d’ordinateur 12 sont représentés sur la FIG. 1 . L’interaction entre le système 10 et le produit programme d’ordinateur 12 permet la mise en œuvre d’un procédé de conception des blocs matériels d’un système physique adapté pour une utilisation prédéfinie. Le procédé de conception est ainsi un procédé mis en œuvre par ordinateur ou plus exactement dont la phase d’obtention est mise en œuvre par ordinateur. Le système 10 est un ordinateur de bureau. En variante, le système 10 est un ordinateur monté sur un rack, un ordinateur portable, une tablette, un assistant numérique personnel (PDA) ou un smartphone. Dans des modes de réalisation spécifiques, l'ordinateur est adapté pour fonctionner en temps réel et/ou est dans un système embarqué, notamment dans un véhicule tel qu'un avion. Dans le cas de la FIG. 1 , le système 10 comprend une unité de calcul 14, une interface utilisateur 16 et un dispositif de communication 18. L’unité de calcul 14 est un circuit électronique conçu pour manipuler et/ou transformer des données représentées par des quantités électroniques ou physiques dans des registres du système 10 et/ou des mémoires en d'autres données similaires correspondant à des données physiques dans les mémoires de registres ou d'autres types de dispositifs d'affichage, de dispositifs de transmission ou de dispositifs de mémorisation. En tant qu’exemples spécifiques, l’unité de calcul 14 comprend un processeur monocœur ou multicœurs (tel qu’une unité de traitement centrale (CPU), une unité de traitement graphique (GPU), un microcontrôleur et un processeur de signal numérique (DSP)), un circuit logique programmable (comme un circuit intégré spécifique à une application (ASIC), un réseau de portes programmables in situ (FPGA), un dispositif logique programmable (PLD) et des réseaux logiques programmables (PLA)), une machine à états, une porte logique et des composants matériels discrets. L’unité de calcul 14 comprend une unité de traitement de données 20 adaptée pour traiter des données, notamment en effectuant des calculs, des mémoires 22 adaptées à stocker des données et un lecteur 24 adapté à lire un support lisible par ordinateur. L'interface utilisateur 16 comprend un dispositif d'entrée 26 et un dispositif de sortie 28. Le dispositif d’entrée 26 est un dispositif permettant à l'utilisateur du système 10 de saisir sur le système 10 des informations ou des commandes. Sur la FIG. 1 , le dispositif d’entrée 26 est un clavier. En variante, le dispositif d’entrée 26 est un périphérique de pointage (tel qu'une souris, un pavé tactile et une tablette graphique), un dispositif de reconnaissance vocale, un oculomètre ou un dispositif haptique (analyse des mouvements). Le dispositif de sortie 28 est une interface utilisateur graphique, c’est-à-dire une unité d’affichage conçue pour fournir des informations à l’utilisateur du système 10. Sur la FIG. 1 , le dispositif de sortie 28 est un écran d’affichage permettant une présentation visuelle de la sortie. Dans d'autres modes de réalisation, le dispositif de sortie est une imprimante, une unité d'affichage augmenté et/ou virtuel, un haut-parleur ou un autre dispositif générateur de son pour présenter la sortie sous forme sonore, une unité produisant des vibrations et/ou des odeurs ou une unité adaptée à produire un signal électrique. Dans un mode de réalisation spécifique, le dispositif d'entrée 26 et le dispositif de sortie 28 sont le même composant formant des interfaces homme-machine, tel qu'un écran interactif. Le dispositif de communication 18 permet une communication unidirectionnelle ou bidirectionnelle entre les composants du système 10. Par exemple, le dispositif de communication 18 est un système de communication par bus ou une interface d'entrée / sortie. La présence du dispositif de communication 18 permet que, dans certains modes de réalisation, les composants du système 10 soient distants les uns des autres. Le produit programme informatique 12 comprend un support lisible par ordinateur 32. Le support lisible par ordinateur 32 est un dispositif tangible lisible par le lecteur 24 de l’unité de calcul 14. Notamment, le support lisible par ordinateur 32 n'est pas un signal transitoire en soi, tels que des ondes radio ou d'autres ondes électromagnétiques à propagation libre, telles que des impulsions lumineuses ou des signaux électroniques. Un tel support de stockage lisible par ordinateur 32 est, par exemple, un dispositif de stockage électronique, un dispositif de stockage magnétique, un dispositif de stockage optique, un dispositif de stockage électromagnétique, un dispositif de stockage à semi-conducteur ou toute combinaison de ceux-ci. En tant que liste non exhaustive d'exemples plus spécifiques, le support de stockage lisible par ordinateur 32 est un dispositif codé mécaniquement, tel que des cartes perforées ou des structures en relief dans une gorge, une disquette, un disque dur, une mémoire morte (ROM), une mémoire vive (RAM), une mémoire effaçable programmable en lecture seule (EROM), une mémoire effaçable électriquement et lisible (EEPROM), un disque magnéto-optique, une mémoire vive statique (SRAM), un disque compact (CD-ROM), un disque numérique polyvalent (DVD), une clé USB, un disque souple, une mémoire flash, un disque à semi-conducteur (SSD) ou une carte PC telle qu'une carte mémoire PCMCIA. Un programme d'ordinateur est stocké sur le support de stockage lisible par ordinateur 32. Le programme d'ordinateur comprend une ou plusieurs séquences d'instructions de programme mémorisées. De telles instructions de programme, lorsqu'elles sont exécutées par l'unité de traitement de données 20, entraînent l'exécution d'étapes du procédé de conception. Par exemple, la forme des instructions de programme est une forme de code source, une forme exécutable par ordinateur ou toute forme intermédiaire entre un code source et une forme exécutable par ordinateur, telle que la forme résultant de la conversion du code source via un interpréteur, un assembleur, un compilateur, un éditeur de liens ou un localisateur. En variante, les instructions de programme sont un microcode, des instructions firmware, des données de définition d’état, des données de configuration pour circuit intégré (par exemple du VHDL) ou un code objet. Les instructions de programme sont écrites dans n’importe quelle combinaison d’un ou de plusieurs langages, par exemple un langage de programmation orienté objet (FORTRAN, C++, JAVA, HTML), un langage de programmation procédural (langage C par exemple). Alternativement, les instructions du programme sont téléchargées depuis une source externe via un réseau, comme c'est notamment le cas pour les applications. Dans ce cas, le produit programme d'ordinateur comprend un support de données lisible par ordinateur sur lequel sont stockées les instructions de programme ou un signal de support de données sur lequel sont codées les instructions de programme. Dans chaque cas, le produit programme d'ordinateur 12 comprend des instructions qui peuvent être chargées dans l'unité de traitement de données 20 et adaptées pour provoquer l'exécution du procédé de conception lorsqu'elles sont exécutées par l'unité de traitement de données 20. Selon les modes de réalisation, l'exécution est entièrement ou partiellement réalisée soit sur le système 10, c'est-à-dire un ordinateur unique, soit dans un système distribué entre plusieurs ordinateurs (notamment via l’utilisation de l’informatique en nuage). Le fonctionnement du système 10 est maintenant décrit en référence à la FIG. 2 qui est un ordinogramme illustrant un exemple de mise en œuvre du procédé de conception. Le procédé de conception vise à concevoir des blocs matériels d’un système physique adapté pour une utilisation prédéfinie. Selon un exemple, le bloc matériel est un capteur. Selon un autre exemple, le bloc matériel est une mémoire. Alternativement, le bloc matériel est un processeur. Selon un autre exemple, le bloc matériel est un élément de stockage. Alternativement le bloc matériel est une unité d’affichage. Selon un autre exemple, le bloc matériel est une unité d’entrée. Plus généralement, un bloc matériel est toute combinaison des éléments mentionnés précédemment permettant de fabriquer un système complexe physique. Chaque bloc présente des propriétés spécifiques, ces propriétés permettant de caractériser le bloc. La connaissance des propriétés permet ainsi de fabriquer chaque bloc matériel. Par exemple, les propriétés caractérisant les blocs sont choisies dans la liste constituée de la taille, de la capacité de calcul, de la dynamique de sensibilité . Le système physique est, par exemple, un ordinateur connecté physiquement au système de traitement des données, ou l’ordinateur sur lequel le traitement des données est effectué. Alternativement, le système physique est un serveur de calcul connecté par un réseau au système de traitement des données Selon encore un autre exemple, le système physique est un serveur comportant une machine virtuelle. Alternativement, le système physique est un dispositif portatif tel qu’un smartphone ou une tablette. Ce système physique est prévu pour une utilisation prédéfinie . L’utilisation correspond à un domaine de valeurs possibles pour plusieurs données. Cette utilisation peut porter sur de la surveillance du comportement de systèmes, sur le contrôle de sécurité de réseaux en surveillant les flux associés ou encore sur du contrôle des choix de modules à mettre en place en fonction du contexte pour assurer un traitement. Le système physique comporte un dispositif de prédiction, le dispositif de prédiction étant propre à prédire pour des entrées données la valeur d’une ou plusieurs sorties. Le dispositif de prédiction est un circuit physique implémentant un algorithme de prédiction apte à prédire pour des entrées données la valeur d’une ou plusieurs sorties. L’algorithme a été appris par utilisation d’une technique d’apprentissage machine et d’un jeu de données d’apprentissage. Plus précisément, dans l’exemple qui va être décrit, l’algorithme est un algorithme d’apprentissage statistique supervisé. Dans la suite, un tel algorithme est noté par une fonction où l’ensemble X désigne l’ensemble des entrées de l’algorithme et Y l’ensemble des sorties de l’algorithme. L’algorithme de prédiction est, par exemple, une machine à vecteurs supports (plus connue sous la dénomination anglaise de « Support Vectors Machine »), un réseau de neurones (plus connu sous la dénomination anglaise de «Neural Network») ou un arbre aléatoire (plus connu sous la dénomination anglaise de « Random Forest »). Plus généralement, tout type d’algorithme de prédiction supervisé est envisageable pour le présent contexte. A titre de remarque, lorsque l’algorithme de prédiction est un réseau de neurones, le circuit physique est qualifié de circuit neuromorphique. Un tel algorithme de prédiction peut être utilisé pour des contextes très divers comme la classification d’images, la reconnaissance de formes tridimensionnelles ou l’aide à la décision dans le cadre du pilotage de drones autonomes. De préférence, l’algorithme de prédiction prend en entrée et/ou donne en sortie des grandeurs physiques correspondant à des mesures issues d’un ou plusieurs capteurs. L’algorithme de prévision peut, par exemple, être basé sur des techniques autorégressives comme dans la famille ARIMA, sur de la régression comme une régression linéaire, sur de l’apprentissage automatique comme un réseau de neurones de type LSTM, sur un système de règles comme un arbre de décision. Le procédé comporte une phase d’obtention P1, une phase de modification P2 et une phase de fabrication P3. Lors de la phase d’obtention P1, le système 10 obtient au moins une grandeur pour une configuration donnée des blocs matériels du système physique. Une configuration est définie par la valeur de l’ensemble des propriétés caractérisant les blocs. La configuration correspond ainsi à un système physique spécifique avec les blocs présentant respectivement la ou les valeurs des propriétés de la configuration La grandeur est une mesure de la performance du système physique relativement aux cas d’usage dans lesquels le système physique présente la performance attendue. Typiquement, en conception d’un système physique, il est prévu que le système physique présente un bon comportement, par exemple une bonne identification d’une cible, dans 90% des cas pouvant survenir en pratique. Comme nous le verrons dans la suite de la description, la grandeur est ici représentative du domaine dans lequel le dispositif de prédiction présente un seuil de performance prédéfini. La phase d’obtention P1 comporte une étape d’obtention E40, une étape de réception E42, une étape de collection E44, une première étape de détermination E46, une étape d’agrégation E48, une deuxième étape de détermination E50 et une étape d’application E54. Lors de l’étape d’obtention E40, le système 10 obtient des jeux de données. Chaque donnée d’un jeu de données correspond aux valeurs de sortie que devrait donner le dispositif de prédiction en présence des valeurs d’entrées du jeu de données. Dans la présente description, de préférence, au moins l’un parmi les entrées et/ou les sorties sont des données grandeurs physiques correspondant à des mesures issues d’un ou plusieurs capteurs. Selon un autre exemple, l’étape d’obtention E40 est mise en œuvre, pour chaque jeu de données, par génération par un modèle génératif de données initiales et par sélection selon une loi de probabilité donnée des données initiales pour former le jeu de données. Un modèle génératif est un algorithme d’apprentissage automatique qui cherche à décrire les données, permettant par la suite de générer de nouveaux échantillons selon la description (i.e. loi de probabilité) déterminée lors de phase d’apprentissage. Un exemple classique est un réseau antagoniste génératif (plus souvent désigné sous l’acronyme de GAN en référence à la dénomination anglaise de « Generative Adversarial Network », permettant la synthèse d’images (fictives) très réalistes à partir d’images réelles. Un autre exemple est un auto-encodeur à variations, plus souvent désigné sous l’acronyme VAE renvoyant à la dénomination anglaise de « Variational Auto-Encoder ». En d’autres termes, par rapport au mode de réalisation précédent, au lieu d’utiliser des jeux de données de référence, il est utilisé des données obtenues à l’aide d’un modèle génératif. En variante ou en complément, l’étape d’obtention E40 comporte la modification des jeux de données (jeux de données générés ou jeux de données de référence) en introduisant des imperfections de l’environnement du système que le dispositif de prédiction modélise. Par exemple, si l’image à reconnaître des chiffres est une image scannée à partir d’une note manuscrite, les jeux de données pourront être modifiés en prenant en compte les imperfections du scanner utilisé. Selon d’autres exemples, des transformations géométriques, la prise en compte de bruit ou de perturbations extérieures sont considérées pour la modification. A titre de perturbations extérieures, il convient de noter que l’introduction de perturbations adverses visant à manipuler les sorties du dispositif de prédiction permet de bien augmenter la robustesse de l’évaluation. Ainsi, dans tous les cas, l’étape d’obtention E40 est le résultat de la mise en œuvre d’une génération de couples d’entrée/sortie permettant d’obtenir diverses réalisations de variables aléatoires (x,y) sous la mesure de probabilité . A l’issue de l’étape d’obtention E40, il est ainsi obtenu un ensemble fini de couples entrée/sortie. Lors de l’étape de réception E42, le système 10 reçoit la probabilité pour chaque jeu de données qu’un jeu de données soit observé lors de l’utilisation prédéfinie pour la configuration donnée. A titre d’exemple, si les jeux de données correspondent à des images en noir et blanc alors que, dans le cas d’utilisation, les images sont en couleur, le cas où les images couleur seront comparables au cas d’images en noir et blanc présentent une certaine probabilité. Similairement, la répartition des chiffres à l’usage n’est pas équirépartie, de sorte que la probabilité d’avoir certains chiffres est plus forte que la probabilité d’avoir d’autres chiffres. Lors de l’étape de collection E44, les sorties prédites par le dispositif de prédiction pour chaque valeur d’entrées des données des jeux de données sont collectées. Autrement formulé, le dispositif de prédiction est appliqué sur les valeurs d’entrées et le résultat est collecté par le système 10. Pour chaque entrée, il est ainsi connu la valeur prédite par le dispositif de prédiction et la valeur que devrait avoir prédit le dispositif de prédiction (vraie valeur). Lors de la première étape de détermination E46, le système 10 détermine la distribution de la précision de prédiction de la sortie prédite pour chaque jeu de données, pour obtenir des distributions déterminées. La précision de la prédiction est obtenue par application d’une métrique d’évaluation sur une erreur de prédiction. Une telle métrique d’évaluation sera notée φ dans la suite. Une erreur de prédiction correspond à la quantité suivante : Où : x et y sont des réalisations des variables aléatoires x et y de distribution jointe et est une métrique de précision, aussi appelée fonction de perte. Selon l’exemple décrit, la précision de prédiction est calculée par une métrique moyennant l’erreur de prédiction absolue. Toutefois, toute manière de calculer la précision de prédiction est envisageable à ce stade. Ainsi, selon un exemple, la précision de prédiction est calculée par l’emploi d’une fonction d’entropie croisée. Selon un autre exemple, la précision de prédiction est évaluée à l’aide d’une métrique de quantiles. Plus généralement, la métrique d’évaluation est construite par application d’une métrique φ à la distribution empirique de la variable aléatoire . Autrement formulé, la métrique d’évaluation est un moment empirique de la distribution de la précision de prédiction. En variante, la précision de prédiction est calculée par une métrique utilisant un dispositif de prédiction de référence noté g. Selon un exemple particulier, la métrique d’évaluation est une fonction φ de la distribution de la précision relative entre le dispositif de prédiction représenté par la fonction f à évaluer et le dispositif de prédiction de référence g. A titre d’illustration, la métrique est la moyenne d’évaluation des l-différences relatives, ce qui s’écrit mathématiquement ainsi : Il est également possible de raffiner les métriques précédentes en les conditionnant par rapport à la précision du dispositif de prédiction de référence g. La moyenne conditionnelle des l-différences relatives est un exemple particulier d’une telle métrique, ce qui s’écrit mathématiquement ainsi : La métrique d’évaluation est calculée sur chaque jeu de données de manière indépendante. Il est à noter que la métrique d’évaluation peut être vue comme une métrique de risque. A l’issue de la première étape de détermination E46, il est ainsi obtenu distributions de l’erreur de prédiction de la sortie prédite. Chaque distribution est ainsi une distribution déterminée propre à un jeu de données respectif échantillonné selon une distribution , avec i un nombre entier compris entre 1 et , avec , où N représente le nombre de jeux de données utilisés pour obtenir une réalisation du calcul de l’erreur de prédiction. Chacune de ces distributions déterminées est notée avec i un nombre entier compris entre 1 et Lors de l’étape d’agrégation E48, le système 10 agrège les distributions déterminées pour obtenir une distribution de précision de prédiction agrégée. Ainsi, lors de l’étape d’agrégation E48, les distributions déterminées sont agrégées pour obtenir une distribution d’erreur de prédiction agrégée ou distribution agrégée de prédiction notée . Pour cela, il est employé une fonction d’agrégation utilisant les probabilités reçues. Par exemple, la fonction d’agrégation est une somme pondérée dont les poids dépendent des probabilités reçues. Ces poids sont parfois dénommés des priors correspondant à chacune des mesures de probabilités . Mathématiquement, cela revient à construire une distribution , pour . A l’issue de l’étape d’agrégation E48, il est obtenu une distribution agrégée de la précision de prédiction. Lors de la deuxième étape de détermination E50, le système 10 détermine une variation possible des poids avec une simulation de mouvement Brownien à partir des poids utilisés à l’étape d’agrégation E48. Il est maintenant introduit le formalisme associé à la mise en œuvre de la deuxième étape de détermination E50. Cette étape vise à simuler le processus . Dans le cas d’une fonction d’agrégation lineaire de sorte que et que la contrainte d’agrégation s’écrit alors : Il est alors utilisé la modélisation suivante : Où : , est un mouvement Brownien standard pour , est une fonction déterministe positive du temps, et est un facteur (stochastique) de normalisation. Ainsi, selon l’exemple décrit, la simulation implique une variation temporelle exponentielle du poids par rapport au poids obtenu après mise en œuvre de l’étape d’agrégation E48. Cette modélisation s’accompagne d’une calibration et d’une discrétisation, qui sont maintenant décrites. Pour la calibration, il peut être observé que la contrainte d’agrégation est satisfaite avec le formalisme précédemment introduit. Ce formalisme permet également de formuler des contraintes sur la valeur moyenne des différentes composantes, en utilisant par exemple des fonctions constantes par morceau . Ainsi, il peut, par exemple, être postulé une diffusion oscillant autour des valeurs initiales (considérée ainsi comme des valeurs moyennes) en résolvant conjointement les équations suivantes, pour . Ceci correspond mathématiquement à l’expression suivante pour l’espérance : où l’espérance est calculable via une méthode de Monte-Carlo usuelle en simulant les variables comme des gaussiennes centrées de variance et corrélées selon la contrainte . En ce qui concerne la discrétisation, il convient de simuler les trajectoires du processus pour un horizon temporel noté . Cet horizon temporel est différent de l’horizon utilisé pour le calcul de l’indicateur des indicateurs de risque. Pour ce faire, deux approches sont décrites ici. La première approche est une simulation ad-hoc en utilisant la forme très spécifique du processus intégré. La grille de discrétisation est une grille de discrétisation et de pas constant . Comme , les trajectoires des différentes composantes peuvent être conjointement simulées via la génération de gaussiennes centrées réduites , avec . Il vient ainsi : avec la condition initiale . La deuxième approche utilise la simulation directe de l’équation différentielle stochastique du processus considéré via des schémas de discrétisation de type Euler ou autres. Pour expliciter cette approche, il est dérivé une équation différentielle stochastique pour chacune des composantes en s’appuyant sur la formule d’Itô. Il vient ainsi : En notant , il vient : Par ailleurs, la relation suivante est vérifiée : Où : La dynamique de s’obtient avec la relation suivante : D’où, il résulte : Cela implique que : Les remplacements des équations précédentes conduisent à la relation mathématique suivante : La combinaison de l’ensemble de ces éléments permet ainsi d’établir l’équation différentielle stochastique suivante: Il vient ainsi : D’où il résulte que : Ce qui correspond à l’expression suivante : En notant , l’expression précédente devient : Où : est la contribution de la variation de qui dépend de la variation en temps, et est la contribution de la variation de qui n’en dépend pas. Le formalisme introduit permet ainsi d’obtenir une évolution temporelle de la fonction d’agrégation. A l’issue de la deuxième étape de détermination E50, le système 10 obtient ainsi une évolution temporelle de la fonction d’agrégation résultant en une évolution temporelle de la distribution de précision de prédiction agrégée. Lors de l’étape d’application E54, le système 10 applique au moins une métrique de risque à l’évolution temporelle de la distribution de précision de prédiction agrégée pour obtenir au moins une grandeur représentative du domaine dans lequel le dispositif de prédiction présente un seuil de performance prédéfini. Avant d’expliciter des modes de réalisation particuliers de mise en œuvre d’une telle étape d’application E54, il peut être explicité ici les notions mathématiques impliquées dans cette mise en œuvre. La stratification de la distribution s’étend également aux distributions d’erreurs , via l’existence d’une fonction définie par : La fonction permet ainsi le calcul de l’indicateur de risque via la formule suivante: Etant donné une trajectoire pour la réalisation du processus , il est alors possible d’obtenir via la formule précédente une trajectoire correspondante pour les valeurs de l’indicateur de risque. L’indicateur de risque correspond ainsi à l’évolution temporelle de la distribution de précision de prédiction agrégée pour le dispositif de prédiction . L’indicateur de risque est une variable aléatoire et permet ainsi de calculer diverses métriques, dites métriques de risque, et de mettre en œuvre une opération d’analyse statistique du résultat de la métrique de risque. Par exemple, lors de cette opération, le système 10 détermine l’espérance de la borne supérieure du résultat. Selon un autre exemple, le système 10 détermine un quantile prédéfini du résultat. Selon encore un autre exemple, le système 10 détermine un moment statistique de la distribution statistique du résultat. Il pourrait être cité la variance, les quantiles de la distribution à terme, ou encore la moyenne des trajectoires extrémales sur un intervalle de temps donné. Plus généralement, lors de l’opération d’analyse statistique, le système 10 détermine une valeur statistique relative à la distribution statistique du résultat Quelques formules sont développées dans ce qui suit pour illustrer ces exemples. Pour un horizon de risque , des bornes d’incertitudes pour peuvent être définies, en considérant par exemple et . Une borne supérieure peut également être établie à un niveau de confiance donné en utilisant le quantile à terme . L’exploitation des trajectoires obtenues par simulation permet également d’affiner l’estimation de l’incertitude en considérant par exemple la moyenne des valeurs extrémales de l’indicateur donnée par . Pour une tolérance au risque caractérisée par le niveau et le niveau de confiance , la notion de temps d’utilisation critique du dispositif de prédiction peut également être introduite comme le temps au bout duquel il peut être garanti (pour niveau de confiance donné) le fait que le risque soit inférieur au niveau . Cela se traduit mathématiquement par : Où : est la distribution de probabilité associée à la spécification de la diffusion du processus . L’exploitation de l’intégralité des trajectoires permet aussi de considérer un indicateur alternatif pour le temps d’utilisation critique, en considérant : Les indicateurs et sont calculés en pratique par une méthode de Monte-Carlo en s’appuyant sur les trajectoires d’indicateurs de risque simulés à partir de la diffusion du processus comme expliqué précédemment. A titre de remarque, la modélisation ainsi que l’équation différentielle stochastique associée introduites permettent de simuler des trajectoires de réalisation du processus . Il a été également illustré comment obtenir des trajectoires correspondantes pour la réalisation de l’indicateur de risque, considérées comme un processus stochastique . En terme de formalisme probabiliste, une trajectoire est définie pour (ensemble d’évènements) comme la fonction , ce qui permet d’identifier les valeurs conduisant à l’évènement . Autrement formulé, il est ainsi obtenu des réalisations d’une variable aléatoire tel que pour laquelle les techniques d’analyse usuelle comme l’analyse en composantes principales peuvent être mises en œuvre afin de mettre en évidence certains motifs et dépendances entre les composantes du vecteur donnant lieu à des indicateurs de risques dépassant le niveau prédéfini. A titre d’exemple particulier, il est défini une frontière pour le domaine, une grandeur obtenue est une mesure représentative de la variation temporelle de la taille de la frontière au cours du temps . Cela correspond à obtenir une grandeur représentative de la précision du système physique. Selon un autre exemple, le domaine est un ensemble de jeux de données représentatifs de l’utilisation prédéfinie et une grandeur obtenue est l’intervalle de temps durant lequel la performance du dispositif de prédiction sur l’ensemble de jeux de données conserve une valeur supérieure au seuil de performance. Selon encore un autre exemple, une grandeur obtenue est, pour un jeu de données, l’appartenance ou non du jeu de données associée au domaine dans lequel le dispositif de prédiction présente un seuil de performance prédéfini. Ces deux exemples correspondent à obtenir une grandeur représentative de la performance du système physique. Il est possible que le système 10 obtienne lors de l’étape d’application E54 une ou plusieurs des grandeurs précitées. A l’issue de la phase d’obtention P1, il est ainsi obtenu une grandeur représentative du domaine dans lequel le dispositif de prédiction présente un seuil de performance prédéfini pour une configuration. Cela signifie qu’à un ensemble de valeurs pour chacune des propriétés des blocs du système physique le système 10 associe une grandeur permettant de caractériser si le seuil de performance prédéfini est rempli de manière satisfaisante par le système physique dans l’utilisation prédéfinie. Lors de la phase de modification P2, les blocs du système physique sont modifiés en fonction de la grandeur obtenue lors de la phase d’obtention P1. A titre d’exemple, la capacité de calcul est augmentée lorsqu’il est déterminé que la grandeur représentative déterminée ne correspond pas à une performance satisfaisante. L’idée est ici de modifier les valeurs des propriétés (changer la configuration) jusqu’à ce que le système physique puisse satisfaire au seuil de performance prédéfini. Le procédé comporte une mise en œuvre itérative des phases d’obtention P1 et de modification P2 jusqu’à ce qu’un critère prédéfini soit rempli, pour obtenir une configuration préférée (celle qui présente la grandeur la plus grande par exemple). La phase de fabrication P3 est la phase de fabrication du système physique selon la configuration préférée. Autrement formulé, le système physique est fabriqué avec les blocs matériels ayant les valeurs des propriétés de la configuration préférée. La phase de fabrication P3 est réalisée par obtention des blocs matériels et montage de ces blocs matériels pour obtenir le système physique. Par exemple, il est récupéré les mémoires, les processeurs avec les propriétés déterminées et des liaisons électriques sont réalisées entre ces éléments et il est obtenu un calculateur. Le présent procédé est ainsi un procédé outillé pour la mesure et la gestion du risque à terme associé à l’utilisation d’algorithmes d’intelligence artificielle, utilisé pour la conception d’un système physique. Le procédé donne accès à l’issue de la phase d’obtention à une mesure réaliste de la performance du système physique sur l’ensemble des données pouvant lui être soumis, au contraire d’un procédé de certification qui validerait uniquement la performance du système physique dans ces conditions d’utilisation spécifiques. Le procédé permet d’obtenir une bonne précision pour l’ensemble des cas pouvant se produire en pratique. Le présent procédé présente l’avantage d’être générique au sens où le procédé peut s’appliquer à tout type de dispositif de prédiction dans un contexte d’apprentissage supervisé, tout type d’entrées et tout cas d’utilisation envisagé. Le procédé a été implémenté par le demandeur selon plusieurs modules, à savoir un module d’obtention des jeux de données, un module de réception, un module de collection des valeurs prédites, un premier module de détermination, un module d’agrégation, un deuxième module de détermination et un module d’application. Chacun de ces modules a été implémenté avec succès dans le langage de programmation python. Toutefois, tout type de langage orienté objet, notamment un avec polymorphisme, permettrait d’obtenir également une bonne efficacité de fonctionnement. Une telle mise en œuvre modulaire rend le procédé aisément adaptable à tous types d’algorithme puisque que chaque module est relativement indépendant. Par ailleurs, le procédé est aisément parallélisable, ce qui permet de limiter la charge calculatoire notamment par l’emploi d’une structure informatique distribuée. Il convient de noter que la parallélisation est pensée au niveau des différents paramètres utilisés pour la définition des scénarios, ainsi qu’au niveau du calcul des différentes distributions associées, chacune des réalisations d’un scenario donné pouvant être traitée individuellement. D’autres modes de réalisation sont possibles. Selon un mode de réalisation, le procédé comporte, en outre, un affichage de l’ensemble desdites informations sur le dispositif de sortie 28 qui sert alors d’interface graphique avec un utilisateur. Un tel affichage viendrait en remplacement ou en complément du rapport établi en permettant à l’utilisateur de visualiser les différents résultats et indicateurs de performance et de conduire des analyses détaillées en permettant une navigation dans les différents fichiers de résultats et une modularité dans le choix des métriques de risque. En particulier, l’utilisateur pourra, s’il le souhaite, convertir un niveau de tolérance au risque algorithmique donné en des plages de validité pour les algorithmes considérés via l’analyse des contributions des différents scenarios. En variante ou en complément, l’interface graphique permet de constituer un fichier de configuration donnant l’ensemble des informations utiles à la mise en œuvre du procédé, notamment les informations des étapes d’obtention et de réception. Pour cela, le dispositif de sortie 28 permet à l’utilisateur de saisir les données associées ou de les sélectionner via l’utilisation de menus déroulants. A titre d’exemple particulier, le fichier de configuration comporte les paramètres nécessaires à la définition des métriques de risque à calculer, les algorithmes à évaluer, les métriques de précision à considérer, les différents jeux de données à considérer, les méthodes de simulation des ensembles de jeux de données, des algorithmes de référence et des priors. Enfin, il sera bien compris que l’ordre des étapes dans le procédé de conception qui vient d’être décrit peut être différent et notamment que certaines étapes peuvent être réalisées de manière simultanée. Plus généralement, toute combinaison techniquement possible des modes de réalisation précédents permettant d’obtenir un procédé de conception des blocs matériels d’un système physique adapté pour une utilisation prédéfinie. Procédé de conception des blocs matériels d’un système physique adapté pour une utilisation prédéfinie, l’utilisation correspondant à un domaine de valeurs possibles pour plusieurs données, le système physique comportant un dispositif de prédiction, le dispositif de prédiction étant propre à prédire pour des entrées données la valeur d’une ou plusieurs sorties, le procédé comportant : - une phase d’obtention (P1) d’au moins une grandeur pour une configuration donnée des blocs matériels du système physique, une configuration étant définie par la valeur de l’ensemble des propriétés caractérisant les blocs, la phase d’obtention (P1) étant mise en œuvre par ordinateur et comportant les étapes de : - obtention (E40) de jeux de données, chaque donnée d’un jeu de données correspondant aux valeurs de sortie que devrait donner le dispositif de prédiction en présence des valeurs d’entrées du jeu de données, - réception (E42) de la probabilité pour chaque jeu de données qu’un jeu de données soit observé lors de l’utilisation prédéfinie pour la configuration donnée, - collection (E44) des sorties prédites par le dispositif de prédiction pour chaque valeur d’entrées des données des jeux de données, - détermination (E46) de la distribution de la précision de prédiction de la sortie prédite pour chaque jeu de données, pour obtenir des distributions déterminées, - agrégation (E48) des distributions déterminées par emploi d’une fonction d’agrégation utilisant les probabilités reçues, pour obtenir une distribution de précision de prédiction agrégée, la fonction d’agrégation est une somme pondérée dont les poids dépendent des probabilités reçues, - détermination (E50) d’une variation temporelle possible des poids avec une simulation de mouvement Brownien à partir des poids utilisés à l’étape d’agrégation, pour obtenir une évolution temporelle de la fonction d’agrégation résultant en une évolution temporelle de la distribution de précision de prédiction agrégée, - application (E54) d’au moins une métrique de risque à l’évolution temporelle de la distribution de précision de prédiction agrégée pour obtenir au moins une grandeur représentative du domaine dans lequel le dispositif de prédiction présente un seuil de performance prédéfini, et - une phase de modification (P2) des blocs du système physique en fonction de la grandeur obtenue. Procédé selon la revendication 1, dans lequel il est défini une frontière pour le domaine, une grandeur obtenue à l’étape d’application (E54) étant une mesure représentative de la variation temporelle de la taille de la frontière au cours du temps. Procédé selon la revendication 1 ou 2, dans lequel le domaine est un ensemble de jeux de données représentatifs de l’utilisation prédéfinie, une grandeur obtenue à l’étape d’application (E54) étant l’intervalle de temps durant lequel la performance du dispositif de prédiction sur l’ensemble de jeux de données conserve une valeur supérieure au seuil de performance. Procédé selon l’une quelconque des revendications 1 à 3, dans lequel une grandeur obtenue à l’étape d’application (E54) est, pour un jeu de données, l’appartenance ou non du jeu de données associée au domaine dans lequel le dispositif de prédiction présente un seuil de performance prédéfini. Procédé selon l’une quelconque des revendications 1 à 4, la simulation implique une variation temporelle exponentielle du poids par rapport au poids de l’étape d’agrégation. Procédé selon l’une quelconque des revendications 1 à 5, dans lequel l’étape d’application (E54) comporte également une opération additionnelle d’analyse statistique du résultat de la métrique de risque. Procédé selon la revendication 6, dans lequel lors de l’opération d’analyse statistique, il est obtenu un élément parmi l’espérance de la borne supérieure du résultat, un quantile prédéfini du résultat et un moment statistique de la distribution statistique du résultat. Procédé selon l’une quelconque des revendications 1 à 7, dans lequel l’étape d’obtention (E40) est mise en œuvre par génération de chaque jeu de données à partir d’un jeu de données de référence selon une loi de probabilité donnée ou par génération par un modèle génératif de données initiales et par sélection selon une loi de probabilité donnée des données initiales pour former le jeu de données. Procédé selon la revendication 8, dans lequel l’étape d’obtention (E40) comporte la modification des jeux de données en introduisant des imperfections de l’environnement du système physique ou en introduisant des perturbations adverses visant à manipuler les sorties du dispositif de prédiction. Procédé selon l’une quelconque des revendications 1 à 9, dans lequel les blocs du système physique sont choisis dans la liste constituée d’un capteur, d’une mémoire, d’un processeur, d’un élément de stockage, d’une unité d’affichage et d’une unité d’entrée. Procédé selon l’une quelconque des revendications 1 à 10, dans lequel les propriétés caractérisant les blocs sont choisies dans la liste constituée de la taille, de la capacité de calcul et de la dynamique de sensibilité . Procédé selon l’une quelconque des revendications 1 à 11, dans lequel au moins l’un parmi les entrées et/ou les sorties sont des données grandeurs physiques correspondant à des mesures issues d’un ou plusieurs capteurs. Procédé selon l’une quelconque des revendications 1 à 12, dans lequel le procédé comporte : - la mise en œuvre itérative des phases d’obtention et de modification jusqu’à ce qu’un critère prédéfini soit rempli, pour obtenir une configuration préférée, et - la fabrication du système physique selon la configuration préférée. Produit programme d’ordinateur comportant un support lisible d’informations, sur lequel est mémorisé un programme d’ordinateur comprenant des instructions de programme, le programme d’ordinateur étant chargeable sur une unité de traitement de données et mettant en œuvre un procédé selon l’une quelconque des revendications 1 à 13 lorsque le programme d’ordinateur est mis en œuvre sur l’unité de traitement des données. Support lisible d’informations comportant des instructions de programme formant un programme d’ordinateur, le programme d’ordinateur étant chargeable sur une unité de traitement de données et mettant en œuvre un procédé selon l’une quelconque des revendications 1 à 13 lorsque le programme d’ordinateur est mis en œuvre sur l’unité de traitement de données.