Modélisation de HMM en contexte avec des arbres de décision pour la reconnaissance de mots manuscrits
Pages 29 à 52
Citer cet article
- BIANNE-BERNARD, Anne-Laure,
- KERMORVANT, Christopher,
- LIKFORMAN-SULEM, Laurence
- et MOKBEL, Chafic,
- Bianne-Bernard, Anne-Laure.,
- et al.
- Bianne-Bernard, A.-L.,
- Kermorvant, C.,
- Likforman-Sulem, L.
- et Mokbel, C.
Citer cet article
- Bianne-Bernard, A.-L.,
- Kermorvant, C.,
- Likforman-Sulem, L.
- et Mokbel, C.
- Bianne-Bernard, Anne-Laure.,
- et al.
- BIANNE-BERNARD, Anne-Laure,
- KERMORVANT, Christopher,
- LIKFORMAN-SULEM, Laurence
- et MOKBEL, Chafic,
1 Introduction
1Nous présentons dans cet article un système à base de modèles de Markov cachés (en anglais Hidden Markov Models, soit HMM) pour la reconnaissance de mots isolés manuscrits. Une application directe de ce système est la lecture de documents manuscrits numérisés : archives, courriers envoyés aux entreprises ou aux administrations publiques, chèques, etc. Des systèmes permettant la lecture de certains types de documents ont déjà été développés avec succès, comme la lecture des montants sur les chèques (Gorski et al., 2001 ; Palacios et al., 2004 ; Ding et al., 2008 ; Suen et al., 1996 ; Paquet et al., 1993), ou bien la lecture d’adresses postales (Brakensiek et al., 2002 ; Brakensiek et al., 2004). Nous nous concentrons ici sur la lecture d’un texte manuscrit écrit sans contrainte. Cela inclut un vocabulaire très large comparé aux tâches mentionnées ci-dessus, ainsi qu’une disposition plus variée et aléatoire des zones de texte. Cette tâche malgré sa difficulté est pourtant d’un intérêt croissant. De plus, étant donné la variabilité des documents traités, le système utilisé doit être omni-scripteur (robuste à tout type de scripteurs), sans contrainte sur la forme des mots, ni sur le lexique.
2Les systèmes de reconnaissance d’écriture à base de HMM utilisent une stratégie holistique ou analytique. La première construit un modèle pour un mot, mais ne s’applique pas aux lexiques trop grands. La deuxième permet la modélisation de mots par la concaténation des modèles HMM des caractères les composant. En outre, la stratégie analytique peut utiliser une segmentation explicite de l’image du mot en caractères ou graphèmes (Gorski et al., 2001 ; Kavallieratou et al., 2002), mais il est aussi fréquent de rencontrer des systèmes dits à fenêtre glissante, dans lesquels la découpe du mot en caractères s’effectue implicitement en même temps que l’algorithme d’apprentissage ou de décodage (Vinciarelli et al., 2001 ; Toselli, 2004 ; El-Hajj et al., 2009 ; Rodriguez et al., 2008). De plus, les systèmes HMM avec stratégie analytique sont particulièrement intéressants pour la lecture d’un texte écrit sans contrainte, car n’importe quel modèle de mot peut être (re-)construit par la concaténation des modèles de ses caractères, sans avoir besoin d’exemples supplémentaires pour l’apprendre. D’ailleurs, la reconnaissance de mots par HMM peut se transformer aisément en reconnaissance de lignes ou de paragraphes à l’aide de modèles de langage (Vinciarelli et al., 2004). Enfin, les systèmes à base de HMM ont l’avantage d’être facilement applicables grâce à plusieurs librairies publiques existantes et bien documentées (par exemple : HTK (Young et al., 2006), Sphinx (Huerta et al., 1999)), et d’avoir des performances à l’état de l’art (Ploetz et al., 2009).
3Nous avons choisi l’approche analytique, et utilisons des fenêtres glissantes pour l’extraction des caractéristiques. Des systèmes similaires utilisant cette même approche existent dans la littérature. Ils diffèrent dans le choix des caractéristiques à extraire et la forme de la fenêtre glissante. Ainsi, (Rodriguez et al., 2008) utilisent des caractéristiques statistiques (histogrammes de gradient) et une fenêtre de hauteur variable, s’adaptant à la hauteur des caractères, alors que (Vinciarelli et al., 2001) utilisent une fenêtre de hauteur fixe. (El-Hajj et al., 2009) font de même, mais avec des caractéristiques géométriques. De plus, nous prenons en compte l’influence du contexte des lettres au niveau des caractéristiques, en modélisant l’influence des fenêtres glissantes voisines sur la fenêtre courante. C’est le concept de caractéristiques dynamiques. Ceci est la base de notre système générique, qui modélise les caractères par des HMM.
4Nous avons cherché à affiner notre système en construisant des modèles de caractères plus précis. Pour cela, nous avons choisi de modéliser chaque caractère en fonction de son contexte dans le mot. Cette approche est utilisée en parole pour illustrer l’effet de co-articulation, et certains travaux l’abordent dans le domaine de la reconnaissance d’écriture manuscrite (Schussler et al., 1998 ; Natarajan et al., 2006 ; Fink et al., 2007 ; El-Hajj et al., 2008). Les variations de forme d’un caractère peuvent être causées par le mouvement de la main (ductus) par exemple (Sirat, 1994). On peut choisir d’introduire la notion de contexte en agrandissant la largeur de la fenêtre glissante utilisée afin d’englober un caractère avec son contexte dans une seule fenêtre et d’en extraire des caractéristiques. Mais cela conduit à des densités de probabilité avec des Gaussiennes à large variance (et donc à des modèles peu stables). On peut aussi modéliser les variations de forme des lettres en considérant l’influence des caractères voisins sur la géométrie du caractère considéré. C’est cette solution que nous avons choisie.
5Ainsi, nous augmentons le degré de précision des modèles de lettres par la prise en compte des déformations possibles dues à l’écriture d’un même caractère dans des mots différents. Cependant, une telle modélisation implique une augmentation considérable du nombre de paramètres à calculer pour le système, qui nécessite donc un très grand nombre de données d’apprentissage afin d’estimer correctement tous les contextes de tous les caractères. C’est pourquoi nous choisissons de regrouper les paramètres des modèles. Dans la littérature, les systèmes utilisant des modèles en contexte prévoient aussi une réduction du nombre de paramètres. Une première approche utilise le partage de tous les paramètres liés aux distributions Gaussiennes : ce sont les modèles semi-continus, ou bien les systèmes partageant les états centraux des modèles avec la même lettre centrale (Nedel et al., 2000). Une deuxième approche consiste à ne conserver que les modèles en contexte avec suffisamment d’exemples, et laisser les autres modèles à l’état de monographe (Schussler et al., 1998). Enfin, une dernière approche possible est le clustering de paramètres. On peut effectuer un clustering au niveau des modèles, c’est-à-dire que deux modèles dans un même cluster sont identiques. (El-Hajj et al., 2008) utilisent cette méthode en regroupant les caractères avec des voisins ayant les mêmes formes (caractère ascendant ou descendant). Le clustering peut aussi se faire au niveau des états, avec la construction de clusters pour chaque position d’état, étant donné une lettre centrale fixe. (Fink et al., 2007 ; Natarajan et al., 2006) utilisent cette dernière approche en regroupant les contextes par catégories, et calculent leurs clusters à partir des données.
6Notre approche partage quelques propriétés avec les systèmes décrits dans (Fink et al., 2007 ; Natarajan et al., 2006) étant donné que nous modélisons aussi les caractères en fonction de leur contexte gauche et droit (modèles nommés trigraphes), et que nous faisons un partage de paramètres au niveau des états. Cependant, notre système diffère de ces approches car nous utilisons un clustering à base de nos connaissances sur la morphologie des contextes (knowledge-driven clustering) et non à base des données disponibles (data-driven clustering). A la suite d’une observation exhaustive des positions que peuvent prendre les ligatures entre deux caractères et des formes des parties latérales (partie extrême gauche et partie extrême droite) de chaque caractère, nous avons créé un ensemble original de questions binaires. Celles-ci permettent de bâtir nos clusters via des arbres de décision. Cette approche, basée sur la morphologie des contextes, permet en outre de traiter des caractères avec des contextes non appris. Ceci est très utile dans notre tâche de reconnaissance de mots étant donné que de nombreux contextes du lexique de test ne sont pas présents dans la base d’apprentissage.
7Afin de prouver l’efficacité de notre méthode, nous comparons deux systèmes : un premier système où les modèles de caractères sont indépendants du contexte (les monographes), et un second système basé sur des modèles en contexte, les trigraphes. Les systèmes HMM pour l’alphabet Latin sont en général évalués sur deux grandes bases de données publiques, la base IAM (Marti et al., 1999) et la base Rimes (Augustin et al., 2006). Nous avons choisi de montrer nos résultats sur la base Rimes car elle est très récente, et est actuellement utilisée pour des compétitions internationales. Un exemple de lettre et de mots manuscrits de la base Rimes est donné dans la figure 1.
Exemple de lettre manuscrite de la base Rimes et des mots extraits de cette lettre, traités par notre système
Exemple de lettre manuscrite de la base Rimes et des mots extraits de cette lettre, traités par notre système
8L’article s’organise ainsi : les sections 2.1 et 2.2 présentent les étapes de prétraitement des données : nettoyage des images puis extraction de caractéristiques par approche à base de fenêtre glissante. La section 2.4 présente le système générique avec des modèles indépendants de leur contexte et la section 3 introduit le système amélioré avec des modèles de trigraphes, dont les états sont groupés en clusters grâce à des arbres de décision. Nous comparons ces deux systèmes à base de fenêtres glissantes entre eux, ainsi qu’à des travaux existant dans le domaine dans la section 4. Les expériences ont été réalisées sur la base Rimes 2009 (Grosicki et al., 2009), qui est la dernière version à ce jour depuis son lancement (Augustin et al., 2006).
2 – Système de reconnaissance d’écriture à base de HMM de monographes
2.1 – Prétraitement et normalisation des images
9Les premières étapes d’un système de reconnaissance d’écriture manuscrite consistent à préparer les données : normaliser les images en entrée, et en extraire les caractéristiques qui permettront de calculer les modèles. Nous limitons l’étape de la normalisation à la correction de l’inclinaison des caractères au niveau du mot. Les images ne sont pas normalisées en taille car les caractéristiques extraites par la suite sont indépendantes de la hauteur de l’image, et la modélisation HMM est robuste à un nombre variable de vecteurs de caractéristiques correspondant à un même modèle.
10Afin de calculer des caractéristiques propres aux ascendants et descendants, les lignes de base des mots sont calculées. Nous nous sommes inspirés du travail de (Vinciarelli et al., 2001) pour notre correction d’inclinaison et notre calcul de lignes de base. Nous avons adapté leur algorithme pour images binaires à des images en niveau de gris. Les lignes calculées sont fixes, comme illustré sur la figure 2 (les lignes de base haute et basse sont les deux lignes horizontales). Le calcul de l’angle d’inclinaison se fait par maximisation de l’entropie du profil de la projection horizontale des pixels de l’image.
Illustration de l’extraction de caractéristiques géométriques par fenêtre glissante
Illustration de l’extraction de caractéristiques géométriques par fenêtre glissante
2.2 – Extraction de caractéristiques
11L’extraction de caractéristiques s’inspire des travaux de (El-Hajj et al., 2005 ; El-Hajj et al., 2009) et utilise des fenêtres glissantes parcourant l’image de gauche à droite, comme illustré sur la figure 2. Les fenêtres sont divisées verticalement en un nombre fixe de cellules ncells et sont de largeur w pixels. Dans chaque fenêtre sont extraites w + 20 caractéristiques : 2 sont reliées au nombre de transitions caractère/arrière-plan, 12 aux configurations de pixels (calcul de concavités), 2 à la position du centre de gravité, dont une dérivative (différence des positions verticales), et les autres sont reliées aux densités de pixels. Certaines de ces caractéristiques dépendent de la position des lignes de base. Les images en niveau de gris sont binarisées avec la méthode de (Otsu, 1979) afin de calculer les caractéristiques de transition caractère/arrière-plan ainsi que celles de configuration de pixels.
12Nous avons optimisé la largeur w des fenêtres glissantes, le décalage ? entre deux fenêtres consécutives et le nombre de cellules ncells dans chaque fenêtre (comme illustré sur la figure 2) sur une base de validation indépendante. Le choix des paramètres est discuté dans la section 4.
2.3 – Caractéristiques dynamiques
13Afin d’ajouter de l’information sur l’environnement d’un caractère, nous avons choisi dans un premier temps d’agir au niveau des caractéristiques. Avec une dérivation, la dynamique des fenêtres glissantes entourant la fenêtre courante est prise en compte. Si p est l’abscisse en pixels de la fenêtre courante, alors la dérivation prendra en compte les fenêtres situées aux positions p ? ? ? i et p + ? ? i, pour 1 ? i ? K. ? est le décalage entre deux fenêtres consécutives et K le nombre de fenêtres participant au calcul des caractéristiques dérivées. La dérivation est calculée par une régression, donc K représente aussi la profondeur de la régression. En reconnaissance de la parole, les régressions du premier et second ordre sont connues respectivement comme les coefficients delta et delta-delta des caractéristiques cepstrales.
14Soit ok le vecteur de caractéristiques de la fenêtre courante (à la position p), et ok+i (resp. ok?i) celui de la fenêtre décalée de i ? ? (resp. ?i ? ?) pixels, située à l’abscisse p + i ? ? (resp. p ? i ? ?). La régression du premier ordre du vecteur de caractéristiques ok s’écrit :
162 ? K vecteurs oj sont donc pris en compte pour le calcul des caractéristiques dynamiques.
17Le vecteur de caractéristiques final, en entrée du système, est alors la concaténation du vecteur initial ok et de sa régression au premier ordre ?ok. Nous montrons dans la section 4 que cet ajout permet d’améliorer les performances de notre système de reconnaissance d’écriture manuscrite.
2.4 – Modélisation de caractères indépendamment de leur contexte
18Le premier système présenté dans cet article est le système générique qui ne prend pas en compte les contextes des caractères. Il utilise une stratégie analytique et procède sans segmentation. Un mot est modélisé par la concaténation des caractères le composant, comme illustré sur la figure 3. Tous les modèles de caractères suivent la topologie de Bakis avec S états émetteurs (transitions gauche-droite et saut d’état autorisé). La densité de probabilité des observations est un mélange de NG distributions Gaussiennes. Le mélange est obtenu par incrémentations successives du nombre de Gaussiennes suivies à chaque étape de ré-apprentissage avec l’algorithme Baum-Welch. Le passage de m à m +1 Gaussiennes se fait en clonant la Gaussienne de poids le plus fort dans une nouvelle Gaussienne. Chacune reçoit comme nouveau poids la moitié du poids de la Gaussienne initiale, et est décalée par l’addition (soustraction) d’une distribution normale de faible variance (?split par défaut vaut 0.2). Le nombre optimal NG de gaussiennes dans les mélanges est obtenu par des tests sur une base de validation.
Modélisation d’un mot par la concaténation des caractères le composant
Modélisation d’un mot par la concaténation des caractères le composant
19Etant donné que les modèles de notre système de base sont indépendants des contextes, chaque caractère a un unique modèle lui correspondant. Nous appelons ces modèles des ’monographes’. Notre système étant testé sur du français (cf. figure 1), nous prenons en compte les accents, car l’accentuation d’une lettre peut changer la signification d’un mot (’du’/’dû’ par exemple). Ainsi nous définissons un total de 78 monographes différents, comprenant des chiffres, des caractères accentués ou non, en majuscule ou minuscule, et des symboles (apostrophe, pourcentage, trait d’union). Dans notre système, a est donc différent de A et é est différent de e.
20Le décodage se fait avec l’algorithme Viterbi. Il n’y a aucune connaissance a priori de la vraisemblance des mots du vocabulaire, donc les mots du test ont tous la même probabilité. Nous utilisons le Hidden Markov Model Toolkit (HTK) (Young et al., 2006) pour l’apprentissage et le décodage.
3 – Système de reconnaissance d’écriture à base de HMM de trigraphes
3.1 – Introduction
21Nous avons vu dans la section 2.3 comment introduire une notion de contexte au niveau des caractéristiques avec une régression. Nous souhaitons maintenant exploiter l’observation présentée sur la figure 4 : un caractère a une forme variable suivant sa position dans un mot et les lettres qui l’entourent. Le système présenté ici prend en compte cette idée en modélisant un caractère en fonction de son contexte gauche et droit : un trigraphe.
Illustration des différentes formes que peut prendre un caractère selon son contexte : "i" et "n" ont une forme différente pour chaque apparition dans les mots ci-dessus
Illustration des différentes formes que peut prendre un caractère selon son contexte : "i" et "n" ont une forme différente pour chaque apparition dans les mots ci-dessus
22Une telle modélisation est utilisée en parole pour simuler l’effet de co-articulation, et les modèles sont nommés triphones (Lee, 1990). Mais, comme nous l’avons mentionné dans l’introduction (section 1), très peu de travaux de reconnaissance de l’écriture abordent les modèles en contexte et explorent leurs avantages. Il est vrai que l’inconvénient majeur de la modélisation des caractères en fonction de leur contexte est que le nombre de paramètres des HMM de tous les trigraphes possibles à modéliser est très élevé, et que pour un vocabulaire de taille moyenne (4 000 mots), le manque de données pour l’apprentissage devient un problème récurrent. Il existe pourtant des méthodes pour réduire ce nombre, basées sur le partage des paramètres entre modèles, ou entre états par exemple. Nous avons choisi d’utiliser une méthode de clustering sur les positions d’états afin de pallier ce problème et d’inclure efficacement des trigraphes dans notre système.
23Le prétraitement des images en entrée et l’extraction des caractéristiques (géométriques et dynamiques) sont identiques à ce qui est fait dans le système générique et décrit dans les sections 2.1, 2.2 et 2.3. L’apport majeur de notre système, outre la modélisation de caractères en fonction de leur contexte, est l’usage d’un processus de partage de paramètres utilisant un clustering d’états basé sur des arbres de décision binaires (voir section 3.3). Ces derniers sont construits à partir de questions originales que nous avons définies après observation de la morphologie des caractères présents dans le lexique (voir section 3.3.2).
3.2 – Modélisation de caractères en contexte
24Le principe de modélisation de caractères en fonction de leur contexte est assez naturel, car il nous paraît logique que la forme d’un caractère varie en fonction des lettres qui l’entourent. Ceci est illustré pour les caractères n et i dans la figure 4. De plus, étant donné que les deux mots de cette figure on été écrits par le même scripteur, on peut imaginer la variabilité des contextes qui peut exister dans une base de données multiscripteur de grande taille, telle que la base Rimes.
25Cette modélisation consiste à définir un mot non pas comme une succession de caractères, mais comme une succession de caractères avec leur contexte. Les monographes de la section 2.4 sont remplacés par des trigraphes, où le caractère central est influencé par le caractère à sa gauche (contexte gauche) et celui à sa droite (contexte droit). D’un point de vue syntaxique, nous définissons un contexte gauche avec un signe moins ’-’, et un contexte droit avec un signe plus ’+’. Ainsi, le monographe i de la figure 4.a, entouré d’un s et d’un e, devient, en contexte, le trigraphe s ? i + e. De même sur la figure 4.b, la lettre d entourée par un espace et un i se définit comme le trigraphe ?? d + i.
26Une fois que l’ensemble des trigraphes à apprendre est déterminé, l’étape suivante est le processus d’apprentissage. Celui-ci pourrait être effectué directement à partir des trigraphes précédemment définis, mais certains d’entre eux ont trop peu d’exemples dans la base d’apprentissage. De plus, le nombre de paramètres à calculer croit lorsque le nombre de Gaussiennes dans les mélanges des densités de probabilités augmente. Ainsi, pour les 4 500 différents trigraphes présents dans la base d’apprentissage et une topologie de modèles avec S états émetteurs et NG Gaussiennes dans chaque mélange, si S et NG sont de l’ordre de 10, le nombre de paramètres à calculer monte à presque un demi-million, ce qui est tout à fait prohibitif étant donné la quantité de données disponibles. C’est pourquoi nous considérons à présent le partage de paramètres par un clustering d’états, afin de pallier le problème du manque de données d’apprentissage ainsi que celui du trop grand nombre de modèles à calculer.
3.3 – Apprentissage des trigraphes et partage des paramètres HMM
3.3.1 – Présentation générale
27Dans cette section, nous présentons en détail notre système paramétrant les HMM de caractères en fonction de leur contexte, schématisé sur la figure 5. Nous détaillons les étapes de mise en place du partage des paramètres entre trigraphes précédant le processus final d’apprentissage.
Présentation générale du système à base de HMM de caractères en contexte
Présentation générale du système à base de HMM de caractères en contexte
28Le premier apprentissage est celui des monographes du lexique d’apprentissage. Les monographes sont initialisés avec une seule distribution Gaussienne associée à chaque état, puis plusieurs ré-estimations sont effectuées avec l’algorithme Baum-Welch. Les trigraphes sont alors eux-mêmes initialisés en copiant les modèles appris des monographes : pour un monographe donné, tous les trigraphes de la base d’apprentissage centrés sur ce caractère sont listés, et le HMM du monographe est copié pour correspondre au modèle initial de chacun des trigraphes. Ensuite, une première ré-estimation (avec 2 itérations) Baum-Welch de tous les trigraphes est effectuée. Durant cette étape, nous avons choisi de partager les matrices de transition entre trigraphes avec le même caractère central. Nous avons en effet observé qu’une fois la topologie d’un modèle choisi, des modifications sur les coefficients de la matrice de transition ont une très faible influence sur la phase de reconnaissance. Considérant cette information, nous avons alors imposé que les trigraphes ayant la même racine (tous les ? ? a + ?, puis tous les ? ? b + ?, etc.) partagent leur matrice de transition. Ainsi, le nombre de matrices à calculer se réduit au nombre initial de monographes.
29La seconde étape de notre système est le clustering d’états appliqué aux trigraphes. Le principe du clustering état par état est que, pour les trigraphes associés à une lettre centrale donnée, tous les états correspondant à une même position dans le modèle HMM sont soumis à un clustering. Cette étape est illustrée plus en détails sur la figure 6. Soit c le caractère central considéré. Nc différents trigraphes existent dans la base d’apprentissage, centrés sur c. Donc pour chaque position d’état i des trigraphes ? ? c + ?, 1 ? i ? S, Nc différents états devraient être calculés. L’utilisation de clusters d’états permet la réduction du nombre de modèles à calculer. Ainsi pour la position d’état numéro i, ni ? Nc clusters sont sélectionnés pour représenter tous les états de la position i, définissant ni différents modèles d’états si,j, 1 ? j ? ni. Un état en position i prend alors sa valeur dans l’un des si,j modèles. Nous rappelons que pour des raisons de complexité, un modèle d’état est représenté par une seule distribution Gaussienne durant la phase d’initialisation des trigraphes et des clusters d’états.
Illustration du clustering d’états pour les trigraphes centrés sur la lettre b
Illustration du clustering d’états pour les trigraphes centrés sur la lettre b
30(Fink et al., 2007 ; Natarajan et al., 2006) ont montré l’efficacité de ce type de groupement. Nous différons de ce qu’ils proposent dans l’utilisation d’arbres de décision pour calculer nos clusters. Nous expliquons en détail notre méthode de calcul en section 3.3.2. Cette étape nous a permis de réduire le nombre de paramètres d’un facteur 10.
31Finalement, étant donné que le clustering d’états entraîne une réduction importante du nombre d’états différents, certains trigraphes se retrouvent partager exactement les mêmes états, et donc être identiques. Nous groupons donc dans une dernière étape les trigraphes identiques, ce qui permet de réduire encore le nombre de modèles, le divisant par trois.
32Une fois le calcul et la mise en place des clusters d’états terminés, le système est prêt à finir d’apprendre les modèles des caractères en contexte. En utilisant l’algorithme Baum-Welch pour les étapes de ré-estimation des paramètres des HMM, nous augmentons de manière incrémentale le nombre de Gaussiennes dans chaque mélange, en utilisant la même procédure que celle décrite dans la section 2.4 pour les monographes. Ainsi, chaque trigraphe atteint une topologie identique à celle des monographes du système générique, c’est-à-dire S états émetteurs et NG distributions Gaussiennes par état. Cela nous permet de comparer directement les deux approches, contextuelle et non contextuelle.
3.3.2 – Arbres de décision pour clustering d’états de trigraphes
33Le clustering par arbres de décision est une alternative au clustering guidé par les données. Il se base sur une mesure de distance entre modèles utilisant la maximisation de la vraisemblance, et permet une découpe de clusters contrôlée. Ce type de clustering a d’abord été proposé pour la parole (Young et al., 1994) où il donne des résultats au niveau de l’état de l’art avec un système moins complexe que d’autres systèmes avec modèles en contexte. Le regroupement et la séparation de clusters d’états sont conduits par un arbre binaire dont chaque nœud correspond à une question rhétorique sur les contextes des modèles. Dans notre cas, les questions sont définies sur les caractéristiques morphologiques des contextes gauche et droit des caractères. Un arbre est construit pour chaque position d’état de tous les trigraphes correspondant à une même lettre centrale. Nous définissons ainsi 78 lettres centrales ? S états par caractère arbres différents.
34Pour construire un arbre, tous les états correspondant à une même position pour une lettre centrale donnée sont d’abord regroupés au nœud racine. Ensuite, la question binaire qui sépare le groupe en deux sous-groupes de vraisemblance maximale est choisie, et la séparation est effectuée, créant deux nouveaux nœuds. Il en va ainsi de la scission de chaque nœud jusqu’à ce que l’augmentation de la vraisemblance descende sous un seuil, ou bien jusqu’à ce que plus aucune question ne soit disponible qui puisse créer deux sous-groupes avec un taux d’occupation d’états suffisant.
35On peut formuler mathématiquement le clustering par arbres de décision. Soit P l’ensemble d’états présents dans le nœud courant. P est associé au sous-ensemble F d’observations (vecteurs de caractéristiques) {of}f?F. Par définition, tous les états présents dans P sont les membres d’un même cluster, ils partagent donc les mêmes moyenne ?(P) et variance ?(P). Par suite, la vraisemblance de P générant l’ensemble des {of}f?F s’écrit :
37Pour plus de clarté, nous simplifierons désormais L({of}f?F ; P) en L(P). Dans l’équation [2], ?s(of) est la probabilité a posteriori que le vecteur de caractéristiques of soit généré par l’état s ? P. En supposant que la densité de probabilité représentée par (?(P), ?(P)) est une Gaussienne et de matrice de covariance diagonale, on peut l’estimer à partir des échantillons {of}f?F, et L(P) peut être reformulé par (Young et al., 1994) :
39n est la dimension des vecteurs of et ?(P) est le taux d’occupation d’états cumulé du nœud courant :
41La séparation de P en deux sous-groupes Pq+ et Pq? est alors faite par la question q? qui maximise ?Lq, défini par :
43La scission se fait à condition que ?(Pq+) et ?(Pq?) soient au-dessus du taux minimal d’occupation NP, et que ?Lq soit plus grand que le seuil minimal de croissance de variance ?LR. Le choix des paramètres NP et ?LR est effectué sur une base de validation (voir section 4.2.3).
44La minimisation de l’équation [5] peut être reformulée (Zen et al., 2003) :
46Les questions q définissant les arbres de décision pour la reconnaissance de la parole on été réalisées par des experts (Odell, 1992). A notre connaissance, personne n’utilise de tels arbres pour l’écrit. Nous avons donc proposé des questions en rassemblant des caractères semblables dans différents contextes. L’ensemble des questions que nous avons créées contient des questions générales, pour permettre des clusters de grande taille, mais aussi des questions précises, au cas où des clusters plus petits doivent être créés, et des questions intermédiaires. Les questions sont uniquement fonctions des contextes (gauche et droit). Par exemple :
- (question générale) le contexte droit est-il une lettre majuscule ? minuscule ? Contient-il un ascendant ?
- (question intermédiaire) le contexte gauche contient-il une boucle ("o", "b", "d", etc.) ? Une barre verticale ("t", "p", etc.) ?
- (question précise) est-ce que le lien avec la lettre suivante (précédente) se situe sur la ligne de base basse ("a", "c", etc.) ? Sur la ligne de base haute ("v", "w", etc.) ?
3.3.3 – Reconnaissance de mots avec modèles de caractères en contexte
47Au-delà de l’apport original des arbres binaires pour le calcul des clusters, l’utilisation d’arbres de décision apporte une fonctionnalité supplémentaire très utile lors du décodage : elle permet de sélectionner les clusters qui serviront à modéliser les états des trigraphes non vus lors de l’apprentissage. En effet, nous utilisons pour nos tests des lexiques prédéterminés. Par exemple, pour la base Rimes 2009, deux lexiques ont été donnés pour le test, chacun contenant des mots non existants dans le lexique d’apprentissage. Ainsi, plusieurs nouveaux mots, et donc plusieurs nouveaux trigraphes apparaissent, qui n’ont pas été appris. Le clustering par arbres permet de les modéliser car il peut adapter les modèles appris à n’importe quel vocabulaire (basé sur les mêmes monographes de départ). Si nous avions calculé nos clusters par une distance entre les données (Kullback-Liebler) par exemple (data-driven clustering), cela n’aurait pas été possible. En effet, ne disposant pas de données étiquetées pour apprendre les nouveaux trigraphes, un calcul de distance aux clusters les plus proches n’est pas envisageable.
48La modélisation d’un trigraphe inconnu se fait de la manière suivante : chaque état du trigraphe est positionné à la racine de l’arbre correspondant au même numéro d’état et à la même lettre centrale. Ensuite, chaque état parcourt son arbre, répondant aux questions sur les contextes du nouveau trigraphe, jusqu’à atteindre un nœud où est positionné un cluster. Le modèle d’état représentant le cluster est alors le modèle assigné au numéro d’état considéré. Cette procédure est illustrée sur la figure 8 pour l’assignation d’un modèle à l’état numéro 2 du trigraphe inconnu m ? b + e. L’arbre de décision pour cette position d’état a été calculé lors de la phase d’apprentissage et est représenté sur la figure 7. Plaçons l’état numéro 2 de m ? b + e, non attribué, au nœud racine de l’arbre. La première question posée est : Le contexte gauche est-il en minuscule ? Etant donné que m est une minuscule, la réponse est oui, donc l’état descend vers le nœud correspondant à la réponse oui, où une nouvelle question est posée : Le lien avec le contexte gauche est-il sur la ligne de base basse ? Après avoir répondu à cette question, le processus est recommencé jusqu’à ce que l’état atteigne un cluster. Dans notre cas, les réponses successives mènent au cluster s2_1, qui est donc le modèle choisi pour l’état numéro 2 de notre trigraphe inconnu.
Exemple d’arbre de décision pour le clustering d’états : l’ordre des questions et les clusters sont associés à un état donné (ici l’état numéro 2) de tous les trigraphes ? ? b + ?
Exemple d’arbre de décision pour le clustering d’états : l’ordre des questions et les clusters sont associés à un état donné (ici l’état numéro 2) de tous les trigraphes ? ? b + ?
49La capacité des arbres de traiter des trigraphes non vus a été très utile pour nos expériences sur la base Rimes. Les lexiques d’apprentissage et de test étant différents, plusieurs centaines de nouveaux trigraphes devaient être modélisés.
Sélection de cluster pour l’état 2 du trigraphe de test m ? b + e non appris (absent du lexique d’apprentissage mais présent dans celui du test)
Sélection de cluster pour l’état 2 du trigraphe de test m ? b + e non appris (absent du lexique d’apprentissage mais présent dans celui du test)
4 – Expériences
4.1 – La base de données Rimes
50La base de données Rimes a été rendue disponible en 2006 (Augustin et al., 2006). Des exemples sont donnés sur la figure 1. Elle rassemble plus de 12 500 documents manuscrits écrits par environ 1 300 volontaires. Elle a été créée pour répondre au besoin récurrent de bases complètes d’images propres et de taille suffisante. Peu de contraintes ont été imposées aux scripteurs (papier blanc et thème principal) : les documents sont donc très variables, ce qui rend la base réaliste. A partir des documents collectés, il est possible d’évaluer des systèmes de reconnaissance de logo, d’analyse de structure de texte, et de reconnaissance de mot, caractère, ligne, ou paragraphe. Notre travail se concentre pour l’instant sur la reconnaissance de mots isolés.
51Des campagnes d’évaluation ont eu lieu depuis 2007, ce qui nous permet de nous comparer à l’état de l’art. Nous utilisons dans cet article les données et la procédure de la campagne Rimes-ICDAR 2009 (Grosicki et al., 2009). L’ensemble d’apprentissage est composé de 44 196 images de mots isolés pour un lexique de 4 500 mots différents. Un ensemble de validation de 7 542 mots issus d’un lexique de taille 1 636 est donné. L’ensemble de test est quant à lui composé de 7 464 images de mots isolés pour un lexique de 1 612 mots. Plus de 300 mots du lexique de validation n’existent pas dans le lexique d’apprentissage, et plus de 300 autres sont ajoutés par le lexique de test par rapport à la concaténation des deux lexiques précédents. Des nouveaux mots signifient souvent des nouveaux trigraphes, ce qui nous ramène aux raisons mentionnées dans la section 3.3.3 sur le choix de l’utilisation d’arbres de décision pour la construction des clusters.
4.2 – Mise en place du protocole expérimental
4.2.1 – Extraction des caractéristiques
52Nous avons fait varier la largeur w des fenêtres glissantes, l’espace ? entre deux fenêtres consécutives, et le nombre de cellules ncells utilisées pour l’extraction des caractéristiques afin de trouver les meilleurs paramètres pour nos expériences. Pour cela, nous avons utilisé un système générique où les caractères sont non seulement indépendants du contexte mais aussi modélisés sans prendre en compte leur casse ou leur accentuation. Ainsi, "a", "A" et "à" ont le même modèle. Ceci nous permet de faire des apprentissages et décodages rapides. Les modèles sont appris sur la base d’apprentissage de Rimes et évalués sur la base de validation et son lexique. Pour chaque ensemble de caractéristiques, nous avons fait varier le nombre d’états par HMM de caractère entre 5 et 15 afin d’évaluer les paramètres optimaux d’apprentissage. Le tableau 1 donne les taux de reconnaissance (calculés sans prendre en compte la casse ou les accents) des 4 meilleurs ensembles de caractéristiques testés, chacun avec son nombre optimal d’états par caractère, pour un nombre de gaussiennes variant de 10 à 40.
Comparaison de différents paramètres pour l’extraction des caractéristiques, sur un système générique appris sur la base d’apprentissage de Rimes et testé sur la base de validation
Comparaison de différents paramètres pour l’extraction des caractéristiques, sur un système générique appris sur la base d’apprentissage de Rimes et testé sur la base de validation
53D’après les résultats obtenus, nous choisissons les paramètres w = 8 pixels, ? = w/2 = 4 pixels et ncells = 20 cellules, donnant 28 caractéristiques différentes. Nous nommons par la suite cet ensemble de caractéristiques w8d4c20, pour lequel le nombre optimal d’états par caractère est S = 8. Enfin, nous choisissons pour la suite d’établir le nombre NG de distributions Gaussiennes par état à NG = 20, car cela correspond au meilleur compromis entre performance du reconnaisseur et temps de calcul : un décodage avec 40 gaussiennes nécessite 50 % de temps en plus qu’un décodage avec 20 gaussiennes (600 ms au lieu de 400 ms par mot) et un décodage avec 30 gaussiennes dans chaque mélange apporte peu d’améliorations par rapport à 20 gaussiennes.
4.2.2 – Caractéristiques dynamiques
54En utilisant le même système générique et indépendant de la casse, ainsi que les paramètres d’extraction de caractéristiques et la topologie des modèles précédemment choisis, nous avons évalué l’influence d’une régression sur les caractéristiques sur les performances du reconnaisseur. Pour un même nombre d’états et de distributions Gaussiennes par état (respectivement 8 et 20), le taux de reconnaissance passe de 68,42 à 72,33 % sur la base de validation de Rimes, ce qui représente un gain relatif de 5,7 %. Afin d’avoir des résultats plus complets, nous avons aussi évalué notre système avec l’ajout d’une régression du second ordre sur les caractéristiques en plus de la régression du 1er ordre déjà effectuée. La régression du second ordre se calcule de la même manière que la première, en remplaçant of par ?of dans l’équation [1]. Une amélioration de 3 % en absolu est observée, mais celle-ci étant moindre que celle apportée par une régression du premier ordre, elle n’est pas utilisée.
55A la suite de ces expériences, nous choisissons donc de conserver une régression du premier ordre sur notre ensemble de caractéristiques, ce qui amène les vecteurs de caractéristiques à être de dimension 2 ? 28 = 56.
4.2.3 – Paramètres des arbres de décision
56Nous avons présenté en section 3.3.2 la méthode de scission d’un nœud d’un arbre par la question q? maximisant ?L(q). Pour le calcul des clusters, deux paramètres restent à établir, ?LR et NP :
- ?LR est la valeur minimale que peut prendre ?L(q?). Si, quelle que soit la question q, ?L(q) est inférieur à ?LR, alors le nœud n’est pas scindé et devient un cluster.
- NP est le taux d’occupation d’états minimal du nœud contenant l’ensemble d’états P partageant leurs paramètres. Ce seuil permet d’avoir des clusters de taille suffisante et donc des états correctement estimés. Mathématiquement, pour un état j ? P, Nj est la somme sur toutes les observations de la probabilité d’être dans l’état j, et NP est la somme de tous les Nj pour j ? P.
57Comme indiqué sur la figure 9, nous avons choisi la paire (?LR = 450, NP = 450) pour notre système final. Ces paramètres représentent le meilleur équilibre entre le taux de reconnaissance (76, 13 % pour 10 Gaussiennes sur la base de validation), le temps de calcul des clusters, et celui pour le décodage. Graphiquement, il est le point le plus en haut à gauche de la figure 9. Le système choisi définit un total de 1 924 états différents. Au vu du faible nombre d’états différents par rapport aux trigraphes présents dans la base d’apprentissage, certains trigraphes se trouvent partager exactement les mêmes états. Le nombre de trigraphes différents diminue donc aussi. Pour notre système, ce nombre passe de 4 784 à 2 130 sur la base d’apprentissage.
Influence du nombre final d’états (clusters) différents sur le taux de reconnaissance (base de validation ; 8 états/trigraphe ; 10 distributions Gaussiennes/état)
Influence du nombre final d’états (clusters) différents sur le taux de reconnaissance (base de validation ; 8 états/trigraphe ; 10 distributions Gaussiennes/état)
4.3 – Résultats
58Une fois le protocole expérimental posé, nous pouvons évaluer les deux systèmes présentés dans cet article sur la base de test de Rimes-ICDAR 2009 (Grosicki et al., 2009). Deux expériences sont menées pour des dictionnaires de test de différente taille. Une première expérience utilise un dictionnaire contenant 5 334 mots différents. Une autre utilise le dictionnaire restreint contenant uniquement les mots du test, soit 1 612 mots. Les modèles sont appris en distinguant la casse et les accents. Le taux de reconnaissance est évalué sans prendre en compte la casse, mais en respectant les accents, conformément au protocole de la compétition Rimes-ICDAR 2009.
59Pour rappel, le premier système (CI) modélise les caractères indépendamment de leur contexte. Décrit dans la section 2.4, il présente une topologie de 8 états par caractère et 20 distributions Gaussiennes par état. Le second système (CD) est celui décrit dans la section 3, modélisant les caractères en fonction de leur contexte : les trigraphes. Nous avons compté 297 nouveaux trigraphes présents dans la base de test et non dans les bases d’apprentissage ou de validation. Les arbres de décision nous ont donc permis de leur allouer des modèles. Les paramètres du système CD sont fixés sur la base d’apprentissage (calcul et répartition des clusters). Pour l’apprentissage final des Gaussiennes (après l’étape de partage des paramètres et avant l’incrémentation du nombre de Gaussiennes dans chaque mélange), nous avons testé deux méthodes, l’une utilisant simplement les données de l’ensemble d’apprentissage, l’autre utilisant ces données plus celles de l’ensemble de validation.
60Les résultats sont donnés sur le tableau 2. Pour chaque système, nous montrons le taux de reconnaissance obtenu sur chacun des lexiques proposés pour le test avec un intervalle de confiance binomial.
Comparaison des systèmes présentés, modélisant les caractères en fonction de leur contexte (CD) ou non (CI). Résultats sur la base de test de Rimes 2009 contenant 7 464 images
Comparaison des systèmes présentés, modélisant les caractères en fonction de leur contexte (CD) ou non (CI). Résultats sur la base de test de Rimes 2009 contenant 7 464 images
61Deux observations majeures peuvent être lues sur le tableau 2 :
- d’une part, l’augmentation du nombre de données pour l’apprentissage permet une amélioration des performance (plus de 2 % pour le système CI, et de 1 % pour le système CD). Cela nous motive à poursuivre des expériences sur l’ajout de données pour obtenir une meilleure modélisation.
- d’autre part, on remarque que la modélisation des caractères en fonction de leur contexte améliore considérablement les performances, quel que soit le lexique utilisé lors du décodage. Ainsi, pour un système appris sur le plus de données possible, l’amélioration est de 4,8 % pour le petit dictionnaire, et de près de 7 % pour le plus grand. Ainsi, même si les systèmes dits ’CD’ ont plus de paramètres à calculer (1 924 états, au lieu de 8 (états pas caractère) * 78 (monographes) = 624 états), ils obtiennent de meilleurs résultats. Ceci est dû à la plus grande précision dans la modélisation des caractères, mais aussi à la gestion de la taille des clusters d’états, correctement paramétrée grâce à une étape de validation (cf. figure 9).
4.4 – Comparaison avec l’état de l’art
62Le tableau 3 montre la performance de notre système par rapport aux systèmes à base de HMM uniquement, présents dans la compétition ICDAR.
Comparaison avec l’état de l’art des systèmes à base de HMM uniquement sur la base de test Rimes 2009
Comparaison avec l’état de l’art des systèmes à base de HMM uniquement sur la base de test Rimes 2009
63Le système proposé par l’Irisa (Guichard et al., 2010) est basé sur des HMM à densités continues. Le pré-traitement des images est standard, et les caractéristiques, décrites dans (Bazzi et al., 1999), sont extraites par des fenêtres glissantes et dépendent des lignes de base. Le nombre d’états par modèle de caractère varie.
64Le Litis quant à lui propose un système à base de HMM multiflux (Kessentini et al., 2008). Deux ensembles de caractéristiques sont extraits (l’un basé sur les contours, l’autre sur les densités de pixels) de deux fenêtres glissantes distinctes. Chaque ensemble permet la modélisation d’un système HMM, correspondant à un flux.
65Nous pouvons voir sur le tableau 3 que le résultat obtenu par notre système dépasse les performances des autres systèmes de la compétition basés uniquement sur des HMM. Ce résultat très positif nous permet de démontrer la capacité de la modélisation de caractères en contextes à être utilisée pour la reconnaissante d’écriture manuscrite hors-ligne. Avec un temps de décodage rapide, les performances obtenues dépassent celles de l’état de l’art des systèmes HMM.
66Il nous faut cependant compléter cette comparaison avec d’autres systèmes, présents lors de la compétition ICDAR 2009. Le système gagnant, à base de réseaux de neurones récurrents (RNN) (Graves et al., 2007 ; Graves et al., 2009), et présenté par TUM (Technische Universität München), donne un taux de reconnaissance remarquable, de 93,2 %. La principale différence entre les RNNs et les HMM est que l’un utilise un apprentissage discriminatif et l’autre génératif. Cependant, si les résultats des RNNs sont à leur avantage pour la reconnaissance de mots isolés, on peut se poser la question de la généralisation à la lecture de lignes ou de textes complets. Aussi, l’avantage des HMM est leur adaptation à n’importe quel vocabulaire de test, ce qui n’est pas valable pour les RNNs.
67Deux autres systèmes présentent aussi de bons résultats : le système présenté par l’UPV (Toselli, 2004), et celui présenté par Siemens (Caesar et al., 1993 ; Kaltenmeier et al., 1993 ; Schambach, 2003), donnant respectivement 86,1 % et 81,3 % de taux de reconnaissance. Ces deux systèmes, bien qu’utilisant en partie des HMM, ne sont pas cités ici car ils sont issus de combinaisons de plusieurs systèmes, et les performances des systèmes seuls n’étant pas fournies, leurs résultats ne sont pas comparables à ceux de notre reconnaisseur à base de modèles en contextes, présenté seul. La combinaison de systèmes est pourtant une solution intelligente à l’amélioration d’un système global, c’est pourquoi nous l’avons aussi envisagé (Kermorvant et al., 2010), mais cela ne rentre pas dans le cadre de cet article.
5 – Conclusion
68Nous avons présenté un système basé sur des modèles HMM dépendant de leur contexte ainsi qu’un clustering d’états pour la reconnaissance hors-ligne de mots manuscrits. Les HMM ne modélisent plus des caractères isolés mais des trigraphes, ce qui augmente considérablement le nombre de modèles à calculer. Ce nombre est réduit par un clustering d’états à l’aide d’arbres de décision. Ce type de clustering permet en outre de gérer des lexiques de test contenant des mots et des trigraphes non vus à l’entraînement, et de les associer à un modèle connu.
69Comparé à un système HMM générique, la performance est améliorée de 7 % en absolu sur un lexique large de décodage, ce qui correspond à réduction relative de plus de 20 % du taux d’erreur. De plus, notre système en contexte donne de meilleurs résultats que l’état de l’art des systèmes à base de HMM publié sur la base Rimes 2009.
70Il reste encore des pistes à explorer dans le clustering par arbres de décision pour la reconnaissance d’écriture manuscrite hors-ligne. Par exemple, nous considérons l’automatisation de la sélection des seuils ?LR et NP, et la présélection des monographes à contextualiser grâce à une analyse de la variance de vraisemblance de chaque modèle. Aussi, d’autres questions peuvent être ajoutées à l’ensemble proposé pour affiner les critères de scission des nœuds des arbres. Ces méthodes pourront être ensuite appliquées à d’autres bases de données de manière automatique.
71Nous pourrons aussi considérer un travail supplémentaire en amont, sur l’extraction de caractéristiques et l’affinage de la topologie des modèles. L’ajout de caractéristiques de corrélation inter-fenêtres est considéré pour affiner l’aspect dynamique des vecteurs d’observations.
72Enfin, la tâche de reconnaissance de mots peut être élargie à la reconnaissance de lignes, phrases, ou paragraphes. Pour cela, des outils tels que les modèles de langages peuvent être utilisés, qui améliorent encore les performances du système proposé. Ceci constitue la prochaine étape de notre recherche.
6. Bibliographie
- Augustin E., Carre M., Grosicki E., Brodin J.-M., Geoffrois E., Preteux F., « RIMES evaluation campaign for handwritten mail processing », Proceedings of the Tenth International Workshop on Frontiers in Handwriting Recognition - IWFHR06, p. 231-235, October, 2006.
- Bazzi I., Schwartz R., Makhoul J., « An Omnifont Open-Vocabulary OCR System for English and Arabic », IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 21, n° 6, p. 495-504, 1999.
- Brakensiek A., Rigoll G., « Handwritten Address Recognition Using Hidden Markov Models », in A. Dengel, M. Junker, A. Weisbecker (eds), Reading and Learning, vol. 2956 of Lecture Notes in Computer Science, Springer Berlin Heidelberg, p. 103-122, 2004.
- Brakensiek A., Rottland J., Rigoll G., « Handwritten Address Recognition with Open Vocabulary Using Character N-Grams », Proceedings of the Eighth International Workshop on Frontiers in Handwriting Recognition - IWFHR02, p. 357, 2002.
- Caesar T., Gloger J., Mandler E., « Preprocessing and feature extraction for a handwriting recognition system », Proceedings of the Second International Conference on Document Analysis and Recognition - ICDAR93, p. 408-411, 1993.
- Ding W., Suen C., Krzyzak A., « A new courtesy amount recognition module of a Check Reading System », Proceedings of the 19th International Conference on Pattern Recognition - ICPR08, p. 1-4, 2008.
- El-Hajj R., Likforman-Sulem L., Mokbel C., « Arabic Handwriting Recognition Using Baseline Dependant Features and Hidden Markov Modeling », Proceedings of the Eighth International Conference on Document Analysis and Recognition - ICDAR05, p. 893-897, 2005.
- El-Hajj R. M., Likforman-Sulem L., Mokbel C., « Combining Slanted-Frame Classifiers for Improved HMM-Based Arabic Handwriting Recognition », IEEE Transactions on Pattern Analysis and Machine Intelligence, 2009.
- El-Hajj R., Mokbel C., Likforman-Sulem L., « Recognition of Arabic handwritten words using contextual character models », Document Recognition and Retrieval XV - SPIE, January, 2008.
- Fink G., Plotz T., « On the Use of Context-Dependent Modeling Units for HMM-Based Offline Handwriting Recognition », Proceedings of the Ninth International Conference on Document Analysis and Recognition - ICDAR07, vol. 2, p. 729-733, 2007.
- Gorski N., Anisimov V., Augustin E., Baret O., Maximov S., « Industrial Bank Check Processing : the A2iA CheckReader », International Journal on Document Analysis and Recognition - IJDAR, vol. 3, n° 4, p. 196-206, 2001.
- Graves A., Fernàndez S., Schmidhuber J., « Multidimensional recurrent neural networks », Proceedings of the International Conference on Artificial Neural Networks, 2007.
- Graves A., Schmidhuber J., « Offline handwriting recognition with multidimensional recurrent neural networks », Advances in Neural Information Processing Systems, 2009.
- Grosicki E., Abed H. E., « ICDAR 2009 Handwriting Recognition Competition », Proceedings of the Eight International Conference on Document Analysis and Recognition - ICDAR09, p. 1398-1402, 2009.
- Guichard L., Toselli A., Coasnon B., « Un nouveau système indépendant de rejet multi-seuils pour la reconnaissance de mots manuscrits », Actes du 17ème Congrès Francophone de Reconnaissance des Formes et d’Intelligence Artificielle (RFIA2010), 2010.
- Huerta J. M., Chen S. J., Stern R. M., « The 1998 Carnegie Mellon University Sphinx-3 Spanish Broadcast News Transcription System », Proceedings of the DARPA Broadcast News Transcription and Understanding Workshop, March, 1999.
- Kaltenmeier A., Caesar T., Gloger J., Mandler E., « Sophisticated topology of hidden Markov models for cursive script recognition », Proceedings of the Second International Conference on Document Analysis and Recognition - ICDAR93, p. 139-142, 1993.
- Kavallieratou E., Fakotakis N., Kokkinakis G. K., « An unconstrained handwriting recognition system », International Journal on Document Analysis and Recognition - IJDAR02, vol. 4, n° 4, p. 226-242, 2002.
- Kermorvant C., Menasri F., Bianne A.-L., Al-Hajj R., Mokbel C., Likforman-Sulem L., « The A2iA-Telecom ParisTech-UOB System for the ICDAR 2009 Handwriting Recognition Competition », Proceedings of the 12th International Workshop on Frontiers in Handwriting Recognition - IWFHR10, p. to appear, 2010.
- Kessentini Y., Paquet T., Benhamadou A., « A Multi-Stream HMM-based Approach for Offline Multi-Script Handwritten Word Recognition », Proceedings of the Eleventh International Conference on Frontiers in Handwriting Recognition - ICFHR08, 2008.
- Lee K.-F., « Context-dependent phonetic hidden Markov models for speaker-independent continuous speech recognition », Readings in speech recognition, vol. 1, p. 347-366, 1990.
- Marti U., Bunke. H., « A full English sentence database for off-line handwriting recognition », Proceedings of the 5th International Conference on Document Analysis and Recognition - ICDAR99, p. 705-708, 1999.
- Natarajan P., Saleem S., Prasad R., MacRostie E., Subramanian K., « Multi-lingual Offline Handwriting Recognition Using Hidden Markov Models : A Script-Independent Approach », Summit on Arabic and Chinese Hanwriting - SACH06, 2006.
- Nedel J. P., Singh R., Stern R. M., « Automatic subword unit refinement for spontaneous speech recognition via phone splitting », Sixth International Conference on Spoken Language Processing - ICSLP2000, vol. 4, p. 588-591, 2000.
- Odell J. J., The Use of Decision Trees with Context Sensitive Phoneme Modelling, PhD thesis, Cambridge University Engineering Department, 1992.
- Otsu N., « A Threshold Selection Method from Grey-Level Histograms », IEEE Transactions on Systems, Man and Cybernetics, vol. 9, n° 1, p. 62-66, January, 1979.
- Palacios R., Gupta A., Wang P., « Handwritten Bank Check Recognition Of Courtesy Amounts », International Journal of Image and Graphics - IJIG, vol. 4, n° 2, p. 203-222, April, 2004.
- Paquet T., Lecourtier Y., « Automatic reading of the literal amount of bank checks », Machine Vision and Applications - MVA, vol. 6, n° 2-3, p. 151-162, 1993.
- Ploetz T., Fink G., « Markov models for offline handwriting recognition : a survey », International Journal on Document Analysis and Recognition, vol. 12, p. 269-298, 2009.
- Rodriguez J. A., Perronnin F., « Local gradient histogram features for word spotting in unconstrained handwritten documents », Proceedings of the Eleventh International Conference on Frontiers in Handwriting Recognition - ICFHR08, August, 2008.
- Schambach M.-P., « Model length adaptation of an HMM based cursive word recognition system », Proceedings of the Seventh International Conference on Document Analysis and Recognition - ICDAR03, vol. 1, p. 109-113, 2003.
- Schussler M., Niemann H., « A HMM-based System for Recognition of Handwritten Address Words », Proceedings of the Sixth International Workshop on Frontiers in Handwriting Recognition - IWFHR98, p. 505-514, 1998.
- Sirat C., « Handwriting and the writing hand », Writing Systems and Cognition, vol. 6, p. 375-461, 1994.
- Suen C., Lam L., Guillevic D., Strathy N., Cheriet M., Said J., Fan R., « Bank Check Processing System », International Journal of Imaging Systems and Technology - IJIST, vol. 7, n° 4, p. 392-403, 1996.
- Toselli A. H., Reconocimiento de Texto Manuscrito Continuo, PhD thesis, Departamento de Sistemas Informaticos y Computacion, Universidad Politecnica de Valencia, 2004.
- Vinciarelli A., Bengio S., « offline recognition of unconstrained handwritten texts using HMMs and statistical language models », IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 26, n° 6, p. 709-720, June, 2004.
- Vinciarelli A., Luettin J., « A new normalization technique for cursive handwritten words », Pattern Recognition Letters, vol. 22, n° 9, p. 1043-1050, 2001.
- Young S., al., The HTK Book V3.4, Cambridge University Press, Cambridge, UK, 2006.
- Young S. J., Odell J. J., Woodland P. C., « Tree-based state tying for high accuracy acoustic modelling », Proceedings of the workshop on Human Language Technology - HLT94, p. 307-312, 1994.
- Zen H., Tokuda K., Kitamura T., « Decision tree based simultaneous clustering of phonetic contexts, dimensions, and state positions for acoustic modeling », Proceedings Eurospeech, p. 3189-3192, 2003.
Mots-clés éditeurs : arbres de décision, clustering d'états, reconnaissance d'écriture manuscrite
Date de mise en ligne : 14/09/2011