EP4476696A1 - Procédé d'entrainement non supervisé pour la détection de motifs récurrents - Google Patents

Procédé d'entrainement non supervisé pour la détection de motifs récurrents

Info

Publication number
EP4476696A1
EP4476696A1 EP23702180.3A EP23702180A EP4476696A1 EP 4476696 A1 EP4476696 A1 EP 4476696A1 EP 23702180 A EP23702180 A EP 23702180A EP 4476696 A1 EP4476696 A1 EP 4476696A1
Authority
EP
European Patent Office
Prior art keywords
activation
detector
training
data
detection
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
Application number
EP23702180.3A
Other languages
German (de)
English (en)
Inventor
Zakaria CHIHANI
Romain XU-DARME
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Original Assignee
Commissariat a lEnergie Atomique CEA
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Commissariat a lEnergie Atomique CEA, Commissariat a lEnergie Atomique et aux Energies Alternatives CEA filed Critical Commissariat a lEnergie Atomique CEA
Publication of EP4476696A1 publication Critical patent/EP4476696A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]

Definitions

  • the invention relates to the technical field of unsupervised machine learning methods for the detection of recurring patterns, in particular related patterns in a data sequence.
  • the invention relates to the detection of parts of objects in a sequence of images but also applies to other fields of detection or recognition, for example in the field of audio or control. order.
  • the invention applies for example to detecting different types of voices in an audio recording.
  • the invention falls within the field of artificial intelligence methods and more specifically unsupervised automatic detection methods.
  • CNN convolutional neural networks
  • Machine learning techniques are generally separated into two classes: supervised methods which require the training data to be annotated, and unsupervised methods which process unannotated data.
  • the semi-supervised methods do not require annotating the training data but still require information on the category of the objects to be detected, for example a particular species of bird in the case where the object to be detected relates to birds.
  • the pattern detectors are intermediate products of the system and are optimized only for the purpose of performing the final task (eg a classification task). Moreover, these methods do not offer any guarantee of coverage of the object because only the "interesting" parts for the final task are detected.
  • each image is generally first encoded into a set of characteristics or
  • the first unsupervised learning methods used image descriptors based on histograms encoding color or gradient (i.e. salient elements such as contours) to extract relevant features from the image and then applied an algorithm partitioning, for example of the average K type or Vast Margin Separators (SVM). More recently, unsupervised detection methods based on features extracted from deep convolutional neural networks or "deep CNN” in English have been proposed.
  • SVM Vast Margin Separators
  • the method described in this reference uses a convolutional neural network supplemented by a layer of convolutional filters to realize the detectors.
  • the method nevertheless requires knowledge of the class of objects to be detected in order to perform a refinement of the parameters of the detectors after the training. It does not therefore consist of a truly unsupervised method.
  • the invention proposes a new unsupervised learning method which does not require any prior annotation of the data or any information on the categories of objects to be detected.
  • the invention makes it possible to construct detectors of parts of objects as weighted sums of activation maps by exploiting the characteristics of a pre-trained deep convolutional neural network.
  • a pre-trained deep convolutional neural network which are pre-trained on classification tasks using millions of training images, and which are the result of a decade of optimization by the scientific community.
  • the first layers of these networks can however be used to extract relevant features from the image.
  • the detectors are trained globally on all the training images and not locally (at the scale of a single image) like some methods of the prior art (Jian Zhang, Runsheng Zhang, Yaping Huang, and Qi Zou. Unsupervised Part Mining for Fine-grained Image Classification, [preprint] ArXiv, abs/1902.09941 , 2019) which require an additional phase of semantic alignment.
  • the invention is based on cost functions which are defined in order to ensure certain locality, uniqueness or grouping properties specific to the detection of parts of related objects.
  • the invention does not require any additional adjustment based on knowledge of the classes to be detected or the categories of objects targeted.
  • the invention does not require modifying the parameters of the pre-trained network used for the extraction of the characteristics of the image, which makes it possible to obtain rapid convergence during the training of the detectors and to couple the invention to different pre-trained artificial intelligence models able to provide relevant features extracted from data in a “black box” approach.
  • the grouping criterion makes it possible to limit the detection of parts of objects that are not adjacent to each other, which avoids having to resort to additional manual filtering.
  • the invention also makes it possible to provide a measure of confidence associated with the decision and based on the distribution of the correlation scores over the set of training data.
  • This measurement makes it possible in particular to detect the visibility of part of an object.
  • the subject of the invention is a method, implemented by computer, for unsupervised training of a model for detecting recurring patterns in a set of data, the model consisting of a detection layer comprising at less :
  • a recurring pattern detector configured to receive a set of features extracted from the data and output an activation map consisting of a set of activation scores, an activation score being characteristic of the absence or presence of a pattern detected in the data by the detector.
  • the method according to the invention further comprises the application, to each activation map at the output of the activation layer, of a uniform filter of dimension depending on that of said region. of the activation card.
  • the detection layer comprises several detectors of recurring patterns and the learning of the parameters of each detector is also constrained to respect a uniqueness criterion, by means of the optimization of a second cost function L U (IC) consisting in avoiding the simultaneous activation of several detectors at the same point of the activation map.
  • L U second cost function
  • the uniqueness criterion is implemented by constraining, during the optimization of the second cost function L U (IC), the maximum value of the sum at each point of the maps d activation on all the detectors at a first predefined maximum threshold.
  • the detection layer comprises several detectors of recurring patterns and the learning of the parameters of each detector is also constrained to respect a grouping criterion, by means of the optimization of a third cost function L p (IC), consisting in favoring the activation of said detectors on contiguous areas of the activation map.
  • L p third cost function
  • the grouping criterion is implemented by applying, during the optimization of the third cost function L p (IC), a convolutional filter to the sum of the activation maps at the output of the activation layer and constraining the maximum value of the filtering result to a second predefined maximum threshold.
  • the activation layer implements a normalization function, for example the Softmax function.
  • the set of characteristics is obtained by means of a pre-trained model on a set of training data.
  • the method according to the invention further comprises, at the end of the training, for each detector, an estimate of the distribution of the maximum values of the outputs of the detector and the setting of a confidence threshold depending on the cumulative distribution function of said distribution.
  • Another subject of the invention is a method, implemented by computer, for detecting recurring patterns in a set of data comprising the implementation of a detection model obtained by the method according to the invention.
  • the method for detecting recurring patterns according to the invention further comprises, for each recurring pattern detector and for each new set of data received, the determination of a confidence score depending on said cumulative distribution function learned during training applied to said data set.
  • the method for detecting recurring patterns according to the invention further comprises, for each detector of recurring patterns, the application of a filter to the output values of the detector which are lower than the threshold of confidence determined during training.
  • the method for detecting recurring patterns according to the invention further comprises a step of converting the activation map produced at the output of the activation layer of the detection pattern into a map of location of recurring patterns.
  • the data is of the image type and the characteristics extracted from the data are organized in a third-order tensor.
  • the recurring patterns to be detected are parts of related objects in the images.
  • the invention further relates to a computer program comprising code instructions for the implementation of the invention and a computer-readable recording medium on which is recorded the computer program according to the invention.
  • FIG. 1 represents a diagram illustrating a method, according to the invention, for unsupervised training of a learning model configured for the detection of recurring patterns, for example parts of objects in an image sequence,
  • FIG. 2 represents a flowchart of a variant embodiment of the invention allowing the determination of a confidence score for each detection
  • FIG. 3 represents several examples of histograms determined after training the model to determine the confidence score
  • FIG. 4 illustrates the calculation of the visibility threshold of a pattern detector according to one embodiment of the invention
  • FIG. 5 represents an example of results obtained using the automatic detection model trained by means of the method according to the invention.
  • FIG. 1 schematizes an embodiment of an unsupervised training method for pattern detectors according to the invention.
  • the data processed are sequences of images and the objective of the task to be learned n concerns the detection of parts of objects, for example the parts of an animal's body. (head, legs, wings, etc.).
  • the data may be of other types (2D, 3D images, from perception sensors of different types, audio data, text, multimedia, radar, etc.).
  • the objective of the method is to detect recurring patterns, more particularly related patterns, in the data sequence for a category of objects.
  • the method therefore receives as input a two-dimensional image x.
  • This image is supplied as input to a feature extractor system, for example a convolutional neural network 101 , producing a set of features representative of the input x.
  • a feature extractor system for example a convolutional neural network 101
  • the method therefore receives as input a two-dimensional image x.
  • This image is supplied as input to a feature extractor system, for example a convolutional neural network 101 , producing a set of features representative of the input x.
  • a feature extractor system for example a convolutional neural network 101
  • the function of the convolutional neural network 101 is to extract relevant characteristics or abstract representations making it possible to characterize the important information contained in the image.
  • the neural network 101 outputs a tensor of order three F(x), of dimensions H rows, W columns, each coordinate of which corresponds to a vector of dimension D containing the characteristics extracted from a region of the image.
  • the H,W dimensions of the tensor are in general smaller than the dimensions of the input image x since as the layers of the convolutional neural network progress, the size of the output maps is reduced, although the number of channels (dimension D) increases.
  • the indices h,w designate the coordinates of a point or a vector in a map of dimension H,W or a tensor of dimension H,W,D.
  • the convolutional neural network 101 can be replaced by any other machine learning algorithm suitable for extracting relevant characteristics from the input data.
  • the convolutional neural network 101 is completed by a detection layer 102 comprising at least one detector of recurrent patterns within the features extracted from the input data.
  • a detection layer 102 comprising at least one detector of recurrent patterns within the features extracted from the input data.
  • a number p of detectors k (1) , ... k (p) is represented, each detector is implemented by means of a convolution filter of length D equal to the dimension of a feature vector, D being a strictly positive integer.
  • One objective of training the detection model according to the invention is to learn the coefficients of the detector filters k (1) , ... k (p) so that each detector is configured to detect a part of an object.
  • An activation layer 104 is added at the output of the detection layer 102 in order to generate, for each detector, an activation map of dimensions W by H.
  • the activation maps obtained by the detector k (l) applied to the image x are denoted P(k (l) ,x). between 0 and W-1.
  • the activation layer 104 consists in applying an activation function followed by a normalization function.
  • the Act() activation function is a ReLLI linear rectification function or a function derived from this first function such as “Leaky ReLU” or a parametric linear rectification function.
  • the Norm() normalization function can be the Softmax function or the “Softmax with temperature scale” function or the min-max function.
  • An advantage of using these normalization functions is that it aims to normalize the values of the activation map between 0 and 1, so that the sum of the values of the map is equal to 1, the value 1 corresponding to the certain presence of a pattern to be detected.
  • the coefficients of the detectors are, for example, initialized to random values at the start of training.
  • An additional filtering layer 103 is inserted between the activation function and the normalization function in order to filter out values having too low a confidence score. This filtering layer will be explained later.
  • filters at layer 103 are initialized to the identity.
  • An advantage to the implementation of the invention associated with a pre-trained network 101 resides in the small number of parameters to be learned during training. Indeed, the number of parameters is equal to D x p with D typically between 512 and 2048 and p for example around ten detectors. By way of comparison, the pre-trained network generally contains several tens of millions of parameters.
  • the learning of the recurring pattern detection functions k (1) ,...k (p) is carried out under one or more constraints from among the following constraints.
  • a first so-called locality constraint consists in ensuring that each detector is capable of detecting, for each training image, a pattern in a predefined number of attention regions of the image.
  • the locality criterion aims to ensure that each detector is consistently focused on at least one attention region of the image, that is to say that each detector must be focused over the entire duration of the training, on the same regions of the image.
  • a second so-called uniqueness constraint consists in imposing that each of the detectors be focused on a different region of attention of the image. In other words, several detectors must not be dedicated to the same region of attention, and therefore not to the same recurring pattern.
  • a third so-called grouping constraint consists in taking into account the connected aspect of the objects whose parts we wish to detect.
  • the attention regions associated with each detector must be contiguous so as to correspond to a related pattern.
  • Each of the aforementioned constraints is taken into account alone or in combination with one or more others to determine a cost function to be minimized by a gradient descent algorithm which aims to update the coefficients of the detection functions as as training over multiple frames.
  • the locality constraint is translated by the minimization of the cost function (1) so as to find the detector parameters which make it possible to obtain a maximization, on average over all the detectors, of a point of the activation map with coordinates [h,w], for the set of n images of a training base X ent .
  • the locality constraint is relaxed by applying to the activation map a uniform filter whose dimension defines a sub-region of the map.
  • a uniform filter whose dimension defines a sub-region of the map.
  • the uniform filter u is of dimension 3x3
  • the * operator is the convolution operator.
  • This variant has the advantage of allowing activations in a neighborhood (here of 3x3 dimension) of configurable size instead of a single point on the activation map. This prevents the detectors from focusing on discriminating details located between two adjacent feature vectors that represent one and the same part of the object.
  • each point of the filtered activation map G(k (1) ,x) corresponds to an area of dimension equal to the dimension of the uniform filter in the activation map P(k (1) ,x).
  • the cost function of equation (3) does not prevent the system from learning only part of the patterns to be detected, the simplest to detect visually, with several detectors learning the same pattern.
  • the second uniqueness constraint is implemented by ensuring that each feature vector F(x) is not simultaneously highly correlated with multiple convolution filters k (1) .
  • the uniqueness constraint for each part of an object detected by a detector is implemented by ensuring that no position (h,w) of the activation map contains an activation value higher than a predetermined uniqueness threshold t u . This constraint results in the minimization of the following cost function:
  • the function L U (I ) is zero if all the values are lower than the threshold t u for all the training images and it is strictly positive in the opposite case.
  • the uniqueness constraint aims to avoid the appearance of a very high value (greater than the threshold t u ) for a point of the sum of the activation maps.
  • the value of the threshold t u is preferably taken equal to 1.
  • the cumulative activation map S(K,x) is shown with a point 111 which exceeds the threshold t u and corresponding to an almost total overlap of the main attention zones of the detectors k (2 ) and k (p) .
  • the uniqueness constraint makes it possible to avoid the presence of such total overlaps.
  • a third grouping constraint is implemented.
  • the cumulative activation map S(K,x) can be seen as a segmentation mask of an object located in the image. It is assumed that the objects of the training data category are connected, that is to say that they are formed in one piece. With this hypothesis, it is possible to penalize isolated activations during learning.
  • This constraint can be implemented by applying to the cumulative activation map S(K,x) a convolutional filter given by relation (7)
  • the filtered map L ft w (/ x) makes it possible to measure the difference between the cumulative activation value at the point (h,w) and the sum of the activation values surrounding the point (h,w).
  • the clustering constraint can be implemented by ensuring that no position (h,w) of the filtered cumulative activation map ne contains an activation value higher than a predetermined regrouping threshold t p . This constraint results in the minimization of the following cost function:
  • the threshold t p is taken close to 0, for example equal to 0.1.
  • This grouping constraint aims to avoid activations on non-contiguous zones whereas the activation zones of the different detectors must correspond to different parts of the same connected object and must therefore, theoretically, be contiguous.
  • the grouping constraint makes it possible to avoid an activation on the isolated point 112 identified on the filtered map
  • ⁇ u , ⁇ p are positive or null real numbers which are fixed so as to control the relative importance of the three constraints: locality, uniqueness and grouping.
  • the method for determining a confidence score is illustrated by the flowchart of FIG. 2.
  • the first step 201 of the method consists in carrying out the complete training of the model as described in FIG. 1 on a training database corresponding to a class of objects (for example a type of animal or a type of vehicle).
  • a class of objects for example a type of animal or a type of vehicle.
  • step 202 all of the training data are passed through the model of FIG. 1 again, without modifying the parameters of the model.
  • an inference phase of the neural network is executed by propagating the training data from the network input to the output.
  • the maximum of the output values is measured for each input image and a histogram of these data is then calculated for each of the detectors. This histogram is then modeled by a normal distribution with mean pj and variance Oj 2
  • FIG. 3 represents an example of six histograms 301 -306 obtained for six detectors trained on a set of training data consisting of bird images. Each detector is trained to detect a body part of a bird among head/throat (301), wings/body (302), legs (303), belly (304), back/wings ( 305), the head (306).
  • the histograms of FIG. 3 are obtained by measuring on the network already trained the maximum of the outputs of the activation function Act() after detection, in other words, the following function:
  • the histograms obtained correspond to the activation values before application of the normalization function Norm().
  • a confidence measure C(x, i) is determined by calculating the cumulative distribution function associated with the probability law modeling the distribution of the values of Hj(x).
  • N(// £ , ⁇ J £ 2 ) we obtain:
  • the probability law used can also be an asymmetrical normal law modeled by three parameters (position, scale and shape).
  • An advantage is that this allows the modeling to be adapted to asymmetric distributions.
  • the confidence measure ⁇ i depends on three parameters of the model and no longer on two.
  • the confidence measure is represented in FIG. 3 for each of the detectors by the curves 311 to 316. It corresponds to a sigmoid function with values between 0 and 1.
  • the confidence measurement makes it possible to estimate a level of confidence in the part of the object which is detected by a detector.
  • this measurement makes it possible to signal that a detector has been activated for an object or part of an object which may not be visible on the scene, because it is partially hidden, or for an object which does not correspond to the class of objects for which the network has been trained (for example images of cars supplied as input to a network trained to recognize images of birds).
  • the minimum correlation score Sj is determined such that a visibility threshold comprised between 0 and 1.
  • the visibility threshold is fixed independently for each detector, for example, according to a priori knowledge on certain parts of objects to be detected. For example, in the case of bird images, if we consider that the bird's head must always be present in the image, the visibility threshold must be set to a value close to 0.
  • FIG. 4 represents an example of a confidence measurement function with a visibility threshold t Values below the visibility threshold correspond to parts of objects that are not visible.
  • the model of automatic detection of parts of objects can be used on images representing the same categories of objects.
  • the visibility threshold determined at the end of the training is used during execution to filter the activations according to the maximum value at the output of the activation function, in other words H j(x). If Hj(x) is strictly greater than the visibility threshold, it is considered that the object part i is visible in the image x. Otherwise, the activation is filtered (zeroed) by considering that the object part i is not visible because it is partially hidden or because the object does not correspond to the object class for which the network was trained.
  • a layer of filters 103 can be inserted in the trained model between the output of the activation functions (not represented in FIG. 1) and the inputs of the normalization layer 104.
  • This filter is defined by the following function :
  • the value of the confidence score obtained via the measurement (ff £ (x),// £ , ⁇ j £ 2 ) can be output with the detection results in order to provide confidence information on the result obtained.
  • a visualization step is added which consists in converting the activation map produced at the output of the activation layer 104 into a location map of the parts of objects in the image.
  • one possible method is to calculate the pixels of the visualization map using the following formula:
  • the function M can designate for example an integrated gradient function or “Integrated gradients” as described in the reference “Mukund Sundararajan et al, “Axiomatic attribution for deep networks, Proceedings of the 34th international conference on machine learning, pages 3319-3328,2017”, or a smoothed gradient function SmoothGrad, as defined in “Smilkov et al, Smoothgrad: removing noise by adding noise. ArXiv, abs/1706.03825, 2017”.
  • This method has the following advantage. Instead of calculating gradients only at the positions that maximize the activations in the maps this method allows to include contributions other positions and to determine more precisely the pixels of the matrix x involved in the detected part of the object.
  • N w (x) a binary mask specific to each detector by applying a Gaussian filter, for example of dimension 5 ⁇ 5 followed by a min-max normalization and d a suppression of values below a predetermined threshold t m , for example equal to 0.4.
  • a Gaussian filter for example of dimension 5 ⁇ 5 followed by a min-max normalization and d a suppression of values below a predetermined threshold t m , for example equal to 0.4.
  • FIG. 5 represents an example of results obtained using the automatic detection model trained by means of the method according to the invention.
  • Figure 5 illustrates the object part detection results for bird images from the CUB200 database. Each row corresponds to a different image (five images in all) and each column to a detector focused on a different region of attention (six detectors in all). The regions of attention correspond to the parts of objects in the example of figure 3.
  • the calculated confidence score is indicated.
  • the visibility threshold is set to 0.1 .
  • the invention can be implemented as a computer program comprising instructions for its execution.
  • the computer program may be recorded on a processor-readable recording medium.
  • Reference to a computer program which, when executed, performs any of the functions previously described, is not limited to an application program running on a single host computer.
  • the terms computer program and software are used herein in a general sense to refer to any type of computer code (e.g., application software, firmware, microcode, or other form of operating instruction). computer) that can be used to program one or more processors to implement aspects of the techniques described herein.
  • the computer means or resources can in particular be distributed (“Cloud computing"), possibly using peer-to-peer technologies.
  • the software code can be executed on any suitable processor (for example, a microprocessor) or core of processor or a set of processors, whether provided in a single computing device or distributed among several computing devices (for example as possibly accessible in the environment of the device)
  • the executable code of each program allowing the device programmable to implement the processes according to the invention, can be stored, for example, in the hard disk or in read only memory.
  • the program or programs can be loaded into one of the storage means of the device before
  • the central unit can control and direct the execution of the instructions or portions of software code of the program or programs according to the invention, instructions which are stored in the hard disk or in the ROM or else in the other elements of aforementioned storage.
  • the invention can be implemented on a computing device based, for example, on an on-board processor.
  • the processor may be a generic processor, a specific processor, an application-specific integrated circuit (also known as an ASIC for "Application-Specific Integrated Circuit") or an array of field-programmable gates (also known as the English name of FPGA for “Field-Programmable Gate Array”).
  • the computing device may use one or more dedicated electronic circuits or a general purpose circuit.
  • the technique of the invention can be implemented on a reprogrammable calculation machine (a processor or a microcontroller for example) executing a program comprising a sequence of instructions, or on a dedicated calculation machine (for example a set of gates such as an FPGA or an ASIC, or any other hardware module).

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)

Abstract

Procédé, mis en œuvre par ordinateur, d'entraînement non supervisé d'un modèle de détection de motifs récurrents dans un ensemble de données, le modèle se composant d'une couche de détection (102) comprenant au moins : • un détecteur de motifs récurrents configuré pour recevoir un ensemble de caractéristiques pertinentes extraites des données et fournir en sortie une carte d'activation constituée d'un ensemble de scores d'activation, • une couche d'activation (104) consistant au moins à normaliser les cartes d'activation, • l'apprentissage de chaque détecteur étant contraint au respect d'un critère de localité consistant à maximiser une région de la carte d'activation.

Description

DESCRIPTION
Titre de l’invention : Procédé d’entrainement non supervisé pour la détection de motifs récurrents
[0001 ] L’invention concerne le domaine technique des méthodes d’apprentissage automatique non supervisées pour la détection de motifs récurrents, notamment des motifs connexes dans une séquence de données.
[0002] Par exemple, l’invention concerne la détection de parties d’objets dans une séquence d’images mais s’applique aussi à d’autres domaines de détection ou reconnaissance, par exemple dans le domaine de l’audio ou du contrôle commande. En particulier, l’invention s’applique par exemple pour détecter des types de voix différents dans un enregistrement audio.
[0003] L’invention entre dans le champ des méthodes d’intelligence artificielle et plus précisément les méthodes de détection automatique non supervisées.
[0004] Avec le développement des techniques d’apprentissage automatique profond ou « deep learning », ces dernières années, les réseaux de neurones convolutifs (CNN) sont rapidement devenus l'épine dorsale de nombreux systèmes de reconnaissance, notamment les systèmes de reconnaissance visuelle. Les réseaux de neurones convolutifs sont des outils très efficaces dans le domaine de la reconnaissance d’objets, cependant ils manipulent des représentations abstraites de l’image, également appelées caractéristiques ou « features » en anglais, qui ne sont pas nécessairement interprétables pour expliquer le processus décisionnel du réseau. Le caractère souvent non interprétable des algorithmes décisionnaires utilisant des réseaux de neurones convolutifs est au cœur des préoccupations internationales, avec à l’échelle du Parlement Européen des demandes fortes pour plus de transparence. Au niveau des systèmes de reconnaissance visuelle, une des pistes explorée consiste en la détection de parties sémantiques des objets à reconnaître et à l’utilisation de ces parties dans un processus explicable aboutissant à la décision finale (ex. le système détecte un piéton car il a détecté au préalable une tête, des bras, des jambes). Ces parties sémantiques représentent des motifs plus « simples » à détecter que l’objet global dont elles font parties, et correspondent à des motifs récurrents dans l’ensemble d’apprentissage.
[0005] Les techniques d’apprentissage machine sont généralement séparées en deux classes : les méthodes supervisées qui nécessitent d’annoter les données d’entraînement, et les méthodes non supervisées qui traitent des données non annotées.
[0006] Les méthodes d’apprentissage machine supervisées présentent l’inconvénient de nécessiter une annotation des données afin de fournir des valeurs de vérité durant l’entraînement, ce qui représente une tâche coûteuse et complexe à mettre en place. Elle nécessite souvent l’appel à des experts pour annoter les données d’entraînement. Par ailleurs, la précision des annotations a un impact direct sur l’entraînement des modèles d’apprentissage supervisés. Ainsi, afin de réduire les coûts d’une telle tâche, il est parfois possible de faire appel à des plateformes de travail collaboratif (« crowdsourcing » en anglais), dont les contributeurs ne sont pas nécessairement experts du domaine, entraînant une perte en qualité des annotations et dégradant les performances de l’entraînement.
[0007] Il existe donc un besoin pour une méthode de détection de motifs récurrents non supervisée permettant à la fois de fournir un outil de pré-annotation automatique (dont un expert pourrait plus rapidement vérifier les résultats) mais constituant également un préalable à des systèmes de reconnaissance explicables.
[0008] La détection de motifs récurrents ou parties d’objets dans une image ou plus généralement dans un ensemble de données est un problème qui a été massivement abordé dans la littérature ces dernières années, en particulier pour des applications de vision assistée par ordinateur impliquant des tâches de reconnaissance fine.
[0009] Il existe principalement trois catégories de méthodes d’apprentissage automatique pour la détection de parties d’objets ou motifs récurrents : des méthodes supervisées, semi supervisées ou non supervisées.
[0010] Les méthodes supervisées présentent l’inconvénient de nécessiter une base de données d’entraînement annotées, l’opération d’annotation étant coûteuse à réaliser comme indiqué ci-dessus. Par ailleurs, la quantité de données d’entraînement nécessaire étant en général très importante, il existe souvent un compromis entre le coût et la qualité des annotations.
[0011 ] Les méthodes semi supervisées ne nécessitent pas d’annoter les données d’entraînement mais requièrent tout de même des informations sur la catégorie des objets à détecter, par exemple une espèce particulière d’oiseau dans le cas où l’objet à détecter concerne des oiseaux. Dans ce cas, les détecteurs de motifs constituent des produits intermédiaires du système et sont optimisés uniquement dans le but de réaliser la tâche finale (par ex. une tâche de classification). Par ailleurs, ces méthodes n'offrent pas de garantie de couverture de l'objet car seules les parties "intéressantes" pour la tâche finale sont détectées.
[0012] Dans le domaine des méthodes d’apprentissage non supervisées appliquées à la détection de parties d’objets dans des images, chaque image est généralement d’abord encodée en un ensemble de caractéristiques ou
« features » en anglais. Ainsi, l’objectif de rechercher des parties d’objets dans l’espace visuel est transformé en un objectif de recherche de motifs récurrents dans le domaine des caractéristiques encodées, cet espace étant vraisemblablement plus robuste aux transformations géométriques.
[0013] Les premières méthodes d’apprentissage non supervisées utilisaient des descripteurs d’images basés sur des histogrammes encodant la couleur ou le gradient (i.e. des éléments saillants tels que des contours) pour extraire des caractéristiques pertinentes de l’image puis appliquaient un algorithme de partitionnement, par exemple du type K moyennes ou Séparateurs à Vaste Marge (SVM). Plus récemment des méthodes de détection non supervisées basées sur des caractéristiques extraites à partir de réseaux de neurones convolutifs profonds ou « deep CNN » en anglais ont été proposées.
[0014] De manière générale, les méthodes de l’art antérieur ne permettent pas d’évaluer la performance des détecteurs de motifs ou parties d’objets de façon indépendante. Au contraire, la performance des algorithmes est évaluée globalement comme un gain de précision sur la tâche finale de classification. Un inconvénient de ces méthodes est qu’elles sont fortement dépendantes du type d’architecture de traitement choisi pour la mise en œuvre du processus de décision. [0015] Par exemple, la publication scientifique « Heliang Zheng, Jianlong Fu, Tao Mei, and Jiebo Luo. Learning Multi-attention Convolutional Neural Network for Fine- Grained Image Recognition. In 2017 IEEE International Conference on Computer Vision (ICCV), pages 5219-5227, Venice, Oct. 2017. IEEE. 1 , 2, 4 » donne un exemple de méthode d’apprentissage non supervisé pour la détection de parties d’objets. La méthode décrite dans cette référence utilise un réseau de neurones convolutifs complété par une couche de filtres convolutifs pour réaliser les détecteurs. Cependant, si ces détecteurs sont initialement entraînés de manière non-supervisée, comme mentionné par les auteurs la méthode nécessite néanmoins de connaître la classe des objets à détecter afin de réaliser un affinage des paramètres des détecteurs après l’entraînement. Elle ne consiste ainsi pas en une méthode réellement non supervisée.
[0016] L’invention propose une nouvelle méthode d’apprentissage non supervisée qui ne nécessite aucune annotation préalable des données ni aucune information sur les catégories d’objets à détecter.
[0017] L’invention permet de construire des détecteurs de parties d’objets comme des sommes pondérées de cartes d’activation en exploitant les caractéristiques d’un réseau de neurones convolutifs profond pré-entrainé. En effet, la plupart des systèmes de reconnaissance visuelle actuels utilisent des réseaux de neurones qui sont pré-entrainés sur des tâches de classification utilisant des millions d’images d’entraînement, et qui sont le fruit d’une décennie d’optimisation par la communauté scientifique. Bien qu’initialement dédiées à une tâche de classification spécifique, les premières couches de ces réseaux peuvent cependant être utilisées afin d’extraire des caractéristiques pertinentes de l’image. Les détecteurs sont entraînés globalement sur l’ensemble des images d’apprentissage et non localement (à l’échelle d’une seule image) comme certaines méthodes de l’art antérieur (Jian Zhang, Runsheng Zhang, Yaping Huang, and Qi Zou. Unsupervised Part Mining for Fine-grained Image Classification, [preprint] ArXiv, abs/1902.09941 , 2019) qui requièrent une phase supplémentaire d’alignement sémantique.
[0018] L’invention est basée sur des fonctions de coût qui sont définies afin d’assurer certaines propriétés de localité, d’unicité ou de regroupement propres à la détection de parties d’objets connexes. [0019] L’invention ne nécessite aucun réglage supplémentaire basée sur la connaissance des classes à détecter ou des catégories d’objets visées. L’invention ne nécessite pas de modifier les paramètres du réseau pré-entrainé servant à l’extraction des caractéristiques de l’image, ce qui permet d’obtenir une convergence rapide durant l’entraînement des détecteurs et de coupler l’invention à différents modèles d’intelligence artificielle pré-entrainés aptes à fournir des caractéristiques pertinentes extraites des données dans une approche « boîte noire ».
[0020] En particulier, le critère de regroupement permet de limiter la détection de parties d’objets non adjacentes entre elles ce qui évite le recours à un filtrage manuel supplémentaire.
[0021] L’invention permet aussi de fournir une mesure de confiance associée à la décision et basée sur la distribution des scores de corrélation sur l’ensemble des données d’entraînement.
[0022] Cette mesure permet notamment de détecter la visibilité d’une partie d’objet.
[0023] L’invention a pour objet un procédé, mis en œuvre par ordinateur, d’entraînement non supervisé d’un modèle de détection de motifs récurrents dans un ensemble de données, le modèle se composant d’une couche de détection comprenant au moins :
• un détecteur de motifs récurrents configuré pour recevoir un ensemble de caractéristiques extraites des données et fournir en sortie une carte d’activation constituée d’un ensemble de scores d’activation, un score d’activation étant caractéristique de l’absence ou la présence d’un motif détecté dans les données par le détecteur.
• une couche d’activation consistant au moins à normaliser les cartes d’activation,
• l’apprentissage des paramètres de chaque détecteur étant contraint au respect d’un critère de localité, au moyen de l’optimisation d’une première fonction de cout Li(K) consistant à maximiser une région de la carte d’activation. [0024] Dans une variante de réalisation, le procédé selon l’invention comprend en outre l’application, à chaque carte d’activation en sortie de la couche d’activation, d’un filtre uniforme de dimension dépendant de celle de ladite région de la carte d’activation.
[0025] Selon une variante de réalisation, la couche de détection comprend plusieurs détecteurs de motifs récurrents et l’apprentissage des paramètres de chaque détecteur est en outre contraint au respect d’un critère d’unicité, au moyen de l’optimisation d’une deuxième fonction de cout LU(IC) consistant à éviter l’activation simultanée de plusieurs détecteurs en un même point de la carte d’activation.
[0026] Selon une variante de réalisation, le critère d’unicité est mis en œuvre en contraignant, lors de l’optimisation de la deuxième fonction de coût LU(IC) , la valeur maximale de la somme en chaque point des cartes d’activation sur l’ensemble des détecteurs à un premier seuil maximal prédéfini.
[0027] Selon une variante de réalisation, la couche de détection comprend plusieurs détecteurs de motifs récurrents et l’apprentissage des paramètres de chaque détecteur est en outre contraint au respect d’un critère de regroupement, au moyen de l’optimisation d’une troisième fonction de cout Lp(IC) , consistant à favoriser l’activation desdits détecteurs sur des zones de la carte d’activation contiguës.
[0028] Selon une variante de réalisation, le critère de regroupement est mis en œuvre en appliquant, lors de l’optimisation de la troisième fonction de cout Lp(IC), un filtre convolutif à la somme des cartes d’activation en sortie de la couche d’activation et en contraignant la valeur maximale du résultat de filtrage à un second seuil maximal prédéfini.
[0029] Selon une variante de réalisation, la couche d’activation implémente une fonction de normalisation, par exemple la fonction Softmax.
[0030] Selon une variante de réalisation, l’ensemble de caractéristiques est obtenu au moyen d’un modèle pré-entrainé sur un ensemble de données d’entraînement.
[0031] Selon une variante de réalisation, le procédé selon l’invention comprend en outre, à l’issue de l’entraînement, pour chaque détecteur, une estimation de la distribution des valeurs maximales des sorties du détecteur et la fixation d’un seuil de confiance dépendant de la fonction de distribution cumulative de ladite distribution.
[0032] L’invention a encore pour objet un procédé, mis en œuvre par ordinateur, de détection de motifs récurrents dans un ensemble de données comprenant la mise en œuvre d’un modèle de détection obtenu par le procédé selon l’invention.
[0033] Selon une variante de réalisation, le procédé de détection de motifs récurrents selon l’invention comprend en outre, pour chaque détecteur de motifs récurrents et pour chaque nouvel ensemble de données reçu, la détermination d’un score de confiance dépendant de ladite fonction de distribution cumulative apprise lors de l’entraînement appliquée audit ensemble de données.
[0034] Selon une variante de réalisation, le procédé de détection de motifs récurrents selon l’invention comprend en outre, pour chaque détecteur de motifs récurrents, l’application d’un filtre aux valeurs de sorties du détecteur qui sont inférieures au seuil de confiance déterminé lors de l’entraînement.
[0035] Selon une variante de réalisation, le procédé de détection de motifs récurrents selon l’invention comprend en outre une étape de conversion de la carte d’activation produite en sortie de la couche d’activation du modèle de détection en une carte de localisation des motifs récurrents.
[0036] Selon une variante de réalisation, les données sont de type images et les caractéristiques extraites des données sont organisées dans un tenseur d’ordre trois.
[0037] Selon une variante de réalisation, les motifs récurrents à détecter sont des parties d’objets connexes dans les images.
[0038] L’invention a encore pour objet un programme d’ordinateur comprenant des instructions de code pour la mise en œuvre de l’invention et un support d’enregistrement lisible par ordinateur sur lequel est enregistré le programme d’ordinateur selon l’invention.
[0039] D’autres caractéristiques et avantages de la présente invention apparaîtront mieux à la lecture de la description qui suit en relation aux dessins annexés suivants. [0040] [Fig. 1] représente un schéma illustrant un procédé, selon l’invention, d’entraînement non supervisé d’un modèle d’apprentissage configuré pour la détection de motifs récurrents, par exemple des parties d’objets dans une séquence d’image,
[0041] [Fig. 2] représente un organigramme d’une variante de réalisation de l’invention permettant la détermination d’un score de confiance de chaque détection,
[0042] [Fig. 3] représente plusieurs exemples d’histogrammes déterminés à l’issue d’un entraînement du modèle pour déterminer le score de confiance,
[0043] [Fig. 4] illustre le calcul du seuil de visibilité d’un détecteur de motifs selon un mode de réalisation de l’invention,
[0044] [Fig. 5] représente un exemple de résultats obtenus à l’aide du modèle de détection automatique entraîné au moyen du procédé selon l’invention.
[0045] La figure 1 schématise un mode de réalisation d’un procédé d’entraînement non supervisé de détecteurs de motifs selon l’invention.
[0046] Dans l’exemple de la figure 1 , les données traitées sont des séquences d’images et l’objectif de la tâche à apprendre n concerne la détection de parties d’objets, par exemple les parties du corps d’un animal (tête, pattes, ailes..). Sans sortir du cadre de l’invention, les données peuvent être d’autres types (images 2D, 3D, issues de capteurs de perception de différents types, données audio, texte, multimedia, radars, ...). De façon générale, l’objectif du procédé est de détecter des motifs récurrents, plus particulièrement des motifs connexes, dans la séquence de données pour une catégorie d’objets.
[0047] Le procédé d’entrainement de la figure 1 est décrit pour le traitement d’une image mais l’entrainement nécessite un ensemble de plusieurs images.
[0048] Sur l’exemple de la figure 1 , le procédé reçoit donc en entrée une image x en deux dimensions. Cette image est fournie en entrée d’un système extracteur de caractéristiques, par exemple un réseau de neurones convolutifs 101 , produisant un ensemble de caractéristiques représentatives de l’entrée x. Afin de limiter la complexité globale de l’entraînement, il est possible d’utiliser des réseaux de neurones déjà pré-entrainés, auquel cas il suffit de retirer un certain nombre de couches de fin du réseau (généralement spécifiques à la tâche pour laquelle ce réseau a été entraîné) afin d’obtenir les caractéristiques de l’image.
[0049] Le réseau de neurones convolutifs 101 a pour fonction d’extraire des caractéristiques pertinentes ou des représentations abstraites permettant de caractériser les informations importantes contenues dans l’image.
[0050] Ainsi, le réseau de neurones 101 fournit en sortie un tenseur d’ordre trois F(x), de dimensions H lignes, W colonnes, dont chaque coordonnée correspond à un vecteur de dimension D contenant les caractéristiques extraites d’une région de l’image. Les dimensions H,W du tenseur sont en général plus petites que les dimensions de l’image d’entrée x puisqu’au fur et à mesure des couches du réseau de neurones convolutifs, la taille des cartes de sorties est réduite, bien que le nombre de canaux (dimension D) augmente.
[0051 ] Par la suite, les indices h,w désignent les coordonnées d’un point ou d’un vecteur dans une carte de dimension H,W ou un tenseur de dimension H,W,D.
[0052] Le réseau de neurones convolutifs 101 peut être remplacé par tout autre algorithme d’apprentissage machine adapté à extraire des caractéristiques pertinentes des données d’entrée.
[0053] Le réseau de neurones convolutifs 101 est complété par une couche de détection 102 comprenant au moins un détecteur de motifs récurrents au sein des caractéristiques extraites des données d’entrée. Sur l’exemple de la figure 1 , un nombre p de détecteurs k(1), ... k(p) est représenté, chaque détecteur est implémenté au moyen d’un filtre de convolution de longueur D égale à la dimension d’un vecteur de caractéristiques, D étant un entier strictement positif.
[0054] Un objectif de l’entraînement du modèle de détection selon l’invention est d’apprendre les coefficients des filtres détecteurs k(1), ... k(p) de manière à ce que chaque détecteur soit configuré pour détecter une partie d’un objet.
[0055] Une couche d’activation 104 est ajoutée en sortie de la couche de détection 102 afin de générer, pour chaque détecteur, une carte d’activation de dimensions W par H. Sur la figure 1 , les cartes d’activation obtenues par le détecteur k(l) appliqué à l’image x sont notées P(k(l),x).Un point d’une carte d’activation a pour coordonnées h et w deux entiers compris respectivement entre 0 et H-1 et entre 0 et W-1 . [0056] La couche d’activation 104 consiste à appliquer une fonction d’activation suivie d’une fonction de normalisation.
[0057] Par exemple la fonction d’activation Act() est une fonction de rectification linéaire ReLLI ou une fonction dérivée de cette première fonction comme « Leaky ReLU » ou une fonction de rectification linéaire paramétrique.
[0058] La fonction de normalisation Norm() peut être la fonction Softmax ou la fonction « Softmax avec échelle de température » ou la fonction min-max.
[0059] Un avantage à l’utilisation de ces fonctions de normalisation est qu’elle vise à normaliser les valeurs de la carte d’activation entre 0 et 1 , de sorte que la somme des valeurs de la carte soit égale à 1 , la valeur 1 correspondant à la présence certaine d’un motif à détecter.
[0060] Les coefficients des détecteurs sont, par exemple, initialisés à des valeurs aléatoires au début de l’entraînement.
[0061] Une couche 103 supplémentaire de filtrage est insérée entre la fonction d’activation et la fonction de normalisation afin de filtrer des valeurs ayant un score de confiance trop faible. Cette couche de filtrage sera explicitée par la suite. Lors de l’entraînement du modèle, les filtres de la couche 103 sont initialisés à l’identité.
[0062] Un avantage à la mise en œuvre de l’invention associée à un réseau pré- entrainé 101 réside dans le faible nombre de paramètres à apprendre lors de l’entraînement. En effet, le nombre de paramètres est égal à D x p avec D typiquement compris entre 512 et 2048 et p par exemple de l’ordre d’une dizaine de détecteurs. A titre de comparaison, le réseau pré-entrainé contient généralement plusieurs dizaine de millions de paramètres.
[0063] L’apprentissage des fonctions de détection de motifs récurrents k(1),... k(p) est réalisé sous une ou plusieurs contraintes parmi les contraintes suivantes.
[0064] Une première contrainte dite de localité consiste à faire en sorte que chaque détecteur soit capable de détecter, pour chaque image d’entraînement, un motif dans un nombre prédéfini de régions d’attention de l’image.
[0065] Autrement dit, le critère de localité vise à assurer que chaque détecteur est focalisé de façon consistante sur au moins une région d’attention de l’image, c’est-à-dire que chaque détecteur doit être focalisé sur toute la durée de l’entrainement, sur les mêmes régions de l’image.
[0066] Une deuxième contrainte dite d’unicité consiste à imposer que chacun des détecteurs soit focalisé sur une région d’attention différente de l’image. Autrement dit plusieurs détecteurs ne doivent pas être dédiés à la même région d’attention, et donc pas au même motif récurrent.
[0067] Une troisième contrainte dite de regroupement consiste à prendre en compte l’aspect connexe des objets dont on souhaite détecter des parties. Ainsi, les régions d’attention associées à chaque détecteur doivent être contiguës de sorte à correspondre à un motif connexe.
[0068] Chacune des contraintes précitées est prise en compte seule ou en combinaison avec une ou plusieurs autres pour déterminer une fonction de coût à minimiser par un algorithme de descente du gradient qui vise à mettre à jour les coefficients des fonctions de détection au fur et à mesure de l’entraînement sur plusieurs images.
[0069] L’apprentissage de l’ensemble des fonctions de détection k(l) de sorte à implémenter la première contrainte de localité peut être traduit comme un problème d’optimisation de la fonction de coût suivante :
[0071] Autrement dit, la contrainte de localité est traduite par la minimisation de la fonction de coût (1 ) de sorte à rechercher les paramètres de détecteur qui permettent d’obtenir une maximisation, en moyenne sur tous les détecteurs, d’un point de la carte d’activation de coordonnées [h,w], pour l’ensemble des n images d’une base d’entraînement Xent.
[0072] Dans une variante de réalisation, la contrainte de localité est relâchée en appliquant à la carte d’activation un filtre uniforme dont la dimension défini une sous-région de la carte. Par exemple, le filtre uniforme u est de dimension 3x3, on obtient alors une carte d’activation filtrée : [0074] L’opérateur * est l’opérateur de convolution.
[0075] La fonction de coût à minimiser devient alors
[0077] Cette variante présente l’avantage d’autoriser des activations dans un voisinage (ici de dimension 3x3) de taille paramétrable au lieu d’un seul point de la carte d’activation. Cela permet d’éviter que les détecteurs ne se focalisent sur des détails discriminants situés entre deux vecteurs de caractéristiques adjacents qui représentent une seule et même partie de l’objet.
[0078] Sur la figure 1 , on a représenté sur la carte d’activation P(k(1),x) du premier détecteur, une zone d’activation 110 avec deux points adjacents ayant la même valeur maximale. Après application du filtre uniforme u, chaque point de la carte d’activation filtrée G(k(1),x) correspond à une zone de dimension égale à la dimension du filtre uniforme dans la carte d’activation P(k(1),x).
[0079] La fonction de coût de l’équation (3) ne permet pas d’éviter que le système n’apprenne qu’une partie des motifs à détecter, les plus simples à détecter visuellement, avec plusieurs détecteurs apprenant le même motif. Afin d’éviter ce scénario, dans une variante de réalisation, la deuxième contrainte d’unicité est implémentée en assurant que chaque vecteur de caractéristiques F(x) n’est pas simultanément hautement corrélé avec plusieurs filtres de convolution k(l).
[0080] Pour cela, on calcule la somme des cartes d’activation via l’équation (4) :
[0082] La contrainte d’unicité de chaque partie d’objet détectée par un détecteur est implémentée en s’assurant qu’aucune position (h,w) de la carte d’activation ne contient une valeur d’activation plus élevée qu’un seuil d’unicité prédéterminé tu. Cette contrainte se traduit par la minimisation de la fonction de coût suivante :
[0084] La fonction LU(I ) est nulle si toutes les valeurs sont inférieures au seuil tu pour toutes les images d’entraînement et elle est strictement positive dans le cas contraire. [0085] La contrainte d’unicité vise à éviter l’apparition d’une valeur très élevée (supérieure au seuil tu) pour un point de la somme des cartes d’activation. La valeur du seuil tu est préférablement prise égale à 1 . Ainsi, on empêche que la somme des valeurs d’activation des différents détecteurs en un même point soit supérieure à la valeur maximale d’activation qui vaut 1 du fait de la normalisation par la fonction de normalisation. Ainsi, on interdit un recouvrement total entre les activations de deux détecteurs distincts.
[0086] L’intérêt d’une contrainte additive basée sur la carte d’activation cumulée sur l’ensemble des détecteurs, plutôt qu’une contrainte multiplicative comme décrit dans la publication « Heliang Zheng, Jianlong Fu, Tao Mei, and Jiebo Luo. Learning Multi-attention Convolutional Neural Network for Fine- Grained Image Recognition. In 2017 IEEE International Conference on Computer Vision (ICCV), pages 5219-5227, Venice, Oct. 2017. IEEE. 1 , 2, 4 », est que cela permet d’autoriser un recouvrement partiel de plusieurs parties.
[0087] Sur la figure 1 , la carte d’activation cumulée S(K,x) est représentée avec un point 111 qui dépasse le seuil tu et correspondant à un recouvrement quasi total des zones principales d’attention des détecteurs k(2) et k(p). La contrainte d’unicité permet d’éviter la présence de tels recouvrements totaux.
[0088] Dans une variante de réalisation, une troisième contrainte de regroupement est implémentée. La carte d’activation cumulée S(K,x) peut être vue comme un masque de segmentation d’un objet situé dans l’image. On prend comme hypothèse que les objets de la catégorie des données d’entraînement sont connexes, c’est-à-dire qu’ils sont formés d’un seul tenant. Avec cette hypothèse, il est possible de pénaliser, lors de l’apprentissage, les activations isolées.
[0089] Cette contrainte peut être implémentée en appliquant à la carte d’activation cumulée S(K,x) un filtre convolutif donné par la relation (7)
[0091 ] La carte filtrée Lft w(/ x) permet de mesurer la différence entre la valeur d’activation cumulée au point (h,w) et la somme des valeurs d’activations entourant le point (h,w). [0092] De façon similaire à l’équation (5), la contrainte de regroupement peut être implémentée en assurant qu’aucune position (h,w) de la carte d’activation cumulée filtrée ne contient une valeur d’activation plus élevée qu’un seuil de regroupement prédéterminé tp. Cette contrainte se traduit par la minimisation de la fonction de coût suivante :
[0094] De préférence, le seuil tp est pris proche de 0, par exemple égal 0.1 .
[0095] Cette contrainte de regroupement vise à éviter des activations sur des zones non contiguës alors que les zones d’activation des différents détecteurs doivent correspondre à différentes parties d’un même objet connexe et doivent donc, théoriquement, être contiguës.
[0096] Sur l’exemple de la figure 1 , la contrainte de regroupement permet d’éviter une activation sur le point isolé 112 identifié sur la carte filtrée
[0097] Ainsi, la fonction de coût globale utilisée pour entraîner le modèle de détection décrit à la figure 1 et apprendre les coefficients des fonctions de détection par l’intermédiaire d’un algorithme de descente du gradient, est donnée par la relation (9) :
[0099] Les paramètres Àu, Àp sont des nombres réels positifs ou nuis qui sont fixés de sorte à contrôler l’importance relative des trois contraintes : localité, unicité et regroupement.
[0100] Les coefficients des fonctions de détection k(l) sont mis à jour en minimisant la fonction de coût de l’équation (9) au moyen d’un algorithme de descente du gradient, de façon itérative sur l’ensemble des images de la base d’entraînement.
[0101 ] A l’issue de l’entraînement, on obtient p fonctions de convolutions k(l) qui correspondent aux détecteurs aptes à détecter chacun une partie d’un même objet appartenant à une classe d’objets donnée.
[0102] On décrit à présent une variante de réalisation de l’invention qui consiste à déterminer un score de confiance ainsi qu’un filtre automatique 103 de détection de visibilité pour chaque image traitée par le modèle de détection entraîné selon le procédé décrit précédemment.
[0103] Le procédé de détermination d’un score de confiance, selon un mode de réalisation de l’invention, est illustré par l’organigramme de la figure 2.
[0104] La première étape 201 du procédé consiste à réaliser l’entraînement complet du modèle tel que décrit à la figure 1 sur une base de données d’entraînement correspondant à une classe d’objets (par exemple un type d’animal ou un type de véhicule).
[0105] A l’étape 202, on refait passer l’ensemble des données d’entraînement dans le modèle de la figure 1 , sans modifier les paramètres du modèle. Autrement dit, on exécute une phase d’inférence du réseau de neurones en propageant les données d’entraînement de l’entrée du réseau vers la sortie. En sortie des détecteurs k(l) et après application de la fonction d’activation, on mesure le maximum des valeurs de sortie pour chaque image d’entrée et on calcule ensuite un histogramme de ces données pour chacun des détecteurs. Cet histogramme est ensuite modélisé par une distribution normale de moyenne pj et de variance Oj2
[0106] La figure 3 représente un exemple de six histogrammes 301 -306 obtenus pour six détecteurs entraînes sur un ensemble de données d’entraînement constituées d’images d’oiseaux. Chaque détecteur est entraîné à détecter une partie du corps d’un oiseau parmi la tête/gorge (301 ), les ailes/le corps (302), les pattes (303), le ventre (304), le dos/les ailes (305), la tête (306).
[0107] Les histogrammes de la figure 3 sont obtenus en mesurant sur le réseau déjà entraîné le maximum des sorties de la fonction d’activation Act() après détection, autrement dit, la fonction suivante :
[0109] Les histogrammes obtenus correspondent aux valeurs d’activation avant application de la fonction de normalisation Norm().
[0110] Ces distributions peuvent être modélisées par des lois de probabilité, par exemple une loi de distribution normale N(/z£, o ) de moyenne pj et de variance o2 dont les paramètres sont déterminés à l’étape 203 à partir des histogrammes 301 -306.
[0111 ] A l’étape 204, on détermine une mesure de confiance C(x, i)en calculant la fonction de distribution cumulative associée à la loi de probabilité modélisant la distribution des valeurs de Hj(x). Dans le cas d’une modélisation par une loi normale N(//£, <J£ 2), on obtient :
[0113] Sans sortir du cadre de l’invention, la loi de probabilité utilisée peut être aussi une loi normale asymétrique modélisée par trois paramètres (position, échelle et forme). Un avantage est que cela permet d’adapter la modélisation à des distributions asymétriques. Dans ce cas, la mesure de confiance <i dépend de trois paramètres du modèle et non plus de deux.
[0114] La mesure de confiance est représentée sur la figure 3 pour chacun des détecteurs par les courbes 311 à 316. Elle correspond à une fonction sigmoïde à valeurs entre 0 et 1 .
[0115] La mesure de confiance permet d’estimer un niveau de confiance dans la partie d’objet qui est détectée par un détecteur. En particulier, cette mesure permet de signaler qu’un détecteur s’est activé pour un objet ou une partie d’objet qui n’est peut-être pas visible sur la scène, car cachée partiellement ou encore pour un objet qui ne correspond pas à la classe d’objets pour laquelle le réseau a été entraîné (par exemple des images de voitures fournies en entrée d’un réseau entraîné à reconnaître des images d’oiseaux).
[0116] Pour cela à l’étape 205, on détermine tout d’abord, pour chaque détecteur, le score minimum de corrélation Sj tel que un seuil de visibilité compris entre 0 et 1. Le seuil de visibilité est fixé indépendamment pour chaque détecteur, par exemple, en fonction d’une connaissance a priori sur certaines parties d’objets à détecter. Par exemple, dans le cas d’images d’oiseaux, si on considère que la tête de l’oiseau doit toujours être présente dans l’image, le seuil de visibilité doit être fixé à une valeur proche de 0. [0117] La figure 4 représente un exemple de fonction de mesure de confiance avec un seuil de visibilité t Les valeurs inférieures au seuil de visibilité correspondent à des parties d’objets non visibles.
[0118] Une fois que l’entraînement est réalisé et le seuil de visibilité fixé pour chaque détecteur, le modèle de détection automatique de parties d’objets, non supervisé, peut être utilisé sur des images représentant les mêmes catégories d’objets.
[0119] Le seuil de visibilité déterminé à l’issue de l’entraînement est utilisé durant l’exécution pour filtrer les activations en fonction de la valeur maximale en sortie de la fonction d’activation, autrement dit H j(x). Si Hj(x) est strictement supérieure au seuil de visibilité, on considère que la partie d’objet i est visible dans l’image x. Dans le cas contraire, l’activation est filtrée (mise à zéro) en considérant que la partie d’objet i n’est pas visible car elle est masquée partiellement ou parce que l’objet ne correspond pas à la classe d’objets pour laquelle le réseau a été entraîné.
[0120] Ainsi, une couche de filtres 103 peut être insérée au modèle entraîné entre la sortie des fonctions d’activation (non représentée à la figure 1 ) et les entrées de la couche de normalisation 104. Ce filtre est défini par la fonction suivante :
[0121 ] i]/® (T) = T si maxh w T > Sj et [0]HxW sinon, T étant une matrice de valeurs de dimension H par W.
[0122] En parallèle, la valeur du score de confiance obtenue via la mesure (ff£(x),//£, <j£ 2) peut être fournie en sortie avec les résultats de détection afin d’apporter une information de confiance sur le résultat obtenu.
[0123] Dans un mode de réalisation particulier de l’invention, une étape de visualisation est ajoutée qui consiste à convertir la carte d’activation produite en sortie de la couche d’activation 104 en une carte de localisation des parties d’objets dans l’image. Pour cela, une méthode possible consiste à calculer les pixels de la carte de visualisation au moyen de la formule suivante :
[0125] La fonction M peut désigner par exemple une fonction de gradient intégré ou « Integrated gradients » telle que décrite dans la référence « Mukund Sundararajan et al, « Axiomatic attribution for deep networks, Proceedings of the 34th international conference on machine learning, pages 3319-3328,2017 », ou bien une fonction de gradients lissés SmoothGrad, telle que définie dans « Smilkov et al, Smoothgrad: removing noise by adding noise. ArXiv, abs/1706.03825, 2017 ».
[0126] Cette méthode présente l’avantage suivant. Au lieu de calculer des gradients uniquement aux positions qui maximisent les activations dans les cartes cette méthode permet d’inclure des contributions d’autres positions et de déterminer plus précisément les pixels de la matrice x impliqués dans la partie d’objet détectée.
[0127] En option, il est possible d’appliquer à l’image obtenue Nw(x) un masque binaire propre à chaque détecteur en appliquant un filtre Gaussien, par exemple de dimension 5x5 suivi d’une normalisation min-max et d’une suppression des valeurs inférieures à un seuil prédéterminé tm, par exemple égal à 0,4.
[0128] La figure 5 représente un exemple de résultats obtenus à l’aide du modèle de détection automatique entraîné au moyen du procédé selon l’invention.
[0129] La figure 5 illustre les résultats de détection de parties d’objet pour des images d’oiseau de la base de données CUB200. Chaque ligne correspondant à une image différente (cinq images en tout) et chaque colonne à un détecteur focalisé sur une région d’attention différente (six détecteurs en tout). Les régions d’attention correspondent aux parties d’objets de l’exemple de la figure 3.
[0130] Pour chaque image, et chaque détecteur, le score de confiance calculé est indiqué. Le seuil de visibilité est fixé à 0.1 . Ainsi, pour les détecteurs n°2 à 5, sur la 5eme image, aucune détection de partie n’est réalisée car le score de confiance associé est trop bas.
[0131] L’invention peut être mise en œuvre en tant que programme d’ordinateur comportant des instructions pour son exécution. Le programme d’ordinateur peut être enregistré sur un support d’enregistrement lisible par un processeur.
[0132] La référence à un programme d'ordinateur qui, lorsqu'il est exécuté, effectue l'une quelconque des fonctions décrites précédemment, ne se limite pas à un programme d'application s'exécutant sur un ordinateur hôte unique. Au contraire, les termes programme d'ordinateur et logiciel sont utilisés ici dans un sens général pour faire référence à tout type de code informatique (par exemple, un logiciel d'application, un micro logiciel, un microcode, ou toute autre forme d'instruction d'ordinateur) qui peut être utilisé pour programmer un ou plusieurs processeurs pour mettre en œuvre des aspects des techniques décrites ici. Les moyens ou ressources informatiques peuvent notamment être distribués ("Cloud computing'), éventuellement selon des technologies de pair-à-pair. Le code logiciel peut être exécuté sur n'importe quel processeur approprié (par exemple, un microprocesseur) ou cœur de processeur ou un ensemble de processeurs, qu'ils soient prévus dans un dispositif de calcul unique ou répartis entre plusieurs dispositifs de calcul (par exemple tels qu’éventuellement accessibles dans l’environnement du dispositif). Le code exécutable de chaque programme permettant au dispositif programmable de mettre en œuvre les processus selon l'invention, peut être stocké, par exemple, dans le disque dur ou en mémoire morte. De manière générale, le ou les programmes pourront être chargés dans un des moyens de stockage du dispositif avant d'être exécutés. L'unité centrale peut commander et diriger l'exécution des instructions ou portions de code logiciel du ou des programmes selon l'invention, instructions qui sont stockées dans le disque dur ou dans la mémoire morte ou bien dans les autres éléments de stockage précités.
[0133] L’invention peut être implémentée sur un dispositif de calcul basé, par exemple, sur un processeur embarqué. Le processeur peut être un processeur générique, un processeur spécifique, un circuit intégré propre à une application (connu aussi sous le nom anglais d’ASIC pour « Application-Specific Integrated Circuit ») ou un réseau de portes programmables in situ (connu aussi sous le nom anglais de FPGA pour « Field-Programmable Gate Array »). Le dispositif de calcul peut utiliser un ou plusieurs circuits électroniques dédiés ou un circuit à usage général. La technique de l'invention peut se réaliser sur une machine de calcul reprogrammable (un processeur ou un micro-contrôleur par exemple) exécutant un programme comprenant une séquence d'instructions, ou sur une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel).

Claims

REVENDICATIONS Procédé, mis en œuvre par ordinateur, d’entraînement non supervisé d’un modèle de détection de motifs récurrents dans un ensemble de données de type images, audio ou contrôle commande, le modèle se composant d’une couche de détection (102) comprenant au moins :
• un détecteur de motifs récurrents configuré pour recevoir un ensemble de caractéristiques extraites des données et fournir en sortie une carte d’activation constituée d’un ensemble de scores d’activation, un score d’activation étant caractéristique de l’absence ou la présence d’un motif détecté dans les données par le détecteur.
• une couche d’activation (104) consistant au moins à normaliser les cartes d’activation,
• l’apprentissage des paramètres de chaque détecteur étant contraint au respect d’un critère de localité, au moyen de l’optimisation d’une première fonction de cout Li(K) consistant à maximiser une région de la carte d’activation. Procédé d’entraînement non supervisé d’un modèle de détection selon la revendication 1 , comprenant en outre l’application, à chaque carte d’activation en sortie de la couche d’activation, d’un filtre uniforme de dimension dépendant de celle de ladite région de la carte d’activation. Procédé d’entraînement non supervisé d’un modèle de détection selon l’une quelconque des revendications précédentes dans lequel la couche de détection (102) comprend plusieurs détecteurs de motifs récurrents et l’apprentissage des paramètres de chaque détecteur est en outre contraint au respect d’un critère d’unicité, au moyen de l’optimisation d’une deuxième fonction de cout LU(IC) consistant à éviter l’activation simultanée de plusieurs détecteurs en un même point de la carte d’activation. Procédé d’entraînement non supervisé d’un modèle de détection selon la revendication 3 dans lequel le critère d’unicité est mis en œuvre en contraignant, lors de l’optimisation de la deuxième fonction de coût LU(I ) , la valeur maximale de la somme en chaque point des cartes d’activation sur l’ensemble des détecteurs à un premier seuil maximal prédéfini . Procédé d’entraînement non supervisé d’un modèle de détection selon l’une quelconque des revendications précédentes dans lequel la couche de détection comprend plusieurs détecteurs de motifs récurrents et l’apprentissage des paramètres de chaque détecteur est en outre contraint au respect d’un critère de regroupement, au moyen de l’optimisation d’une troisième fonction de cout Lp(I ) consistant à favoriser l’activation desdits détecteurs sur des zones de la carte d’activation contiguës. Procédé d’entraînement non supervisé d’un modèle de détection selon la revendication 5 dans lequel le critère de regroupement est mis en œuvre en appliquant, lors de l’optimisation de la troisième fonction de cout Lp(I ), un filtre convolutif à la somme des cartes d’activation en sortie de la couche d’activation et en contraignant la valeur maximale du résultat de filtrage à un second seuil maximal prédéfini. Procédé d’entraînement non supervisé d’un modèle de détection selon l’une quelconque des revendications précédentes dans lequel la couche d’activation implémente une fonction de normalisation, par exemple la fonction Softmax. Procédé d’entraînement non supervisé d’un modèle de détection selon l’une quelconque des revendications précédentes dans lequel l’ensemble de caractéristiques est obtenu au moyen d’un modèle pré-entrainé (101 ) sur un ensemble de données d’entraînement. Procédé d’entraînement non supervisé d’un modèle de détection selon l’une quelconque des revendications précédentes comprenant en outre, à l’issue de l’entraînement, pour chaque détecteur, une estimation (202) de la distribution des valeurs maximales des sorties du détecteur et la fixation d’un seuil de confiance (205) dépendant de la fonction de distribution cumulative de ladite distribution. Procédé, mis en œuvre par ordinateur, de détection de motifs récurrents dans un ensemble de données comprenant la mise en œuvre d’un modèle de détection obtenu par le procédé selon l’une quelconque des revendications 1 à 9. Procédé de détection de motifs récurrents selon la revendication 10 en combinaison avec la revendication 9 comprenant en outre, pour chaque détecteur de motifs récurrents et pour chaque nouvel ensemble de données reçu, la détermination d’un score de confiance dépendant de ladite fonction de distribution cumulative apprise lors de l’entraînement appliquée audit ensemble de données. Procédé de détection de motifs récurrents selon la revendication 11 comprenant en outre, pour chaque détecteur de motifs récurrents, l’application d’un filtre (103) aux valeurs de sorties du détecteur qui sont inférieures au seuil de confiance déterminé lors de l’entraînement. Procédé de détection de motifs récurrents selon l’une quelconque des revendications 11 ou 12 comprenant en outre une étape de conversion de la carte d’activation produite en sortie de la couche d’activation du modèle de détection en une carte de localisation des motifs récurrents. Procédé selon l’une quelconque des revendications 1 à 13 dans lequel les données sont de type images et les caractéristiques extraites des données sont organisées dans un tenseur d’ordre trois. Procédé selon la revendication 14 dans lequel les motifs récurrents à détecter sont des parties d’objets connexes dans les images. Programme d’ordinateur comprenant des instructions de code pour la mise en œuvre des procédés selon l’une quelconque des revendications 1 à 15, lorsque ledit programme est exécuté sur un ordinateur. Support d’enregistrement lisible par ordinateur sur lequel est enregistré le programme d’ordinateur selon la revendication 16.
EP23702180.3A 2022-02-08 2023-02-01 Procédé d'entrainement non supervisé pour la détection de motifs récurrents Pending EP4476696A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2201090A FR3132586B1 (fr) 2022-02-08 2022-02-08 Procédé d’entrainement non supervisé pour la détection de motifs récurrents
PCT/EP2023/052419 WO2023151999A1 (fr) 2022-02-08 2023-02-01 Procédé d'entrainement non supervisé pour la détection de motifs récurrents

Publications (1)

Publication Number Publication Date
EP4476696A1 true EP4476696A1 (fr) 2024-12-18

Family

ID=82019702

Family Applications (1)

Application Number Title Priority Date Filing Date
EP23702180.3A Pending EP4476696A1 (fr) 2022-02-08 2023-02-01 Procédé d'entrainement non supervisé pour la détection de motifs récurrents

Country Status (4)

Country Link
US (1) US20250148288A1 (fr)
EP (1) EP4476696A1 (fr)
FR (1) FR3132586B1 (fr)
WO (1) WO2023151999A1 (fr)

Also Published As

Publication number Publication date
FR3132586B1 (fr) 2024-08-02
FR3132586A1 (fr) 2023-08-11
US20250148288A1 (en) 2025-05-08
WO2023151999A1 (fr) 2023-08-17

Similar Documents

Publication Publication Date Title
US9830529B2 (en) End-to-end saliency mapping via probability distribution prediction
US11663840B2 (en) Method and system for removing noise in documents for image processing
WO2019091787A1 (fr) Procédé d&#39;estimation de pose d&#39;une caméra dans le référentiel d&#39;une scène tridimensionnelle, dispositif, système de réalite augmentée et programme d&#39;ordinateur associé
US20200320737A1 (en) Method and device for determining whether a hand cooperates with a manual steering element of a vehicle
WO2018185104A1 (fr) Procede d&#39;estimation de pose, dispositif, systeme et programme d&#39;ordinateur associes
EP3588301A1 (fr) Determination automatique et auto-optimisee des parametres d&#39;execution d&#39;une application logicielle sur une plateforme de traitement de l&#39;information
EP3857512A1 (fr) Procede, programme d&#39;ordinateur et systeme de detection et localisation d&#39;objet dans une scene tridimensionnelle
EP3633552A1 (fr) Procédés d&#39;apprentissage de paramètres d&#39;un réseau de neurones à convolution et de détection d&#39;éléments d&#39;intérêt visibles dans une image
EP4099228A1 (fr) Apprentissage automatique sans annotation ameliore par regroupements adaptatifs en ensemble ouvert de classes
EP4632689A1 (fr) Methode d&#39;entrainement d&#39;un modele d&#39;apprentissage machine pour la decouverte d&#39;objets dans une sequence d&#39;images
Wang et al. Snow removal for LiDAR point clouds with spatio-temporal conditional random fields
Mbani et al. An automated image-based workflow for detecting megabenthic fauna in optical images with examples from the Clarion–Clipperton Zone
Rehman et al. Efficient coarser‐to‐fine holistic traffic sign detection for occlusion handling
FR3112413A1 (fr) Dispositif électronique et procédé de traitement de données à base de réseaux génératifs inversibles, système électronique de détection et programme d’ordinateur associés
Kattakinda et al. Invariant learning via diffusion dreamed distribution shifts
EP4476696A1 (fr) Procédé d&#39;entrainement non supervisé pour la détection de motifs récurrents
Wang et al. Bayesian denoising hashing for robust image retrieval
EP4191530A1 (fr) Procédé de localisation et cartographie simultanées intégrant un masquage temporel auto-supervisé et modèle d&#39;apprentissage automatique pour générer un tel masquage
WO2020249719A1 (fr) Procede et systeme de fusion d&#39;informations
Gouizi et al. Nested-Net: a deep nested network for background subtraction
CN118115932A (zh) 图像回归器训练方法与相关方法、装置、设备及介质
FR3064069B1 (fr) Controle non destructif de pieces aeronautiques par un systeme de radiographie
da Silva et al. HiSkew: a novel histogram skewness classification applied to face anti-spoofing
EP4390876A1 (fr) Procédé d&#39;annotation de pistes de suivi d&#39;individus dans une séquence d&#39;images
Thejashwini et al. Enhancing Signature Detection from Scanned Documents Using Hybrid Detection Model and Post-processing

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20240723

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)