Method and device for determining explanations associated with a semantic classification of input data by a classification engine
The method transforms input data vectors into interpretable conceptual vectors using a dictionary of concepts, addressing the 'black box' issue of machine learning algorithms, enabling understandable explanations for critical applications.
Patent Information
- Application Number
- FR2024005966
- Authority / Receiving Office
- FR · FR
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-06-06
- Publication Date
- 2025-12-12
AI Technical Summary
Existing machine learning algorithms, particularly deep learning neural networks, operate as 'black boxes', making their results incomprehensible to human users, which is unacceptable for critical applications requiring quality and safety certification.
A method and device for determining explanations associated with semantic classification by transforming input data vectors into interpretable conceptual vectors using a dictionary of concepts, with constraints to minimize loss of fidelity and interpretability, allowing generation of user-understandable explanations.
Provides interpretable explanations of classification results by generating combinations of concepts from the dictionary, ensuring the explanations are understandable to users while maintaining accuracy.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Title of the invention: Method and device for determining explanations associated with a semantic classification of input data by a classification engine
[0001] The present invention relates to a method for determining explanations associated with a semantic classification of input data by a classification engine.
[0002] 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.
[0003] The invention finds 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.
[0004] 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.
[0005] The use of machine learning, by implementing artificial intelligence algorithms, is experiencing great growth, because it allows very large volumes of data to be processed.
[0006] In particular, artificial intelligence has been used for the classification or segmentation of digital images, or for natural language processing. Artificial intelligence algorithms, and in particular neural networks trained by machine learning, prove to be particularly effective, especially for semantic classification tasks. Numerous applications are conceivable.
[0007] For example, in the field of autonomous or semi-autonomous vehicles, the automatic analysis of digital images obtained by on-board sensors is particularly useful, especially for automated collision avoidance. Of course, many other applications are conceivable.
[0008] However, artificial intelligence algorithms operate as a "black box," generally incomprehensible to human users. This is particularly true of deep learning (or "deep learning") algorithms, which implement neural networks with a large number of hidden layers. The term "architecture" of a neural network refers to the number of layers, the number of elements (or neurons) per layer, the functions linking the neurons.
[0009] For complex tasks, and in particular for applications in fields requiring quality and / or safety certification, such black box operation is not acceptable.
[0010] There is a need for explainability, intelligible to users, of the results provided by machine learning-trained computing engines.
[0011] A notion 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.
[0012] Two categories of methods for explaining neural network computing engines are known. The first category includes methods for constructing 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 predominant influence on the neural network's decision. However, when the input data is image data, consisting of pixel matrices, subsets of this data are pixels or groups of pixels.
[0013] The interpretability of such data remains, in most cases, complicated for a user.
[0014] The object of the invention is to remedy the drawbacks of known methods.
[0015] To this end, the invention relates to a method 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 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 of a given cardinality, a concept being constituted of a word or a group 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 a conceptual vector, each component of said conceptual vector being calculated as a function of the input data vector and a concept from said concept dictionary, - determination of 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; - determination of a prediction function allowing to obtain, 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.
[0016] Advantageously, the method makes it possible to generate 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 result of the classification engine. Thanks to the applied constraints, the explanation thus obtained is interpretable by a user.
[0017] 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.
[0018] The method comprises, in an operational phase, for a chosen input data vector, the steps of: - calculation of the conceptual vector associated with said data vector, - application of the operator determined by the calculated conceptual vector, then of the determined prediction function, to obtain a combination of concepts associated with each probability of the input data belonging to a semantic class.
[0019] The calculation of said conceptual vector implements a pre-trained multi-modal matching model, said multi-modal matching model transforming each input data vector and each concept from the concept dictionary into image vectors of a space a predetermined dimension vector, 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.
[0020] The matching function is a cosine similarity function.
[0021] The operator enabling the passage 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.
[0022] 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.
[0023] The prediction function is a linear function.
[0024] The prediction function is implemented by a neural network.
[0025] The prediction function is implemented by a hierarchical model based of Choquet 2-additive integrals.
[0026] 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 semantic classification engine trained by machine learning as defined above.
[0027] The invention also relates to a device 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 an acquisition of a dictionary of concepts of given cardinality, a concept being made up of a word or a set of words.This device includes a processor configured to run: . - for each input data vector of an input database, a calculation module for a vector called a conceptual vector, each component of said conceptual vector being calculated as a function of the input data vector and a concept from said concept dictionary, - a module for determining the parameters of an operator, allowing the transformation 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 that allows obtaining, from an intermediate vector associated with an input data vector, a prediction result, under a third constraint of minimizing the loss of fidelity between said prediction result and the classification result obtained for said input data vector.
[0028] The invention will become clearer upon reading the following description, given solely by way of non-limiting example, and made with reference to the drawings in which:
[0029] [Fig-1] [Fig.1] is a schematic representation of a determination system explanations as proposed;
[0030] [Fig.2] [Fig.2] is a schematic representation of a classification engine;
[0031] [Fig.3] [Fig.3] is a flowchart of the main steps of a phase learning a method for determining explanations in a mode of embodiment;
[0032] [Fig.4] [Fig.4] illustrates a method of calculating a conceptual vector;
[0033] [Fig. 5] Fig. 5 illustrates an embodiment of an operator for obtaining an intermediate vector associated with an input data vector;
[0034] [Fig.6] [Fig.6] is a flowchart of the main steps of a phase operational of a method for determining explanations in an embodiment.
[0035] Fig. 1 schematically illustrates a system for determining explanations 2 of a semantic data classification engine 4, referred to simply as classification engine 4 hereafter.
[0036] 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.
[0037] The input database 6 contains a large amount of data, which are for example images or vectors representing physical quantities.
[0038] In the following, it is assumed that the input data are provided in first-dimensional vector form, i.e. in the form of VE vectors.
[0039] The classification engine 4 trained by machine learning is for example of the semantic classification neural network type, for example a convolutional neural network or a deep neural network.
[0040] In a known manner, a neural network comprises an ordered succession of layers of neurons, each of which takes its inputs from the outputs of the previous layer.
[0041] The classification engine 4 is divided into two modules, which are respectively a first module 8 for transforming an input data vector VE into a latent vector VL and a second prediction module 10 taking said latent vector VL as input to provide as output a classification result Y comprising at least one probability of the input data belonging to a semantic class.
[0042] In embodiments, 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.
[0043] 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 to be unknown.
[0044] In one embodiment, the first module 8 comprises all the layers of the neural network up to the penultimate layer, and the second module 10 comprises the last layer of the neural network, which is a prediction layer of the classification engine 4.
[0045] A schematic representation of the classification engine is illustrated in [Fig.2], where it can be seen that starting from a starting image I, represented as an input vector VE of first dimension NI, the first module 8 allows obtaining a latent vector VL of second dimension N2 lower than the first dimension NI, and the second module 10 allows obtaining a result Y in the form of a vector of probabilities of belonging to each class among a plurality of predetermined classes.
[0046] The latent vectors VL are represented in a space called latent space.
[0047] In the proposed system, it is considered that the architecture and parameters characterizing the classification engine 4 are unknown, but that it is possible to access the latent space, or, in other words, to obtain, for an input data vector VE of first dimension NI the associated latent vector VL of second dimension N2, obtained by application of the first transformation module 8, as well as the decision result Y obtained by application of the second prediction module 10 from the latent vector VL.
[0048] The representation in the second-dimensional latent space N2 is not interpretable by a user, insofar as the latent vectors VL 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.
[0049] 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 being, of course, not exhaustive.
[0050] In addition, the explanation determination system 2 includes an explanation determination device 20, which is a programmable electronic device.
[0051] The device 20 includes or is configured to access a dictionary of concepts of a given cardinality, for example stored as a database 12.
[0052] The term concept here refers to a word or set of words, in natural language, which is intelligible to a human user.
[0053] In one embodiment, 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.
[0054] In another embodiment, the dictionary of concepts 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".
[0055] The 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 VE and a concept Ci from the dictionary of concepts.
[0056] In one embodiment, the third dimension N3 is equal to the cardinality of the concept dictionary. Preferably, each component vc of the concept vector Vc represents a similarity between a concept c and the input data vector VE. An embodiment of module 14 for calculating a concept vector Vc will be described in more detail below.
[0057] Alternatively, the input vector VE is derived from an input database 6', which may be different from the database 6 used for training the classification engine but containing input data of the same type as database 6.
[0058] The device 20 further comprises a module 16 for determining, preferably by machine learning, the parameters of an operator g() enabling the conversion from a conceptual vector associated with an input data vector to an intermediate vector Vb
[0059] Advantageously, the intermediate vector Vi has a dimension equal to the second dimension N2, and the applied operator is chosen so that there is a bijection between the space of latent vectors and the space of intermediate vectors.
[0060] In other words, there exists an invertible mapping that allows us to obtain each element of the latent vector space uniquely from a single element of the intermediate vector space, and vice versa.
[0061] However, unlike the latent space, the space of intermediate vectors, obtained from the conceptual vectors, remains interpretable by a user.
[0062] To this end, the determination of the operator g() is carried out under constraints, and more specifically a first constraint minimizing the loss of fidelity between said 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.
[0063] Finally, the device 20 includes a module 18 for determining a prediction function h() allowing to obtain, from the intermediate vector Vi associated with an input data vector VE, 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 VE.
[0064] System 2 then makes it possible to obtain, for an input data vector VE, an interpretable formula associating the classification result Y provided by the classification engine and the input data vector VE of this classification engine.
[0065] The interpretable formula is obtained as a function of the combination of the operator g() and the prediction function h() on the conceptual vector Vc associated with VE:
[0066] [Math.l] Form( VE, F) = h0 g( Vc)
[0067] In other words, the proposed method makes it possible to calculate for each pair (VE,Y) a combination of concepts from the dictionary of concepts.
[0068] From there, it is possible to generate an explanation of the classification engine that can be interpreted by a user.
[0069] For example, when the operator g() and the prediction function h() are linear, a linear combination of components of the conceptual vector Vc is obtained, whose non-zero components are associated with concepts from the dictionary of concepts. This allows us to obtain weightings relative to the non-zero components of the conceptual vector, which are then easily interpretable by a user.
[0070] The explanation determination device 20, implemented in the form of a programmable electronic device, comprises 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 for displaying generated explanations to a user.
[0071] 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.
[0072] In one embodiment, 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.
[0073] This computer program, also called a computer program product, is further capable of being stored on a computer-readable medium, not shown. A computer-readable medium is, for example, a medium capable of storing electronic instructions and being connected to a bus of a computer system. For example, a readable medium is 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 the readable medium.
[0074] Fig. 3 is a flowchart of the main steps of 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 one embodiment.
[0075] The method, in this learning step, uses an input database, in which the input data are provided in the form of first-dimensional input vectors NI.
[0076] The method 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.
[0077] The method includes a step 30 of obtaining an input data vector VE from the input database, and a step 32 of applying the engine to pre-trained semantic classification, to obtain a latent vector VL associated with the input data vector VE 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.
[0078] The elements {VE, VL, Y] are memorized (memory step 34).
[0079] The method further comprises a calculation 36, followed by a storage, of a conceptual vector Vc associated with the input data vector VE.
[0080] Calculation 36 is performed according to the previously recorded concept dictionary 12, this dictionary having a given cardinality Q.
[0081] For example, 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.
[0082] In one embodiment, the calculation 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.
[0083] In this embodiment, with reference to [Fig.4], the calculation step 36 includes a substep 42 of transformation of the input data vector VE into an image vector Eim(VE) in a vector space of predetermined dimension N, and a substep 44 of transformation of each concept Q of the concept dictionary into an image vector E(Cj) of the same dimension N.
[0084] Next, for each concept Cj, a similarity score is calculated, by implementing a matching function.
[0085] For example, the matching function q(x, Y) is a cosine similarity function:
[0086] [Math.2] 4E im (V£ ),£(C y ) =
[0087] where {X, Y) denotes the dot product between the vectors X and Y, and ||X|| denotes the L2 norm of the vector X.
[0088] Thus, yc _ ( V . ) F(C j is 'a component of index j of the vector conceptual Vc associated with the input data vector VE.
[0089] The conceptual vector thus formed is representative of a similarity between the input data vector and each concept Q.
[0090] Returning to [Fig.3], steps 30 to 36 are repeated for all input data vectors of the database.
[0091] 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 VE to an intermediate vector Vb which is in bijective relation with the corresponding latent vector VL.
[0092] The intermediate vector is of the same dimension as the latent vector, i.e. of second dimension N2. [Math.3]
[0093] In one embodiment, step 38 implements machine learning for determining the parameters of the operator g().
[0094] The determination of the operator g() is carried out under constraints of fidelity and interpretability.
[0095] The fidelity constraint, also called the first fidelity loss minimization constraint, translates into the implementation of a minimization of a term Ti representing the fidelity loss between the conceptual vector Vc(VE) and the latent vector VL(VE) associated with the same input data vector VE, for all input data vectors.
[0096] [Math.4]
[0097] Where Tiest is the term to be minimized, Lfld() is a function for evaluating the loss of fidelity.
[0098] 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.
[0099] A linear and parsimonious model, that is to say using the fewest possible inputs, is considered to be a model respecting an interpretability constraint.
[0100] For example, in one embodiment, schematically illustrated in [Fig.5], the operator g() is formed by a sparse linear projection 48 and a neural network having an auto-encoder architecture 50.
[0101] A linear projection p() is defined by the general formula:
[0102] [Math.5] p(X) = AX + b
[0103] Where A is a matrix and b a constant vector, the matrix A being called the regression weight matrix.
[0104] 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.
[0105] A neural network 50 having an auto-encoder architecture is formed of an encoder 52 and a decoder 54.
[0106] In the described embodiment, the encoder 52 performs coding towards a second-dimensional space N2, which is the dimension of the latent space of the classification engine.
[0107] In this embodiment, denoting e() the function applied by the encoder 52 and d() the function applied by the decoder 54, the fidelity function can be expressed as:
[0108] [Math.6] Lfid(VL(VE), V({vE)) = Hvi(ve)-e°p°y{vE)\\2+\\d°erp^^^ -p°v(vj||2
[0109] In this embodiment, the T2 term of loss of interpretability to be minimized is expressed by:
[0110] [Math.7]
[0111] Where A is the projection matrix, A[i,j] is a component of the matrix and lxI is the absolute value of a real x.
[0112] According to one variant, the T2 term of loss of interpretability to be minimized is expressed as:
[0113] [Math.8]
[0114] Minimizing the T2 term ensures that a minimum number of concepts are summed, in order to improve interpretability.
[0115] Thus, in this embodiment, at step 38 of determining the operator g(), the regression weights of the matrix A, or in other words the components of the matrix A, and the components of the vector b are determined by machine learning on the set of input data vectors.
[0116] Step 38 is followed by a step 40 of determining a prediction function h() allowing to obtain, from an intermediate vector associated with an input data vector, a prediction result.
[0117] The determination 40 of the prediction function h() is also carried out under a third constraint minimizing loss of prediction fidelity, and, optionally, under a fourth constraint minimizing loss of interpretability.
[0118] The prediction function h() is expressed by the formula:
[0119] [Math.9] h(y I )=hg- V (y E ) = Y'\v E )
[0120] In one embodiment, the prediction function h() is a linear function.
[0121] Linearity ensures the associated interpretability insofar as, as indicated above, the linear model is parsimonious.
[0122] The third constraint for minimizing prediction fidelity loss implements the minimization of a T3 term representing the difference between the classification result Y and the prediction result Y* for each input data vector:
[0123] [Math. 10]
[0124] Depending on the embodiment, minimizing the loss of interpretability must also be respected. Similar to the implementation of the second constraint minimizing the loss of interpretability, in one embodiment, the number of parameters of the applied linear model must be minimized.
[0125] According to variants, step 40 of determining the prediction function h() implements a hierarchical Choquet model, and an explanation of 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. For example, the prediction function is a hierarchical model based on 2-additive Choquet integrals.
[0126] According to another variant, the prediction function h() is implemented in the form of a neural network.
[0127] The [Fig.6] is a flowchart of the main steps of a process for determining explanations in an operational phase of use.
[0128] The method includes a step 60 of providing a first-dimensional input data vector VEr NI, and a calculation 62 of an associated conceptual vector Vcr.
[0129] 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.
[0130] The process then includes a step 68 of calculation and display of an associated explanation.
[0131] The calculation of an explanation depends in particular on the prediction function h() used.
[0132] In the case of a linear function h(), the weights applied to the components of the conceptual vector form explanations that a user can interpret. In this case, the non-zero weights and the associated concepts are displayed.
[0133] Alternatively, it is possible to use any other method of explaining a linear model, for example the method of prime implicants.
[0134] When the function h() is a hierarchical Choquet model, an explanation using Shapley or Winter values is computed, according to the method described in US patent 11 195 110 B2.
[0135] In the case where the function h() is implemented by a neural network, it is possible to use structural gates which are boolean variables associated with meta-concepts.
[0136] In the case where h is a neural network, interpretability is ensured through the use of structural gates in the form of a matrix G.
[0137] If h : Rp then is defined such that:
[0138] [Math. 11] Vf <d,hj(x) -v x0g[i, : ])
[0139] Where v is any neural network, and the operation 0 denotes the term-by-term multiplication between the components of x and each term of the matrix G.
[0140] Advantageously, the described process makes it possible to generate explanations interpretable by a user from a dictionary of concepts.
Claims
1. Demands Method for determining explanations associated with a semantic classification of input data by a semantic classification engine (4) trained by machine learning, the input data being provided in first-dimensional vector form, the classification engine (4) implementing a first module (8) for transforming an input data vector into a second-dimensional latent vector, and a second prediction module (10) 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 (22) of an electronic computing device (20) and comprising an acquisition of a dictionary of concepts of given cardinality, a concept being consisting of a word or a set of words, the method being characterized in that it comprises a learning phase,including steps of: - for each input data vector (VE) of an input database (6'), calculation (36) of a vector called a conceptual vector (Vc), each component of said conceptual vector being calculated as a function of the input data vector and a concept of said concept dictionary, - determination (38) of the parameters of an operator (g()) allowing passage from the conceptual vector (Vc) associated with said input data vector (VE) to an intermediate vector, under a first constraint of minimization of loss of fidelity between said intermediate vector (Vi) and the latent vector (VL) associated with the same input data vector and a second constraint of minimization of loss of interpretability; - determination (40) of a prediction function (h()) allowing to obtain, 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.
2. A method according to claim 1, comprising, in an operational phase, for a chosen input data vector, the steps of: - calculation (62) of the conceptual vector associated with said data vector, - application (64, 66) of the determined operator to said calculated conceptual vector, then of the determined prediction function, to obtain a combination of concepts associated with each probability of the input data belonging to a semantic class.
3. A method according to any one of claims 1 or 2, wherein the calculation (36) of said conceptual vector implements a pre-trained multi-modal matching model, said multi-modal matching model 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 computing a similarity score between the image vector of the input data vector and the image vector of each concept.
4. A method according to claim 3, wherein the matching function is a cosine similarity function.
5. A method according to any one of claims 1 to 4, wherein the operator (g()) for going from a conceptual vector associated with an input data vector to an intermediate vector is formed by a sparse linear projection (48) and a neural network (50) having an auto-encoder architecture.
6. A method according to claim 5, wherein the sparse linear projection (48) implements a regression weight matrix, the second constraint implements a minimization of a sum of the absolute values of said regression weights.
7. A method according to any one of claims 1 to 6, wherein said prediction function is a linear function.
8. A method according to any one of claims 1 to 6, wherein the prediction function is implemented by a network of neurons.
9. A method according to any one of claims 1 to 6, wherein the prediction function is implemented by a hierarchical model based on 2-additive Choquet integrals.
10. A computer program comprising software instructions which, when executed by a programmable electronic device, implement a method for determining explanations associated with a semantic classification of input data by a machine learning-trained semantic classification engine according to claims 1 to 9.
11. 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 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 of a given cardinality, a concept being consisting of a word or a set of words,the device being characterized in that it comprises a processor configured to execute: - for each input data vector of an input database, a module (14) for calculating a vector called a conceptual vector, each component of said conceptual vector being calculated as a function of the input data vector and a concept of said concept dictionary, - a module (16) for determining the parameters of an operator enabling the passage 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 vector, input data and a second constraint minimizing loss of interpretability; a module (18) for determining a prediction function that allows 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.
Citation Information
Patent Citations
Method of explaining a score
US11195110B2
Surrogate hierarchical machine-learning model to provide concept explanations for a machine-learning classifier
US20230031512A1