Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 58 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
58
Dung lượng
622,42 KB
Nội dung
Institut de la Francophonie pour l’Informatique Institut National des Télécommunications MEMOIRE DE FIN D’ETUDES MASTER D’INFORMATIQUE VERIFICATION DE SIGNATURE EN-LIGNE Responsable : Sonia SALICETTI Bao LY VAN Stagiaire : Trung Tung DOAN 10 janvier 2006 Remerciements Je voudrais tout d’abord remercier Madame Bernadette Dorizzi, professeur, chef du département Electronique et Physique de m’avoir accueilli dans son équipe de recherche de l’Institut National des Télécommunications (INT) Je tiens remercier Madame Sonia Salicetti et Monsieur Ly Van Bao pour avoir proposé ce sujet de stage et m’avoir encadré pendant neuf mois Je voudrais remercier particulièrement Monsieur Ly Van Bao pour tous ses conseils et encouragements, non seulement pour la recherche mais aussi pour la vie quotidienne en France Mes plus sincères remerciements vont également tous les professeurs et les personnels de l'Institut de la Francophonie pour l'Informatique (IFI) pour m'avoir donné des cours de très bonne qualité et pour leur soutien tout au long de mes études l'IFI Un grand merci aux toutes les personnes de l’équipe GET-INT l’INT, AMSL-BIO l’université de Magdeburg et UNIK l’université de Kent pour leur coopération dans le projet Systèmes de Référence et pendant le premier Biosecure Residental Workshop Merci enfin mes parents, ma sœur, ma fiancée et mes amis pour leur soutien et leur encouragement tout instant Résumé La vérification de signature en ligne est une technique biométrique comportementale Nous présentons en bref deux algorithmes célèbres pour signature en ligne : les Modèles de Markov Cachés et la Déformation Temporelle Dynamique Le premier algorithme a été implémenté dans un système de l’Institut National des Télécommunications Ce système est joint aux Systèmes de Références, un projet de collaboration de trois labos Grâce aux Systèmes de Références, on a fait quelques expériences de fusion de systèmes Nous proposons enfin une nouvelle approche pour la vérification de signature en ligne : l’approche d’algorithme génétique Mots-clés : vérification de signature en ligne, biométrie, modèles de markov cachés, déformation temporelle dynamique, extraction des paramètres, normalisation, fusion, algorithme génétique Abstract Online Signature Verification is one biometric behavioral technique We present in brief two well-known algorithms for online signature: Hidden Markov Models and Dynamic Time Warping The first one has been implemented in a system of INT (Institut National des Télécommunications) We have also joined this system in the project Reference Systems which is a collaboration of three labs With Reference Systems, we have done some experiences in fusing systems In the end, we propose a new approach for Online Signature: genetic algorithm’s approach Keywords: online signature verification, biometry, hidden markov models, dynamic time warping, feature extraction, normalization, fusion, genetic algorithm CHAPITRE INTRODUCTION 1.1 Problématique 1.2 Objectif du stage 1.3 Environnement de travail 1.4 Plan de document CHAPITRE VERIFICATION DE SIGNATURE EN LIGNE 2.1 Introduction .9 2.2 Modèle de Markov Cachés .11 2.2.1 Présentation 11 2.2.2 Problèmes principaux .11 2.2.3 Solutions .12 2.2.4 Applications 16 2.3 Déformation temporelle dynamique 16 2.3.1 Idée principale 16 2.3.2 Algorithme 18 2.3.3 Applications 20 CHAPITRE SYSTEMES DE REFERENCE 21 3.1 Vue d’ensemble 21 3.2 Composants 22 3.2.1 Analyse des données 23 3.2.2 Prétraitement 23 3.2.3 Extraction des paramètres .23 3.2.4 Sélection des paramètres 25 3.2.5 Stockage de référence 25 3.2.6 Modèle de Client 25 3.2.7 Référence 25 3.2.8 Apprentissage 25 3.2.9 3.3 Contrôleur de Framework 26 Module de GET-INT .29 CHAPITRE EXPERIENCES 32 4.1 Introduction .32 4.2 Performance des algorithmes 32 4.2.1 Base de données .32 4.2.2 Protocole d’évaluation 33 4.2.3 Résultat 33 4.3 Fusion des systèmes 34 4.3.1 Base de données .34 4.3.2 Protocole d’évaluation 35 4.3.3 Protocole de fusion .35 4.3.4 Techniques de normalisation 36 4.3.5 Résultats 37 CHAPITRE 5.1 APPROCHE D’ALGORITHME GENETIQUE .44 Algorithme génétique en bref 45 5.1.1 Représentation 48 5.1.2 Evaluation .48 5.1.3 Sélection 49 5.1.4 Hybridation 50 5.1.5 Mutation 50 5.1.6 Remplacement 51 5.2 AG pour la vérification de signature .51 5.2.1 Représentation 52 5.2.2 Opérateurs génétiques 52 5.2.3 Evaluation .53 5.3 Expérience 54 CHAPITRE CONCLUSIONS ET PERSPECTIVES .55 Chapitre Introduction 1.1 Problématique Aujourd’hui, la Biométrie est de plus en plus courante C’est un domaine qui se compose de plusieurs techniques : l'empreinte digitale, la signature, l'iris, la voix, le visage, la démarche, etc Ce stage est centré sur la vérification de signature en ligne Cette technique est assez efficace quoiqu’elle soit simple par rapport d’autres techniques biométriques Dans un système de vérification de signature en ligne, il y a trois problèmes principaux : l’acquisition des signatures, la construction du système et la phase vérification des signatures Qu’est-ce que une signature en ligne ? Comment peut-on l’acquérir ? Quelles sont les méthodes pour construire un système et l’utiliser pour vérifier l’identité d’une personne par sa signature ? On va étudier les réponses ces questions dans ce rapport Ce stage s’intéresse aussi aux expériences de fusion de différents systèmes de vérification de signature Qu’est qui se passe quand on fusionne plusieurs systèmes ? Est-ce que le système est de meilleure qualité ou pas ? Les réponses ces questions peuvent être trouvées dans le Chapitre 1.2 Objectif du stage Ce travail de stage s’insère dans la suite des travaux effectués l’INT sur la vérification de signature en ligne, avec des Modèles de Markov Cachés Le premier objectif du stage est de regrouper ce système avec d’autres systèmes de deux laboratoires : UNIK (Université de Kent) et AMSL (Université de Magdeburg) pour construire un logiciel open-source mettant en oeuvre les « Systèmes de Référence » pour la vérification de signature Le deuxième objectif du stage est d’utiliser les Systèmes de Référence pour faire des expériences de fusion des systèmes 1.3 Environnement de travail Le département EPH (Electronique et Physique) regroupe plusieurs enseignants, chercheurs de l’Institut National des Télécommunications travaillant dans plusieurs domaines dont la Biométrie L’équipe INTERMEDIA recherche sur la vérification de signature en ligne, l’identification par l’iris, la vérification multimodale de l’identité, etc 1.4 Plan de document La suite du rapport est organisée comme suit Après une introduction de la vérification de signature en ligne, deux algorithmes de l’état de l’art sont présentés : les Modèles de Markov Cachés dans la partie 2.2 et la Déformation Temporelle Dynamique dans la partie 2.3Error! Reference source not found Ensuite, nous présentons les trois Systèmes de Référence dans le Chapitre Les expériences que nous avons faites avec ces systèmes sont abordées dans le Chapitre Dans le Chapitre 5, nous proposons une nouvelle approche pour la vérification de signature en ligne, c’est l’approche par algorithme génétique Enfin, le Chapitre donne la conclusion et les perspectives du travail Chapitre Vérification de signature en ligne 2.1 Introduction La biométrie est un ensemble des technologies (appelées les technologies biométriques) qui exploitent des caractéristiques humaines physiques ou comportementales telles que l'empreinte digitale, la signature, l'iris, la voix, le visage, la démarche, parmi d’autre pour différencier des personnes À la différence des mots de passe ou des PINs (numéros d'identification personnelle) qui sont facilement oubliés ou exposés l'utilisation frauduleuse, ou des clefs ou des cartes magnétiques qui doivent être portées par l'individu et sont faciles être volées, copiées ou perdues, ces caractéristiques biométriques sont uniques l'individu et il y a peu de possibilité que d'autres individus peuvent remplacer ces caractéristiques Donc les technologies biométriques sont considérées les plus puissantes en termes de sécurité En plus, les mesures biométriques sont confortables parce qu’elles n'ont pas besoin d'être portées séparément De telles caractéristiques peuvent être bien employées pour obtenir l'identification/authentification pour accéder des systèmes tels que les ATMs (guichet automatique) La biométrie est également un outil puissant d'identification/vérification aux scènes de crime dans le secteur juridique La vérification de signature en ligne est une technologie biométrique comportementale La Figure différencie des technologies physiques et comportementales : Non Clés Mot de passe PINs … Biométrie Signature en ligne Iris Visage … Physique Comportemental Iris Visage Main … Signature en Marche Dactylographie … Figure – Classification de la vérification de signature en ligne En fait, il y a deux types de signature : la signature en ligne et la signature hors ligne Comment peut-on les différencier ? La signature en ligne est acquise par des tablettes digitaliser ou des écrans tactiles ; par contre, la signature hors ligne est l’image de la signature normale qui est acquise par un stylo et un feuil La signature en ligne est plus pratique que la signature hors ligne parce qu’il fournit plus d’informations, par exemple la vitesse, la pression, l’altitude, l’azimut, etc La vérification de signature en ligne devient de plus en plus courante grâce aux plusieurs avantages : • Elle est simple pour l’utilisateur Signer sur un PDA n’est pas très différent que sur une feuille • Elle n’est pas coûteuse par rapport aux autres méthodes comme l’iris, le visage, etc • La performance de vérification est acceptable Pourtant, elle a aussi des désavantages par rapport d’autres techniques biométriques: • Les autres peuvent imiter la signature en observant le processus de signature En fait, des expériences montrent que le taux d’erreurs du système testé avec des imitations de haute qualité est toujours plus élevé que celui obtenu avec des imitations aléatoires • L’état du signataire influence fortement sa signature Par exemple, quand il est heureux, il signe différemment que quand il est triste, ou quand il est malade, il signe différemment que quand il va bien • Au cours du temps, la signature change et si le système n’est pas mis jour, il ne pourra plus reconnaître la signature authentique Nous présentons ensuite deux algorithmes de l’état de l’art pour la vérification de signature en ligne : les Modèles de Markov Cachés (MMC) et la Déformation Temporelle Dynamique (DTD) Chapitre Approche d’algorithme génétique Après avoir examiné plusieurs signatures (en faisant des expériences) je trouve que : dans les signatures d’une personne, il y a des parties qui sont stables (c'est-à-dire, presque identiques travers plusieurs signatures) alors que d’autres parties ne le sont pas Par exemple, dans la Figure 15, les parties dans le rectangle sont les plus stables et les parties dans le quadrilatère sont les moins stables Une autre remarque c’est que la fin d’une signature n’est pas stable en général Figure 15 - Les parties stables et non stables d’une signature On rappelle que pour les systèmes base de référence, normalement, on choisit une signature authentique ou une signature moyenne des signatures authentiques comme référence En général, on le (les) choisit au hasard alors ce n’est pas sûre que cette (ces) signature(s) contienne des parties stables Comment peut-on choisir une référence qui contient le plus des parties stables ? Avec une telle référence, la performance du système sera meilleure que celle du système avec une référence quelconque L’idée principale de cette approche est de construire une référence qui contienne les parties les plus stables de plusieurs signatures authentiques choisit aléatoirement On va voir dans la partie 5.2 comment peut-on faire ceci par l’algorithme générique mais d’abord, on introduit en bref cet algorithme dans la partie 5.1 5.1 Algorithme génétique en bref Dans les années 1950, quelques scientifiques ont recherché indépendamment des systèmes évolutionnistes Les idées ici c’est que l’évolution peut être utilise comme un outil optimal pour quelques systèmes La méthodologie dans tous ces systèmes est : soit un problème, évoluer une population des solutions par utiliser les opérateurs génétiques (l’hybridation et la mutation) et la sélection nature L’algorithme génétique (AG) est un des algorithmes évolutionnistes : la programmation évolutionniste, la stratégie d’évolution, l’algorithme génétique et la programmation génétique Il est inventé par John Holland et est développé par lui et ses étudiants dans les années 1960, 1970 au Université de Michigan Après avoir présenté par John Holland, il devient très connu, il y a beaucoup de recherches, d’applications qui lui concernent L’idée des AGs est simuler le processus évolutionniste de la nature : les individus d’une population se produisent, se meurent d’après des lois naturelles les meilleurs gènes vivent plus long temps Pour simuler ce processus, on doit coder le problème, puis on le résout en appliquant l’AG, enfin on décode la solution En général, un AG inclut les procédures itératives qui se déroulent comme suivant Tout d’abord, on génère une population initiale au hasard ou de manière heuristique Chaque individu dans cette population représente une solution possible d’un problème qui est déjà codé A chaque pas d’itération (on peut l’appeler également une génération), les individus sont évalues par une fonction qui est défini déjà Puis, ils sont choisis avec une probabilité proportionnelle leur valeur d’adaptation, afin de favoriser les meilleurs Pour reformer une nouvelle population et générer un nouveau point dans l’espace de solution, on utilise les opérateurs génétiques : la mutation et/ou l’hybridation L’itération d’évaluation/sélection puis recombinaison/mutation est répétée jusqu’a un critère d’arrête est satisfait Cette critère peut être le franchissement d’un nombre maximal prédétermine de générations ou l’obtention d’une solution satisfaisante On peut illustrer l’AG par le pseu-do code et la figure suivante Générer P(0) T←0 While not terminer P(t) Do Evaluer P(t) P’(t) ← Sélectionner P(t) P’’(t) ← Appliquer les opérateurs génétiques P’(t) P(t+1) ← Remplacer (P(t), P’’(t)) T ← t+1 End While Return la solution la meilleure Figure 16 - L’algorithme génétique général Chaque AG contient un ensemble d’éléments différents mais on peut lister ici quelques éléments les plus communs • Une population : un ensemble des solutions possible Chaque individu est une solution Il faut avoir une représentation pour coder d’un problème une population On va voir que la représentation a un rôle très important dans un AG • Une fonction objective qui évalue les individus chaque génération La valeur retournée est appelée la performance d’un individu (fitness − en anglais) La phase d’évaluer les individus est appelée l’évaluation • Un mécanisme de sélecter les individus pour générer la génération prochaine La phase de sélecter des individus est appelée la sélection • Les opérateurs génétiques qui sont appliqués sur les individus sélectionnés Communément, on a deux opérateurs : l’hybridation et la mutation • Le remplacement pour que le nombre de la population chaque génération soit égal Normalement, on retient les individus les meilleurs • Pour chaque phase, il y a un ou plusieurs paramètre(s) pour la contrôler On les appelle les paramètres d’algorithme En conclusion, l’AG a quelques particularités qui sont différentes avec les autres méthodes traditionnelles : • L’AG cherche plusieurs solutions en le même temps On peut dire que l’AG est comme une méthode monter-colline mais on monte plusieurs collines en le même temps • Il ne faut pas avoir les informations dérivées ou les connaissances auxiliaires On n’a besoin que la fonction objectif pour influencer la direction de recherche • L’AG peut fournir un nombre de solutions potentielles C’est l’utilisateur qui choisit un d’eux • Les parties suivantes vont aborder plus détails des components d’un AG 5.1.1 Représentation C’est la première phase dans un AG et elle est très importante parce que presque toutes les autres phases doivent dépendre de cette phase Avec une représentation appropriée, l’évaluation deviendra plus facile, il n’y aura des exceptions dans les phases hybridation et mutation, etc Quelque fois, la représentation pour un problème est évidente mais normalement, c’est difficile trouver une bonne solution Premièrement, il faut choisir un modèle de la représentation Puis, le problème est codé et on a une population qui contient un ensemble des solutions possibles Le codage est dépendu au problème donc, pour chaque problème, on a un différent codage Pour le modèle de la représentation d’un AG, on peut utiliser un modèle binaire ou un modèle réel 5.1.2 Evaluation Cette phase a pour but d’évaluer la population chaque itération d’un AG et on le faire par utiliser la fonction objective La fonction objective c’est pour calculer la performance d’un individu Par exemple, pour un problème optimal, c’est la fonction optimiser Pour le problème du voyageur de commerce, c’est le coût du voyage, etc Dans toute la population, la convenance du chaque individu est calculée et est gardé pour qu’on puisse l’utiliser après Rappelle que, pour un AG, « Il ne faut pas avoir les informations dérivées ou les connaissances auxiliaires On n’a besoin que la fonction objectif pour influencer la direction de recherche » Donc, c’est la fonction objective qui aide choisir la direction de recherche Dans la phase sélection ou remplacement, on utilise les convenances pour décider quelle direction suivre Evidemment, chaque problème a sa propre fonction objective De plus, elle est dépendant directement de la représentation de ce problème 5.1.3 Sélection Dans cette phase, les individus sont sélectionnés pour participer au processus de créer des descendants Il y a beaucoup de méthodes pour la sélection On en liste ici quelques un : Sélection gourmant : Dans cette technique, tous les individus sont choisis C’est la sélection la plus simple Elle traite tous les individus pareils Elle n’a pas des propriétés raisonnables listées avant mais elle est encore utilisée dans quelques AGs qui n’intéressent pas la sélection pour la raison simple Sélection par probabilité : Normalement, une probabilité quelconque est calculée pour chaque individu Puis, un nombre est généré au hasard pour chaque individu Si le nombre généré est satisfait une condition quelconque de la probabilité, cet individu est choisi On peut prendre pour exemple une technique : la sélection par la roulette (ou prélèvement stochastique) Les individus sont sélectés proportionnellement leur performance La roulette se compose les tranches qui sont proportionnels aux performances des individus Donc, l’individu qui a la performance la plus forte a la meilleure chance d’être sélecté (bien sûre qu’il peut être sélecté plusieurs fois) Cette technique fournit un biais zéro mais ne garantit pas la diffusion minimum Sélection par rang : Dans cette technique, la population est triée selon les valeurs objectives La chance de être choisi de chaque individu dépend seulement de sa position dans le rang d’individus et pas de la valeur objective réelle Elle surmonte le problème de la sélection par probabilité (spécialement dans le cas où la pression sélective est trop petite ou la convergence est prématurée) Les intervalles sont limités, de sorte que les individus ne produisent pas les descendants excessifs La sélection par rang présente une échelle uniforme et fournit une façon simple et efficace de contrôler la pression sélective Sélection par tournoi : L’idée principale est de choisir au hasard des groupes d’individus Pour chaque groupe, le meilleur individu va être choisi comme parent, les autres sont évincés Il ne faut pas trier la population, de sorte que la vitesse d’AE améliora 5.1.4 Hybridation L’hybridation est un opérateur génétique qui génère des nouveaux individus, autrement dit, des nouvelles solutions En appliquant l’hybridation sur deux (ou plusieurs) parents, on aura un (ou plusieurs) enfant(s) qui a des caractères (bien ou mauvais) de tous ses parents Pourquoi on en a besoin ? De prime abord, il se semble qu’on imite machinalement la nature En fait, cet opérateur nous donne la fois la variance et l’héritage des solutions Donc, il nous aide éviter la convergence prématurée Un paramètre important d’un AG est le paramètre d’hybridation Il indique approximativement combien de parents sont choisis pour participer la phase de générer des descendants L’hybridation la plus générale est le croisement : On choisit (normalement au hasard) un (des) point de croisement et puis on échange des parties de deux signatures La Figure 17 montre le croisement 1-Point X1 X1’ X2 X2’ Figure 17 - Le croisement 1-Point 5.1.5 Mutation La mutation est un opérateur qui génère un individu d’un individu On prend un individu, performe un ou plusieurs transformation sur lui et fournit un différent individu La mutation diffère de l’hybridation sur la façon de créer un nouvel individu Le nouvel individu généré après l’hybridation contient et ne contient que l’information de ses parents Par contre, le nouvel individu généré après la mutation peut contenir l’information qui n’apparaît pas dans son parent (c’est juste comme le nom de l’opérateur) Donc, la mutation nous donne la variance des solutions X1 X1’ Figure 18 - La mutation 5.1.6 Remplacement Le remplacement est la dernière phase d’une itération d’un AE Cette phase sert choisir les individus pour la génération prochaine Parce que l’hybridation produit des nouveaux individus, il faut éliminer certains vieux (ou même que certains nouveaux) pour que la population soit, généralement, constante pendant toute la recherche Normalement, il faut comparer les vieux individus avec les nouveaux individus (pour choisir ce qui est éliminé) On le fait en utilisant l’évaluation Quelques techniques du remplacement sont listées suivant : • Pure remplacement : on produit autant de descendants que parents et remplace tous les parents par les descendants • Remplacement uniforme : ont produit moins de descendants que parents et substitue les parents uniformément au hasard • Remplacement élitiste (1) : on produit moins de descendants que parents et substitue les plus mauvais parents • Remplacement élitiste (2) : on produit plus de descendants qu’on en a besoin et choisi les descendants les meilleurs 5.2 AG pour la vérification de signature Comme on a abordé, on veut trouver des parties stables dans les signatures d’une personne Le caractère de l’algorithme génétique est très approprié pour cette idée Au début, la première population est des signatures générées par quelques signatures authentiques du signataire A chaque itération, on applique les opérateurs génétiques sur ces signatures ou autrement dit, on change les parties entre les signatures Selon l’hypothèse de l’algorithme génétique, après chaque itération, la population est évoluée et la fin, on a une génération qui est tellement meilleure que la première génération C'est-à-dire, pendant les itérations, on a éliminé des parties non stables et sauvegardé des parties stables que on a trouvées par les opérateurs génétiques Dans les parties 5.2.1, 5.2.2, 5.2.3, on explique plus détaillé de la représentation, les opérateurs génétiques et l’évaluation Le reste est comme dans un AG normale 5.2.1 Représentation Chaque signature est présentée par une liste des vecteurs des paramètres (X, Y, vitesse, altitude, pression, etc.) Chaque paramètre est présenté par un vecteur des nombres entiers ou réels Une population est une liste des signatures Au début, la population est initiée par quelques signatures authentiques qu’on appelle les signatures d’apprentissage 5.2.2 Opérateurs génétiques Il y a deux opérateurs génétiques comme d’autres algorithmes : la mutation et l’hybridation, ici c’est le croissement Un exemple pour la mutation X1 X1’ X2 X2’ X1 X1’ et le croissement de paramètre X : Figure 19 - La mutation et le croissement pour le paramètre X Pour le croissement, parce que les paramètres des signatures ont des tailles différentes, on choisit donc le croissement proportionnel comme la figure dessus En plus, si on applique le croissement sur le paramètre X, il faut aussi appliquer sur les autres paramètres parce que les paramètres d’un signature (X, Y, etc.) doivent avoir la même taille C’est naturel, si on veut échanger deux parties de deux signatures, on ne peut pas échanger seulement deux parties d’un paramètre, il faut échanger deux parties de tous les paramètres Pour la mutation, cela dépense aux éléments du paramètre Si ils sont réels on choisit la mutation réelle, si ils sont entiers, on choisit la mutation entière La mutation entière est simple Un chromosome choisi est transformé de ou de Pour la mutation réelle, normalement, on transforme de Xij Xij’ dans [Xij – δ, Xij + δ] où δ est une paramètre d’algorithme qu’on peut choisir en exécutant δ Xij Xij’ 5.2.3 Evaluation La fonction d’évaluation est très importante dans l’AG Grâce la fonction d’évaluation, on peut évaluer la population chaque itération pour qu’on puisse éliminer les individus faibles et sauvegarder les individus forts Pour chaque signature dans la population, comment peut-on faire la comparaison entre celle et les signatures d’apprentissage ? Le problème ici c’est que les signatures ont les tailles différentes On choisit donc le DTD pour résoudre ce problème Alors, le score moyen des scores de DTD entre chaque signature et les signatures d’apprentissage sera la santé de cette signature Le plus ce score est petit, le plus cette signature est forte Voici deux types de transition de DTD que j’ai utilisé dans la programmation 5.3 Expérience J’ai déjà testé cette nouvelle approche avec deux bases de données : SVC2004 et BIOMET Malheureusement, les résultats sont mauvais Le programme ne peut pas trouver le seuil commun Il y a quelques raisons qui peuvent expliquer cela Tout d’abord, c’est la raison du temps et je ne peux pas optimiser les paramètres du programme, par exemple : le nombre de la population, la probabilité de la mutation, la probabilité du croissement, etc Pour l’AG, ces paramètres sont très importants en exécution Il faut exécuter le programme plusieurs fois pour avoir les bons paramètres Cependant, ce programme est trop lent cause de l’AG et le DTD aussi Tous ces deux algorithmes sont lents et on a des solutions pour qu’ils exécutent plus rapides mais je n’ai pas de temps pour les essayer D’autre raison c’est peut-être la normalisation des scores de DTD Parce que les scores de DTD ne sont pas bien normalisés, on ne peut pas trouver un seuil commun pour toutes les signatures dans la base de données Chapitre Conclusions et perspectives Ce stage est centré sur une de plusieurs techniques de la Biométrie: la vérification de signature en ligne Cette technique est assez efficace quoiqu’elle soit simple par rapport d’autres techniques biométriques Ce rapport présente en bref deux solutions existantes pour la signature en ligne : les Modèles de Markov Cachés et la Déformation Temporelle Dynamique La Déformation Temporelle Dynamique est un algorithme base de distance Elle est essentiellement une méthode pour calculer deux vecteurs avec la taille différente en utilisant la Programmation Dynamique Un système qui l’utilise est donc un système base de référence Cependant, un système base de MMC est un système base d’apprentissage Le système doit construire un modèle MMC puis l’entraîner pour obtenir un modèle client En effet, les MMCs utilisent aussi la Programmation Dynamique pour résoudre ses problèmes La partie principale de ce travail est d’intégrer un algorithme existant de l’INT aux Systèmes de Référence et puis, d’utiliser ces Systèmes de Référence pour faire des expériences Les Systèmes de Référence est un logiciel opensource qui est composé de algorithmes Plus un algorithme d’UPM, nous avons faire des expériences sur leurs performances et sur leurs fusions pour étudier leurs comportements Nous avons trouvé quelques résultats intéressants En outre, une nouvelle approche pour la signature en ligne est présentée Cette approche associe la Déformation Temporelle Dynamique l’Algorithme Génétique L’idée principale de cette approche est de construire une référence qui contient les parties les plus stables de plusieurs signatures authentiques choisies aléatoirement Néanmoins, raison de temps, le résultat n’est pas souhait En guise de perspectives, nous devons compléter les Système de Référence Nous allons ajouter quelques algorithmes pour la signature en ligne : la Déformation Temporelle Dynamique, le Mélange Gaussien, etc Il faut ajouter aussi un module pour faire les expériences (nous avons fait les expériences sur Matlab) Nous souhaitons que les Systèmes de Référence soient un outil pour que les autres puissent utiliser dans leurs recherches de signature en ligne La nouvelle approche avec l’algorithme génétique est aussi un problème intéressant continuer Bibliographie [1] Lawrence R Rabiner « A tutorial on Hidden Markov Models and Selected Applications in Speech Recognition » Proceedings of the IEEE, 77 (2), p 257–286, February 1989 [2] Bao Ly Van, Sonia Garcia-Salicetti, Bernadette Dorizzi « Fusion of HMM's Likelihood and Viterbi Path for On-line Signature Verification » Workshop on Biometric Authentication, 2004 [3] S Garcia-Salicetti, J Fierrez-Aguilar, F Alonso-Fernandez, C Vielhauer, R Guest, L Allano, T Doan Trung, T Scheidat, B Ly Van, J Dittmann, B Dorizzi, J Ortega-Garcia, J Gonzalez-Rodriguez, M Bacile di Castiglione « Biosecure Reference Systems for Online Signature Verification : A Study of Complementary » Annals of Telecommunications, 2006 [4] « Data Class and System Framework Specification Documentation » Documentations for « Open source reference software for biometric identity verification based on on-line and off-line signature verification », GET-INT, KENT-UNIK, AMSL-BIO, 2005 [5] Mohammad M Shafiei, Hamid R Rabiee « A New On-Line Signature Verification Algorithm Using Variable Length Segmentation and Hidden Markov Models » ICDAR, p443-, 2003 [6] V Dang Hoang « Biométrie pour l’Identification » Rapport Final du TIPE, IFI, 2005 [7] Eamonn J Keogh, Michael J Pazzani « Scaling up dynamic time warping for datamining applications » KDD p285-289, 2000 [8] T Doan Trung « Les Algorithmes Evolutionnistes » Rapport Final du TIPE, IFI, 2004 [9] Ramanujan S Kashi, Jianying Hu, W L Nelson, William Turin « On- line Handwritten Signature Verification using Hidden Markov Model Features » ICDAR, p253-257, 1997 [10] D Berndt, J Clifford « Using dynamic time warping to find patterns in time series » AAAI-94 Workshop on Knowledge Discovery in Databases (KDD-94), Seattle, Washington, 1994 [11] R Martens and L Claesen « On-Line Signature Verification by Dynamic Time-Warping » Proc 13 th Int Conf Pattern Recognition, pages 38 42, 1996 [12] Bonnie Dorr, Christof Monz « Hidden Markov Models » CMSC 723: Introduction to Computational Linguistics, lecture 5, 2004 [13] Valery A Petrushin « Hidden Markov Models Fundamentals and Applications » Online Symposium for Electronics Engineer, 2000 [14] Mitchell Melanie « An Introduction to Genetic Algorithms » MIT Press, firstedition, 1998 [15] Gregory N Stainhouer, George Carayannis Implementations for DTW Algorithms » IEEE « New Parallel Transactions on Acoustics Speech and Signal Processing, vol 38, no 4, April 1990 [16] SVC 2004: First International Signature Verification Competition http://www.cs.ust.hk/svc2004/ [17] S Garcia-Salicetti, C Beumier, G Chollet, B Dorizzi, J.Leroux-Les Jardins, J Lunter, Y Ni, D Petrovska-Delacretaz, « BIOMET: a Multimodal Person Authentication DatabaseIncluding Face, Voice, Fingerprint, Hand and SignatureModalities », Proc of 4th International Conference on Audioand Video-Based Biometric Person Authentication, pp.845-853, Guildford, UK, July 2003 [18] J Ortega-Garcia, J Fierrez-Aguilar, D Simon,J Gonzalez, M FaundezZanuy, V Espinosa,A Satue, I Hernaez, J.-J Igarza, C Vivaracho,C Escudero, and Q.-I Moro, « MCYT baseline cor-pus: a bimodal biometric database », IEE Proc Vi-sion, Image and Signal Processing, vol 150, pp 395–401, December 2003 [...]... Nous prộsentons dans ce chapitre les Systốmes de Rộfộrence open-source pour la vộrification de signature en ligne [4] De tel systốmes ont pour but de : Faire des ộvaluations comparatives dapproche diffộrentes sur des bases de donnộes prộcises avec des protocoles prộcis Permettre dautres chercheurs de comparer leurs algorithmes ces Systốmes de Rộfộrence Etendre facilement Les Systốmes de Rộfộrence... distance entre eux Supposons quon ait deux sộries de temps : Q = q1 qn et T = t1 tm Pour aligner ces deux sộries en utilisant DTD, on construit une matrice nxm oự lộlộment (i, j) contient la distance entre deux points qi et tj (typiquement on choisit la distance euclidienne) Chaque ộlộment (i, j) correspond lalignement entre deux points qi et tj Un chemin de dộformation W est un ensemble des ộlộments... regroupent des algorithmes de trois labos : GET-INT: Institut National des Tộlộcommunications [2], [3] UNIK: Universitộ de Kent [3] AMSL-BIO: Universitộ de Magdeburg [3] Ce travail commence depuis janvier 2005 Les Systốmes de Rộfộrence ont ộtộ utilisộs pendant le premier Workshop Rộsidentiel de Biosộcuritộ (Biosecure Residental Workshop) Paris en aoỷt 2005 pour faire des ộvaluations comparatives des... sộlectionner des paramốtres, etc Stockage de Rộfộrence Rộfộrence Donnộes Analyse des donnộes Prộtraitement Contrụleur Extraction et Sộlection des particularitộs Apprentiss Rộsultat Modốle de Client Figure 6 Vue densemble des Systốmes de Rộfộrence 3.2 Composants Sauf le module Contrụleur de Framework (pour contrụler les autres modules) et les modules Stockage de rộfộrence et Modốle de Client (pour stocker des... sộlection des paramốtres : Ce module extrait des paramốtres de chaque signature Il nous permet aussi de sộlectionner des paramốtres intộressants Stockage de rộfộrence : Les paramốtres aprốs avoir ộtộ extrait sont utilisộs comme des donnộes de rộfộrences pour les systốmes base de rộfộrence Modốle de client : Fournit un stockage de modốle de client pour les systốmes base dapprentissage Rộfộrence :... dans Modốle de Client Chaque fois de test il peut donner trois scores une signature de test : le score de Log-Likelihood, le score de Viterbi et le score moyen de ces deux scores [2] Chapitre 4 Expộriences 4.1 Introduction Grõce aux Systốmes de Rộfộrence, on a fait des expộriences qui donnent quelques rộsultats La premiốre expộrience a ộtộ effectuộe pendant le premier ô Biosecure Residental Workshop... unloadenrollment Figure 8 Exemple du fichier de script 3.3 Module de GET-INT Dans les Systốmes de Rộfộrence, le module de GET-INT est composộ de trois modules : Extraction et Sộlection des paramốtres, Apprentissage, et Modốle de Client En fait, le module de GET-INT est basộ sur lalgorithme de M Bao LY-VAN [2] Cet algorithme utilise un MMC continuel gauche--droite pour modeler des caractộristiques de. .. fusion des systốmes quon va aborder toute de suite 4.3.3 Protocole de fusion On a choisi la validation croisộe ô 2-fold ằ parce quil permet dobtenir des rộsultats globaux sur la totalitộ de la base de donnộes Lensemble dộvaluation est divisộ en deux parties avec la mờme taille : lensemble dapprentissage de fusion (EAF) et lensemble de test de fusion (ETF) LEAF a pour but de calculer les facteurs de normalisation... unique protocole dapprentissage et de test (nombre de signatures authentiques, nombre de signatures imitộes, etc.) pour calculer des scores En suite, on calcule les performances des systốmes Pour les tests de fusions, on combine les scores des systốmes par une rốgle (moyenne, min, max, etc.) de plusieurs faỗons (combinaison de deux systốmes, de tous les systốmes, etc.) Mais avant de faire les combinaisons,... vộrification des signatures dynamiques 4.3 Fusion des systốmes 4.3.1 Base de donnộes Cette fois, on a testộ sur une base de donnộes plus grande de 330 personnes : MCYT-300 Les rộsultats donc peuvent ờtre confiants Cette base de donnộes a des paramốtres dộcrits dans la table dessous : MCYT-complốte Nombre de signataires 330 Nombre de signatures 25 authentiques Nombre de signatures imitộes 25 Tableau 4 - Base de