730 likes | 882 Views
Reconnaissance de mots manuscrits cursifs par modèles de Markov cachés en contexte Application au français, à l’anglais et à l’arabe. Anne-Laure Bianne-Bernard 21 novembre 2011. Introduction à la reconnaissance d’écriture manuscrite Objectifs et contributions de la thèse
E N D
Reconnaissance de mots manuscrits cursifs par modèles de Markov cachés en contexteApplication au français, à l’anglais et à l’arabe Anne-Laure Bianne-Bernard 21 novembre 2011
Introduction à la reconnaissance d’écriture manuscrite • Objectifs et contributions de la thèse • Les modèles de Markov cachés en contexte • Applications et résultats • Conclusions et perspectives 2
Introduction à la reconnaissance d’écriture manuscrite • Objectifs et contributions de la thèse • Les modèles de Markov cachés en contexte • Applications et résultats • Conclusions et perspectives 2
Reconnaissance d’écriture En ligne Hors ligne 3
Reconnaissance d’écriture hors ligne Imprimé Manuscrit Autres 4
Extraction des blocs de texte Extraction des lignes de texte Extraction de mots 5
Prétraitements des images de mots : • Correction de la pentedu mot (skew) • Correction de l’angle d’inclinaison des caractères(slant) • Re-proportionnement • Binarisation 6
Stratégies de parcours de l’image • Segmentation explicite • Sans segmentation : approche par fenêtres glissantes 7
Extraction de caractéristiques par fenêtres glissantes • Caractéristiques géométriques et statistiques (El Hajj et al. 2005) • configurations de pixels • centre de gravité de la fenêtre • densité de pixels dans la fenêtre, etc. • Caractéristiques directionnelles (Rodriguez et al. 2008) • histogrammes de gradients 2 3 1 4 0 5 7 6 8
Modélisation et reconnaissance de mots isolés • Objectif : trouver le mot ŵ tel que • OT : la séquence de vecteurs de caractéristiques • Règle de Bayes : calculé par des HMMs modélisation lexicale 9
Modélisation par HMMs • Un mot = concaténation des caractères qui le composent modèle(pendant) = hmm_p + hmm_e + hmm_n + hmm_d + hmm_a + hmm_n + hmm_t hmm_e : 10
Introduction à la reconnaissance d’écriture manuscrite • Objectifs et contributions de la thèse • Les modèles de Markov cachés en contexte • Applications et résultats • Conclusions et perspectives 11
Objectifs • Reconnaissance de mots manuscrits avec HMMs et sans segmentation • Système à l’état de l’art • Reconnaisseur robuste indépendamment de la base de données utilisée : • script (alphabet) • grande taille du dictionnaire ( ≥105 mots) 12
Contributions • Raffinement de la modélisation HMM de caractères • optimisation du nombre d’états des HMMs • ajout de caractéristiques dynamiques • Elaboration de modèles HMMs dépendants de leur contexte : les trigraphes • création de questions binaires originales sur la forme des caractères pour le clustering d’états des trigraphes • mise en place des modèles contextuels pour le français, l’anglais et l’arabe 13
Système existant à A2iA Briques ajoutées/modifiées new new new Binarisation, deslant, etc. Binarisation, deslant, etc. Pré-traitements Segmentation explicite (graphèmes) Segmentation implicite (fenêtres glissantes) Extraction de caractéristiques 74 caractéristiques (profil, ratio H/L, centre de gravité, etc.) 34 caractéristiques + caract. dynamiques Modèles de caractères HMMs typeBakis (loi gaussienne) Modèles hybrides HMM/NN new + prise en compte du contexte Reconnaissance de mots 14
Introduction à la reconnaissance d’écriture manuscrite • Objectifs et contributions de la thèse • Les modèles de Markov cachés en contexte • Applications et résultats • Conclusions et perspectives 15
Introduction à la reconnaissance d’écriture manuscrite • Objectifs et contributions de la thèse • Les modèles de Markov cachés en contexte • Adaptation de la topologie des HMMs • Ajout de caractéristiques dynamiques • Modélisation de HMMs contextuels • Applications et résultats • Conclusions et perspectives 15
Adaptation de la topologie des modèles Calcul du nombre optimal d’états Ls(C) par HMM de caractère • Γ(s): statistique de passage dans l’états • Sc : états du caractère C • |C| : nombre de caractères utilisés pour calculer Γ(s) 16
Adaptation de la topologie des modèles Exemple sur la base OpenHart 17
Adaptation de la topologie des modèles (cont.) Optimisation du nombre de gaussiennes par état Exemple sur la base Rimes Rimes-validation 2011 lexique :1612 temps de décodage (s) taux de reconnaissance Point de fonctionnement nombre de gaussiennes par mélange 18
Les HMMs contextuels • Prennent en compte la variabilité des caractères manuscrits en fonction de leur contexte : phénomène de co-articulation • Modélisent plus finement les caractères 20
Les HMMs contextuels : modélisation d–a+n contexte précédent–caractère central+ contexte suivant pendant = (Ø-p+e) (p-e+n) (e-n+d) (n-d+a) (d-a+n) (a-n+t) (n-t+Ø) 21
Modélisation plus fine MAIS • Augmentation du nombre d’états • 1 modèle environ 10 états • Peu de données d’apprentissage pour un grand nombre de trigraphes • < 10 exemples pour 70% des trigraphes 22
Comment réduire le nombre de paramètres? • Partage de paramètres(tying) • modèles semi-continus : Gaussiennes partagées pour tous les états et tous les modèles • Gaussiennes partagées par les trigraphes avec même caractère central • états centraux des HMMs partagés par les trigraphes avec même caractère central (Nedel et al., 2000) • Suppression de modèles • modèles bigraphes ou trigraphes avec peu d’exemples (Schussler et al. 08) • Regroupement de modèles(Fink and Plotz 07, El-Hajj et al. 08) • modèles avec contextes similaires regroupés (ascendants, descendants, …) • Clustering par position d’état(state-based clustering, Natarajan et al. 06 & 09, Fink and Ploetz 07, Bianne-Bernard et al. 10) • états regroupés par lettre centrale et position dans le HMM 23
Apprentissage des modèles contextuels estimation des Paramètres (Baum-Welch) monographes initialisés (1 distribution Gauss. par état) duplication : trigraphes clustering par position d’état incrémentation # gaussiennes par mélange trigraphes finaux (n distributions Gauss. par état) 24
e-b+r e-b+i a-b+s o-b+s m-b+i r-b+o 1 2 n-1 n Clustering par position d’état e-b+r e-b+i a-b+s o-b+s m-b+i etc … position d’état ….. 25
Comment réaliser le clustering ? • Directement sur les données (data-driven) • Par arbre de décision (tree-based) • lexique de décodage indépendant de l’apprentissage 26
Clustering par position d’état à base d’arbres binaires • Notre contribution principale • Arbres construits à partir de questions binaires sur la forme des caractères à gauche et à droite de la lettre centrale 27
Clustering par position d’état à base d’arbres binaires • 1 arbre construit pour chaque numéro d’état des trigraphes *-x+* • Trouver la question q* maximisant ΔLq sur les données (frames)(Young et al. 1994) 28
Formule de Young (Young et al. 1997) L(S) = log vraisemblance de l’ensemble S des états s générant l’ensemble F de vecteurs de caractéristiques of sachant que les états s S sont liés • les états s S partagent µet ∑ • gaussienne • ∑(S) diagonale • les observations f F correspondent à l’ensemble S • γs(of) probabilité a posteriori de générer ofpar s 29
Exemple : construction de l’arbre pour la position d’état n°2 des trigraphes *-b+* *-b+* 30
Exemple : construction de l’arbre pour la position d’état n°2 des trigraphes *-b+* ensemble des états 2 pour *-b+* Q1 q tel que maximal 31
Exemple : construction de l’arbre pour la position d’état n°2 des trigraphes *-b+* ensemble des états 2 pour *-b+* Q1 : contexte gauche minuscule? non oui Q3 Q2 sil-b+r A-b+i … a-b+e a-b+d i-b+l … 31
Exemple : construction de l’arbre pour la position d’état n°2 des trigraphes *-b+* ensemble des états 2 pour *-b+* Q1 : contexte gauche minuscule? non oui Q3 : contexte droit en forme de « u »? Q2 : lien avec contexte gauche sur ligne de base basse? 31
Exemple : construction de l’arbre pour la position d’état n°2 des trigraphes *-b+* ensemble des états 2 pour *-b+* Q1 : contexte gauche minuscule? non oui Q3 : contexte droit en forme de « u »? Q2 : lien avec contexte gauche sur ligne de base basse? non oui non oui Q4 non oui 31
Réduction du nombre d’états * nombre de trigraphes différents après regroupement de modèles identiques 32
Clustering par arbres binaires important pour le décodage : • Un mot hors du lexique d’apprentissage peut être modélisé • Les trigraphes non appris sont modélisés • attribution d’un cluster à chaque état • en répondant aux questions des arbres construits à l’apprentissage 33
Exemple : attribution d’un cluster à l’état n°2 du trigraphe non appris e-b+l État n°2 de e-b+l Q1 : contexte gauche minuscule? 34
Exemple : attribution d’un cluster à l’état n°2 du trigraphe non appris e-b+l État n°2 de e-b+l Q1 : contexte gauche minuscule? non oui Q2 : lien avec contexte gauche sur ligne de base basse? Q3 34
Exemple : attribution d’un cluster à l’état n°2 du trigraphe non appris e-b+l État n°2 de e-b+l Q1 : contexte gauche minuscule? non oui Q2 : lien avec contexte gauche sur ligne de base basse? Q3 oui Q4 : contexte droit contient un ascen- dant avec boucle? oui e-b+l a-b+h 34
Exemple : attribution d’un cluster à l’état n°2 du trigraphe non appris e-b+l e-b+l a-b+h 35
Bilan des modèles HMMs en contexte • Modélisation d’un caractère en fonction de son voisinage • Augmentation du nombre d’états clustering par position d’états • Arbres binaires pour le clustering, questions sur la morphologie des caractères • Lexique de test indépendant du lexique d’apprentissage 36
Introduction à la reconnaissance d’écriture manuscrite • Objectifs et contributions de la thèse • Les modèles de Markov cachés en contexte • Applications et résultats • Conclusions et perspectives 37
Rimes : courriers manuscrits en français (Augustin et al. 2006) • 12500 documents • 1300 scripteurs • campagne 2011 mots isolés • 51738 mots pour l’apprentissage • 7464 mots pour lavalidation • 7776 mots pour letest • lexique de 5744 mots 38
IAMdb : documents en anglais (Marti et Bunke 1999) • 1540 documents • 671 scripteurs • IAM-words : • 46901 mots pour l’apprentissage • 13503 mots pour lavalidation • 13750 mots pour le test • lexique : 10K mots les plusfréquents du LOB corpus 39
OpenHart : documents manuscrits en arabe ( site web) • 40 000 documents • 450 scripteurs • 4x106 images de mots • Phase 1 : • 758 936 mots pour l’apprentissage • 84405 mots pour la validation • 48342 mots pour le test • lexique : 20K mots les plus fréquents de Phase1_Train 40
Elaboration d’un système robuste à base de HMMs indépendants du contexte Taux d’erreur sur base de validation, dictionnaire restreint (1-10K mots), nombre de gaussiennes par mélange restreint (=5) 41
Elaboration d’un système à base de HMMs contextuels • Construction des arbres : 2 paramètres à optimiser • ΔLmin: contrôle la variation de la vraisemblance des clusters enfants vs parent • Γmin : contrôle le taux d’occupation de chaque noeud ΔLminet Γmin sont optimisés sur une base de validation 42
Rimes : optimisation de ΔLminet Γmin seuil sur ΔLmin nombre final de clusters seuil sur Γmin 43