WO2025252971A1 - Procédé et dispositif de détermination d'explications associées à une classification sémantique de données d'entrée par un moteur de classification - Google Patents
Procédé et dispositif de détermination d'explications associées à une classification sémantique de données d'entrée par un moteur de classificationInfo
- Publication number
- WO2025252971A1 WO2025252971A1 PCT/EP2025/065838 EP2025065838W WO2025252971A1 WO 2025252971 A1 WO2025252971 A1 WO 2025252971A1 EP 2025065838 W EP2025065838 W EP 2025065838W WO 2025252971 A1 WO2025252971 A1 WO 2025252971A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- vector
- input data
- conceptual
- function
- prediction
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/045—Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Definitions
- the present invention relates to a method for determining explanations associated with a semantic classification of input data by a classification engine.
- It also relates to a device for determining explanations associated with a semantic classification of input data by a classification engine and an associated computer program.
- the invention has applications in the field of artificial intelligence, and more particularly in the field of explainability of results provided by computing engines, in particular semantic classification, trained by machine learning.
- the invention also finds applications in the field of improving the reliability of machine learning-driven computing engines, for their application in highly critical fields, such as aeronautics and e-health.
- artificial intelligence has been used for the classification or segmentation of digital images, or for natural language processing.
- Artificial intelligence algorithms and especially neural networks trained by machine learning, are proving particularly effective, notably for semantic classification tasks. Numerous applications are conceivable.
- neural network is referred to as its architecture. number of layers, number of elements (or neurons) per layer, functions linking the neurons.
- a concept of interpretability has also been introduced.
- a model is said to be “interpretable” if the internal mechanics of that model can be made understandable by a human, according to the article by Leilani H. Gilpin, David Bau, Ben Z. Yuan, Ayesha Bajwa, Michael Specter, and Lalana Kagal, "Explaining Explanations: An Overview of Interpretability of Machine Learning,” published on May 31, 2018, in the International Conference on Data Science and Advanced Analytics.
- the first category involves methods that construct a simplified model of a neural network whose architecture is unknown. However, a simplified model necessarily follows a different logic and therefore cannot accurately represent a complex neural network.
- the second category includes methods that identify subsets of input data that have a significant influence on the neural network's decision-making. However, when the input data is image data, consisting of pixel matrices, subsets of this data are pixels or groups of pixels.
- the aim of the invention is to overcome the drawbacks of known methods.
- the invention relates to a method for determining explanations associated with a semantic classification of input data by a semantic classification engine trained by machine learning, the input data being provided in first-dimensional vector form, the classification engine implementing a first module for transforming an input data vector into a second-dimensional latent vector, and a second prediction module taking said latent vector as input to provide as output a classification result comprising at least one probability of the input data belonging to a semantic class, the method being implemented by at least one computing processor of an electronic computing device and comprising the acquisition of a dictionary of concepts. Given a given cardinality, a concept being composed of a word or a set of words.
- This process includes a learning phase, comprising the following steps: for each input data vector of an input database, calculation of a vector called the conceptual vector, each component of said conceptual vector being calculated as a function of the input data vector and a concept from said dictionary of concepts; determination of the parameters of an operator allowing the transition from the conceptual vector associated with said input data vector to an intermediate vector, subject to a first constraint of minimizing loss of fidelity between said intermediate vector and the latent vector associated with the same input data vector and a second constraint of minimizing loss of interpretability; determination of a prediction function allowing the obtaining, from an intermediate vector associated with an input data vector, of a prediction result, subject to a third constraint of minimizing loss of fidelity between said prediction result and the classification result obtained for said input data vector.
- the process allows for the generation of an explanation in the form of an interpretable combination of concepts from the concept dictionary, using the operator and the prediction function on a conceptual vector, of the classification engine's output. Thanks to the applied constraints, the resulting explanation is interpretable by a user.
- the method of determining explanations associated with a semantic classification of input data by a semantic classification engine trained by machine learning according to the invention may also have one or more of the characteristics below, taken independently or according to all technically conceivable combinations.
- the process includes, in an operational phase, for a chosen input data vector, the steps of: calculating the conceptual vector associated with said data vector, applying the determined operator to said calculated conceptual vector, and then applying the determined prediction function, to obtain a combination of concepts associated with each probability of the input data belonging to a semantic class.
- the calculation of said conceptual vector implements a previously trained multi-modal matching model, said matching model multimodal matching transforming each input data vector and each concept from the concept dictionary into image vectors of a predetermined dimension vector space, and a matching function, the matching function calculating a similarity score between the image vector of the input data vector and the image vector of each concept.
- the matching function is a cosine similarity function.
- the operator that allows going from a conceptual vector associated with an input data vector to an intermediate vector is formed by a sparse linear projection and a neural network having an auto-encoder architecture.
- the sparse linear projection implements a regression weight matrix
- the second constraint implements a minimization of a sum of the absolute values of said regression weights.
- the prediction function is a linear function.
- the prediction function is implemented by a neural network.
- the prediction function is implemented by a hierarchical model based on 2-additive Choquet integrals.
- the invention also relates to a computer program comprising software instructions which, when executed by a computer, implement a method for determining explanations associated with a semantic classification of input data by a machine learning-trained semantic classification engine as defined above.
- the invention also relates to a device for determining explanations associated with a semantic classification of input data by a machine learning-trained semantic classification engine, the input data being provided in first-dimensional vector form.
- the classification engine implements a first module for transforming an input data vector into a second-dimensional latent vector, and a second prediction module that takes said latent vector as input to provide as output a classification result comprising at least one probability of the input data belonging to a semantic class.
- the method is implemented by at least one computing processor of an electronic computing device and includes the acquisition of a dictionary of concepts of a given cardinality, a concept being composed of a word or a set of words.
- This device includes a processor configured to execute: for each input data vector from an input database, a module for calculating a vector called a conceptual vector, each component of said conceptual vector.
- a conceptual vector being calculated as a function of the input data vector and a concept from said dictionary of concepts, a module for determining the parameters of an operator allowing passage from the conceptual vector associated with said input data vector to an intermediate vector, under a first constraint of minimizing loss of fidelity between said intermediate vector and the latent vector associated with the same input data vector and a second constraint of minimizing loss of interpretability; a module for determining a prediction function allowing obtaining, from an intermediate vector associated with an input data vector, a prediction result, under a third constraint of minimizing loss of fidelity between said prediction result and the classification result obtained for said input data vector.
- Figure 1 is a schematic representation of an explanation determination system as proposed
- Figure 2 is a schematic representation of a classification engine
- Figure 3 is a flowchart of the main steps of a learning phase of an explanation determination process in one embodiment
- Figure 4 illustrates an embodiment of the calculation of a conceptual vector
- Figure 5 illustrates an embodiment of an operator enabling the obtaining of an intermediate vector associated with an input data vector
- Figure 6 is a flowchart of the main steps of an operational phase of an explanation determination process in one embodiment.
- Figure 1 schematically illustrates a system for determining explanations 2 of a semantic data classification engine 4, referred to simply as classification engine 4 hereafter.
- the classification engine 4 is a classification engine that has been trained by machine learning from an input database 6, to classify each input data according to a plurality of predetermined semantic classes according to a task to be performed.
- the input database 6 contains a large amount of data, which are for example images or vectors representing physical quantities.
- the input data is provided in first-dimensional vector form, i.e. in the form of vectors V E.
- the machine learning-trained classification engine 4 is, for example, a semantic classification neural network, for example a convolutional neural network or a deep neural network.
- a neural network consists of an ordered succession of layers of neurons, each of which takes its inputs from the outputs of the previous layer.
- the classification engine 4 is divided into two modules, which are respectively a first module 8 for transforming an input data vector V E into a latent vector V L and a second module 10 for prediction taking said latent vector V L as input to provide as output a classification result Y including at least one probability of the input data belonging to a semantic class.
- the classification result Y is a classification vector whose size is equal to the number of semantic classes, each component of the classification vector Y corresponding to a semantic class, and taking a value equal to a probability of the input data belonging to the corresponding semantic class.
- the exact architecture of the neural network and in particular the architecture of the first module 8 and the second module 10, that is to say the number of layers, the number of elements (or neurons) per layer, the functions linking the neurons, is considered unknown.
- the first module 8 includes all the layers of the neural network up to the penultimate layer, and the second module 10 includes the last layer of the neural network, which is a prediction layer of the classification engine 4.
- FIG. 2 A schematic representation of the classification engine is illustrated in Figure 2, where we see that starting from an initial image I, represented as an input vector V E of first dimension N1, the first module 8 allows us to obtain a latent vector V L of second dimension N2 less than the first dimension N 1, and the second module 10 allows us to obtain a result Y in the form of a vector of probabilities of belonging to each class among a plurality of predetermined classes.
- the latent vectors V L are represented in a space called latent space.
- the representation in the second-dimensional latent space N2 is not interpretable by a user, insofar as the latent vectors V L are obtained by combinations made by the underlying layers of the first module 8, from input numerical data which do not have a meaning easy for a user to understand.
- the proposed system applies regardless of the architecture of the first transformation module 8, in particular the number of layers, the number of connections, and the weighting parameters applied in the weighted sums. Specifically, it applies to ResNet, LeNet, VGG, mobileNet, YOLO, and AlexNet neural networks, as well as transformer neural networks—this list is by no means exhaustive.
- the explanation determination system 2 includes an explanation determination device 20, which is a programmable electronic device.
- Device 20 includes or is configured to access a dictionary of concepts of a given cardinality, for example stored as a database 12.
- the term concept here refers to a word or set of words, in natural language, that is intelligible to a human user.
- the dictionary of concepts used is associated with an application domain; for example, it is a "business" dictionary of concepts containing terms known to experts in the field.
- the concept dictionary used is a generic dictionary, for example the set of nouns and adjectives of a given language, for example the set of nouns and adjectives of the English language from the "Contemporary American English (COCA) dataset”.
- COCA Contemporary American English
- Device 20 includes a module 14 for calculating a conceptual vector Vc from an input data vector from the input database 6, of third dimension N3, each component of the conceptual vector Vc being calculated as a function of the input data vector V E and a concept Cj from the dictionary of concepts.
- the third dimension N3 is equal to the cardinality of the concept dictionary.
- each component vq of the concept vector Vc represents a similarity between a concept q and the input data vector V E.
- An embodiment of module 14 for calculating a concept vector Vc will be described in more detail below.
- the input vector V E is derived from an input database 6', which may be different from the database 6 used to train the classification engine but containing input data of the same type as database 6.
- Device 20 also includes a module 16 for determining, preferably by machine learning, the parameters of an operator g() allowing passage from a conceptual vector associated with an input data vector to an intermediate vector V
- the intermediate vector V is of dimension equal to the second dimension N 2 , and the applied operator is chosen so that there is a bijection between the space of latent vectors and the space of intermediate vectors.
- the space of intermediate vectors, obtained from the conceptual vectors, remains interpretable by a user.
- the determination of the operator g() is performed under constraints, specifically a first constraint minimizing the loss of fidelity between the intermediate vector and the latent vector associated with the same input data vector, and a second constraint minimizing the loss of interpretability. Examples of the implementation of such constraints will be provided below.
- device 20 includes a module 18 for determining a prediction function h() allowing us to obtain, from the intermediate vector V, associated with an input data vector V E , a prediction result Y* close, according to a predefined measure, to the result Y of the classification engine 4 for the same input data vector V E.
- System 2 then makes it possible to obtain, for an input data vector V E , an interpretable formula associating the classification result Y provided by the classification engine and the input data vector V E of this classification engine.
- the interpretable formula is obtained based on the combination of the operator g() and the prediction function h() on the conceptual vector Vc associated with V E :
- the proposed method allows us to calculate for each pair (V E ,Y) a combination of concepts from the dictionary of concepts. From there, it is possible to generate an explanation of the classification engine that can be interpreted by a user.
- the explanation determination device 20 implemented as a programmable electronic device, includes one or more processors 22, an electronic memory unit 24, a communication interface 26 configured to communicate with remote servers according to a network communication protocol and a human-machine interface 28, these elements being configured to communicate with each other via an internal communication bus 25.
- the human-machine interface 28 includes in particular a display screen allowing the display of generated explanations for a user.
- the computing processor 22 is configured to execute module 14 for calculating a conceptual vector, 16 for determining the parameters of an operator g() and 18 for determining a prediction function h() when the programmable electronic device 20 is powered on.
- modules 14, 16, 18 are each implemented in the form of software instructions forming a computer program, which, when executed by a programmable electronic device, implements a method for determining explanations as described.
- This computer program also called a computer program product, is also capable of being stored on a computer-readable medium, not shown here.
- a computer-readable medium is, for example, a medium capable of storing electronic instructions and being connected to a bus of a computer system. Examples of such a readable medium include an optical disc, a magneto-optical disc, ROM, RAM, any type of non-volatile memory (e.g., FLASH or NVRAM), or a magnetic card.
- a computer program, comprising software instructions, is then stored on this readable medium.
- Figure 3 is a flowchart of the main steps in a process for determining explanations associated with a semantic classification of input data by a semantic classification engine trained by machine learning, in a learning phase, according to an embodiment mode.
- the process in this learning step, uses an input database, in which the input data is provided in the form of first-dimensional N1 input vectors.
- the process applies to a given classification engine, previously trained to perform semantic classification of input data of the same type as those in the input database.
- the process includes a step 30 of obtaining an input data vector V E from the input database, and a step 32 of applying the previously trained semantic classification engine, to obtain a latent vector V L associated with the input data vector V E and a classification result Y including at least one probability of the input data belonging to a semantic class among a plurality of semantic classes.
- the elements ⁇ VE , VL , Y ⁇ are memorized (memorization step 34).
- the process also includes a calculation 36, followed by a memorization, of a conceptual vector Vc associated with the input data vector V E.
- Calculation 36 is performed based on the previously recorded concept dictionary 12, this dictionary having a given cardinality Q.
- the dictionary of concepts is a large corpus such as the 3000 most common nouns and adjectives from the Contemporary American English (COCA) corpus dataset.
- computation 36 implements a pre-trained multi-modal matching model, for example the CLIP model (acronym for "Contrastive Language-Image Pretraining"), well known in the field of artificial intelligence.
- CLIP model an “Contrastive Language-Image Pretraining”
- the calculation step 36 includes a substep 42 of transformation of the input data vector V E into an image vector E im (V E ) in a vector space of predetermined dimension N, and a substep 44 of transformation of each concept Cj of the dictionary of concepts into an image vector E(Cj) of the same dimension N.
- the matching function »(X,Y) is a cosine similarity function:
- Vcj i
- the conceptual vector thus formed is representative of a similarity between the input data vector and each concept Cj.
- steps 30 to 36 are repeated for all input data vectors of the database.
- the process then includes a step 38 of determining the parameters of an operator g() allowing to go from the conceptual vector Vc associated with an input data vector V E to an intermediate vector V h which is in bijective relation with the corresponding latent vector V L.
- the intermediate vector has the same dimension as the latent vector, i.e., of second dimension N2.
- step 38 implements machine learning for determining the parameters of the operator g().
- the determination of the operator g() is carried out under constraints of fidelity and interpretability.
- the fidelity constraint also called the first fidelity loss minimization constraint, translates into the implementation of a minimization of a term representative of the loss of fidelity between the conceptual vector Vc(V E ) and the latent vector V L (V E ) associated with the same input data vector V E , for the set of input data vectors.
- L fid () is a function for evaluating the loss of fidelity.
- the interpretability constraint also called the second interpretability loss minimization constraint, translates into the implementation of a minimization of a chosen interpretability loss term T2 .
- a linear and parsimonious model that is to say using the fewest possible inputs, is considered to be a model respecting an interpretability constraint.
- the operator g() is formed by a sparse linear projection 48 and a neural network having an auto-encoder architecture 50.
- a linear projection p() is defined by the general formula:
- A is a matrix and b a constant vector, matrix A being called the regression weight matrix.
- a linear projection is said to be sparse when the matrix A is sparse, or in other words, the majority of the components of the matrix are equal to zero.
- a neural network 50 having an auto-encoder architecture is formed of an encoder 52 and a decoder 54.
- the encoder 52 performs coding towards a second-dimensional space N2, which is the dimension of the latent space of the classification engine.
- the fidelity function can be expressed as:
- the T2 term of loss of interpretability to be minimized is expressed by:
- A is the projection matrix
- A[i,j] is a component of the matrix
- is the absolute value of a real x.
- the T2 term for loss of interpretability to be minimized is expressed as:
- the regression weights of matrix A or in other words the components of matrix A, and the components of vector b are determined by machine learning on the set of input data vectors.
- Step 38 is followed by step 40 of determining a prediction function h() allowing to obtain, from an intermediate vector associated with an input data vector, a prediction result.
- the determination 40 of the prediction function h() is also carried out under a third constraint minimizing the loss of prediction fidelity, and, optionally, under a fourth constraint minimizing the loss of interpretability.
- the prediction function h() is expressed by the formula:
- the prediction function h() is a linear function.
- Linearity ensures the associated interpretability insofar as, as indicated above, the linear model is parsimonious.
- the third constraint for minimizing prediction fidelity loss implements the minimization of a term T3 representing the difference between the classification result Y and the prediction result Y* for each input data vector:
- minimizing the loss of interpretability must also be respected. Similar to the implementation of the second constraint on minimizing the loss of interpretability, in one embodiment, the number of parameters of the applied linear model must be minimized.
- step 40 which determines the prediction function h(), implements a hierarchical Choquet model and explains such a model using a generalization of Shapley values as described in US patent 11,195,110 B2, "Method for explaining a score,” by Hélia Pouyllau, Christophe Labreuche, and Bénédicte Goujon.
- the prediction function is a hierarchical model based on 2-additive Choquet integrals.
- the prediction function h() is implemented as a neural network.
- Figure 6 is a flowchart of the main steps of a process for determining explanations in an operational phase of use.
- the process includes a step 60 of providing a first-dimensional input data vector V Er , and a calculation 62 of an associated conceptual vector V cr .
- the process then includes a step 64 of applying the previously determined operator g(), to obtain an associated intermediate vector, and then a step 66 of applying the previously determined prediction function h() to obtain a combination of concepts associated with each probability of the input data belonging to a semantic class.
- the process then includes a step 68 of calculation and display of an associated explanation.
- the weights applied to the components of the conceptual vector provide explanations that a user can interpret. In this case, the non-zero weights and their associated concepts are displayed.
- h is a neural network
- interpretability is ensured through the use of structural gates in the form of a matrix G.
- v is any neural network
- the operation O denotes the term-by-term multiplication between the components of x and each term of the matrix G.
- the described process makes it possible to generate explanations that a user can interpret from a dictionary of concepts.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Ce procédé de détermination d'explications associées à une classification sémantique de données d'entrée par un moteur de classification sémantique comportant un premier module de transformation d'un vecteur de données d'entrée en un vecteur latent, et un deuxième module de prédiction d'un résultat de classification à partir du vecteur latent, comporte des étapes de : pour chaque vecteur de données d'entrée, calcul (36) d'un vecteur conceptuel; détermination (38) des paramètres d'un opérateur permettant de passer du vecteur conceptuel à un vecteur intermédiaire, sous une première contrainte de minimisation de perte de fidélité entre ledit vecteur intermédiaire (VI) et le vecteur latent (VL) et une deuxième contrainte de minimisation de perte d'interprétabilité; détermination (40) d'une fonction de prédiction d'un résultat de prédiction à partir d'un vecteur intermédiaire sous une troisième contrainte de minimisation de perte de fidélité entre les résultats de prédiction et de classification.
Description
DESCRIPTION
Procédé et dispositif de détermination d’explications associées à une classification sémantique de données d’entrée par un moteur de classification
La présente invention concerne un procédé de détermination d’explications associées à une classification sémantique de données d’entrée par un moteur de classification.
Elle concerne également un dispositif de détermination d’explications associées à une classification sémantique de données d’entrée par un moteur de classification et un programme d’ordinateur associé.
L’invention trouve des applications dans le domaine de l’intelligence artificielle, et plus particulièrement dans le domaine de l’explicabilité des résultats fournis par les moteurs de calcul, en particulier de classification sémantique, entraînés par apprentissage automatique.
L’invention trouve également des applications dans le domaine de l’amélioration de la fiabilité des moteurs de calcul entraînés par apprentissage automatique, pour leur application dans des domaines à haute criticité, comme par exemple l’aéronautique, la e- santé.
L’utilisation de l’apprentissage automatique, en mettant en œuvre des algorithmes d’intelligence artificielle, connaît un grand essor, car cela permet de traiter de très grands volumes de données.
En particulier, l’intelligence artificielle a été utilisée pour la classification ou la segmentation d’images numériques, ou pour le traitement du langage naturel. Les algorithmes d’intelligence artificielle, et en particulier les réseaux de neurones, entraînés par apprentissage automatique, s’avèrent particulièrement performants, notamment pour des tâches de classification sémantique. De nombreuses applications sont envisageables.
Par exemple, dans le domaine des véhicules autonomes ou semi-autonomes, l’analyse automatique d’images numériques obtenues par des capteurs embarqués est particulièrement utile, notamment pour l’évitement automatisé de collisions. Bien entendu, de nombreuses autres applications sont envisageables.
Cependant, les algorithmes d’intelligence artificielle ont un fonctionnement de « boîte noire », non compréhensible par les utilisateurs humains en général. Cela est particulièrement vrai lorsqu’il s’agit d’algorithmes d’apprentissage profond (ou « deep learning »), mettant en œuvre des réseaux de neurones comportant un grand nombre de couches cachées. On parle d’architecture d’un réseau de neurones pour désigner le
nombre de couches, le nombre d’éléments (ou neurones) par couche, les fonctions reliant les neurones.
Pour des tâches complexes, et en particulier pour des applications dans des domaines nécessitant une certification de qualité et/ou de sécurité, un tel fonctionnement de type boîte noire n’est pas acceptable.
Il existe un besoin d’explicabilité, intelligible par des utilisateurs, des résultats fournis par les moteurs de calcul entraînés par apprentissage automatique.
Une notion d’interprétabilité a également été introduite. Un modèle est dit « interprétable » si la mécanique interne de ce modèle peut être rendue compréhensible par un humain selon d’article de Leilani H. Gilpin, David Bau, Ben Z. Yuan, Ayesha Bajwa, Michael Specter and Lalana Kagal. “Explaining Explanations: An Overview of Interpretability of Machine Learning », publié le 31 mai 2018, dans International Conference on Data Science and Advanced Analytics.
On connaît deux catégories de méthodes d’explicabilité de moteurs de calcul à réseau de neurones. Une première catégorie comporte des méthodes consistant à construire un modèle simplifié d’un réseau de neurones dont l’architecture est inconnue. Cependant, un modèle simplifié suit nécessairement une logique différente et ne peut donc pas représenter fidèlement un réseau de neurones complexe. Une deuxième catégorie comporte des méthodes qui permettent d’identifier des sous-parties de données d’entrée qui ont une influence prépondérante sur la décision du réseau de neurones. Cependant, lorsque les données d’entrée sont des données d’image, formées de matrices de pixels, des sous- parties de ces données sont des pixels ou des regroupements de pixels.
L’interprétabilité de telles données demeure, dans la plupart des cas, compliquée pour un utilisateur.
Le but de l’invention est de remédier aux inconvénients des méthodes connues.
A cet effet, l’invention a pour objet un procédé de détermination d’explications associées à une classification sémantique de données d’entrée par un moteur de classification sémantique entraîné par apprentissage automatique, les données d’entrée étant fournies sous forme vectorielle de première dimension, le moteur de classification mettant en œuvre un premier module de transformation d’un vecteur de données d’entrée en un vecteur latent de deuxième dimension, et un deuxième module de prédiction prenant en entrée ledit vecteur latent pour fournir en sortie un résultat de classification comportant au moins une probabilité d’appartenance des données d’entrée à une classe sémantique, le procédé étant mis en œuvre par au moins un processeur de calcul d’un dispositif électronique de calcul et comportant une acquisition d’un dictionnaire de concepts de
cardinal donné, un concept étant constitué d’un mot ou d’un ensemble de mots. Ce procédé comporte une phase d’apprentissage, comportant des étapes de : pour chaque vecteur de données d’entrée d’une base de données d’entrée, calcul d’un vecteur dit vecteur conceptuel, chaque composante dudit vecteur conceptuel étant calculée en fonction du vecteur de données d’entrée et d’un concept dudit dictionnaire de concepts, détermination des paramètres d’un opérateur permettant de passer du vecteur conceptuel associé audit vecteur de données d’entrée à un vecteur intermédiaire, sous une première contrainte de minimisation de perte de fidélité entre ledit vecteur intermédiaire et le vecteur latent associé au même vecteur de données d’entrée et une deuxième contrainte de minimisation de perte d’interprétabilité ; détermination d’une fonction de prédiction permettant d’obtenir, à partir d’un vecteur intermédiaire associé à un vecteur de données d’entrée, un résultat de prédiction, sous une troisième contrainte de minimisation de perte de fidélité entre ledit résultat de prédiction et le résultat de classification obtenu pour ledit vecteur de données d’entrée.
Avantageusement, le procédé permet de générer une explication sous forme de combinaison interprétable de concepts du dictionnaire de concepts, utilisant l’opérateur et la fonction de prédiction sur un vecteur conceptuel, du résultat de classification du moteur de classification. Grâce aux contraintes appliquées, l’explication ainsi obtenue est interprétable par un utilisateur.
Le procédé de détermination d’explications associées à une classification sémantique de données d’entrée par un moteur de classification sémantique entraîné par apprentissage automatique selon l’invention peut également présenter une ou plusieurs des caractéristiques ci-dessous, prises indépendamment ou selon toutes les combinaisons techniquement envisageables.
Le procédé comporte, dans une phase opérationnelle, pour un vecteur de données d’entrée choisi, des étapes de : calcul du vecteur conceptuel associé audit vecteur de données, application de l’opérateur déterminé audit vecteur conceptuel calculé, puis de la fonction de prédiction déterminée, pour obtenir une combinaison de concepts associée à chaque probabilité d’appartenance des données d’entrée à une classe sémantique.
Le calcul d’un dit vecteur conceptuel met en œuvre un modèle de mise en correspondance multi-modale préalablement entraîné, ledit modèle de mise en
correspondance multi-modale transformant chaque vecteur de données d’entrées et chaque concept du dictionnaire de concepts dans des vecteurs image d’un espace vectoriel de dimension prédéterminée, et une fonction d’appariement, la fonction d’appariement calculant un score de similarité entre le vecteur image du vecteur de données d’entrée et le vecteur image de chaque concept.
La fonction d’appariement est une fonction de similarité cosinus.
L’opérateur permettant de passer d’un vecteur conceptuel associé à un vecteur de données d’entrée à un vecteur intermédiaire est formé par une projection linéaire parcimonieuse et un réseau de neurones ayant une architecture d’auto-encodeur.
La projection linéaire parcimonieuse met en œuvre une matrice de poids de régression, la deuxième contrainte met en œuvre une minimisation d’une somme des valeurs absolues desdits poids de régression.
La fonction de prédiction est une fonction linéaire.
La fonction de prédiction est mise en œuvre par un réseau de neurones.
La fonction de prédiction est mise en œuvre par un modèle hiérarchique à base d’intégrales de Choquet 2-additives.
L’invention concerne également un programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en œuvre un procédé de détermination d’explications associées à une classification sémantique de données d’entrée par un moteur de classification sémantique entraîné par apprentissage automatique tel que défini ci-dessus.
L’invention concerne également un dispositif de détermination d’explications associées à une classification sémantique de données d’entrée par un moteur de classification sémantique entraîné par apprentissage automatique, les données d’entrée étant fournies sous forme vectorielle de première dimension, le moteur de classification mettant en œuvre un premier module de transformation d’un vecteur de données d’entrée en un vecteur latent de deuxième dimension, et un deuxième module de prédiction prenant en entrée ledit vecteur latent pour fournir en sortie un résultat de classification comportant au moins une probabilité d’appartenance des données d’entrée à une classe sémantique, le procédé étant mis en œuvre par au moins un processeur de calcul d’un dispositif électronique de calcul et comportant une acquisition d’un dictionnaire de concepts de cardinal donné, un concept étant constitué d’un mot ou d’un ensemble de mots. Ce dispositif comporte un processeur configuré pour exécuter: pour chaque vecteur de données d’entrée d’une base de données d’entrée, un module de calcul d’un vecteur dit vecteur conceptuel, chaque composante dudit
vecteur conceptuel étant calculée en fonction du vecteur de données d’entrée et d’un concept dudit dictionnaire de concepts, un module de détermination des paramètres d’un opérateur permettant de passer du vecteur conceptuel associé audit vecteur de données d’entrée à un vecteur intermédiaire, sous une première contrainte de minimisation de perte de fidélité entre ledit vecteur intermédiaire et le vecteur latent associé au même vecteur de données d’entrée et une deuxième contrainte de minimisation de perte d’interprétabilité ; un module de détermination d’une fonction de prédiction permettant d’obtenir, à partir d’un vecteur intermédiaire associé à un vecteur de données d’entrée, un résultat de prédiction, sous une troisième contrainte de minimisation de perte de fidélité entre ledit résultat de prédiction et le résultat de classification obtenu pour ledit vecteur de données d’entrée.
L’invention apparaîtra plus clairement à la lecture de la description qui va suivre, donnée uniquement à titre d’exemple non limitatif, et faite en référence aux dessins dans lesquels : la figure 1 est une représentation schématique d’un système de détermination d’explications tel que proposé ; la figure 2 est une représentation schématique d’un moteur de classification ; la figure 3 est un logigramme des principales étapes d’une phase d’apprentissage d’un procédé de détermination d’explications dans un mode de réalisation ; la figure 4 illustre un mode de réalisation du calcul d’un vecteur conceptuel ; la figure 5 illustre un mode de réalisation d’un opérateur permettant d’obtenir un vecteur intermédiaire associé à un vecteur de données d’entrée ; la figure 6 est un logigramme des principales étapes d’une phase opérationnelle d’un procédé de détermination d’explications dans un mode de réalisation.
La figure 1 illustre schématiquement un système de détermination d’explications 2 d’un moteur de classification sémantique de données 4, appelé simplement moteur de classification 4 par la suite.
Le moteur de classification 4 est un moteur de classification ayant été entraîné par apprentissage automatique à partir d’une base de données d’entrée 6, pour classifier chaque donnée d’entrée selon une pluralité de classes sémantiques prédéterminées en fonction d’une tâche à accomplir.
La base de données d’entrée 6 comporte un grand nombre de données, qui sont par exemple des images ou des vecteurs représentatifs de grandeurs physiques.
Dans la suite, on considère que les données d’entrée sont fournies sous forme vectorielle de première dimension, i.e. sous forme de vecteurs VE.
Le moteur de classification 4 entraîné par apprentissage automatique est par exemple de type réseau de neurones de classification sémantique, par exemple un réseau de neurones convolutionnel ou un réseau de neurones profond.
De manière connue, un réseau de neurones comporte une succession ordonnée de couches de neurones dont chacune prend ses entrées sur les sorties de la couche précédente.
Le moteur de classification 4 est découpé en deux modules, qui sont respectivement un premier module 8 de transformation d’un vecteur de données d’entrée VE en un vecteur latent VL et un deuxième module 10 de prédiction prenant en entrée ledit vecteur latent VL pour fournir en sortie un résultat de classification Y comportant au moins une probabilité d’appartenance des données d’entrée à une classe sémantique.
Dans des modes de réalisation, le résultat de classification Y est un vecteur de classification dont la taille est égale au nombre de classes sémantiques, chaque composante du vecteur de classification Y correspondant à une classe sémantique, et prenant une valeur égale à une probabilité d’appartenance de la donnée d’entrée à la classe sémantique correspondante.
L’architecture exacte du réseau de neurones, et en particulier l’architecture du premier module 8 et du deuxième module 10, c’est-à-dire le nombre de couches, le nombre d’éléments (ou neurones) par couche, les fonctions reliant les neurones, est considérée comme inconnue.
Dans un mode de réalisation, le premier module 8 comporte toutes les couches du réseau de neurones jusqu’à la pénultième couche, et le deuxième module 10 comporte la dernière couche du réseau de neurones qui est une couche de prédiction du moteur de classification 4.
Une représentation schématique du moteur de classification est illustrée à la figure 2, où on voit qu’en partant d’une image I de départ, représentée sous forme d’un vecteur d’entrée VE de première dimension N1 , le premier module 8 permet d’obtenir un vecteur latent VL de deuxième dimension N2 inférieure à la première dimension N 1 , et le deuxième module 10 permet d’obtenir un résultat Y sous forme de vecteur de probabilités d’appartenance à chaque classe parmi une pluralité de classes prédéterminées.
Les vecteurs latents VL sont représentés dans un espace dit espace latent.
Dans le système proposé, il est considéré que l’architecture et les paramètres caractérisant le moteur de classification 4 sont inconnus, mais qu’il est possible d’accéder à l’espace latent, ou, en d’autres termes, d’obtenir, pour un vecteur de données d’entrée VE
de première dimension N1 le vecteur latent VL associé de deuxième dimension N2, obtenu par application du premier module 8 de transformation, ainsi que le résultat de décision Y obtenu par application du deuxième module 10 de prédiction à partir du vecteur latent VL.
La représentation dans l’espace latent de deuxième dimension N2 est non interprétable par un utilisateur, dans la mesure où les vecteurs latents VL sont obtenus par des combinaisons effectuées par les couches sous-jacentes du premier module 8, à partir de données numériques d’entrée qui n’ont pas de signification facile à comprendre pour un utilisateur.
Le système proposé s’applique quelle que soit l’architecture du premier module 8 de transformation, en particulier le nombre de couches, le nombre de connexions, les paramètres de pondération appliqués dans les sommes pondérées appliquées. En particulier, cela s’applique pour des réseaux de neurones ResNet, LeNet, VGG, mobileNet, YOLO, AlexNet, ainsi qu’aux réseaux de neurones transformers - cette liste n’étant bien entendu pas exhaustive.
En outre, le système de détermination d’explications 2 comporte un dispositif de détermination d’explications 20, qui est un dispositif électronique programmable.
Le dispositif 20 comporte ou est configuré pour accéder à un dictionnaire de concepts de cardinal donné, par exemple enregistré sous forme de base de données 12.
Le terme concept désigne ici un mot ou un ensemble de mots, en langage naturel, qui est intelligible par un utilisateur humain.
Dans un mode de réalisation, le dictionnaire de concepts utilisé est associé à un domaine d’application, il s’agit par exemple d’un dictionnaire de concepts « métier » comportant des termes connus des experts du métier.
Dans un autre mode de réalisation, le dictionnaire de concepts utilisé est un dictionnaire générique, par exemple l’ensemble des noms et des adjectifs d’une langue donnée, par exemple l’ensemble de noms et adjectifs de la langue anglaise du corpus « Contemporary American English (COCA) dataset ».
Le dispositif 20 comporte un module 14 de calcul d’un vecteur conceptuel Vc à partir d’un vecteur de données d’entrée issu de la base de données d’entrée 6, de troisième dimension N3, chaque composante du vecteur conceptuel Vc étant calculée en fonction du vecteur de données d’entrée VE et d’un concept Cj du dictionnaire de concepts.
Dans un mode de réalisation, la troisième dimension N3 est égale au cardinal du dictionnaire de concepts. De préférence, chaque composante vq du vecteur conceptuel Vc est représentative d’une similarité entre un concept q et le vecteur de données d’entrée VE. Un mode de réalisation du module 14 de calcul d’un vecteur conceptuel Vc sera décrit plus en détail ci-après.
En variante, le vecteur d’entrée VE est issu d’une base de données d’entrée 6’, pouvant être différente de la base de données 6 ayant servi pour l’entraînement du moteur de classification mais comportant des données d’entrée de même type que la base de données 6.
Le dispositif 20 comporte en outre un module 16 de détermination, de préférence par apprentissage automatique, des paramètres d’un opérateur g() permettant de passer d’un vecteur conceptuel associé à un vecteur de données d’entrée à un vecteur intermédiaire V|.
Avantageusement, le vecteur intermédiaire V, est de dimension égale à la deuxième dimension N2, et l’opérateur appliqué est choisi de manière à ce qu’il existe une bijection entre l’espace des vecteurs latents et l’espace des vecteurs intermédiaires.
En d’autres termes, il existe une application inversible permettant d’obtenir de manière unique chaque élément de l’espace des vecteurs latents à partir d’un unique élément de l’espace des vecteurs intermédiaires, et vice versa.
Cependant, différemment de l’espace latent, l’espace des vecteurs intermédiaires, obtenus à partir des vecteurs conceptuels, demeure interprétable par un utilisateur.
Pour cela, la détermination de l’opérateur g() est effectuée sous contraintes, et plus particulièrement une première contrainte de minimisation de perte de fidélité entre ledit vecteur intermédiaire et le vecteur latent associé au même vecteur de données d’entrée et une deuxième contrainte de minimisation de perte d’interprétabilité. Des exemples de mise en œuvre de telles contraintes seront fournis infra.
Enfin, le dispositif 20 comprend un module 18 de détermination d’une fonction de prédiction h() permettant d’obtenir, à partir du vecteur intermédiaire V, associé à un vecteur de données d’entrée VE, un résultat de prédiction Y* proche, selon une mesure prédéfinie, du résultat Y du moteur de classification 4 pour le même vecteur de données d’entrée VE.
Le système 2 permet alors d’obtenir, pour un vecteur de données d’entrée VE, une formule interprétable associant le résultat de classification Y fourni par le moteur de classification et le vecteur de données VE en entrée de ce moteur de classification.
La formule interprétable est obtenue en fonction de la combinaison de l’opérateur g() et de la fonction de prédiction h() sur le vecteur conceptuel Vc associé à VE :
[MATH 1]
Form(Vl:,Y) = h °gtyc)
En d’autres termes, le procédé proposé permet de calculer pour chaque paire (VE,Y) une combinaison de concepts du dictionnaire de concepts.
A partir de là, il est possible de générer une explication du moteur de classification interprétable par un utilisateur.
Par exemple, lorsque l’opérateur g() et la fonction de prédiction h() sont linéaires, est obtenue une combinaison linéaire de composantes du vecteur conceptuel Vc, dont les composantes non nulles sont associées à des concepts du dictionnaire de concepts. Cela permet d’obtenir des pondérations relatives aux composantes non nulles du vecteur conceptuel, qui sont alors facilement interprétables par un utilisateur.
Le dispositif de détermination d’explications 20, réalisé sous forme d’un dispositif électronique programmable, comporte un ou plusieurs processeurs 22, une unité de mémoire électronique 24, une interface de communication 26 configurée pour communiquer avec des serveurs distants selon un protocole de communication réseau et une interface homme-machine 28, ces éléments étant configurés pour communiquer entre eux via un bus de communication interne 25. L’interface homme-machine 28 comporte notamment un écran d’affichage permettant d’afficher des explications générées à destination d’un utilisateur.
Le processeur de calcul 22 est configuré pour exécuter le module 14 de calcul d’un vecteur conceptuel, 16 de détermination des paramètres d’un opérateur g() et 18 de détermination d’une fonction de prédiction h() lorsque le dispositif électronique programmable 20 est mis sous tension.
Dans un mode de réalisation, les modules 14, 16, 18 sont réalisés chacun sous forme d’instructions logicielles formant un programme d’ordinateur, qui, lorsqu’il est exécuté par un dispositif électronique programmable, met en œuvre un procédé de détermination d’explications tel que décrit.
Ce programme d’ordinateur, également appelé produit programme d’ordinateur, est en outre apte à être enregistré sur un support, non représenté, lisible par ordinateur. Le support lisible par ordinateur est par exemple un medium apte à mémoriser des instructions électroniques et à être couplé à un bus d’un système informatique. A titre d’exemple, le support lisible est un disque optique, un disque magnéto-optique, une mémoire ROM, une mémoire RAM, tout type de mémoire non-volatile (par exemple FLASH ou NVRAM) ou une carte magnétique. Sur le support lisible est alors mémorisé un programme d’ordinateur comprenant des instructions logicielles.
La figure 3 est un logigramme des principales étapes d’un procédé de détermination d’explications associées à une classification sémantique de données d’entrée par un
moteur de classification sémantique entraîné par apprentissage automatique, dans une phase d’apprentissage, selon un mode de réalisation.
Le procédé, dans cette étape d’apprentissage, utilise une base de données d’entrée, dans laquelle les données d’entrée sont fournies sous forme de vecteurs d’entrée de première dimension N1.
Le procédé s’applique pour un moteur de classification donné, préalablement entraîné pour réaliser la classification sémantique de données d’entrée du même type que celles de la base de données d’entrée.
Le procédé comporte une étape 30 d’obtention d’un vecteur de données d’entrée VE de la base de données d’entrée, et une étape 32 d’application du moteur de classification sémantique préalablement entraîné, pour obtenir un vecteur latent VL associé au vecteur de données d’entrée VE et un résultat de classification Y comportant au moins une probabilité d’appartenance des données d’entrée à une classe sémantique parmi une pluralité de classes sémantiques.
Les éléments {VE, VL, Y} sont mémorisés (étape de mémorisation 34).
Le procédé comporte en outre un calcul 36, suivi d’une mémorisation, d’un vecteur conceptuel Vc associé au vecteur de données d’entrée VE.
Le calcul 36 est effectué en fonction du dictionnaire de concepts 12 préalablement enregistré, ce dictionnaire ayant un cardinal Q donné.
Par exemple, le dictionnaire de concepts est un large corpus comme les 3000 plus communs noms et adjectifs du corpus Contemporary American English (COCA) dataset.
Dans un mode de réalisation, le calcul 36 met en œuvre un modèle de mise en correspondance multi-modale préalablement entraîné, par exemple le modèle CLIP (acronyme de « Contrastive Language-Image Pretraining »), bien connu dans le domaine de l’intelligence artificielle.
Dans ce mode de réalisation, en référence à la figure 4, l’étape de calcul 36 comporte une sous-étape 42 de transformation du vecteur de données d’entrée VE en un vecteur image Eim(VE) dans un espace vectoriel de dimension N prédéterminée, et une sous-étape 44 de transformation de chaque concept Cj du dictionnaire de concepts en un vecteur image E(Cj) de même dimension N.
Ensuite, pour chaque concept Cj, est calculé 44 un score de similarité, en mettant en œuvre une fonction d’appariement.
Par exemple, la fonction d’appariement »(X,Y) est une fonction de similarité cosinus :
[MATH 2]
où (X,Y) désigne le produit scalaire entre les vecteurs X et Y, et ||X|| désigne la norme L2 du vecteur X.
Ainsi, Vcj = i|j(Eim(y£),.E(Cj) est la composante d’indice j du vecteur conceptuel Vc associé au vecteur de données d’entrée VE.
Le vecteur conceptuel ainsi formé est représentatif d’une similarité entre le vecteur de données d’entrée et chaque concept Cj.
De retour à la figure 3, les étapes 30 à 36 sont répétées pour l’ensemble des vecteurs de données d’entrée de la base de données.
Le procédé comporte ensuite une étape 38 de détermination des paramètres d’un opérateur g() permettant de passer du vecteur conceptuel Vc associé à un vecteur de données d’entrée VE à un vecteur intermédiaire Vh qui est en relation bijective avec le vecteur latent VL correspondant.
Le vecteur intermédiaire est de même dimension que le vecteur latent, i.e. de deuxième dimension N2.
[MATH 3]
5(yc) = vI
Dans un mode de réalisation, l’étape 38 met en œuvre un apprentissage automatique pour la détermination des paramètres de l’opérateur g().
La détermination de l’opérateur g() est effectuée sous contraintes de fidélité et d’interprétabilité.
La contrainte de fidélité, appelée également première contrainte de minimisation de perte de fidélité, se traduit par la mise en œuvre d’une minimisation d’un terme
représentatif de la perte de fidélité entre le vecteur conceptuel Vc(VE) et le vecteur latent VL(VE) associés au même vecteur VE de données d’entrée, pour l’ensemble des vecteurs de données d’entrée.
[MATH 4]
Où TT est le terme à minimiser, Lfid() est une fonction d’évaluation de la perte de fidélité.
La contrainte d’interprétabilité, appelée également deuxième contrainte de minimisation de perte d’interprétabilité, se traduit par la mise en œuvre d’une minimisation d’un terme T2 de perte d’interprétabilité choisi.
On considère qu’un modèle linéaire et parcimonieux, c’est-à-dire utilisant le moins d’entrée possibles, est un modèle respectant une contrainte d’interprétabilité.
Par exemple, dans un mode de réalisation, illustré schématiquement dans la figure 5, l’opérateur g() est formé par une projection linéaire parcimonieuse 48 et un réseau de neurones ayant une architecture d’auto-encodeur 50.
Une projection linéaire p() est définie par la formule générale :
[MATH 5] p(X) = AX + b
Où A est une matrice et b un vecteur constant, la matrice A étant appelée matrice de poids de régression.
Une projection linéaire est dite parcimonieuse lorsque la matrice A est creuse, ou en d’autres termes la majorité des composantes de la matrice sont égales à zéro.
Un réseau de neurones 50 ayant une architecture d’auto-encodeur est formé d’un encodeur 52 et d’un décodeur 54.
Dans le mode de réalisation décrit, l’encodeur 52 réalise un codage vers un espace de deuxième dimension N2, qui est la dimension de l’espace latent du moteur de classification.
Dans ce mode de réalisation, en notant e() la fonction appliquée par l’encodeur 52 et d() la fonction appliquée par le décodeur 54, la fonction de fidélité peut être exprimée par :
Dans ce mode de réalisation, le terme T2 de perte d’interprétabilité à minimiser est exprimé par :
[MATH 7]
Où A est la matrice de projection, A[i,j] est une composante de la matrice et |x| est la valeur absolue d’un réel x.
Selon une variante, le terme T2 de perte d’interprétabilité à minimiser est exprimé par :
La minimisation du terme T2 permet d’assurer qu’un nombre minimum de concepts est sommé, afin d’améliorer l’i nterprétabilité.
Ainsi, dans ce mode de réalisation, à l’étape 38 de détermination de l’opérateur g(), les poids de régression de la matrice A, ou en d’autres termes les composantes de la matrice A, et les composantes du vecteur b sont déterminées par apprentissage automatique sur l’ensemble des vecteurs de données d’entrée.
L’étape 38 est suivie d’une étape 40 de détermination d’une fonction de prédiction h() permettant d’obtenir, à partir d’un vecteur intermédiaire associé à un vecteur de données d’entrée, un résultat de prédiction.
La détermination 40 de la fonction de prédiction h() est également effectuée sous une troisième contrainte de minimisation de perte de fidélité de prédiction, et, optionnellement, sous une quatrième contrainte de minimisation de perte d’interprétabilité.
La fonction de prédiction h() est exprimée par la formule :
[MATH 9] h(y;) = h ° g ° p yE~) = Y * (yE)
Dans un mode de réalisation, la fonction de prédiction h() est une fonction linéaire.
La linéarité assure l’interprétabilité associée dans la mesure où, comme indiqué ci- dessus, le modèle linéaire est parcimonieux.
La troisième contrainte de minimisation de perte de fidélité de prédiction met en œuvre la minimisation d’un terme T3 représentatif de la différence entre le résultat de classification Y et le résultat de la prédiction Y* pour chaque vecteur de données d’entrée :
[MATH 10]
Selon les modes de réalisation, une minimisation de perte d’interprétabilité est également à respecter. De manière analogue à la mise en œuvre de la deuxième contrainte de minimisation de perte d’interprétabilité, dans un mode de réalisation, il convient de minimiser le nombre de paramètres du modèle linéaire appliqué.
Selon des variantes, l’étape 40 de détermination de la fonction de prédiction h() met en œuvre un modèle de Choquet hiérarchique, et une explication d’un tel modèle en utilisant une généralisation des valeurs de Shapley telle que décrite dans le brevet US 11 195 110 B2 « Procédé d’explication d’un score » de Hélia POUYLLAU, Christophe LABREUCHE ET Bénédicte GOUJON. Par exemple, la fonction de prédiction est un modèle hiérarchique à base d’intégrales de Choquet 2-additives.
Selon une autre variante, la fonction de prédiction h() est réalisée sous forme d’un réseau de neurones.
La figure 6 est un logigramme des principales étapes d’un procédé de détermination d’explications dans une phase opérationnelle d’utilisation.
Le procédé comprend une étape 60 de fourniture d’un vecteur de données d’entrée VEr de première dimension N1 , et un calcul 62 d’un vecteur conceptuel Vcr associé.
Le procédé comprend ensuite une étape 64 d’application de l’opérateur g() préalablement déterminé, pour obtenir un vecteur intermédiaire associé, puis une étape 66 d’application de la fonction de prédiction h() préalablement déterminée pour obtenir une combinaison de concepts associée à chaque probabilité d’appartenance des données d’entrée à une classe sémantique.
Le procédé comprend ensuite une étape 68 de calcul et d’affichage d’une explication associée.
Le calcul d’une explication dépend notamment de la fonction de prédiction h() utilisée.
Dans le cas d’une fonction h() linéaire, les pondérations appliquées aux composantes du vecteur conceptuel forment des explications qu’un utilisateur peut interpréter. Dans ce cas, les pondérations non nulles et les concepts associés sont affichés.
En variante, il est possible d’utiliser toute autre méthode d’explication d’un modèle linéaire, par exemple la méthode des implicants premiers.
Lorsque la fonction h() est un modèle de Choquet hiérarchique, une explication utilisant les valeurs de Shapley ou de Winter est calculée, selon la méthode décrite dans le brevet US 11 195 110 B2.
Dans le cas où la fonction h() est mise en œuvre par un réseau de neurones, il est possible d’utiliser des portes structurelles qui sont des variables booléennes associées aux méta-concepts.
Dans le cas où h est un réseau de neurones, l’interprétabilité est assurée à travers l’utilisation de portes structurelles sous forme d’une matrice G .
Si h: Rd->Rp alors G e {0,i}{d x
est définie telle que :
[MATH 11]
Vi < d;hi x) = Vi(x Q G[i,:])
Où v est un réseau de neurones quelconque, et l’opération O désigne la multiplication terme à terme entre les composantes de x et chaque terme de la matrice G.
Avantageusement, le procédé décrit permet de générer des explications interprétables par un utilisateur à partir d’un dictionnaire de concepts.
Claims
1. Procédé de détermination d’explications associées à une classification sémantique de données d’entrée par un moteur de classification (4) sémantique entraîné par apprentissage automatique, les données d’entrée étant fournies sous forme vectorielle de première dimension, le moteur de classification (4) mettant en œuvre un premier module (8) de transformation d’un vecteur de données d’entrée en un vecteur latent de deuxième dimension, et un deuxième module (10) de prédiction prenant en entrée ledit vecteur latent pour fournir en sortie un résultat de classification comportant au moins une probabilité d’appartenance des données d’entrée à une classe sémantique, le procédé étant mis en œuvre par au moins un processeur de calcul (22) d’un dispositif électronique de calcul (20) et comportant une acquisition d’un dictionnaire de concepts de cardinal donné, un concept étant constitué d’un mot ou d’un ensemble de mots, le procédé étant caractérisé en ce qu’il comporte une phase d’apprentissage, comportant des étapes de : pour chaque vecteur de données d’entrée (VE) d’une base de données d’entrée (6’), calcul (36) d’un vecteur dit vecteur conceptuel (Vc), chaque composante dudit vecteur conceptuel étant calculée en fonction du vecteur de données d’entrée et d’un concept dudit dictionnaire de concepts, détermination (38) des paramètres d’un opérateur (g()) permettant de passer du vecteur conceptuel (Vc) associé audit vecteur de données d’entrée (VE) à un vecteur intermédiaire, sous une première contrainte de minimisation de perte de fidélité entre ledit vecteur intermédiaire (V|) et le vecteur latent (VL) associé au même vecteur de données d’entrée et une deuxième contrainte de minimisation de perte d’interprétabilité ; détermination (40) d’une fonction de prédiction (h()) permettant d’obtenir, à partir d’un vecteur intermédiaire associé à un vecteur de données d’entrée, un résultat de prédiction, sous une troisième contrainte de minimisation de perte de fidélité entre ledit résultat de prédiction et le résultat de classification obtenu pour ledit vecteur de données d’entrée.
2. Procédé selon la revendication 1 , comportant, dans une phase opérationnelle, pour un vecteur de données d’entrée choisi, des étapes de : calcul (62) du vecteur conceptuel associé audit vecteur de données, application (64, 66) de l’opérateur déterminé audit vecteur conceptuel calculé, puis de la fonction de prédiction déterminée, pour obtenir une combinaison de concepts associée à chaque probabilité d’appartenance des données d’entrée à une classe sémantique.
3. Procédé selon l’une des revendications 1 ou 2, dans lequel le calcul (36) d’un dit vecteur conceptuel met en œuvre un modèle de mise en correspondance multi- modale préalablement entraîné, ledit modèle de mise en correspondance multi-modale transformant chaque vecteur de données d’entrées et chaque concept du dictionnaire de concepts dans des vecteurs image d’un espace vectoriel de dimension prédéterminée, et une fonction d’appariement, la fonction d’appariement calculant un score de similarité entre le vecteur image du vecteur de données d’entrée et le vecteur image de chaque concept.
4. Procédé selon la revendication 3, dans lequel la fonction d’appariement est une fonction de similarité cosinus.
5. Procédé selon l’une quelconque des revendications 1 à 4, dans lequel l’opérateur (g()) permettant de passer d’un vecteur conceptuel associé à un vecteur de données d’entrée à un vecteur intermédiaire est formé par une projection linéaire parcimonieuse (48) et un réseau de neurones (50) ayant une architecture d’auto-encodeur.
6. Procédé selon la revendication 5, dans lequel la projection linéaire parcimonieuse (48) met en œuvre une matrice de poids de régression, la deuxième contrainte met en œuvre une minimisation d’une somme des valeurs absolues desdits poids de régression.
7. Procédé selon l’une quelconque des revendications 1 à 6, dans lequel ladite fonction de prédiction est une fonction linéaire.
8. Procédé selon l’une quelconque des revendications 1 à 6, dans lequel la fonction de prédiction est mise en œuvre par un réseau de neurones.
9. Procédé selon l’une quelconque des revendications 1 à 6, dans lequel la fonction de prédiction est mise en œuvre par un modèle hiérarchique à base d’intégrales de Choquet 2-additives.
10. Programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un dispositif électronique programmable, mettent en œuvre un procédé de détermination d’explications associées à une classification sémantique de données d’entrée par un moteur de classification sémantique entraîné par apprentissage automatique conforme aux revendications 1 à 9.
11. Dispositif de détermination d’explications associées à une classification sémantique de données d’entrée par un moteur de classification sémantique entraîné par apprentissage automatique, les données d’entrée étant fournies sous forme vectorielle de première dimension, le moteur de classification mettant en œuvre un premier module de transformation d’un vecteur de données d’entrée en un vecteur latent de deuxième dimension, et un deuxième module de prédiction prenant en entrée ledit vecteur latent pour fournir en sortie un résultat de classification comportant au moins une probabilité
d’appartenance des données d’entrée à une classe sémantique, le procédé étant mis en œuvre par au moins un processeur de calcul d’un dispositif électronique de calcul et comportant une acquisition d’un dictionnaire de concepts de cardinal donné, un concept étant constitué d’un mot ou d’un ensemble de mots, le dispositif étant caractérisé en ce qu’il comporte un processeur configuré pour exécuter: pour chaque vecteur de données d’entrée d’une base de données d’entrée, un module (14) de calcul d’un vecteur dit vecteur conceptuel, chaque composante dudit vecteur conceptuel étant calculée en fonction du vecteur de données d’entrée et d’un concept dudit dictionnaire de concepts, un module (16) de détermination des paramètres d’un opérateur permettant de passer du vecteur conceptuel associé audit vecteur de données d’entrée à un vecteur intermédiaire, sous une première contrainte de minimisation de perte de fidélité entre ledit vecteur intermédiaire et le vecteur latent associé au même vecteur de données d’entrée et une deuxième contrainte de minimisation de perte d’interprétabilité ; un module (18) de détermination d’une fonction de prédiction permettant d’obtenir, à partir d’un vecteur intermédiaire associé à un vecteur de données d’entrée, un résultat de prédiction, sous une troisième contrainte de minimisation de perte de fidélité entre ledit résultat de prédiction et le résultat de classification obtenu pour ledit vecteur de données d’entrée.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FRFR2405966 | 2024-06-06 | ||
| FR2405966A FR3163186A1 (fr) | 2024-06-06 | 2024-06-06 | Procédé et dispositif de détermination d'explications associées à une classification sémantique de données d'entrée par un moteur de classification |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025252971A1 true WO2025252971A1 (fr) | 2025-12-11 |
Family
ID=93562547
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/EP2025/065838 Pending WO2025252971A1 (fr) | 2024-06-06 | 2025-06-06 | Procédé et dispositif de détermination d'explications associées à une classification sémantique de données d'entrée par un moteur de classification |
Country Status (2)
| Country | Link |
|---|---|
| FR (1) | FR3163186A1 (fr) |
| WO (1) | WO2025252971A1 (fr) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11195110B2 (en) | 2015-03-26 | 2021-12-07 | Thales | Method of explaining a score |
| US20230031512A1 (en) * | 2020-10-14 | 2023-02-02 | Feedzai - Consultadoria E Inovação Tecnológica, S.A. | Surrogate hierarchical machine-learning model to provide concept explanations for a machine-learning classifier |
-
2024
- 2024-06-06 FR FR2405966A patent/FR3163186A1/fr active Pending
-
2025
- 2025-06-06 WO PCT/EP2025/065838 patent/WO2025252971A1/fr active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11195110B2 (en) | 2015-03-26 | 2021-12-07 | Thales | Method of explaining a score |
| US20230031512A1 (en) * | 2020-10-14 | 2023-02-02 | Feedzai - Consultadoria E Inovação Tecnológica, S.A. | Surrogate hierarchical machine-learning model to provide concept explanations for a machine-learning classifier |
Non-Patent Citations (1)
| Title |
|---|
| LEILANI H. GILPINDAVID BAUBEN Z. YUANAYESHA BAJWAMICHAEL SPECTERLALANA KAGAL: "Explaining Explanations: An Overview of Interpretability of Machine Learning", INTERNATIONAL CONFERENCE ON DATA SCIENCE AND ADVANCED ANALYTICS, 31 May 2018 (2018-05-31) |
Also Published As
| Publication number | Publication date |
|---|---|
| FR3163186A1 (fr) | 2025-12-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20220157054A1 (en) | Object Detection In Images | |
| US20250036678A1 (en) | Searching for images using generated images | |
| WO2022207573A1 (fr) | Autoencodeur multimodal a fusion de donnees latente amelioree | |
| WO2022112583A1 (fr) | Procédé d'évaluation de la performance d'un algorithme de prédiction et dispositifs associés | |
| EP4162409A1 (fr) | Procédé de génération d'un système d'aide à la décision et systèmes associés | |
| Aragon-Calvo et al. | Self-supervised learning with physics-aware neural networks–I. Galaxy model fitting | |
| EP3633552A1 (fr) | Procédés d'apprentissage de paramètres d'un réseau de neurones à convolution et de détection d'éléments d'intérêt visibles dans une image | |
| EP4099228A1 (fr) | Apprentissage automatique sans annotation ameliore par regroupements adaptatifs en ensemble ouvert de classes | |
| FR3144362A1 (fr) | Système et procédé de recommandation utilisant un apprentissage de données multivariées par filtrage collaboratif | |
| US20250225378A1 (en) | Systems and methods for machine learning model generation | |
| FR2719384A1 (fr) | Procédé de trajectographie d'objets et dispositif de mise en Óoeuvre de ce procédé. | |
| Kaya et al. | DDRM-PR: Fourier phase retrieval using denoising diffusion restoration models | |
| EP3966739B1 (fr) | Procédé d'analyse automatique d'images pour reconnaître automatiquement au moins une caractéristique rare | |
| US12530110B1 (en) | Apparatus and method for determining a command queue as a function of sensor data of a transportation device | |
| WO2025252971A1 (fr) | Procédé et dispositif de détermination d'explications associées à une classification sémantique de données d'entrée par un moteur de classification | |
| Maharaj | Generalizing in the real world with representation learning | |
| FR3117646A1 (fr) | Méthode de compression d’un réseau de neurones artificiel | |
| EP4155967B1 (fr) | Procédé d'échanges d'informations sur un objet d'intérêt entre une première et une deuxième entités, dispositif électronique d'échange d'informations et produit programme d'ordinateur associés | |
| US12124967B1 (en) | Apparatus and method for generating a solution | |
| Wang | Enhancing emotion detection through CNN-based facial expression recognition | |
| US20260065700A1 (en) | System And Method For Authentication And Valuation Of Artworks | |
| EP3920101A1 (fr) | Methode de reduction de la taille d'un reseau de neurones artificiel | |
| Frion | Learning the dynamics of multispectral satellite image time series | |
| Ortega Adarme et al. | A debiasing variational autoencoder for deforestation mapping | |
| Roman | From Hand-crafted to Self-attention |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 25732385 Country of ref document: EP Kind code of ref document: A1 |