FR 3157955 A1 20250704 FR 2315517 A 20231230 Procédé d’apprentissage continu pour réseau de neurones de biométrie par comparaison faciale Un procédé d’apprentissage continu pour réseau de neurones de biométrie par comparaison faciale comprend les opérations suivantes : a) recevoir un réseau de neurones de biométrie par comparaison faciale déjà entraîné, b) séparer le réseau de neurones de l’opération a) en un bloc de caractérisation, et un bloc de sortie, c) séparer le bloc de caractérisation en un bloc d’extraction, et un bloc d’adaptation, d) recevoir deux jeux distincts de données d’entraînement formatées comme les entrées du réseaux de neurones de l’opération a), e) fournir le deuxième jeu au bloc d’extraction (230) et en tirer un troisième jeu, et f) entraîner le réseau de neurones de l’opération a) en figeant le bloc d’extraction (230) en utilisant le premier jeu de données avec le bloc d’extraction (230) figé, et en utilisant le troisième jeu en le fournissant directement au bloc d’adaptation. Fig.1 Procédé d’apprentissage continu pour réseau de neurones de biométrie par comparaison faciale L’invention concerne le domaine de l’identification et de l’authentification, et en particulier le domaine de la biométrie par comparaison faciale. Le principe de ces applications est d’enregistrer ou de traiter en temps réel une vidéo selfie d’un utilisateur, devant son ordinateur ou son téléphone portable, qui est en train d’effectuer une démarche d’authentification ou de vérification d’identité. Cette vidéo est analysée par des algorithmes et/ou des opérateurs humains dont le rôle est d’authentifier l’utilisateur, ou encore valider si l’utilisateur correspond bien à un document d’identité fourni dans un processus d’identification à distance. La dernière décennie a vu une évolution significative dans le domaine de l'apprentissage profond et une augmentation de la disponibilité d'ensembles de données de référence permettant à la communauté d'entraîner des systèmes plus complexes et d'atteindre des performances de pointe. Le domaine de la vision par ordinateur appliquée aux images faciales (ou de visage) a bénéficié de ce développement rapide et a facilité l'adoption de techniques d'apprentissage profond dans la biométrie faciale (par exemple, reconnaissance faciale, détection du vivant). Ces techniques modernes excellent dans l'apprentissage de modèles puissants à partir d'ensembles de données fixes et d'environnements stationnaires, et dépassent régulièrement les capacités humaines. Cependant, ces modèles ne parviennent pas à d'émuler le processus d'apprentissage humain, qui est efficace, robuste et capable d'apprendre de manière incrémentale à partir d'expériences séquentielles dans un monde non stationnaire. Pour adapter les réseaux neuronaux à un environnement en constante évolution, deux options sont possibles : - Réentraînement : mise à jour des ensembles de données utilisés pendant l’entraînement en ajoutant les nouvelles données et reprise de l’entraînement à zéro sur les ensembles de données mis à jour. - Apprentissage continu : mise à jour des ensembles de données utilisés pendant l’entraînement en ajoutant de nouvelles données et en affinant les réseaux de neurones existants sur les ensembles de données mis à jour. Ces techniques, si elles sont utilisées correctement, ont tendance à fonctionner et permettent de réaliser un apprentissage tout au long de la vie. Cependant, elles nécessitent l'accès à des ensembles de données ayant la même nature que ceux sur lesquels les réseaux neuronaux existants ont été entraînés, ce qui est impossible dans la pratique. L’invention vient améliorer la situation. À cet effet, elle propose un procédé d’apprentissage continu pour réseau de neurones de biométrie par comparaison faciale comprenant les opérations suivantes : a) recevoir un réseau de neurones de biométrie par comparaison faciale déjà entraîné, b) séparer le réseau de neurones de l’opération a) en une pluralité de couches consécutives à partir de la première couche définissant un bloc de caractérisation, et une ou plusieurs couches entièrement connectées définissant un bloc de sortie, c) séparer le bloc de caractérisation en un bloc d’extraction comprenant un nombre choisie de couches consécutives à partir de la première couche du bloc de caractérisation, et un bloc d’adaptation comprenant les autres couches du bloc de caractérisation, d) recevoir deux jeux distincts de données d’entraînement formatées comme les entrées du réseaux de neurones de l’opération a), le premier jeu comprenant des données non-confidentielles, et le deuxième jeu comprenant des données confidentielles, e) fournir le deuxième jeu au bloc d’extraction et en tirer un troisième jeu, et f) entraîner le réseau de neurones de l’opération a) en figeant le bloc d’extraction en utilisant le premier jeu de données avec le bloc d’extraction figé, et en utilisant le troisième jeu en le fournissant directement au bloc d’adaptation. Ce procédé est particulièrement avantageux car il permet d’entraîner en continu un réseau de neurones déjà entraîné. De plus, ce dispositif permet de rendre confidentielles une partie des données, en ne gardant que leurs caractéristiques telles que vues par le bloc d’extraction. Selon divers modes de réalisation, l’invention peut présenter une ou plusieurs des caractéristiques suivantes : - l'opération c) comprend le choix de la taille du bloc d'extraction en fonction de la somme pondérée d'un score de distinction AUC, d'un score de complexité et d'un score d'espace disque optionnel, - le score de distinction est un score d'aire sous la courbe, et le score de complexité est tiré du nombre de paramètres dans le bloc d'extraction, - la somme pondérée est calculée comme (4*AUC+2*Score de Complexité)/6, - la somme pondérée est calculée comme (4*AUC+2*Score de Complexité+0,5*Score d'espace disque)/6,5, - l'opération c) comprend le choix de la taille du bloc d'extraction en fonction de la somme pondérée d'un score de normalisation, d'un score de distinction, d'un score de complexité et d'un score d'espace disque optionnel, - le score de normalisation est la surface d'application des couches de normalisation, et le score de distinction est un score de type BPCER, - la somme pondérée est calculée comme (Score de normalisation+4*Score de distinction+2*Score de Complexité)/7, et - la somme pondérée est calculée comme (Score de normalisation+4*Score de distinction+2*Score de Complexité+Score d'espace disque)/8. L’invention concerne également un programme informatique comprenant des instructions pour exécuter le procédé selon l'invention, un support de stockage de données sur lequel est enregistré un tel programme informatique et un système informatique comprenant un processeur couplé à une mémoire, la mémoire ayant enregistré un tel programme informatique. D’autres caractéristiques et avantages de l’invention apparaîtront mieux à la lecture de la description qui suit, tirée d’exemples donnés à titre illustratif et non limitatif, tirés des dessins sur lesquels : - la FIG. 1 représente un diagramme schématique d’un procédé selon l’invention mis en œuvre sur un réseau de neurones de biométrie par comparaison faciale déjà entraîné, et - la FIG. 2 représente un exemple de réseau de neurones faisant l’objet du procédé de la FIG. 1 . Les dessins et la description ci-après contiennent, pour l'essentiel, des éléments de caractère certain. Ils pourront donc non seulement servir à mieux faire comprendre la présente invention, mais aussi contribuer à sa définition, le cas échéant. La FIG. 1 représente un diagramme schématique d’un procédé selon l’invention mis en œuvre sur un réseau de neurones de biométrie par comparaison faciale déjà entraîné. Dans une première étape 100, le réseau de neurones de biométrie par comparaison faciale déjà entraîné est reçu. De manière connue, ce type de réseau de neurones est un réseau de neurones à apprentissage profond (" deep neural network " en anglais), par exemple de la famille des CNN (" convolutional neural network " en anglais ou réseau de neurones convolutif), des RNN (" recurrent neural network " en anglais ou réseau de neurones récurrents), des RCNN (" recurrent convolutional neural network " en anglais ou réseau de neurones convolutif récurrent), etc. Une caractéristique commune à toutes ces architectures est la réalisation du réseau en deux portions : - un bloc de caractérisation des vecteurs d'entrée, qui extrait les caractéristiques via une succession de couches qui peuvent être de divers types tels que convolutive, de pooling (ou " pooling layer " en anglais), de correction (par exemple ReLU, sigmoïde, etc.) , et - un bloc de sortie comprenant une ou plusieurs couches entièrement connectées (ou " fully connected layer " en anglais), c’est-à-dire dont les neurones ont des connexions vers toutes les sorties de la couche précédente. D'une manière générale, on considère que la portion de caractéristique extrait toutes les caractéristiques du vecteur d'entrée selon le réseau, tandis que la couche de sortie réalise le raisonnement de haut niveau du réseau de neurones. En variante, ces portions sont également connues sous la dénomination " backbone " pour la portion de caractérisation, et " head " pour la portion de sortie. Cette distinction est importante car l'invention s'applique en travaillant sur le backbone. En effet, lorsqu'un réseau de neurones a été entraîné, et qu'on souhaite mettre à jour son apprentissage, plusieurs problèmes se posent. Ainsi, l'hétérogénéité des nouvelles données pénalise l’utilisation de l'apprentissage continu par rapport au réentraînement à partir de rien (" retraining from scratch " en anglais), mais en plus se pose le problème du droit d'utiliser de nouvelles données d'entraînement. Ce dernier sujet est particulièrement important dans le cadre des réseaux de neurones de biométrie par comparaison faciale. En effet, toutes les exécutions du réseau de neurones déjà entraîné offrent une source de nouvelles données presque inépuisable. Mais les vecteurs d'entrée de celles-ci, des images ou des flux vidéos biométriques sont par nature très sensibles et ne peuvent pas être utilisés directement. Et lorsque ce ne sont pas les lois protégeant la vie privée qui interdisent d'utiliser ces données, ce sont les gérants de ces réseaux de neurones qui ne veulent pas prendre le risque d'être accusés de ne pas respecter la vie privée de leurs utilisateurs. Pour pouvoir tenir compte du besoin de réaliser de l'apprentissage continu tout en préservant la confidentialité et la vie privée des utilisateurs, la Demanderesse a eu l'idée de décomposer le backbone déjà entraîné de ses réseaux de neurones de biométrie par comparaison faciale en deux parties, comme représenté sur la FIG. 2 . Comme on peut le voir sur la FIG. 2 , un réseau de neurones de biométrie par comparaison faciale 200 comprend un backbone 210 et un head 220. Le backbone ou bloc de caractérisation 210 est lui-même divisé en un bloc d'extraction 230 et un bloc d'adaptation 240. Par définition, le bloc d'extraction 230 comprend les premières couches du bloc de caractéristation 210, à partir de la couche d'entrée, et le bloc d'adaptation 240 comprend le reste des couches du bloc de caractérisation 210. Dans une opération 110, le bloc de caractérisation 210 est séparé en bloc d'extraction 230 et bloc d'adaptation 240. Le bloc d'extraction 230 est ensuite figé dans une opération 120, ce qui signifie que l'apprentissage continu de la FIG. 1 ne changera pas les pondérations et paramètres des couches qui constituent le bloc de caractérisation 230, qui restera donc identique à ce qu'il était dans le réseau de neurones de biométrie par comparaison faciale 200 reçu en entrée. Les données à utiliser pour réaliser l'apprentissage continu mais dont on souhaite préserver la confidentialité sont alors traitées par le bloc d'extraction 230 dans une opération 120. Il en résulte une pluralité de vecteurs confidentialisés, qui sont formattés pour pouvoir être fournis comme entrée au bloc d'adaptation 240, mais qui ne sont plus comparables aux vecteurs d'entrée dont ils ont été tirés. En effet, il est connu que les premières couches des réseaux de neurones profonds affectent très fortement les vecteurs d'entrée, et que les sorties de celles-ci ne permettent pas de faire un lien avec le vecteur d'entrée dont ces sorties sont tirées. Par conséquent, en dimensionnant de manière appropriée le bloc de caractérisation 230, il devient possible de réaliser un apprentissage continu du réseau de neurones de biométrie par comparaison faciale 200 à partir de ces données qui ont été confidentialisées. Ainsi, dans une opération 130, le réseau de neurones de biométrie par comparaison faciale 200 est entraîné à nouveau en laissant le bloc d'extraction 230 figé, et en entraînant le bloc d'adaptation 240 et le head 220. Cela est réalisé en fournissant les vecteurs issus de l'opération 120 directement au bloc d'adaptation 240, et en fournissant des vecteurs d'entrée ne nécessitant pas de confidentialité en entrée au bloc de caractérisation 230. Plus le bloc d'extraction 230 est grand, c’est-à-dire plus le nombre de couches qu'il contient est important, plus la confidentialité des vecteurs d'entrée à confidentialiser est importante, mais au détriment de la qualité de l'apprentissage continu réalisé, puisque le bloc d'extraction 230 est figé. Inversement, il n'est pas souhaitable que le bloc d'extraction 230 soit trop petit afin de préserver la confidentialité. La Demanderesse a donc effectué des recherches afin de caractériser les paramètres qui peuvent lui permettre de dimensionner au mieux la taille du bloc d'extraction 230. Ainsi, dans une première mise en œuvre du procédé selon l'invention, la Demanderesse s'est attachée aux paramètres suivants : - un score de distinction, qui caractérise le modèle. Dans l'exemple décrit ici, il s'agit du score d'aire sous la courbe ("AUC" pour " Area Under the Curve " en anglais). L'AUC est une métrique utilisée pour quantifier la performance d'un modèle de classification binaire. Elle est calculée comme l'aire sous la courbe ROC (pour " Receiver Operating Characteristic " en anglais) qui est une représentation graphique de la capacité d'un modèle à faire la distinction entre des données positives et des données négatives. à distinguer les classes positives et négatives. Un score AUC plus élevé indique une meilleure discrimination, 1,0 représentant une classification parfaite et 0,5 indiquant une supposition aléatoire. - un score de complexité, qui peut être tiré du nombres de paramètres dans le bloc d'extraction 230. Dans l'exemple décrit ici, il s'agit du logarithme en base 10 du nombre de paramètres dans le bloc d'extraction 230. En variante, il pourrait s'agir du logarithme dans une autre base, ou encore d'une autre variante à décroissance de type exponentiel. - un score d'espace disque optionnel. Dans l'exemple décrit ici, c'est la différence entre l'espace disque originellement occupé par les images à confidentialiser et l'espace disque occupé par les vecteurs représentant ces données après qu'elles aient été confidentialisées. Les diverses recherches de la Demanderesse l'ont amenée à considérer que la formule de score composite permettant de déterminer la valeur la plus favorable du nombre de couches pour le bloc d'extraction est obtenue par la formule Score composite = (4*AUC+2*Score de Complexité+0,5*Score d'espace disque)/6,5 Comme mentionné, le score d'espace disque peut être ignoré, ce qui ramène le facteur de normalisation à 6 au lieu de 6,5. Pour démontrer l'efficacité de cet apprentissage continu, la Demanderesse l'a testé sur deux architectures. La première architecture utilise un réseau de type " SwinV2 ", qui est une amélioration du réseau de neurones " Visual Transformer ", en version " Small ", avec comme caractéristiques une taille de fenêtre égale à 7 et une résolution de 224, et une normalisation moyenne avec 25 couches de normalisation. L'article de Liu, Ze, et al. " Swin transformer v2: Scaling up capacity and resolution ", Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, 2022, https://openaccess.thecvf.com/content/CVPR2022/papers/Liu_Swin_Transformer_V2_Scaling_Up_Capacity_and_Resolution_CVPR_2022_paper.pdf décrit ce type de réseau. La deuxième architecture utilise un réseau de type " EfficientNetV2 ", qui est un réseau de neurones convolutifs, en version " Medium ", avec une normalisation élevée avec 110 couches de normalisation. L'article de Tan, Mingxing, and Quoc Le. " Efficientnetv2: Smaller models and faster training ", International conference on machine learning. PMLR, 2021, http://proceedings.mlr.press/v139/tan21a/tan21a.pdf décrit ce type de réseau. Afin de simuler un environnement d'apprentissage continu, le jeu de données d'entraînement a été divisé en deux : 90% pour l'entraînement de base des architectures, et 10% pour former des vecteurs à confidentialiser et réaliser l'apprentissage continu. Après réalisation de l'entraînement initial, l'apprentissage continu a été réalisé avec les paramètres suivants : au moins 50% de couches entraînables en tout, les couches entraînables suivant le bloc d'extraction 230 jusqu'à 50% n'étant modifiées que sur leur normalisation, utilisation de l'optimiseur AdamW avec un taux d'apprentissage de 10 -5 et une taille de bloc de 32, sans opération de dropout (opération visant à prévenir le surapprentissage). L'article de Loshchilov, Ilya et Hutter, Frank " Fixing weight decay regularization in Adam ", 2018, https://openreview.net/pdf?id=rk6qdGgCZ décrit cet optimiseur. Les résultats suivants ont été obtenus : Architecture Configuration (ES = Taille relative du bloc d'extraction) Score AUC Score de complexité Score d'espace disque Score composite EfficientNetV2 ES = 20% Pas de Dropout 100 86 0 88 EfficientNetV2 ES = 30% Pas de Dropout 87 100 100 92 Swinv2 ES = 20% Pas de Dropout 95 86 0 85 Swinv2 ES = 30% Pas de Dropout 100 100 100 100 Les scores sont bien sûr normalisés et représentent la normalisation sur 100 de chaque score par rapport au meilleur de tous les scores. Ce tableau montre qu'une taille de bloc d’extraction égale à 30% est la plus favorable pour les deux types d'architecture. Le tableau ci-dessous compare les performances du réseau avec apprentissage continu par rapport au même réseau entraîné en repartant à zéro avec toutes les données (y compris les données confidentielles qui rendent cette méthode non utilisable), et au même réseau sans réentraînement. Architecture Configuration Score AUC EfficientNetV2 Ligne de base – pas de réentraînement 99% EfficientNetV2 Apprentissage continu classique 99.41% EfficientNetV2 ES = 30% Pas de Dropout 99.27% Visual Transformer Ligne de base – pas de réentraînement 99.27% Visual Transformer Apprentissage continu classique 99.77% Visual Transformer ES = 30% Pas de Dropout 99.75% Il apparaît tout d'abord que l'apprentissage continu (classique ou selon l'invention) améliore toujours les performances par rapport à la ligne de base. En comparant les deux méthodes d'apprentissage continu, nous remarquons la baisse de performance de l'apprentissage continu selon l'invention par rapport au réentraînement classique. Cela était néanmoins prévisible en raison de l'impossibilité d'utiliser une technique d'augmentation des données dans le cadre de l'invention, puisque les vecteurs d'origine ne sont plus accessibles une fois confidentialisés. Ce tableau prouve que l'invention permet d'exploiter de nouvelles données même si l'accès aux vecteurs d'origine n'est pas possible afin de maintenir une performance de pointe tout en préservant la vie privée des utilisateurs. Dans une deuxième mise en œuvre du procédé selon l'invention, la Demanderesse s'est attachée à d'autres paramètres: - un score de normalisation. Dans l'exemple décrit ici, il s'agit de la surface d'application des couches de normalisation, par exemple le nombre de couches de normalisation correspondant au bloc d'extraction 230. - un score de distinction, qui caractérise le modèle. Dans l'exemple décrit ici, il s'agit du score BPCER (pour " Bonafide presentation classification error rate " en anglais). Plus le score BPCER est élevé, plus de nombre de faux négatifs est élevé. Ce score est complété par le score APCER (pour " Attack presentation classification error rate " en anglais), qui est représentatif du nombre de faux positifs, c’est-à-dire des vecteurs acceptés par le réseau de neurones alors qu'ils n'auraient pas dus l'être. Dans l'exemple décrit ici, on utilise la valeur 100-BPCER. - un score de complexité, qui peut être tiré du nombres de paramètres dans le bloc d'extraction 230. Dans l'exemple décrit ici, il s'agit du logarithme en base 10 du nombres de paramètres dans le bloc d'extraction 230. En variante, il pourrait s'agir du logarithme dans une autre base, ou encore d'une autre variante à décroissance de type exponentiel. - un score d'espace disque optionnel. Dans l'exemple décrit ici, c'est la différence entre l'espace disque originellement occupé par les images à confidentialiser et l'espace disque occupé par les vecteurs représentant ces données après qu'elles aient été confidentialisées. Les diverses recherches de la Demanderesse l'ont amenée à considérer que la formule de score composite permettant de déterminer la valeur la plus favorable du nombre de couches pour le bloc d'extraction est obtenue par la formule Score composite = (Score de normalisation+4*Score de distinction+2*Score de Complexité+Score d'espace disque)/8 Comme mentionné, le score d'espace disque peut être ignoré, ce qui ramène le facteur de normalisation à 7 au lieu de 8. Pour démontrer l'efficacité de cet apprentissage continu, la Demanderesse l'a testé sur deux architectures. La première architecture utilise un réseau de type " Visual Transformer ", en version " Base ", avec comme caractéristiques une taille de motif égale à 16 et une résolution de 224, et une normalisation moyenne avec 25 couches de normalisation. La deuxième architecture utilise un réseau de type " EfficientNetV2 ", qui est un réseau de neurones convolutifs, en version " Medium ", avec une normalisation élevée avec 110 couches de normalisation. Afin de simuler un environnement d'apprentissage continu, le jeu de données d'entraînement a été divisé en deux : 95% pour l'entraînement de base des architectures, et 5% pour former des vecteurs à confidentialiser et réaliser l'apprentissage continu. Après réalisation de l'entraînement initial, l'apprentissage continu a été réalisé avec les paramètres suivants : au moins 50% de couches entraînables en tout, les couches entraînables suivant le bloc d'extraction 230 jusqu'à 50% n'étant modifiées que sur leur normalisation, utilisation de l'optimiseur SGD (voir par exemple https://en.wikipedia.org/wiki/Stochastic_gradient_descent) avec un taux d'apprentissage de 10 -4 et une taille de bloc de 32, sans opération de dropout (opération visant à prévenir le surapprentissage). Les résultats suivants ont été obtenus : Architecture Configuration Score de normalisation Score de distinction Score de complexité Score d'espace disque Score composite EfficientNetV2 ES = 20% Pas de Dropout 100 99 85 100 96 EfficientNetV2 ES = 30% Pas de Dropout 87 100 92 50 90 EfficientNetV2 ES = 40% Pas de Dropout 72 90 95 62 85 EfficientNetV2 ES = 50% Pas de Dropout 57 96 100 62 88 Visual Transformer ES = 20% Pas de Dropout 100 100 77 100 94 Visual Transformer ES = 30% Pas de Dropout 84 97 94 100 95 Visual Transformer ES = 40% Pas de Dropout 68 96 98 100 93 Visual Transformer ES = 50% Pas de Dropout 52 97 100 100 92 Ici encore, les scores sont bien sûr normalisés et représentent la normalisation sur 100 de chaque score par rapport au meilleur de tous les scores. Ce tableau montre qu'une taille de bloc d’extraction égale à 20% est la plus favorable pour le réseau Visual Transformer et égale à 30% est la plus favorable pour le réseau EfficientNetV2, ce qui correspond à la formule explicitée plus haut. Procédé d’apprentissage continu pour réseau de neurones de biométrie par comparaison faciale comprenant les opérations suivantes : a) recevoir un réseau de neurones de biométrie par comparaison faciale déjà entraîné, b) séparer le réseau de neurones de l’opération a) en une pluralité de couches consécutives à partir de la première couche définissant un bloc de caractérisation, et une ou plusieurs couches entièrement connectées définissant un bloc de sortie, c) séparer le bloc de caractérisation en un bloc d’extraction comprenant un nombre choisie de couches consécutives à partir de la première couche du bloc de caractérisation, et un bloc d’adaptation comprenant les autres couches du bloc de caractérisation, d) recevoir deux jeux distincts de données d’entraînement formatées comme les entrées du réseaux de neurones de l’opération a), le premier jeu comprenant des données non-confidentielles, et le deuxième jeu comprenant des données confidentielles, e) fournir le deuxième jeu au bloc d’extraction (230) et en tirer un troisième jeu, et f) entraîner le réseau de neurones de l’opération a) en figeant le bloc d’extraction (230) en utilisant le premier jeu de données avec le bloc d’extraction (230) figé, et en utilisant le troisième jeu en le fournissant directement au bloc d’adaptation. Procédé selon la revendication 1, dans lequel l'opération c) comprend le choix de la taille du bloc d'extraction en fonction de la somme pondérée d'un score de distinction AUC, d'un score de complexité et d'un score d'espace disque optionnel. Procédé selon la revendication 2, dans lequel le score de distinction est un score d'aire sous la courbe, et le score de complexité est tiré du nombre de paramètres dans le bloc d'extraction. Procédé selon la revendication 2 ou 3, dans lequel la somme pondérée est calculée comme (4*AUC+2*Score de Complexité)/6. Procédé selon la revendication 2 ou 3, dans lequel la somme pondérée est calculée comme (4*AUC+2*Score de Complexité+0,5*Score d'espace disque)/6,5. Procédé selon la revendication 1, dans lequel l'opération c) comprend le choix de la taille du bloc d'extraction en fonction de la somme pondérée d'un score de normalisation, d'un score de distinction, d'un score de complexité et d'un score d'espace disque optionnel. Procédé selon la revendication 6, dans lequel le score de normalisation est la surface d'application des couches de normalisation, et le score de distinction est un score de type BPCER ("Bonafide presentation classification error rate"). Procédé selon la revendication 6 ou 7, dans lequel la somme pondérée est calculée comme (Score de normalisation+4*Score de distinction+2*Score de Complexité)/7. Procédé selon la revendication 6 ou 7, dans lequel la somme pondérée est calculée comme (Score de normalisation+4*Score de distinction+2*Score de Complexité+Score d'espace disque)/8. Programme informatique mis en œuvre par ordinateur comprenant des instructions pour exécuter le procédé selon l’une des revendications précédentes. Support de stockage de données sur lequel est enregistré le programme informatique selon la revendication 10.