FR 3131790 A1 20230714 FR 2200228 A 20220112 L'invention concerne le calcul d’une explication contrefactuelle (EX m ) d’un point requête (Xr) étant donnée une classe de sortie cible (C) d’un modèle d’ensemble d’arbres, comportant des étapes de : - formulation (E2) analytique du modèle sous la forme d’une somme de fonctions d’appartenance à des régions de l’espace d’entrée du modèle pondérées chacune par un vecteur score, - transformation (E3) de la somme en une fonction dérivable par lissage des fonctions d’appartenance, - descente de Gradient analytique (E6) sur une fonction objectif appliquée à la fonction dérivable et obtention au bout d’un nombre d’itérations de l’explication contrefactuelle (EX m ) appartenant à la classe de sortie cible (C). Figure pour l’abrégé : Figure 5 Procédé et dispositif de calcul d’une explication contrefactuelle d’une prédiction d’un modèle d’ensemble d’arbres de décision La présente invention se rapporte de manière générale au domaine de l’informatique et de l’intelligence artificielle et concerne plus précisément un procédé et un dispositif de calcul d’une explication contrefactuelle permettant d’expliquer un résultat issu d’un modèle d’ensemble d’arbres de décision. Les arbres de décision sont utilisés en intelligence artificielle pour permettre de déterminer ou de prédire un résultat d’un processus de décision en fonction des données mises en entrée du processus de décision. Pour cela ils définissent un ensemble de règles utilisant ces données d’entrée pour les classer dans une ou plusieurs catégories de résultats avec un score associé. Par exemple un arbre de décision modélisant le processus d’acceptation d’un crédit à la consommation pour un client d’une banque, utilisera des données liées à ce client pour le classer dans la catégorie « obtention du crédit » ou dans la catégorie « refus du crédit » avec des scores associés représentatifs de la probabilité d’obtention ou de refus du crédit pour ce client. La illustre un arbre de décision selon l’art antérieur prenant en entrée une variable à deux dimensions d1 et d2 pour la classer dans une classe C1 ou dans une classe C2 avec un score associé. Cet arbre comporte un nœud racine N1 au niveau duquel la variable d’entrée est comparée à un seuil de valeur 2,6 sur la dimension d1. Si sur cette dimension d1 la variable d’entrée est supérieure à 2,6, la variable d’entrée est envoyée sur la branche de droite conduisant au nœud N3 au niveau duquel la variable d’entrée est comparée à un seuil de valeur 3 toujours sur la dimension d1. Si sur cette dimension d1 la variable d’entrée est supérieure à 3, la variable d’entrée est envoyée sur la branche de droite conduisant au nœud N5 au niveau duquel la variable d’entrée est comparée à un seuil de valeur 0,8 cette fois sur la dimension d2. Si sur cette dimension d2 la variable d’entrée est supérieure à 0,8, alors la variable d’entrée finit dans une feuille F7 où elle est classée dans la classe C1 avec un score de 0,5. Cette feuille F7 correspond à un intervalle de dimension 2 représenté sur la . Toutes les variables d’entrée appartenant à cet intervalle seront donc classées de la même manière dans la classe C1 avec le score 0,5. Revenant au niveau du nœud N5, si la variable d’entrée est inférieure sur la dimension d2 au seuil de 0,8, alors la variable d’entrée est envoyée sur la branche de gauche conduisant au nœud N6 au niveau duquel la variable d’entrée est comparée à un seuil de valeur 0,4 toujours sur la dimension d2. Si sur cette dimension d2 la variable d’entrée est supérieure à 0,4, alors la variable d’entrée finit dans une feuille F6 où elle est classée dans la classe C1 avec un score de 0,4, sinon la variable d’entrée finit dans une feuille F5 où elle est classée dans la classe C2 avec un score de 0,7. Revenant maintenant au niveau du nœud N3, si la variable d’entrée est inférieure sur la dimension d1 au seuil de 3, alors la variable d’entrée finit dans une feuille F4 où elle est classée dans la classe C2 avec un score de 0,8. Revenant maintenant au niveau du nœud N1, si sur la dimension d1 la variable d’entrée est inférieure à 2,6, alors la variable d’entrée est envoyée sur la branche de gauche conduisant au nœud N2 au niveau duquel la variable d’entrée est comparée à un seuil de valeur 2,5 sur la dimension d2. Si sur cette dimension d2 la variable d’entrée est supérieure à 2,5, alors la variable d’entrée finit dans une feuille F3 où elle est classée dans la classe C1 avec un score de 0,3, sinon la variable d’entrée est envoyée sur un nœud N4 au niveau duquel elle est comparée à un seuil de valeur 1,4 sur la dimension d2. Si sur cette dimension d2 la variable d’entrée est supérieure à 1,4, alors la variable d’entrée finit dans une feuille F2 où elle est classée dans la classe C2 avec un score de 0,4, sinon elle finit dans une feuille F1 où elle est classée dans la classe C1 avec un score de 0,9. La illustre la détermination de trois explications contrefactuelles CF 1 , CF 2 , CF 3 , pour un processus de décision modélisé par un arbre de décision délivrant trois classes C5, C4 et C3 de décisions différentes, associées respectivement à trois valeurs d’entrée ou points requêtes P 1 , P 2 , P 3 . L’arbre de décision a classé les points requêtes P 1 , P 2 , P 3 dans la classe C3. L’explication contrefactuelle CF 1 est le point dans la classe C5 le plus proche du point requête P 1 . Le vecteur reliant ces deux points P 1 et CF 1 correspond donc à la modification la plus minime des coordonnées du point P 1 à apporter au point P 1 pour changer la décision de classification de l’arbre de décision et lui faire classer le point P 1 dans la classe C5 au lieu de la classe C3. Dans une application d’acceptation de crédit, ces coordonnées modifiées peuvent correspondre à un apport plus important et à une durée de remboursement plus longue par exemple. De même l’explication contrefactuelle CF 2 est le point dans la classe C5 le plus proche du point requête P 2 et correspond donc à une explication contrefactuelle permettant d’expliquer quels changements apporter au point requête P 2 pour changer la décision de classification du point P 2 de la classe C3 à la classe C5. L’explication contrefactuelle CF 3 est quant à elle le point dans la classe C4 le plus proche du point requête P 3 et correspond donc à une explication contrefactuelle permettant d’expliquer quels changements apporter au point requête P 3 pour changer la décision de classification du point P 3 de la classe C3 à la classe C4. Il est à noter que dans sur cette , les surfaces arrondies correspondant aux classes C3 à C5 ne sont pas sous forme d’intervalles de dimension 2 c’est-à-dire de parallélogrammes. Les feuilles de l’arbre de décision correspondant sont par contre sous forme d’intervalles de dimension 2, de préférence des rectangles ou des carrés, dont les juxtapositions vont approximer ces surfaces arrondies. En effet les arbres de décision travaillent sur des seuils dans les différentes dimensions de l’espace d’entrée et leurs feuilles sont donc des intervalles dans cet espace d’entrée. Plusieurs méthodes existent pour trouver une ou des explications contrefactuelles à une décision prise par un arbre de décision pour un point requête donné et une ou plusieurs classes cibles données dans laquelle on souhaite trouver ces explications contrefactuelles. La méthode DiCE (d’après l’anglais « Diverse Counterfactual Explanations for Machine Learning Classifiers ») interprète les décisions de modèles d’apprentissage issus de réseaux de neurones à l’aide d’explications contrefactuelles. Elle intègre des contraintes de diversité des explications contrefactuelles fournies, et de plausibilité, c’est-à-dire que l’explication contrefactuelle fournie doit être réaliste, notamment : - ne pas nécessiter de changer une ou plusieurs caractéristiques d’entrée immuables, ou ne pas les faire évoluer vers des valeurs interdites (critère d’actionnabilité) - nécessiter un changement restreint de caractéristiques d’entrée afin de correspondre à une explication appréhendable par un humain (critère de sparsité) - coller au plus près au point requête (critère de proximité) Cependant cette méthode DiCE ne s’applique qu’à des modèles d’apprentissage dérivables, notamment à des réseaux de neurones ne délivrant qu’une classe de décision (probabilité de diagnostic de panne par exemple), car elle utilise une méthode de Descente de Gradient analytique. Cette méthode de Descente de Gradient analytique est illustrée sur la . Pour trouver un point CF correspondant à une explication contrefactuelle du point requête Xq pour une classe cible C7 d’un modèle de décision dérivable, on calcule la dérivée d’une fonction objectif appliquée à la fonction de prédiction du modèle de décision au point Xq. Le modèle de décision fournissant deux classes de décision C6 à laquelle appartient le point requête Xq, et C7 à laquelle appartient le point contrefactuel CF, la fonction objectif est par exemple l’entropie croisée entre la loi de probabilité cible d’appartenance à la classe C7 (cette loi de probabilité cible correspondant à une probabilité d’appartenance de 1 pour la classe C7 et de 0 pour la classe C6) d’une part et de la loi de probabilité d’appartenance à la classe C7 prédite par le modèle d’autre part, en fonction de la position d’une variable X d’entrée initialisée à la valeur du point requête Xq. La dérivée de cette fonction objectif fournit une direction permettant de faire avancer à chaque pas de calcul la variable X vers le point contrefactuel CF qui est le résultat de l’application de cette méthode de Descente de Gradient analytique. Lorsque plusieurs arbres de décision permettent de modéliser un même processus de décision, on a un modèle d’ensemble d’arbres composé de plusieurs arbres dont les feuilles peuvent s’intersecter. Il existe dans la littérature une méthode qui construit un modèle d’ensemble d’arbres dérivable : « FOCUS: Flexible Optimizable Counterfactual Explanations for Tree Ensembles » de Ana Lucic et al., publié dans les actes de la conférence « AAAI Conference on Artificial Intelligence (AAAI-22) ». Cette méthode approxime un modèle d’ensemble d’arbres par un graphe calculatoire remplaçant l’opérateur de seuillage/embranchement en chaque nœud d’un arbre donné par une fonction sigmoïde. De cette façon cet opérateur de seuillage/embranchement est transformé en un opérateur dérivable sur lequel il est possible d’appliquer une méthode de type Descente de Gradient analytique. Cependant cette méthode ne permet pas d’appliquer facilement les critères de diversité, d’actionnabilité, de sparsité et de proximité préconisés par la méthode DiCE. Elle est également peu efficace en termes de rapidité de calcul. Un des buts de l'invention est de remédier à au moins une partie des inconvénients de la technique antérieure en fournissant un dispositif et un procédé de calcul d’une ou plusieurs explications contrefactuelles d’une prédiction donnée – associée à un point requête donné – par un modèle d’ensemble d’arbres de décision, étant donnée une classe de sortie cible, qui soient efficaces du point de vue calculatoire, s’appliquent à des modèles d’ensemble d’arbres de décision multidimensionnels (en terme d’entrées) et répondent aux critères de diversité, d’actionnabilité, de sparsité et de proximité préconisés par la méthode DiCE. L’invention trouve des applications dans la détection d’anomalies de diagnostic fourni par un modèle d’ensemble d’arbres de décision, dans l’analyse de la robustesse de tels modèles ensemble d’arbres de décision, mais aussi dans l’explication concrète d’une classification donnée par de tels modèles dans divers domaines. On a cité plus haut le domaine bancaire (acceptation d’un crédit pour un client donné), mais l’invention est applicable dans tout autre domaine utilisant des modèles ensemble d’arbres de décision pour associer à des données d’entrée une classe de sortie parmi un ensemble de classes possibles. On parle aussi de modèle d’ensemble d’arbres multiclasse. L’invention permet également de résoudre le problème contrefactuel suivant : étant donné un intervalle cible fixé et un point requête dont la prédiction par le modèle se trouve en dehors de cet intervalle cible, on résout le problème « Quelle est la modification a minima à apporter au point requête pour que la prédiction du point requête modifié tombe dans l’intervalle cible ». Cela permet par exemple de résoudre des problèmes de type : « que dois-je changer a minima dans un procédé (de fabrication par exemple) pour obtenir un résultat de qualité équivalente mais dont le coût de production est un nombre de pourcents moins élevé. Le calcul d’un exemple contrefactuel est soumis aux mêmes contraintes que dans le cas d’utilisation de l’invention pour expliquer une classification. Seule la partie de la fonction de coût pénalisant la non-appartenance à la classe cible (par exemple entropie croisée ou erreur quadratique moyenne) est remplacée par une fonction de coût pénalisant la non-appartenance à l’intervalle cible (par exemple erreur quadratique moyenne, erreur moyenne absolue, ...). A cette fin, l'invention propose un procédé de calcul d’au moins une explication contrefactuelle d’une prédiction associée à un point requête par un modèle d’ensemble d’arbres de décision, étant donnée une classe de sortie cible prédéfinie, ledit procédé étant mis en œuvre dans un dispositif de calcul comportant une ou plusieurs unités de calcul, ledit un modèle d’ensemble d’arbres ayant pour variable d’entrée un vecteur d’entrée de dimension D et étant apte à classer ledit vecteur d’entrée dans un nombre K de classes de sortie, un vecteur score de dimension K donnant en sortie dudit modèle le score associé audit vecteur d’entrée pour chacune desdites classes de sortie, chacun desdits arbres de décision étant un graphe partant d’un nœud racine et comportant des branches avec des nœuds, chaque branche se terminant par une feuille, chaque nœud permettant par un test sur ledit vecteur d’entrée de prendre une unique branche en aval dudit nœud, et chacun desdits arbres de décision associant ledit vecteur d’entrée à une feuille dudit arbre correspondant, ladite feuille étant assimilable à un intervalle multidimensionnel de dimension D et étant associée à un score pour au moins une desdites classes de sortie, ledit procédé comportant des étapes de : - réception dudit point requête, de ladite classe de sortie cible prédéfinie parmi lesdites classes de sortie dudit modèle, - formulation analytique dudit modèle d’ensemble d’arbres sous la forme d’une fonction de prédiction qui somme des fonctions d’appartenance de ladite variable d’entrée à des régions de l’espace d’entrée dudit modèle correspondant à des feuilles ou à des morceaux de feuilles dudit modèle d’ensemble d’arbres, chacune desdites fonctions d’appartenance étant pondérée par un vecteur score associé à la région de l’espace d’entrée correspondante, ledit procédé étant caractérisé en ce qu’il comporte en outre les étapes de : -transformation de la fonction de prédiction en une fonction dérivable par application d’une fonction de lissage sur lesdites fonctions d’appartenance, -utilisation de l’algorithme de Descente de Gradient analytique sur une fonction objectif à minimiser appliquée à ladite fonction dérivable et obtention au bout d’un nombre d’itérations dudit algorithme, de ladite au moins une explication contrefactuelle appartenant à ladite classe de sortie cible prédéfinie. Grâce à l’invention, il est possible d’utiliser la méthode de Descente de Gradient analytique de manière efficace sur des modèles ensemble d’arbres qui ne sont pas dérivables par nature, ces modèles pouvant travailler sur des espaces d’entrée multidimensionnels (l’invention fonctionne avec D égal à 1 ou D strictement supérieur à 1), et sur plusieurs classes de sortie. L’efficacité de l’invention par rapport à l’art antérieur est due notamment à des formulations analytiques d’une part de la fonction de prédiction et d’autre part du gradient qui sont indépendantes de la structure graphique des arbres du modèle. Il est à noter que certaines feuilles du modèle peuvent travailler sur une dimension plus petite que D mais on les assimile à un intervalle multidimensionnel de dimension D en admettant que cet intervalle ait des bornes infinies, comme décrit dans la suite. De même certaines feuilles ne donnent pas forcément des scores sur toutes les classes de sortie du modèle mais on leur associe un vecteur score de dimension K dans lequel les classes non renseignées par ces feuilles prennent une valeur prédéfinie (0 ou le complément à 1 de la somme des scores renseignés par exemple). Il est de plus à noter que les régions de l’espace d’entrée utilisées dans la formulation analytique de la fonction de prédiction sont de préférence les feuilles du modèle d’ensemble d’arbres, mais on peut travailler également sur des morceaux de feuilles et/ou des combinaisons de morceaux disjoints ayant le même vecteur score, et/ou des combinaisons de morceaux s’intersectant, dans ce dernier cas une combinaison étant associée à un vecteur score qui somme les vecteurs scores des morceaux de cette combinaison. Il est également possible de formuler analytiquement la fonction de prédiction sur une partie seulement de l’espace d’entrée du modèle d’ensemble d’arbres, par exemple sur l’espace d’entrée compris dans un rayon prédéfini autour du point requête. Préférentiellement, lors de ladite étape de formulation analytique du procédé selon l’invention, ladite fonction de prédiction est formulée comme : F(X)= somme des [δBn(X).Sn] sur l’ensemble des feuilles n numérotées de 1 à N du modèle ([Math 1]) où -F(X) est l’image de la variable d’entrée X de dimension D par la fonction de prédiction F; -N est le nombre de feuilles B1 à BN du modèle d’ensemble d’arbres; -δBn(X) est la fonction d’appartenance du vecteur d’entrée X à la nième feuille Bn du modèle d’ensemble d’arbres; -Sn est le vecteur score de dimension K associé à la nième feuille Bn. Cette réalisation de l’invention permet une formulation analytique très rapide/efficace calculatoirement de la fonction de prédiction, les feuilles du modèle étant aisément modélisables par parcours des arbres du modèle. Selon une caractéristique avantageuse de l’invention, lors de l’étape d’utilisation de l’algorithme de Descente de Gradient analytique, on utilise ledit algorithme sur ladite fonction objectif à minimiser augmentée d’un terme pénalisant la distance entre le vecteur d’entrée sur lequel travaille ladite fonction objectif, et ledit point requête. Cela permet de respecter le critère de proximité préconisé par la méthode DiCE, le vecteur sur lequel travaille ladite fonction objectif étant ladite au moins une explication contrefactuelle en cours de calcul (c’est-à-dire que ce vecteur converge vers ladite au moins une explication contrefactuelle associée à la classe cible). Le calcul de cette distance permet également de stopper le calcul d’explications contrefactuelles dès lors qu’un seuil prédéfini de distance entre les vecteurs de travail correspondants et le point requête est dépassé, pour ne retenir dans le calcul en cours que d’autres vecteurs de travail restant en dessous de ce seuil prédéfini. Selon une autre caractéristique avantageuse de l’invention, plusieurs explications contrefactuelles sont obtenues lors de ladite étape d’utilisation de l’algorithme de Descente de Gradient analytique, ladite fonction objectif prenant en entrée une matrice de M vecteurs d’entrée et comportant un terme récompensant la diversité des vecteurs d’entrée de ladite matrice. Cette caractéristique permet donc d’obtenir des explications contrefactuelles diverses, les explications contrefactuelles obtenues étant par exemple les plus éloignées les unes des autres. Préférentiellement dans le procédé selon l’invention, ladite fonction dérivable fournissant en sortie un vecteur de dimension K de loi de probabilités fonction de l’espace d’entrée, la fonction objectif comporte un terme d’entropie croisée entre lesdites lois de probabilité et un vecteur score dont la coordonnée de valeur maximale correspond à la classe de sortie cible. Cette fonction objectif confère une bonne performance au procédé selon l’invention. Bien entendu d’autres fonctions objectifs peuvent utilisées en variante, par exemple une fonction objectif comportant un terme d’erreur moyenne quadratique entre lesdites lois de probabilité et un vecteur score cible. Selon encore une autre caractéristique avantageuse de l’invention, ladite fonction de lissage est une combinaison linéaire de fonctions sigmoïdes et/ou de produits de fonctions sigmoïdes appliquées aux bornes desdites régions de l’espace d’entrée. Cette fonction de lissage permet de reproduire le plus fidèlement possible les régions de l’espace d’entrée et est paramétrable région par région. Selon encore une autre caractéristique avantageuse de l’invention, le terme récompensant la diversité des vecteurs d’entrée de ladite matrice comporte une fonction logarithme du déterminant de la matrice de Gram des noyaux Gaussien des vecteurs d’entrée de ladite matrice. Cette implémentation permet de favoriser encore la diversité et la sparsité des explications contrefactuelles calculées à travers un critère de diversité dérivable. Selon encore une autre caractéristique avantageuse de l’invention, l’étape d’utilisation de l’algorithme de Descente du Gradient analytique est précédée d’une étape de calcul d’une région de décision associée au point requête précédemment reçu, ladite région de décision correspondant à une région de l’espace d’entrée associée à un unique vecteur score de sortie, et d’une étape d’initialisation desdits vecteurs d’entrée de ladite matrice M dans laquelle lesdits vecteurs d’entrée sont choisis de sorte à ce qu’ils soient distribués sur l’ensemble des faces de ladite région de décision précédemment calculée. Cette implémentation permet de favoriser encore la diversité et la sparsité des explications contrefactuelles calculées. Le procédé selon l’invention comprend avantageusement en outre pour ladite au moins une explication contrefactuelle obtenue, une étape de calcul d’une région de décision associée, ladite région de décision associée correspondant à une région de l’espace d’entrée comportant ladite au moins une explication contrefactuelle obtenue et étant associée à un unique vecteur score de sortie, ainsi qu’une étape dans laquelle on vérifie si la valeur d’une coordonnée du point requête suivant une des dimensions du point requête est comprise dans l’intervalle de valeurs sur cette dimension de ladite région de décision associée à ladite au moins une explication contrefactuelle, et si tel est le cas on remplace dans ladite au moins une explication contrefactuelle obtenue, la valeur de la coordonnée correspondant à ladite dimension avec la valeur de la coordonnée correspondante dudit point requête. Ces étapes supplémentaires permettent de renforcer le critère de « sparsité » préconisé par la méthode DiCE, et également le critère de proximité en rétablissant certaines caractéristiques de l’exemple contrefactuel calculé à leurs valeurs d’origine dans le point requête. Le procédé selon l’invention comprend avantageusement, en plus de l’étape de calcul d’une région de décision associée à ladite au moins une explication contrefactuelle obtenue, une étape dans laquelle on réajuste si nécessaire les coordonnées de ladite au moins une explication contrefactuelle obtenue pour les faire correspondre à des valeurs autorisées dans ladite région de décision associée à ladite au moins une explication contrefactuelle. Ces étapes supplémentaires permettent de remplir le critère d’actionnabilité préconisé par la méthode DiCE. L'invention concerne aussi un dispositif de calcul d’au moins une explication contrefactuelle d’une prédiction associée à un point requête par un modèle d’ensemble d’arbres de décision étant donnée une classe de sortie cible prédéfinie, ledit dispositif comportant une ou plusieurs unités de calcul, ledit un modèle d’ensemble d’arbres ayant pour variable d’entrée un vecteur d’entrée de dimension D et étant apte à classer ledit vecteur d’entrée dans un nombre K de classes de sortie, un vecteur score de dimension K donnant en sortie dudit modèle le score associé audit vecteur pour chacune desdites classes de sortie, chacun desdits arbres de décision étant un graphe partant d’un nœud racine et comportant des branches avec des nœuds, chaque branche se terminant par une feuille, chaque nœud permettant par un test sur ledit vecteur d’entrée de prendre une unique branche en aval dudit nœud, et chacun desdits arbres de décision associant ledit vecteur d’entrée à une feuille dudit arbre correspondant, ladite feuille étant assimilable à un intervalle multidimensionnel de dimension D et étant associée à un score pour au moins une desdites classes de sortie, ledit dispositif comportant des : - moyens de réception dudit point requête, de ladite classe de sortie cible prédéfinie parmi lesdites classes de sortie dudit modèle, - moyens de formulation analytique dudit modèle d’ensemble d’arbres sous la forme d’une fonction de prédiction qui somme des fonctions d’appartenance de ladite variable d’entrée à des régions de l’espace d’entrée dudit modèle correspondant à des feuilles ou à des morceaux de feuilles dudit modèle d’ensemble d’arbres, chacune desdites fonctions d’appartenance étant pondérée par un vecteur score associé à la région de l’espace d’entrée correspondante, ledit dispositif de calcul étant caractérisé en ce qu’il comporte en outre : - des moyens de transformation de ladite fonction de prédiction en une fonction dérivable par application d’une fonction de lissage sur lesdites fonctions d’appartenance, - des moyens d’utilisation de l’algorithme de Descente de Gradient analytique sur une fonction objectif à minimiser appliquée à ladite fonction dérivable, lesdits moyens d’utilisation étant aptes à obtenir au bout d’un nombre d’itérations dudit algorithme, ladite au moins une explication contrefactuelle appartenant à ladite classe de sortie cible prédéfinie. Avantageusement, le dispositif de calcul selon l’invention comporte une unité de calcul par dimension de l’espace d’entrée dudit modèle d’ensemble d’arbres, les moyens de formulation analytique utilisant en parallèle chacune desdites unités de calcul pour parcourir ledit modèle d’ensemble d’arbres sur la dimension correspondante dudit espace d’entrée et déterminer les points caractéristiques desdites fonctions d’appartenance de ladite fonction de prédiction sur ladite dimension de l’espace d’entrée. Avantageusement, les moyens d’utilisation de l’algorithme de Descente de Gradient analytique sont aptes à obtenir M explications contrefactuelles, M étant un entier strictement supérieur à un, ladite fonction objectif prenant en entrée une matrice de M vecteurs d’entrée et comportant un terme récompensant la diversité des vecteurs d’entrée de ladite matrice. Avantageusement encore, le dispositif selon l’invention comporte des moyens de calcul d’une région de décision associée audit point requête, ladite région de décision correspondant à une région de l’espace d’entrée associée à un unique vecteur score de sortie, et des moyens d’initialisation desdits vecteurs d’entrée de ladite matrice M, lesdits moyens d’initialisation étant aptes à choisir lesdits vecteurs d’entrée de sorte à ce qu’ils soient distribués sur l’ensemble des faces de ladite région de décision issue desdits moyens de calcul. Avantageusement encore, les moyens d’utilisation de l’algorithme de Descente du Gradient comportent M processeurs graphiques, chacun desdits processeurs graphiques étant apte à effectuer au moins une partie du calcul du Gradient analytique de ladite fonction objectif pour l’une desdites M explications contrefactuelles. Avantageusement encore, les moyens d’utilisation de l’algorithme de Descente du Gradient comportent un processeur graphique comportant autant de blocs de grille de calcul que de dimensions de l’espace d’entrée dudit modèle d’ensemble d’arbres, chaque bloc de grille effectuant une réduction parallèle d’au moins une partie du calcul du Gradient analytique de ladite fonction objectif sur une dimension de l’espace d’entrée du modèle d’ensemble d’arbres, chaque bloc de grille comportant plusieurs processus calculant chacun en parallèle les dérivées partielles d’au moins une partie de la fonction objectif sur un ensemble de feuilles dudit modèle sur ladite dimension de l’espace d’entrée et les sommant entre elles. L'invention concerne enfin également un produit programme d’ordinateur comportant des instructions de code apte à mettre en œuvre le procédé selon l’invention, lorsqu’il est exécuté sur une ou plusieurs unités de calcul. On entend par unité de calcul un processeur central, un microprocesseur ou un processeur graphique, etc Le dispositif selon l’invention et le produit programme d’ordinateur selon l’invention présentent des avantages analogues à ceux du procédé selon l’invention. D'autres caractéristiques et avantages apparaîtront à la lecture d’un mode de réalisation préféré décrit en référence aux figures dans lesquelles : déjà décrite représente un arbre de décision selon l’art antérieur, également déjà commentée représente les feuilles de l’arbre de décision décrit en relation avec la , précédemment utilisée pour expliquer l’art antérieur représente des explications contrefactuelles associées à des points requêtes, également déjà décrite en relation avec l’art antérieur représente l’application de la méthode de Descente de Gradient analytique pour déterminer une explication contrefactuelle associée à un point requête, représente des étapes du procédé de calcul selon l'invention, dans ce mode de réalisation préféré, illustre l’application de fonctions sigmoïdes à un intervalle unidimensionnel, illustre le calcul de lois de probabilités associées à un modèle d’ensemble d’arbres selon l’invention, dans ce mode de réalisation préféré, représente une étape du procédé de calcul selon l’invention, dans ce mode de réalisation préféré, illustre une étape d’initialisation d’explications contrefactuelles selon l’invention, dans ce mode de réalisation préféré, illustre une étape d’utilisation de l’algorithme de Descente de Gradient analytique selon l’invention, dans ce mode de réalisation préféré, illustre une étape de restriction des différences de caractéristiques d’entrée entre les explications contrefactuelles obtenues selon l’invention et le point requête associé, dans ce mode de réalisation préféré, et représente un dispositif de calcul selon l’invention. Selon un mode préféré de réalisation de l'invention représenté à la , le procédé de calcul selon l’invention est utilisé pour déterminer en relation avec un modèle d’ensemble d’arbres, une ou plusieurs explications contrefactuelles EX m associées à un point requête Xr étant donnée une classe de sortie cible C, et comporte des étapes E1 à E10. Le modèle d’ensemble d’arbres associe au point requête Xr une classe distincte de la classe cible C. Le procédé de calcul selon l’invention est mis en œuvre dans un dispositif de calcul utilisant un ou plusieurs processeurs comme détaillé en relation avec la . La première étape E1 est la réception des données d’entrée du procédé de calcul selon l’invention, à savoir le point requête Xr, le nombre M d’explications contrefactuelles EX m souhaitées, la classe cible C et le modèle d’ensemble d’arbres. En variante de réalisation, le modèle d’ensemble d’arbres ne fait pas partie des données d’entrée, il est déjà enregistré dans une mémoire vive ou morte du dispositif de calcul et les étapes E2 et E3 décrites ci-après sont pré-exécutées avant la réception des données d’entrée lors de l’étape E1. Le nombre d’explications contrefactuelles est en variante également prédéterminé en mémoire du dispositif de calcul. Le procédé comprend éventuellement une étape préalable de vérification du fait que la prédiction donnée par le modèle d’ensemble d’arbres pour le point requête Xr ne correspond pas à la classe cible C. L’étape suivante E2 est la formulation analytique du modèle d’ensemble d’arbres reçu à l’étape E1. On a vu en relation avec la qu’un arbre de décision est assimilable à une fonction de prédiction associant à des intervalles dans un espace de dimension supérieure ou égale à un, une classe de décision elle-même associée à un score. Le modèle d’ensemble d’arbres étant composé de plusieurs arbres de décision, est assimilable à la fonction de prédiction : où : - F(X) est l’image de la variable d’entrée X par la fonction de prédiction F ; la variable d’entrée X est un vecteur de dimension D supérieur à un, dans ce mode de réalisation de l’invention. - N est le nombre de feuilles B 1 à B N de l’ensemble des arbres du modèle d’ensemble d’arbres. Les feuilles sont ici décrites dans l’espace de dimension D même si un arbre du modèle est susceptible de travailler sur une dimension plus petite. Elles correspondent à des intervalles de dimension D, c’est-à-dire des polytopes de dimension D dont les faces/arêtes sont parallèles aux axes du repère de travail en dimension D, à l’exception du fait que certaines faces de ces polytopes peuvent être inexistantes (par exemple la feuille F7 de la n’est pas fermée en +∞ dans les dimensions d1 et d2). - δ Bn (X) est une fonction qui vaut 1 si la variable d’entrée X appartient à la nième feuille Bn des feuilles de l’ensemble des arbres du modèle d’ensemble d’arbres, et qui vaut 0 sinon. - S n est le vecteur score associé à la nième feuille Bn. S n est un vecteur de dimension K, qui est le nombre de classes de décision du modèle d’ensemble d’arbres (chaque coordonnée du vecteur score S n correspond à une classe de décision). Une feuille étant souvent associée à un seul score sur une seule classe, le vecteur Sn est souvent un vecteur comportant une seule valeur non nulle. Cependant si la variable d’entrée X appartient à plusieurs feuilles, F(X) sera un vecteur {r 1 …r K } T de dimension K à plus d’une valeur non nulle. Le résultat (ou la prédiction) de la fonction de prédiction du modèle d’ensemble d’arbres est donc la sortie de la fonction argument du maximum (« arg_max ») de F(X) qui donne la coordonnée maximale en valeur absolue du vecteur F(X) correspondant à un score (potentiellement agrégeant des scores de plusieurs feuilles) associé à une classe de décision. Cette formulation analytique et notamment la détermination des fonctions d’appartenance aux feuilles Bn est déterminée en parcourant par exemple les différents nœuds des arbres du modèle d’ensemble d’arbres et en mémorisant leurs différents seuils comme il a été fait pour construire la à partir de l’arbre de la . Si le dispositif DIS selon l’invention comporte au moins une unité de calcul par dimension de l’espace d’entrée, ce parcours peut être effectué sur chaque dimension de l’espace d’entrée par une unité de calcul différente. Chaque unité de calcul utilisée dans ce parcours détermine alors les bornes des feuilles B 1 à B N sur une dimension correspondant aux points caractéristiques des fonctions d’appartenance sur cette dimension. Ces points caractéristiques correspondent aux abscisses pour lesquelles la fonction d’appartenance change de valeur. Ce parallélisme du calcul permet de raccourcir drastiquement le temps de calcul du procédé selon l’invention. Lors de cette étape E2, on normalise de plus la fonction F(X) ainsi formulée par application de la formule softmax(F(X)) qui donne la fonction utilisée dans la suite du procédé selon l’invention, avec : où Y est un vecteur {y k } T k=1…K de dimension K. Dans cette étape E2 on applique donc la fonction softmax au vecteur de sortie {r k } T k=1…K de la fonction F(X). Cette sous-étape de normalisation est optionnelle, elle permet de rendre la sortie de la fonction F(X) probabiliste. D’autres part d’autres façon de normaliser la fonction F(X) sont envisageables. Chaque coordonnée du vecteur softmax(F(X)) de dimension K est assimilable à une probabilité p i (X) d’appartenance à la classe i de la variable X, variant suivant la position de X dans l’espace d’entrée de dimension D, i variant de 1 à K. L’étape E3 est la transformation de la fonction de prédiction F(X) éventuellement normalisée en une fonction dérivable par application d’une fonction de lissage sur les fonctions d’appartenance aux feuilles Bn précédemment obtenues à l’étape E2. La illustre l’application d’un produit de sigmoïdes sur une fonction d’appartenance définie par : autrement dit x vaut 1 sur l’ intervalle [a,b] et 0 ailleurs. Cette fonction de prédiction en forme de créneau est transformée par multiplication par deux sigmoïdes, en la fonction dérivable suivante : Où a et b sont les bornes de l’intervalle [a,b] et σ est un paramètre positif permettant de régler le lissage de cette fonction δ [a,b] (x), en effet plus σ croît plus δ surrog [a,b] (x) ressemble au créneau de départ. Une valeur de σ de 0,98 permet de garder une bonne précision de prédiction sans risquer de rendre défaillant l’algorithme d’optimisation du fait des différences entre les fonctions d’appartenance lissées et les fonctions d’appartenance initiales. On définit dans la suite la fonction sigmoid(x) par : Dans cette étape E3 on adapte ce principe à la fonction de prédiction F(X) définie par l’équation [Math 1]. Les feuilles Bn étant multidimensionnelles, elles correspondent sur chaque dimension à des créneaux fermés ou ouverts. Les fonctions de lissage sont donc adaptées à ces feuilles Bn dont la fonction d’appartenance lissée est obtenue par : Avec où isInf(B n right [d]) vaut 0 si sur la dimension d l’intervalle est fermé dans la direction +∞ donc est de la forme ]- ∞, b] ou [a,b], et vaut 1 sinon, B n right [d] étant la borne supérieure de cet intervalle, isInf(B n left [d]) vaut 0 si sur la dimension d l’intervalle est fermé dans la direction -∞ donc est de la forme [a,b] ou [a, +∞], et vaut 1 sinon, isInf(B n left [d]) étant la borne inférieure de cet intervalle. En variante d’autres fonctions de lissage sont utilisables, par exemple des fonctions de type tangente hyperbolique, ou des fonctions polynomiales/linéaires par morceaux. On obtient donc une fonction lissée F surrog (X) de prédiction du modèle d’ensemble d’arbres par la formule : La illustre le calcul d’une prédiction associée à une variable X de R 3 dans un modèles ensemble d’arbres comportant douze feuilles de scores respectifs S 1 à S 12 . Les fonctions d’appartenance aux feuilles de scores S 1 , S 5 , S 7 , S 8 , S 10 et S 12 valent 1 pour cette variable X, le score S 1 « votant » pour une classe C8 (c’est-à-dire arg_max (S 1 ) correspond à la classe C8), les scores S 5 , S 7 et S 8 « votant » pour une classe C9 et les scores S 10 et S 12 « votant » pour une classe C10. La fonction F(X) vaut donc la somme des scores S 1 , S 5 , S 7 , S 8 , S 10 et S 12 , dont on extrait la prédiction probabilisée du modèle : sofmax(S 1 +S 5 +S 7 +S 8 +S 10 +S 12 ). En parallèle à l’étape E3, la région de décision Br associée au point requête Xr est calculée dans une étape E4. Dans cette étape E4 on utilise par exemple les coordonnées du point requête Xr et on teste les fonctions d’appartenance aux feuilles Bn sur ce point requête Xr pour trouver sa région de décision ou « boîte pure » Br. On appelle ici une région de décision un intervalle multidimensionnel de dimension D qui est soit une feuille soit une partie de feuille sur laquelle la fonction de prédiction F(X) fournit la même valeur pour tout vecteur X appartenant à cette feuille ou partie de feuille. Sur la , on a représenté le point requête Xr qui appartient dans cet exemple uniquement à deux feuilles F 9 et F 10 du modèle d’ensemble d’arbres, appartenant à deux arbres distincts, qui s’intersectent sur l’intervalle R2. A l’’étape E4 on décompose l’ensemble des feuilles F 9 et F 10 en trois morceaux, la partie non intersectée R1 de la feuille F 9 , la partie R2 et la partie R3 non intersectée de la feuille F 10 . La région de décision Br calculée ici correspond à la région R2. Chaque région de décision est associée à un vecteur score de dimension K donnant pour chacune des classes de sortie du modèle un score agrégeant les scores associés à chaque feuille englobant cette région de décision. Par exemple la région de décision R1 a le même vecteur score S 9 que la feuille F 9 , la région de décision R3 a le même vecteur score S 10 que la feuille F 10 , mais la région de décision R2 a un vecteur score qui est la somme des vecteurs S 9 et S 10 . L’étape E5 suivant l’étape E4 est l’initialisation d’un nombre M de vecteurs X m dans l’espace d’entrée correspondant au nombre d’explications contrefactuelles souhaitées, ce nombre M ayant été reçu à l’étape E1. Ces vecteurs sont choisis sur les faces de la boîte pure Br (lorsque ces faces existent étant donné que certaines feuilles ne sont pas fermées de chaque côté sur toutes leurs dimensions). De préférence ils sont uniformément distribués sur les faces de la boîte pure Br, comme représenté sur la . Sur cette figure, le nombre d’explications contrefactuelles souhaitées est de 7, on a donc sept vecteurs X 0 à X 6 distribués sur les arêtes de la région Br dans un espace d’entrée à deux dimensions dans cet exemple. Ces vecteurs X 0 à X 6 ne sont pas encore des explications contrefactuelles mais sont utilisés pour initialiser l’algorithme de Descente de Gradient analytique mis en œuvre à l’étape E6 suivante, qui partant de ces vecteurs X 0 à X 6 , va faire évoluer les coordonnées de ces vecteurs vers 7 vecteurs correspondant aux explications contrefactuelles souhaitées. L’étape E6 suivante est une descente de Gradient utilisant le schéma analytique. On utilise de préférence ici l’algorithme d’optimisation de la descente de Gradient d’Adam (d’après l’article intitulé « Adam: A Method for Stochastic Optimization » de Diederik P. Kingma et al., publié à l’occasion de la troisième conférence « Conference for Learning Representations » de San Diego en 2015). Cette utilisation de l’algorithme de Descente du Gradient analytique est effectuée sur une fonction objectif à minimiser appliquée à la fonction normalisée obtenue en sortie de l’étape E2, c’est-à-dire appliquée à softmax(F(X)). Dans ce mode de réalisation préféré de l’invention, on choisit comme fonction objectif : Où : - EC(softmax(F(X)), p cible ) est l’entropie croisée des lois de probabilités p i (X) (i variant de 1 à K) avec le vecteur p cible de dimension K valant 1 sur la dimension correspondant à la classe cible C et 0 ailleurs, les p i (X) étant les coordonnées de p(X) = softmax(F(X)) vecteur de dimension K dépendant de la variable d’entrée X de dimension D. Comme on a initialisé M valeurs d’explications contrefactuelles à l’étape E5 on a en réalité M vecteurs X m de travail dont les valeurs vont évoluer à chaque itération de l’algorithme de Descente du Gradient analytique. Ces M vecteurs forment une matrice W de dimension D*M qui est la variable de la fonction somme sur m variant de 1 à M, de (EC(softmax(F(W[ :, m]), p cible )) dans le cas où on a plusieurs explications contrefactuelles à déterminer, et où W[ :, m] correspond à la m-ième colonne de la matrice W (noté simplement X m dans la suite). - d(X m ,X r ) est la distance dans l’espace de dimension D entre le vecteur de travail X m et le point requête Xr. λ 1 est un coefficient de Lagrange (constante paramétrable). Le terme produit dans [Math 10] comportant λ 1 pénalise donc une distorsion des explications contrefactuelles résultant de l’algorithme à chaque itération, c’est-à-dire une distance trop importante de l’une au moins de ces explications contrefactuelles au point requête. Ce terme utilise par exemple des distances L1 ou L2, i.e. les distances associées aux normes des espaces L1 ou L2. - λ 2 est un autre coefficient de Lagrange et log(det(K)) est le logarithme du déterminant de la matrice K={k(X i ,X j )} i,j dont chaque élément est le produit scalaire dans un espace préhilbertien entre deux vecteurs X i et X j de travail de la matrice W. Ce dernier terme «-λ 2 log(det(K)) » permet de récompenser la diversité des explications contrefactuelles trouvées. On choisit par exemple comme fonction noyau k le noyau gaussien : où γ est une constante paramétrable (largeur de bande du noyau). En référence à la on explique maintenant l’algorithme de Descente du Gradient analytique appliqué à un vecteur X de dimension D. On commence par calculer les dérivées partielles de la fonction EC(softmax(F(X)), p cible ) en fonction des lois de probabilités p i . On a : Étant donné que p cible est le vecteur I c (valant 1 sur la dimension de l’espace de sortie de F(X) correspondant à la classe cible C et 0 ailleurs), p k,cible qui est la valeur de I c sur la coordonnée correspondant à la classe k vaut δ k,cible . On a donc : Où p c (X) est la coordonnée de softmax(F(X)) correspondant à la classe cible C. On peut écrire : On montre que la dérivée partielle de EC(softmax(F(X)), p cible ) par rapport à ri =F(X)[i] vaut p i – δ ic , où δic vaut 1 si i correspond à la dimension de sortie de F(X) associée à la classe cible C : On calcule ces dérivées partielles par rapport à chaque classe de décision et sur chaque dimension de l’espace d’entrée de dimension D pour obtenir les dérivées partielles de l’entropie croisée de la fonction softmax(F(X)) sur la dimension d de l’espace d’entrée de F selon : avec On remarque que l’utilisation de la fonction softmax sur la fonction F(X) non lissée est utilisée pour déterminer le premier produit de cette équation 17, mais qu’on n’utilise pas forcément cette fonction softmax sur le deuxième produit de cette équation 17 qui n’utilise que les fonctions d’appartenance lissées de F(X). A chaque itération de l’algorithme de Descente de Gradient analytique, pendant laquelle on applique la formule précédente en parallèle sur l’ensemble des vecteurs X m de travail, on remplace chaque vecteur X m de la matrice W par : On détermine ensuite pour chaque vecteur X m sa classe de sortie associée. On calcule donc arg_max (softmax(F(X m ))). Si cette valeur ne correspond pas à la classe de sortie cible C, alors on réitère la descente de Gradient analytique jusqu’à obtenir un ensemble de M vecteurs X m dont la prédiction correspond à la classe de sortie cible C, c’est-à-dire un ensemble de M explications contrefactuelles {EX m } m=1…M. Il est à noter que si l’un des vecteurs Xm converge plus vite que les autres dans la classe C, on stoppe éventuellement le calcul pour ce vecteur-ci. L’étape suivante E7 est le calcul des régions de décision pour chaque explication contrefactuelle EX m obtenue. De manière similaire à l’étape E4, on utilise par exemple les coordonnées de l’explication contrefactuelle EX m et on teste les fonctions d’appartenance aux feuilles Bn sur cette explication contrefactuelle EX m pour trouver sa région de décision ou « boîte pure » BEX m , correspondant à une région d’intersection maximale des feuilles auxquelles appartient l’explication contrefactuelle EX m . L’étape suivante E8 est une étape de réajustement des coordonnées des explications contrefactuelles EX m obtenues à l’étape E6, sur celles du point requête Xr lorsque cela est possible. Comme illustré sur la , dans cette étape on vérifie pour chaque explication contrefactuelle EX m , sur chaque dimension de l’espace d’entrée de dimension D, si la coordonnée correspondante du point requête Xr appartient à la section selon cette dimension de la boîte pure BEX m . Si tel est le cas alors on donne à la coordonnée de l’explication contrefactuelle EX m sur cette dimension, la valeur de la coordonnée du point requête Xr sur cette dimension. On obtient alors une explication contrefactuelle modifiée, EX m1 dans l’exemple de la . Si tel n’est pas le cas, la coordonnée de l’explication contrefactuelle EX m sur cette dimension est inchangée. Ainsi dans cette étape, on ajuste les coordonnées des explications contrefactuelles EX m obtenues à l’étape E6 de manière à ce qu’elles correspondent aux moins de différences possibles par rapport au point requête Xr, ce qui rend ces explications plus compréhensibles. En effet on comprend que pour correspondre à une explication contrefactuelle modifiée EX m1 à l’étape E8, il faut opérer moins de changements au point requête Xr qu’il en faudrait pour correspondre à l’explication contrefactuelle EX m correspondante non modifiée en sortie de l’étape E6. L’étape suivante E9 est la gestion des données catégorielles. Cette étape est en variante réalisée en parallèle de l’étape E8. Dans cette étape E9, on réajuste si nécessaire les coordonnées de chaque explication contrefactuelle EX m obtenues à l’étape E6 pour les faire correspondre à des valeurs autorisées dans la région de décision de cette explication contrefactuelle EX m . C’est le cas notamment quand les données traitées en entrée sont de nature discrète (i.e. de nature catégorielle), ou si certaines plages de valeurs sont interdites (par exemple si les données sont intrinsèquement positives comme des grandeurs physiques telles qu’une mesure de température). Enfin la dernière étape E10 est la fourniture en sortie du dispositif de calcul des M explications contrefactuelles EX m dont les coordonnées ont été éventuellement ajustées lors des étapes E8 et E9. Ce procédé de calcul selon l’invention est mis en œuvre dans un dispositif de calcul DIS représenté sur la . Le dispositif de calcul DIS comporte une mémoire morte ROM dans laquelle est stocké le produit programme d’ordinateur selon l’invention, dont l’exécution des instructions met en œuvre le procédé de calcul selon l’invention. Le dispositif de calcul DIS comporte également une mémoire RAM stockant les valeurs des variables utilisées au fur et à mesure de l’exécution du procédé selon l’invention ainsi que les données réceptionnées à son étape E1 par l’intermédiaire d’une interface utilisateur INT d’entrée/sortie, ces données étant le modèle d’ensemble d’arbres, le nombre M d’explications contrefactuelles EX m souhaitées, le point requête Xr et la classe cible C. D’autres types de mémoire sont bien sûr utilisables. Le dispositif de calcul DIS comporte en outre un plusieurs processeurs GPU1 à GPUM permettant de préférence de faire du parallélisme. Il est à noter que le dispositif de calcul DIS comporte une ou plusieurs machines, i.e. la mise en œuvre du procédé selon l’invention peut être distribuée sur plusieurs machines. En variante le dispositif DIS utilise un seul processeur multi-cœurs permettant de paralléliser les calculs de la même manière que dans la variante de réalisation principale de l’invention. Dans ce mode préféré de réalisation de l’invention, les processeurs GPUs sont des processeurs graphiques GPU (d’après l’anglais « Graphics Processing Unit »). Chaque processeur GPUm (m variant de 1 à M) calcule en parallèle l’une des explications contrefactuelles Xm initialisée à l’étape E5 en utilisant l’algorithme de Descente du Gradient selon l’étape E6. Les processeurs communiquent entre eux leurs résultats pour effectuer les sommes nécessaires au calcul du Gradient analytique et à la mise à jour de chaque explication contrefactuelle Xm en cours de calcul selon l’équation [Math 18]. De plus chaque processeur GPUm comporte plusieurs blocs de grille de calcul BG1 à BGD, chaque bloc de grille BGd effectuant une réduction parallèle de l’équation [Math 16] sur une dimension de l’espace d’entrée du modèle d’ensemble d’arbres, d variant de 1 à D. Plus précisément, chaque bloc de grille BGd comporte plusieurs processus THd1 à THdP calculant chacun en parallèle les dérivées partielles de la fonction objectif sur un ensemble de feuilles et les sommant entre elles. Les résultats de ces P processus sur la dimension D sont ensuite sommées, la somme en résultant étant la somme des dérivées partielles de la fonction objectif sur l’ensemble des feuilles du modèle d’arbre sur la dimension d. Ce parallélisme des calculs est rendu possible notamment par l’étape E2 de formulation analytique du modèle d’ensemble arbres selon l’équation 1 qui permet de travailler dimension par dimension, ce qui est un grand avantage par rapport à l’art antérieur sur les modèles ensemble d’arbres. Les moyens de mise en œuvre des étapes du procédé selon l’invention autres que l’utilisation de l’algorithme de Descente de Gradient, dans le dispositif selon l’invention, tels que les moyens de formulation analytique, les moyens de transformation, de calcul de régions de décision et d’initialisation utilisent également une ou plusieurs unités de calcul du dispositif DIS. Il est à noter que bien des variantes de réalisation de l’invention sont envisageables. Notamment en variante, les étapes E7 à E9 ne sont pas réalisées, le procédé de calcul selon l’invention délivrant alors directement les explications contrefactuelles obtenue en sortie de l’étape E6. Enfin il est à noter que l’invention se positionne notamment sur de l'explication contrefactuelle associée aux décisions de modèles d’ensemble d’arbres dans le but de faire du diagnostic d'anomalies, i.e. diagnostiquer les données classées anormales et lister les interventions à effectuer à minima sur une chaine de production pour corriger le problème détecté. Les modèles de type ensemble d'arbres sont en effet très utilisés dans l'industrie, en particulier pour de la détection de défauts sur des chaines de production instrumentées. Ils s'adaptent en effet très bien au traitement de données hétérogènes "sales" (nombreuses valeurs manquantes et aberrantes dues à des défaillances capteurs), et ont de très bonnes performances sur des données tabulaires issues de chaines de production. L’invention propose une méthode de calcul d'exemples contrefactuels qui passe à l'échelle sur des tailles de modèle arbitraires comportant potentiellement plusieurs milliers d'arbres, et opère sur des espaces de caractéristiques de plusieurs milliers de variables. Procédé de calcul d’au moins une explication contrefactuelle (EX m ) d’une prédiction associée à un point requête (Xr) par un modèle d’ensemble d’arbres de décision, étant donnée une classe de sortie cible (C) prédéfinie, ledit procédé étant mis en œuvre dans un dispositif (DIS) de calcul comportant une ou plusieurs unités de calcul (GPU1 à GPUM), ledit un modèle d’ensemble d’arbres ayant pour variable d’entrée un vecteur d’entrée de dimension D et étant apte à classer ledit vecteur d’entrée dans un nombre K de classes de sortie, un vecteur score de dimension K donnant en sortie dudit modèle le score associé audit vecteur d’entrée pour chacune desdites classes de sortie, chacun desdits arbres de décision étant un graphe partant d’un nœud racine et comportant des branches avec des nœuds, chaque branche se terminant par une feuille, chaque nœud permettant par un test sur ledit vecteur d’entrée de prendre une unique branche en aval dudit nœud, et chacun desdits arbres de décision associant ledit vecteur d’entrée à une feuille dudit arbre correspondant, ladite feuille étant assimilable à un intervalle multidimensionnel de dimension D et étant associée à un score pour au moins une desdites classes de sortie, ledit procédé comportant des étapes de : - réception (E1) dudit point requête (Xr), de ladite classe de sortie cible (C) prédéfinie parmi lesdites classes de sortie dudit modèle, - formulation analytique (E2) dudit modèle d’ensemble d’arbres sous la forme d’une fonction de prédiction qui somme des fonctions d’appartenance de ladite variable d’entrée à des régions de l’espace d’entrée dudit modèle correspondant à des feuilles ou à des morceaux de feuilles dudit modèle d’ensemble d’arbres, chacune desdites fonctions d’appartenance étant pondérée par un vecteur score associé à la région de l’espace d’entrée correspondante, ledit procédé étant caractérisé en ce qu’il comporte en outre les étapes de : -transformation (E3) de la fonction de prédiction en une fonction dérivable par application d’une fonction de lissage sur lesdites fonctions d’appartenance, -utilisation de l’algorithme de Descente de Gradient analytique (E6) sur une fonction objectif à minimiser appliquée à ladite fonction dérivable et obtention au bout d’un nombre d’itérations dudit algorithme, de ladite au moins une explication contrefactuelle (EX m ) appartenant à ladite classe de sortie cible (C) prédéfinie. Procédé de calcul selon la revendication 1, dans lequel lors de ladite étape de formulation analytique (E2), ladite fonction de prédiction est formulée comme : F(X)= somme des [δBn(X).Sn] sur l’ensemble des feuilles n numérotées de 1 à N du modèle ([Math 1]) où - F(X) est l’image de la variable d’entrée X de dimension D par la fonction de prédiction F; - N est le nombre de feuilles B1 à BN du modèle d’ensemble d’arbres ; - δBn(X) est la fonction d’appartenance du vecteur d’entrée X à la nième feuille Bn du modèle d’ensemble d’arbres; - Sn est le vecteur score de dimension K associé à la nième feuille Bn. Procédé de calcul selon la revendication 1 ou 2, dans lequel lors de l’étape d’utilisation de l’algorithme de Descente de Gradient analytique (E6), on utilise ledit algorithme sur ladite fonction objectif à minimiser augmentée d’un terme pénalisant la distance entre le vecteur d’entrée sur lequel travaille ladite fonction objectif, et ledit point requête (Xr). Procédé de calcul selon l’une quelconque des revendications précédentes, dans lequel plusieurs explications contrefactuelles (EX m ) sont obtenues lors de ladite étape d’utilisation de l’algorithme de Descente de Gradient analytique (E6), ladite fonction objectif prenant en entrée une matrice de M vecteurs d’entrée et comportant un terme récompensant la diversité des vecteurs d’entrée de ladite matrice. Procédé de calcul selon l’une quelconque des revendications précédentes, dans lequel ladite fonction dérivable fournissant en sortie un vecteur de dimension K de lois de probabilités fonction de l’espace d’entrée, la fonction objectif comporte un terme d’entropie croisée entre lesdites lois de probabilité et un vecteur score dont la coordonnée de valeur maximale correspond à la classe de sortie cible (C). Procédé de calcul selon l’une quelconque des revendications précédentes, dans lequel ladite fonction de lissage est une combinaison linéaire de fonctions sigmoïdes et/ou de produits de fonctions sigmoïdes appliquées aux bornes desdites régions de l’espace d’entrée. Procédé de calcul selon la revendication 4, dans lequel le terme récompensant la diversité des vecteurs d’entrée de ladite matrice comporte une fonction logarithme du déterminant de la matrice de Gram des noyaux Gaussien des vecteurs d’entrée de ladite matrice. Procédé de calcul selon l’une quelconque des revendications 4 à 7, dans lequel l’étape d’utilisation de l’algorithme de Descente de Gradient analytique (E6) est précédée d’une étape de calcul (E4) d’une région de décision (Br) associée au point requête (Xr) précédemment reçu, ladite région de décision (Br) correspondant à une région de l’espace d’entrée associée à un unique vecteur score de sortie, et d’une étape d’initialisation (E5) desdits vecteurs d’entrée de ladite matrice M dans laquelle lesdits vecteurs d’entrée sont choisis de sorte à ce qu’ils soient distribués sur l’ensemble des faces de ladite région de décision (Br) précédemment calculée. Procédé de calcul selon l’une quelconque des revendications 1 à 8, comprenant en outre pour ladite au moins une explication contrefactuelle (EX m ) obtenue, une étape de calcul (E7) d’une région de décision (BEX m ) associée, ladite région de décision (BEX m ) associée correspondant à une région de l’espace d’entrée comportant ladite au moins une explication contrefactuelle (EX m ) obtenue et étant associée à un unique vecteur score de sortie, ainsi qu’une étape (E8) dans laquelle on vérifie si la valeur d’une coordonnée du point requête (Xr) suivant une des dimensions du point requête (Xr) est comprise dans l’intervalle de valeurs sur cette dimension de ladite région de décision (BEX m ) associée à ladite au moins une explication contrefactuelle (EX m ), et si tel est le cas on remplace dans ladite au moins une explication contrefactuelle (EX m ) obtenue, la valeur de la coordonnée correspondant à ladite dimension avec la valeur de la coordonnée correspondante dudit point requête (Xr). Procédé de calcul selon l’une quelconque des revendications 1 à 9, comprenant pour ladite au moins une explication contrefactuelle (EX m ) obtenue, une étape de calcul (E7) d’une région de décision (BEX m ) associée, ladite région de décision (BEX m ) associée correspondant à une région de l’espace d’entrée comportant ladite au moins une explication contrefactuelle (EX m ) obtenue et étant associée à un unique vecteur score de sortie, ainsi qu’une étape dans laquelle on réajuste (E9) si nécessaire les coordonnées de ladite au moins une explication contrefactuelle (EX m ) obtenue pour les faire correspondre à des valeurs autorisées dans ladite région de décision (BEX m ) associée à ladite au moins une explication contrefactuelle (EX m ). Dispositif (DIS) de calcul d’au moins une explication contrefactuelle (EX m ) d’une prédiction associée à un point requête (Xr) par un modèle d’ensemble d’arbres de décision étant donnée une classe de sortie cible (C) prédéfinie, ledit dispositif (DIS) comportant une ou plusieurs unités de calcul (GPU1 à GPUM), ledit modèle d’ensemble d’arbres ayant pour variable d’entrée un vecteur d’entrée de dimension D et étant apte à classer ledit vecteur d’entrée dans un nombre K de classes de sortie, un vecteur score de dimension K donnant en sortie dudit modèle le score associé audit vecteur pour chacune desdites classes de sortie, chacun desdits arbres de décision étant un graphe partant d’un nœud racine et comportant des branches avec des nœuds, chaque branche se terminant par une feuille, chaque nœud permettant par un test sur ledit vecteur d’entrée de prendre une unique branche en aval dudit nœud, et chacun desdits arbres de décision associant ledit vecteur d’entrée à une feuille dudit arbre correspondant, ladite feuille étant assimilable à un intervalle multidimensionnel de dimension D et étant associée à un score pour au moins une desdites classes de sortie, ledit dispositif (DIS) comportant des : - moyens de réception (INT) dudit point requête (Xr), de ladite classe de sortie cible (C) prédéfinie parmi lesdites classes de sortie dudit modèle, - moyens de formulation analytique dudit modèle d’ensemble d’arbres sous la forme d’une fonction de prédiction qui somme des fonctions d’appartenance de ladite variable d’entrée à des régions de l’espace d’entrée dudit modèle correspondant à des feuilles ou à des morceaux de feuilles dudit modèle d’ensemble d’arbres, chacune desdites fonctions d’appartenance étant pondérée par un vecteur score associé à la région de l’espace d’entrée correspondante, ledit dispositif (DIS) de calcul étant caractérisé en ce qu’il comporte en outre : - des moyens de transformation de ladite fonction de prédiction en une fonction dérivable par application d’une fonction de lissage sur lesdites fonctions d’appartenance, - des moyens d’utilisation de l’algorithme de Descente de Gradient analytique sur une fonction objectif à minimiser appliquée à ladite fonction dérivable, lesdits moyens d’utilisation étant aptes à obtenir au bout d’un nombre d’itérations dudit algorithme, ladite au moins une explication contrefactuelle (EX m ) appartenant à ladite classe de sortie cible (C) prédéfinie. Dispositif (DIS) de calcul selon la revendication précédente, comportant une unité de calcul par dimension de l’espace d’entrée dudit modèle d’ensemble d’arbres, les moyens de formulation analytique utilisant en parallèle chacune desdites unités de calcul pour parcourir ledit modèle d’ensemble d’arbres sur la dimension correspondante dudit espace d’entrée et déterminer les points caractéristiques desdites fonctions d’appartenance de ladite fonction de prédiction sur ladite dimension de l’espace d’entrée. Dispositif (DIS) de calcul selon la revendication 11 ou 12, dans lequel les moyens d’utilisation de l’algorithme de Descente de Gradient analytique sont aptes à obtenir M explications contrefactuelles (EX m ), M étant un entier strictement supérieur à un, ladite fonction objectif prenant en entrée une matrice de M vecteurs d’entrée et comportant un terme récompensant la diversité des vecteurs d’entrée de ladite matrice. Dispositif (DIS) de calcul selon la revendications précédente, comportant des moyens de calcul d’une région de décision (Br) associée audit point requête (Xr), ladite région de décision (Br) correspondant à une région de l’espace d’entrée associée à un unique vecteur score de sortie, et des moyens d’initialisation desdits vecteurs d’entrée de ladite matrice M, lesdits moyens d’initialisation étant aptes à choisir lesdits vecteurs d’entrée de sorte à ce qu’ils soient distribués sur l’ensemble des faces de ladite région de décision (Br) issue desdits moyens de calcul. Dispositif (DIS) de calcul selon l’une quelconque des revendications 13 à 14, dans lequel les moyens d’utilisation de l’algorithme de Descente du Gradient comportent M processeurs graphiques (GPU1 à GPUM), chacun desdits processeurs graphiques étant apte à effectuer au moins une partie du calcul du Gradient analytique de ladite fonction objectif pour l’une desdites M explications contrefactuelles (EX m ). Dispositif (DIS) de calcul selon l’une quelconque des revendications 11 à 15 dans lequel les moyens d’utilisation de l’algorithme de Descente du Gradient comportent un processeur graphique comportant autant de blocs de grille de calcul (BG1 à BGD) que de dimensions de l’espace d’entrée (D) dudit modèle d’ensemble d’arbres, chaque bloc de grille (BGd) effectuant une réduction parallèle d’au moins une partie du calcul du Gradient analytique de ladite fonction objectif sur une dimension de l’espace d’entrée du modèle d’ensemble d’arbres, chaque bloc de grille comportant plusieurs processus calculant chacun en parallèle les dérivées partielles d’au moins une partie de la fonction objectif sur un ensemble de feuilles dudit modèle sur ladite dimension de l’espace d’entrée et les sommant entre elles. Produit programme d’ordinateur comportant des instructions de code apte à mettre en œuvre le procédé selon l’une quelconque des revendications 1 à 10, lorsqu’il est exécuté sur une ou plusieurs unités de calcul.