FR3116926A1 - Procédé d'évaluation de la performance d'un algorithme de prédiction et dispositifs associés - Google Patents
Procédé d'évaluation de la performance d'un algorithme de prédiction et dispositifs associés Download PDFInfo
- Publication number
- FR3116926A1 FR3116926A1 FR2012387A FR2012387A FR3116926A1 FR 3116926 A1 FR3116926 A1 FR 3116926A1 FR 2012387 A FR2012387 A FR 2012387A FR 2012387 A FR2012387 A FR 2012387A FR 3116926 A1 FR3116926 A1 FR 3116926A1
- Authority
- FR
- France
- Prior art keywords
- data
- prediction
- prediction algorithm
- algorithm
- performance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 104
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000009826 distribution Methods 0.000 claims abstract description 48
- 230000002776 aggregation Effects 0.000 claims abstract description 11
- 238000004220 aggregation Methods 0.000 claims abstract description 11
- 230000006870 function Effects 0.000 claims abstract description 9
- 238000010801 machine learning Methods 0.000 claims abstract description 8
- 238000011156 evaluation Methods 0.000 claims description 35
- 238000004590 computer program Methods 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 15
- 238000012549 training Methods 0.000 claims description 15
- 230000002411 adverse Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 6
- 230000015654 memory Effects 0.000 description 6
- 230000006854 communication Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000004931 aggregating effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000003750 conditioning effect Effects 0.000 description 2
- 238000012854 evaluation process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000004816 latex Substances 0.000 description 1
- 229920000126 latex Polymers 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 235000019645 odor Nutrition 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000013432 robust analysis Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Procédé d’évaluation de la performance d’un algorithme de prédiction et dispositifs associés L’invention concerne un procédé d’évaluation de la performance d’un algorithme de prédiction prédisant pour des entrées données les sorties, l’algorithme ayant été appris par utilisation d’une technique d’apprentissage machine, le procédé comportant les étapes de : - obtention de jeux de données, chaque donnée d’un jeu correspondant aux sorties que devrait donner l’algorithme en présence des entrées du jeu, - réception de la probabilité qu’un jeu soit observé, - collection des sorties prédites par l’algorithme pour chaque entrée des données des jeux, - détermination de la distribution de la précision de prédiction de la sortie prédite, - agrégation des distributions déterminées par emploi d’une fonction d’agrégation utilisant les probabilités reçues, et - application d’au moins une métrique de risque à la distribution de précision de prédiction agrégée pour obtenir au moins un indicateur de la performance de l’algorithme. Figure pour l'abrégé : figure 2
Description
La présente invention concerne un procédé d’évaluation de la performance d’un algorithme de prédiction. La présente invention se rapporte également à un produit programme d’ordinateur et à un support lisible d’informations associés.
La présente invention se situe dans le domaine de la mise au point d’algorithmes de prédiction 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és 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.
Il existe donc un besoin pour un procédé d’évaluation de la performance d’un algorithme de prédiction qui soit plus précis.
A cet effet, la description décrit un procédé d’évaluation de la performance d’un algorithme de prédiction pour un cas d’utilisation prédéfini, l’algorithme de prédiction prédisant pour des entrées données la valeur d’une ou plusieurs sorties, l’algorithme de prédiction ayant été appris par utilisation d’une technique d’apprentissage machine et d’un jeu de données d’apprentissage, le procédé comportant une étape d’obtention de jeux de données, chaque donnée d’un jeu de données correspondant aux valeurs de sortie que devrait donner l’algorithme de prédiction en présence des valeurs d’entrées du jeu de données, une étape de réception de la probabilité pour chaque jeu de données qu’un jeu de données soit observé lors du cas d’utilisation de l’algorithme de prédiction, une étape de collection des sorties prédites par l’algorithme de prédiction pour chaque valeur d’entrées des données des jeux de données, une étape de 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, une étape d’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, et une étape d’application d’au moins une métrique de risque à la distribution de précision de prédiction agrégée pour obtenir au moins un indicateur de la performance de l’algorithme de prédiction.
Selon des modes de réalisation particuliers, le procédé d’évaluation présente une ou plusieurs des caractéristiques suivantes, prise(s) isolément ou selon toutes les combinaisons techniquement possibles :
- une métrique de risque est une métrique de quantiles et un indicateur de la performance de l’algorithme de prédiction est la valeur d’un quantile de niveau prédéterminé.
- une métrique de risque est une espérance conditionnelle et un indicateur de la performance de l’algorithme de prédiction est une valeur de l’espérance conditionnelle.
- la précision de prédiction est calculée à l’aide d’une métrique d’évaluation, la métrique d’évaluation étant une moyenne de l’erreur de prédiction absolue, une métrique de quantiles, ou un moment empirique de la distribution de la précision de prédiction.
- la précision de prédiction est calculée en utilisant un algorithme de prédiction de référence.
- le procédé comporte l’établissement d’un rapport donnant l’ensemble des informations ayant permis d’obtenir l’indicateur de la performance.
- 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.
- l’étape d’obtention 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.
- l’étape d’obtention comporte la modification des jeux de données en introduisant des imperfections de l’environnement du système que l’algorithme de prédiction modélise.
- l’étape d’obtention comporte la modification des jeux de données en introduisant des perturbations adverses visant à manipuler les sorties de l’algorithme de prédiction.
La présente description décrit également 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é d’évaluation 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 décrit é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é d’évaluation tel que précédemment décrit lorsque le programme d’ordinateur est mis en œuvre sur l’unité de traitement de données.
L’invention sera mieux comprise et d’autres avantages de celle-ci apparaîtront plus clairement à la lumière de la description qui va suivre, donnée uniquement à titre d’exemple et faite en référence aux dessins annexés, dans lesquels :
- , la est une représentation schématique d’un système et d’un produit programme d’ordinateur, et
- , la est un ordinogramme d’un exemple de mise en œuvre d’un procédé d’évaluation d’un algorithme de prédiction.
Un système 10 et un produit programme d’ordinateur 12 sont représentés sur la .
L’interaction entre le système 10 et le produit programme d’ordinateur 12 permet la mise en œuvre d’un procédé d’évaluation d’un algorithme de prédiction. Le procédé d’évaluation est ainsi un procédé mis 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 , 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 programmablesin 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 , 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 , 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é d’évaluation.
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é d’évaluation 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 qui est un ordinogramme illustrant un exemple de mise en œuvre du procédé d’évaluation.
Le procédé d’évaluation est un procédé d’évaluation de la performance d’un algorithme de prédiction pour plusieurs cas d’utilisation distincts.
L’algorithme de prédiction est propre à 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.
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.
Pour la suite, à titre d’illustration, il est supposé que l’algorithme de prédiction est un algorithme de reconnaissance de chiffres.
L’algorithme de reconnaissance prend en entrée une image et détermine le chiffre contenu dans l’image.
Le procédé comprend les étapes suivantes : une étape d’obtention E50, une étape de réception E52, une étape de collection E54, une étape de détermination E56, une étape d’agrégation E58, une étape d’application E60 et une étape d’établissement E62.
Lors de l’étape d’obtention E50, il est obtenu jeux de données.
Le nombre est un nombre entier supérieur ou égal à 2, qui se décompose en un produit , avec un entier supérieur ou égal à 1, de l’ordre de la dizaine, et un entier supérieur ou égal à 1, préférentiellement supérieur ou égal à 100.
Les nombres et sont définis plus précisément dans la suite de la description.
Chaque jeu de données comporte un nombre de données respectif.
Le nombre de données d’un jeu est au moins supérieur à 2, préférentiellement supérieur ou égal à 100, et dépend en pratique d’un horizon de temps T caractéristique de l’utilisation opérationnelle de l’algorithme de prédiction considéré.
Chaque donnée d’un jeu de données correspond aux valeurs de sortie que devrait donner l’algorithme de prédiction en présence des valeurs d’entrées du jeu de données.
Dans l’exemple décrit, il est supposé qu’un jeu de données de référence est connu.
Un tel jeu de références est un jeu comprenant une image de chaque chiffre et comportant le chiffre associé.
L’étape d’obtention E50 est alors mise en œuvre par génération de chaque jeu de données à partir du jeu de données de référence selon une loi de probabilité donnée.
Autrement formulé, la génération est mise en œuvre par un tirage aléatoire suivant une loi de probabilité.
A titre d’exemple, la loi de probabilité est une loi uniforme.
Selon un exemple plus élaboré, pour certains cas d’application, le chiffre 1 est plus fréquent que les autres. Aussi, la loi de probabilité pourra favoriser la génération de jeu de données avec le chiffre 1.
Selon un autre exemple, l’étape d’obtention E50 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 Adversial 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 E50 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 l’algorithme 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 tenant 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 de l’algorithme de prédiction permet de bien augmenter la robustesse de l’évaluation.
Ainsi, dans tous les cas, l’étape d’obtention E50 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 E50, il est ainsi obtenu un ensemble fini de couples entrée/sortie.
Lors de l’étape de réception E52, il est reçu la probabilité pour chaque jeu de données qu’un jeu de données soit observé lors d’un cas d’utilisation de l’algorithme de prédiction.
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 E54, les sorties prédites par l’algorithme de prédiction pour chaque valeur d’entrées des données des jeux de données sont collectées.
Autrement formulé, l’algorithme 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 l’algorithme de prédiction et la valeur que devrait avoir prédit l’algorithme de prédiction (vraie valeur).
Lors de l’étape de détermination E56, pour chaque jeu de données, la distribution de la précision de prédiction de l’algorithme de prédiction est déterminée.
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éatoiresxetyde distribution jointe
-
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 algorithme 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 l’algorithme f à évaluer et l’algorithme 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 de l’algorithme 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 l’étape de détermination E56, 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 E58, 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 E58, il est obtenu une distribution agrégée de la précision de prédiction.
Lors de l’étape d’application E60, une métrique de risques MR est appliquée sur la distribution d’erreur de prédiction agrégée.
La valeur de la métrique de risques MR permet d’obtenir un indicateur de la performance de l’algorithme de prédiction.
En variante, plusieurs métriques de risques MR sont appliquées sur la distribution d’erreur de prédiction agrégée, ce qui permet d’obtenir plusieurs indicateurs de performance.
Si nécessaire, le procédé peut comporter une étape subséquente d’agrégation des indicateurs de performance obtenus.
Selon un premier exemple, la métrique de risque MR est le quantile de la distribution d’erreur de prédiction agrégée.
En notant MR1 une telle métrique de risque, il peut être écrit mathématiquement :
où designe la fonction de répartion de la variable aléatoirezpour la mesure de probabilité et k une variable.
L’indicateur de performance est alors la valeur de la métrique de risque MR1 pour le niveau α, c’est-à-dire lorsque k=α.
Autrement formulé, l’indicateur de la performance de l’algorithme de prédiction est la valeur d’un quantile de niveau prédéterminé (ici le niveau α).
Le niveau α est déterminé selon la criticité de l’application envisagée pour l’algorithme de prédiction.
Par exemple, pour une utilisation de reconnaissance de caractères en entreprise, le niveau α de l’ordre 5/100 pourrait être acceptable alors que pour un algorithme de prédiction dans le domaine des transports, un niveau de confiance α acceptable pourrait être de l’ordre de 10-7.
Pour bien comprendre la pertinence d’un indicateur basé sur la métrique de risque MR1, un parallèle peut être fait avec la métrique de risque VaR utilisée dans le monde de la finance.
L’abréviation de VaR renvoie à la dénomination anglaise de « Value-at-Risk » signifiant littéralement « valeur à risque », ou « valeur en jeu ».
La métrique de risque VaR est définie pour un horizon de temps donné T, un ensemble S de scenarios et un niveau de confiance . La métrique de risque VaR correspond ainsi au montant de pertes qui ne devrait être dépassé qu'avec une probabilité donnée sur l’horizon temporel T.
Pour le cas de la métrique de risque MR1, l’horizon de temps dépend en particulier du cas d’utilisation visée.
En complément, l’horizon de temps tient compte des différentes contraintes pouvant empêcher un nouvel entrainement (re-calibration) de l’algorithme. A titre d’exemple particulier, un algorithme embarqué dans un satellite aura un horizon de risque plus grand qu’un classifieur de spams.
Par ailleurs, l’ensemble S de scenarios correspond à une mesure de probabilité spécifiée conjointement sur les entrées et sorties considérées. La mesure de probabilité dépend en particulier de l’application opérationnelle et des différents risques à mesurer.
Il convient de noter ici que cette distribution de probabilité représente une distribution associée à l’usage de l’algorithme (i.e. ), qui est décorrélée de la distribution des entrées/sorties utilisée lors de l’entraînement de l’algorithme de prédiction.
Pour mieux comprendre l’intérêt de cette observation, il convient de rappeler qu’en théorie de l’apprentissage, il est classique de s’intéresser à la notion de risque moyen , défini à partir de l’équation ci-après :
où est l’opérateur d’espérance mathématique défini par rapport à la mesure .
En pratique, la loi de probabilité est cependant inconnue et l’ensemble d’apprentissage est fini puisqu’il correspond à n couples .
Ainsi, un estimateur de , appelée risque moyen empirique, est utilisé. Mathématiquement, un tel estimateur est défini par :
En faisant une distinction entre la distribution utilisée lors de l’entraînement (distribution d’entraînement) et la distribution associée à une utilisation de l’algorithme, notée et dénommé (distribution d’utilisation), le présent procédé écarte également l’emploi de la notion de risque moyen en introduisant une métrique d’évaluation φ opérant sur les distributions d’entraînement et d’utilisation .
Cela conduit à introduire les erreurs d’entraînement et d’utilisation ainsi que leurs estimateurs associés, à savoir les estimateurs de l’erreur d’entraînement et de l’erreur d’utilisation .
L’erreur d’entraînement est ainsi définie ainsi :
Similairement, l’erreur d’utilisation est ainsi définie ainsi :
Cela conduit à un estimateur de l’erreur d’entraînement défini ainsi :
Similairement, un estimateur de l’erreur d’utilisation est défini ainsi :
Une telle approche permet aussi de s’affranchir de l’hypothèse dite PAC (renvoyant à la dénomination anglaise de « Probably Approximately Correct » qui signifie littéralement « Probablement Approximativement Correct ») qui considère que les échantillons de l’ensemble d’apprentissage correspondent bien à des réalisations de la loi . Cela rend ainsi l’évaluation de l’algorithme beaucoup plus pertinente quant à l’utilisation opérationnelle visée, dans la mesure où celle-ci peut impliquer le traitement de données distribuées différemment de celles constituant le jeu d’entraînement.
Revenant à l’analogie avec la métrique de risque VaR, le niveau de confiance correspond au niveau α de la métrique de risque MR1.
Avec ce formalisme, le procédé peut ainsi être décrit de manière alternative comme suit.
Pour un algorithme, une métrique de précision donnée, la mesure d’évaluation est calculée en construisant une distribution représentative de l’évaluation de l’algorithme, sur N réalisations , avec j un entier compris entre 1 et N, obtenues à partir de la distribution , pour l’horizon de temps considéré T. En particulier, le nombre d’échantillons à considérer par réalisation dépend de l’horizon de temps fixé et de la fréquence d’utilisation de l’algorithme.
Plus précisément, pour chacune des réalisations , l’erreur de prédiction est calculée selon la formule suivante :
Une distribution empirique de la variable aléatoire est ainsi construite et la valeur de la métrique de risque MR1, c’est-à-dire l’indicateur de performance, s’obtient comme le quantile de niveau de cette distribution. Cela signifie mathématiquement que la probabilité P que l’erreur de prédiction excède la valeur de l’indicateur de performance est égale à , ce qui s’écrit :
L’analogie entre la métrique de risque MR1 et la métrique de risque VaR montre que l’indicateur de performance est aussi performant que la métrique de risque VaR. Or, la performance de celle-ci est reconnue puisque la métrique de risque VaR est utilisée au niveau réglementaire dans le domaine financier, ce qui prouve sa pertinence et sa robustesse. En effet, la réglementation dans ce domaine s’est beaucoup durcie avec la crise des subprimes de 2008.
Selon un autre exemple, la métrique de risque est une espérance conditionnelle et un indicateur de la performance de l’algorithme de prédiction est une valeur de l’espérance conditionnelle.
En reprenant les notations précédentes, il vient :
Dans l’expression précédente, MR2 désigne la métrique de risque obtenue comme la valeur d’une espérance conditionnelle et EC2 la valeur limite utilisée pour le conditionnement.
Cela permet d’obtenir un autre indicateur de la performance de l’algorithme de prédiction.
Par un raisonnement similaire à celui qui a été développé pour la première métrique de risque, un tel indicateur de performance est aussi performant qu’une métrique connue sous l’acronyme de C-VaR renvoyant à la dénomination anglaise de « Conditional Value-at-Risk » signifiant littéralement « valeur à risque conditionnelle ». Cette métrique est également connue sous le terme d’« Expected-Shortfall », signifiant littéralement « pertes attendues ».
Le procédé décrit en référence à la comporte, en outre, une étape d’établissement E62 d’un rapport donnant l’ensemble des informations ayant permis d’obtenir l’indicateur de la performance.
Par exemple, un tel rapport est généré au format pdf. Avantageusement, le rapport est généré à partir de code latex généré à la volée.
Le contenu du rapport est, selon l’exemple proposé, un ensemble de trois types d’informations.
Le premier type d’informations regroupe les informations fournies au début du procédé en mettant en particulier en avant le nombre d’algorithmes à évaluer, le nombre de scénarios (jeux de données) considérés et les différentes métriques de risque à considérer.
Le deuxième type d’informations est relatif aux risques pour chaque algorithme pour un jeu de données et une métrique de risque. Par un exemple, un histogramme des valeurs de la métrique de risques est présenté sous une forme d’histogramme ou d’un graphique.
Le troisième type d’informations est relatif aux risques agrégés pour chaque algorithme pour une métrique de risque. Par un exemple, il sera indiqué l’algorithme, la métrique de risque, les différents priors utilisés et éventuellement, une agrégation des différentes valeurs trouvées pour les différents indicateurs de performance.
Un tel rapport est directement exploitable pour un utilisateur.
Le présent procédé est ainsi un procédé outillé pour la mesure et la gestion de risques associés à l’utilisation d’algorithmes d’apprentissage statistique supervisé dans un cadre spécifique.
Le procédé donne une mesure réaliste de la performance de l’algorithme sur l’ensemble des données pouvant lui être soumis, au contraire d’un procédé de certification qui validerait uniquement la performance de l’algorithme 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 d’algorithme de prédiction dans un contexte d’apprentissage supervisé, tout type d’entrées et tout cas d’utilisation envisagé.
En outre, le présent procédé est utilisable à tous les stades de vie de l’algorithme, et notamment dans la phase de mise au point, la phase de validation et la phase de suivi (après déploiement de l’algorithme).
Lors de la phase de mise au point, le procédé permet d’obtenir la performance et donc facilite la comparaison de deux versions candidates de l’algorithme. La mise au point est donc accélérée. Le procédé peut également servir à calibrer les valeurs d’hyper-paramètres ou à associer des indicateurs de confiance aux sorties des algorithmes retenus.
La phase de validation vise à s’assurer que les algorithmes mis au point sont en adéquation avec l’utilisation opérationnelle visée, en s’intéressant en particulier aux impacts liés aux différentes sources d’erreurs potentielles associées à leur utilisation. La plage d’entrées/sorties pour lequel l’algorithme se comporte en adéquation avec l’application opérationnelle visée est en particulier spécifié durant cette phase.
La phase de suivi consiste à évaluer de manière périodique l’algorithme de prédiction pour s’assurer que la validation effectuée reste valable pour les conditions d’utilisation observées.
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 collection des valeurs prédites, un module de détermination, un module d’agrégation 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 E50 et de réception E52.
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é d’évaluation 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édent permettant d’obtenir un procédé d’évaluation de la performance d’un algorithme de prédiction pour un cas d’utilisation prédéfini est envisagé.
Claims (12)
- Procédé d’évaluation de la performance d’un algorithme de prédiction pour un cas d’utilisation prédéfini, l’algorithme de prédiction prédisant pour des entrées données la valeur d’une ou plusieurs sorties, l’algorithme de prédiction ayant été appris par utilisation d’une technique d’apprentissage machine et d’un jeu de données d’apprentissage, le procédé 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 l’algorithme 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 du cas d’utilisation de l’algorithme de prédiction,
- collection des sorties prédites par l’algorithme 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, et
- application d’au moins une métrique de risque à la distribution de précision de prédiction agrégée pour obtenir au moins un indicateur de la performance de l’algorithme de prédiction. - Procédé d’évaluation selon la revendication 1, dans lequel une métrique de risque est une métrique de quantiles et un indicateur de la performance de l’algorithme de prédiction est la valeur d’un quantile de niveau prédéterminé.
- Procédé d’évaluation selon la revendication 1 ou 2, dans lequel une métrique de risque est une espérance conditionnelle et un indicateur de la performance de l’algorithme de prédiction est une valeur de l’espérance conditionnelle.
- Procédé d’évaluation selon l’une quelconque des revendications 1 à 3, dans lequel la précision de prédiction est calculée à l’aide d’une métrique d’évaluation, la métrique d’évaluation étant une moyenne de l’erreur de prédiction absolue, une métrique de quantiles, ou un moment empirique de la distribution de la précision de prédiction.
- Procédé d’évaluation selon l’une quelconque des revendications 1 à 4, dans lequel la précision de prédiction est calculée en utilisant un algorithme de prédiction de référence.
- Procédé d’évaluation selon l’une quelconque des revendications 1 à 5, dans lequel le procédé comporte l’établissement d’un rapport donnant l’ensemble des informations ayant permis d’obtenir l’indicateur de la performance.
- Procédé d’évaluation selon l’une quelconque des revendications 1 à 6, dans lequel 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.
- Procédé d’évaluation selon l’une quelconque des revendications 1 à 6, dans lequel l’étape d’obtention 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.
- Procédé d’évaluation selon la revendication 7 ou 8, dans lequel l’étape d’obtention comporte la modification des jeux de données en introduisant des imperfections de l’environnement du système que l’algorithme de prédiction modélise.
- Procédé d’évaluation selon l’une quelconque des revendications 7 à 9, dans lequel l’étape d’obtention comporte la modification des jeux de données en introduisant des perturbations adverses visant à manipuler les sorties de l’algorithme de prédiction.
- Produit programme d’ordinateur comportant des instructions de programme formant un programme d’ordinateur mémorisé sur un support lisible d’informations, le programme d’ordinateur étant chargeable sur une unité de traitement de données et mettant en œuvre un procédé d’évaluation selon l’une quelconque des revendications 1 à 10 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é d’évaluation selon l’une quelconque des revendications 1 à 10 lorsque le programme d’ordinateur est mis en œuvre sur l’unité de traitement de données.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2012387A FR3116926A1 (fr) | 2020-11-30 | 2020-11-30 | Procédé d'évaluation de la performance d'un algorithme de prédiction et dispositifs associés |
EP21820592.0A EP4252162A1 (fr) | 2020-11-30 | 2021-11-30 | Procédé d'évaluation de la performance d'un algorithme de prédiction et dispositifs associés |
US18/254,749 US20240028960A1 (en) | 2020-11-30 | 2021-11-30 | Method for evaluating the performance of a prediction algorithm, and associated devices |
PCT/EP2021/083472 WO2022112583A1 (fr) | 2020-11-30 | 2021-11-30 | Procédé d'évaluation de la performance d'un algorithme de prédiction et dispositifs associés |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2012387A FR3116926A1 (fr) | 2020-11-30 | 2020-11-30 | Procédé d'évaluation de la performance d'un algorithme de prédiction et dispositifs associés |
FR2012387 | 2020-11-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
FR3116926A1 true FR3116926A1 (fr) | 2022-06-03 |
Family
ID=75438859
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR2012387A Pending FR3116926A1 (fr) | 2020-11-30 | 2020-11-30 | Procédé d'évaluation de la performance d'un algorithme de prédiction et dispositifs associés |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240028960A1 (fr) |
EP (1) | EP4252162A1 (fr) |
FR (1) | FR3116926A1 (fr) |
WO (1) | WO2022112583A1 (fr) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117019883A (zh) * | 2023-08-25 | 2023-11-10 | 华北电力大学(保定) | 一种基于深度学习的带材轧制过程板形预测方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200117998A1 (en) * | 2018-07-06 | 2020-04-16 | Capital One Services, Llc | Systems and methods to identify neural network brittleness based on sample data and seed generation |
-
2020
- 2020-11-30 FR FR2012387A patent/FR3116926A1/fr active Pending
-
2021
- 2021-11-30 WO PCT/EP2021/083472 patent/WO2022112583A1/fr active Application Filing
- 2021-11-30 EP EP21820592.0A patent/EP4252162A1/fr active Pending
- 2021-11-30 US US18/254,749 patent/US20240028960A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200117998A1 (en) * | 2018-07-06 | 2020-04-16 | Capital One Services, Llc | Systems and methods to identify neural network brittleness based on sample data and seed generation |
Non-Patent Citations (1)
Title |
---|
SEBASTIAN CURI ET AL: "Adaptive Sampling for Stochastic Risk-Averse Learning", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 28 October 2019 (2019-10-28), XP081521842 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117019883A (zh) * | 2023-08-25 | 2023-11-10 | 华北电力大学(保定) | 一种基于深度学习的带材轧制过程板形预测方法 |
CN117019883B (zh) * | 2023-08-25 | 2024-02-13 | 华北电力大学(保定) | 一种基于深度学习的带材轧制过程板形预测方法 |
Also Published As
Publication number | Publication date |
---|---|
EP4252162A1 (fr) | 2023-10-04 |
US20240028960A1 (en) | 2024-01-25 |
WO2022112583A1 (fr) | 2022-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10846643B2 (en) | Method and system for predicting task completion of a time period based on task completion rates and data trend of prior time periods in view of attributes of tasks using machine learning models | |
EP3398119B1 (fr) | Réseaux neuronaux génératifs pour générer des images en utilisant une toile cachée | |
CN110383299B (zh) | 记忆增强的生成时间模型 | |
US20180268533A1 (en) | Digital Image Defect Identification and Correction | |
Tiggeloven et al. | Exploring deep learning capabilities for surge predictions in coastal areas | |
CN111401940B (zh) | 特征预测方法、装置、电子设备及存储介质 | |
WO2023005386A1 (fr) | Procédé et appareil d'entraînement de modèle | |
US20190311258A1 (en) | Data dependent model initialization | |
US20210374582A1 (en) | Enhanced Techniques For Bias Analysis | |
US20200065664A1 (en) | System and method of measuring the robustness of a deep neural network | |
CN113240155A (zh) | 预测碳排放量的方法、装置及终端 | |
US10101971B1 (en) | Hardware device based software verification | |
US10613835B2 (en) | Hardware device based software generation | |
US11315038B2 (en) | Method to measure similarity of datasets for given AI task | |
EP4252162A1 (fr) | Procédé d'évaluation de la performance d'un algorithme de prédiction et dispositifs associés | |
US20220253426A1 (en) | Explaining outliers in time series and evaluating anomaly detection methods | |
US11062229B1 (en) | Training latent variable machine learning models using multi-sample objectives | |
CN112085103A (zh) | 基于历史行为的数据增强方法、装置、设备以及存储介质 | |
US11972344B2 (en) | Simple models using confidence profiles | |
CN116720946A (zh) | 基于循环神经网络的信贷风险预测方法、装置和存储介质 | |
AU2021251463B2 (en) | Generating performance predictions with uncertainty intervals | |
US11645323B2 (en) | Coarse-to-fine multimodal gallery search system with attention-based neural network models | |
US11586520B2 (en) | Automated data linkages across datasets | |
CN113688655B (zh) | 干扰信号的识别方法、装置、计算机设备和存储介质 | |
US11514311B2 (en) | Automated data slicing based on an artificial neural network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20220603 |
|
PLFP | Fee payment |
Year of fee payment: 3 |
|
PLFP | Fee payment |
Year of fee payment: 4 |