WP1 : Scan on demand

1  Objectifs généraux

Le programme de travail consiste à consolider les briques logicielles acquises à l’occasion des projets de recherche de l’équipe en visant deux extensions principales ainsi qu’une mise en valeur des développements par le biais d’un démonstrateur :

a-    Généraliser la chaîne de dématérialisation de journaux (PIVAJ) développée dans le cadre du projet PlaIR (2009-2012) à d’autres corpus, pour répondre aux besoins des Humanités Numériques qui s’intéressent à des corpus littéraires du patrimoine écrit du Moyen Âge et de la Renaissance.

b- Intégrer un module de reconnaissance de caractères performant (ICR), multi-scripts (imprimé – manuscrit) et paramétrable par les connaissances linguistiques du domaine (lexiques et modèle de langage).

c-  Un démonstrateur, s’appuyant sur l’architecture PIVAJ, exploitera les résultats des traitements automatiques pour proposer aux utilisateurs un environnement de travail leur permettant d’éditer les transcriptions produites automatiquement, de les corriger et de les annoter. L’exportation des textes et annotations dans des formats standards des bibliothèques numériques (ALTO, METS, EAD, voire transcription TEI) assurera le continuum de la chaîne documentaire souhaitée vers les travaux d’édition, et les plateformes nationales prévues à cet effet (TGIR Humanum).

Définition des priorités

a-   Développements logiciels : depuis février 2017, et grâce au recrutement de Yann Soullard, la priorité du WP1 sur le plan technique est de pérenniser les acquis des travaux préparatoires (voir paragraphe ci-dessous réalisations) en les intégrant sur une plateforme de calcul de référence pour le Deep Learning. Nos choix se sont portés sur la plateforme TensorFlow surmontée de l’API Keras qui permet de programmer différentes architectures de réseaux de neurones en langage Python, et d’implémenter les calculs sur processeurs parallèle de type GPU sur le cluster de calcul du LITIS. En ce qui concerne les modèles de langage statistiques, nous avons retenu la plateforme Kaldi qui est la plateforme open source la plus avancée pour la reconnaissance de la parole, et qui permet de façon naturelle d’implémenter des systèmes de reconnaissance d’écriture. Cette plateforme repose sur la librairie open source OpenFST pour l’implémentation efficace de modèles de langages à l’aide de transducteurs à états finis pondérés (Weighted Finite-states Transducers).

b-   Sélection de corpus : s’agissant de numérisation et de reconnaissance de documents, les premières orientations du programme de travail pour les WP1 et WP4 ont pu être dégagées à l’occasion d’une première rencontre entre les équipes du LITIS et de  l’IRIHS. Trois corpus ont été retenus pour le programme, car ils permettent de mettre en avant les besoins de l’IRIHS, et proposent des niveaux de difficultés croissants pour les technologies de reconnaissance d’écriture.

Fonds Italien et Ibérique de la BMR (Mathias Schonbuch)

  • Fonds issus de collections privées du 19ème des officiels qui avaient dû se faire une collection en Italie fin 18ème. Puis ces collections ont été dispersées, revendues et enfin léguées à la BMR.
  • Les originaux datent du 18ème ou avant (manuscrits du 16ème)
  • Lettres privées, ouvrages politiques, théologiques, hippiques etc… Il existe des petits noyaux thématiques.
  • 2 fonds importants : fonds LEBER et fonds MONTBRET qui ont légués leurs collections + fonds provenant de couvents ou maisons religieuses de Rouen à la BMR au début 19ème

Les expérimentations que nous nous proposons de mener avec Mathias Schonbuch vont concerner les ouvrages suivants :

  1. Jeux Mathématiques : Mono-scripteurs et déjà transcrits, 36 pages. La transcription diplomatique doit être faite par Mathias Schonbuch. Ce premier ouvrage doit servir de test des algorithmes de reconnaissance.
  2. Manuscrits Montbret 558 (1574): « Instructions pour le gouvernement de Padoue » : écriture mono-scripteur régulière, 200 pages, la transcription diplomatique doit être faite par Mathias Schonbuch.  (20 pages sont envisagées pour permettre l’apprentissage du système de reconnaissance)
  3. MSTMT- 431, Montbret 431 (1574) : Du même scripteur « Instructions, ordres et lois de la république de Venise »

Le fonds de droit Normand (Géraldine Cazals)

https://droit-normand.nakalona.fr/

C’est un fonds en évolution, mixte, imprimé et manuscrit, qui présente un niveau de difficulté intermédiaire que nous analyserons dans un second temps avec Géraldine Cazals. Il faut préparer des données étiquetées sur les ouvrages pour entraîner les systèmes de connaissance.

Le fonds Renaudel (Jean-Numa Ducange)

C’est un fonds de correspondances de Jean Renaudel avec Jean Jaurès. Il regroupe de nombreux documents manuscrits et imprimés. Il présente donc un niveau de difficulté élevé pour les systèmes de reconnaissance automatiques. C’est la raison pour laquelle nous l’exploiterons dans une ultime étape de notre projet.

3.2.     Réalisations

3.2.1 Travaux en cours

a-    Recrutements

Pour mener les travaux du WP1 en analyse d’image de documents nous avons recruté Yann SOULLARD, docteur de l’Université Pierre et Marie Curie, qui possède une formation en mathématiques et une thèse en informatique. Il a développé des modèles statistiques de séquences.

Pour mener les travaux du WP1 sur une interface de consultation de documents anciens transcrits automatiquement nous avons recruté Daniel Antelme, ingénieur développeur senior.

b-    Premières réalisations

Depuis septembre 2015 (date officielle du début du programme mais sans financement acquis) nous avons poursuivi des travaux préparatoires à l’avancée du programme prévu. Ces travaux ont principalement concerné le développement d’une technologie de reconnaissance d’écriture (modèle optique) fondée sur le Deep Learning et l’intégration de modèles de langages permettant de contrôler le résultat de la reconnaissance (modèle de langue). Ces travaux ont permis l’avancement du point b-) du programme.

c-    Réalisations Mai-Octobre 2017

Suite à ces travaux sur les modèles de langages, nous avons focalisé notre attention sur le modèle optique afin de réaliser un système hybride composé de réseaux récurrents (BLSTM) et de réseaux profonds (DNN). Comme indiqué plus haut, nous avons fait des choix technologiques importants en portant les développements sur la plateforme TensorFlow avec la surcouche Keras. Les détails techniques du livrable réalisé sont donnés ci-après (livrable 3).

Le second point sur lequel nous nous sommes mobilisés concerne l’analyse de la structure des documents. Cette étape est un préalable incontournable pour localiser les lignes d’écriture dans les images avant de mobiliser le système de reconnaissance. Nous avons développé un système de nouvelle génération reposant sur des réseaux de neurones convolutifs afin de localiser les lignes d’écritures dans les cas les plus difficiles tels que des documents manuscrits que nous avons choisi de traiter dans les corpus sélectionnés, notamment le fonds Renaudel constitué de correspondances manuscrites.

L’approche de segmentation que nous avons définie repose sur des réseaux de neurones totalement convolutifs (FCN) qui s’imposent actuellement comme la méthode de référence pour la segmentation de lignes de texte [Ren 2017-a]. Nous avons proposé une approche visant à reconnaître des corps de texte en s’appuyant sur des convolutions dilatées. De telles convolutions permettent de conserver la taille de l’image d’origine au cours du processus et d’obtenir une prédiction au niveau pixel en sortie. Ces travaux ont fait l’objet d’une participation à un challenge international cBAD proposé dans le cadre de la conférence ICDAR 2017. Les dernières évolutions ont permis de dépasser les performances de la plupart des concurrents de la compétition (figure 2). Ces travaux ont donné lieu au livrable d’analyse de structure de documents (livrable 1).

Par ailleurs, pour mettre en œuvre les méthodes de Machine Learning développées, il est nécessaire de constituer des ensembles d’exemples d’apprentissage, qui dans notre cas sont des images de lignes de textes associées à leurs transcriptions électroniques. Or, les données fournies par nos partenaires de l’IRIHS sont des images de pages scannées, où les positions des lignes de textes sont inconnues. Pour entraîner le modèle optique, nous avons donc mis en place un système itératif (figure 3) associant, en plus du modèle optique, un algorithme de segmentation basé sur des réseaux de neurones convolutifs (voir livrable 2) et un algorithme de mise en correspondance reposant sur un algorithme de programmation dynamique que nous avons défini spécifiquement pour associer des prédictions de lignes segmentées avec les lignes de transcriptions fournies par l’IRIHS. Les lignes associées sont ensuite utilisées pour entraîner le modèle optique. Cette architecture a été validée lors de notre participation à la compétition internationale READ 2017 où le LITIS s’est classé 3ème. Elle a été utilisée par ailleurs sur le corpus du fonds Montbret de la bibliothèque municipale de Rouen (corpus FIBIA – Italien) pour fournir au système des exemples typiques d’écriture de ce fonds.

d-    Réalisations Novembre 2017 – Avril 2018

Nous avons mis en application le système décrit ci-dessus sur les données du fonds Montbret 558. Le modèle optique a été entraîné à reconnaître les caractères sans accent, de manière à simplifier dans un premier temps le problème (les accents étant parfois difficile à identifier dans les images) et à avoir plus d’occurrences de certains caractères pour l’apprentissage du système. L’algorithme itératif décrit à la figure 3 a permis d’associer 60% des lignes à une transcription lors de la première itération, puis 72% et enfin 92% des lignes à la 3ème itération. Les lignes n’ayant pas été associées sont souvent liées à des erreurs de transcriptions, des lignes très courtes ou des erreurs de segmentation. Nous avons évalué la reconnaissance sur 5 autres pages transcrites (correspondant à 67 lignes) et obtenu un taux d’erreur caractère de 9.6%. Nous avons ensuite ajouté un modèle de langues venant apporter des corrections linguistiques à la reconnaissance optique. Nous avons utilisé un modèle 2-multigrams qui a permis de réduire le taux d’erreur caractère à 5.8%. Avec l’ajout des accents dans le modèle de langue et la prise en compte de transcriptions supplémentaires issues de corpus du même auteur, le taux d’erreur caractère a chuté à 0.5% sur nos données de validation.

Nous avons ensuite poursuivi le développement d’amélioration de l’approche de segmentation basée sur des réseaux de neurones totalement convolutifs (FCN) [Ren 2017-b]. Nous avons étudié différentes architectures du réseau, en particulier un réseau à 11 couches proposant une architecture similaire aux approches FCN traditionnelles avec des étapes progressives de reconstruction. Nous avons également mis en place des post-traitements génériques de manière à limiter de possibles effets de sur et sous segmentations. Les dernières avancées ont permis d’améliorer nos précédents résultats de la compétition cBAD (figure 4) et ont fait l’objet d’un article de revue pour le journal IJDAR [Ren 2017-b].

Nous avons également porté notre attention sur la mise en pratique du système de reconnaissance d’écriture dans le cadre du projet. En effet, les données sur lesquelles nous travaillons sont spécifiques (style d’écriture, époque, langue) et faiblement supervisées (le nombre de pages transcrites est restreint). Les réseaux de neurones sur lesquelles reposent notre système de reconnaissance peuvent être très performants mais ils nécessitent de grandes quantités d’exemples pour être optimisés de manière satisfaisante. De ce fait, nous avons besoin d’utiliser d’autres bases de données pour entraîner un système générique pouvant être par la suite adapté à reconnaître plus spécifiquement les données étudiées dans le cadre du projet.

Pour étudier ce mécanisme d’adaptation, nous avons participé à la compétition internationale READ 2018 proposé en marge de la conférence ICFHR 2018. Cette compétition, portant sur la reconnaissance d’écriture manuscrite dans des documents anciens, avait pour but d’étudier l’adaptation progressive d’un système générique pour la reconnaissance de données spécifiques faiblement supervisées (l’évaluation portait sur 0, 1, 4 et 16 pages transcrites). En s’appuyant sur les modèles de reconnaissance développés précédemment, à savoir un modèle optique implémenté en Keras et Tensorflow et un modèle de langues basé sur des sous-unités lexicales, nous avons proposé un système de reconnaissance entraîné sur un ensemble de données générales (issues de différents scripteurs, langues, types de documents) qui a ensuite été adapté à reconnaître chacune des 5 bases d’évaluation considérées lors de la compétition. Nous avons notamment proposé une stratégie d’augmentation de données pour apporter de la diversité dans les exemples d’apprentissage. Cette approche nous a permis d’obtenir la 3ème place, avec un résultat final très proche du 2ème et du 4ème, et avec une méthode très similaire au vainqueur. Les résultats sont présentés à la figure 5.

Laboratoire Taux d’erreur caractère (CER %)
Université de l’état d’Ohio (OSU, Etats-Unis) 17.86
Telecom ParisTech (France) et université de Balamand (Liban) 20.94
LITIS (Rouen, France) 21.51
Université Polytechnique de Valence (Espagne) 21.54
Université de Pernambuco (Brésil) 27.33

figure 5 : Résultats de la compétition READ 2018 sur l’adaptation d’un système de reconnaissance d’écriture manuscrite [Str 2018].

La participation à cette compétition nous a permis de définir une stratégie pertinente d’adaptation d’un système de reconnaissance et de conforter nos choix en nous comparant à d’autres travaux à l’état de l’art.

Par la suite, nous allons appliquer ce système à la reconnaissance des fonds de la BMR (Leber et Montbret) et de droit Normand en exploitant l’algorithme itératif défini à la figure 3. Nous allons également enrichir l’algorithme de segmentation par FCN par l’ajout de post-traitements spécifiques à des jeux de données, notamment pour parfaire la segmentation en lignes de texte des données analysées dans le cadre de ce projet.

e-    Réalisations Mai 2018 – Octobre 2018

La participation à la compétition internationale présentée ci-dessus a montré que la stratégie d’adaptation au style d’écriture d’un auteur particulier était efficace mais pouvait être améliorée. De ce fait, nous avons poursuivi des travaux sur ce point et renforcé notre stratégie soumise lors de la compétition. Cette nouvelle approche permet d’adapter le système de reconnaissance à la fois au style d’écriture et au style de langage de l’auteur, malgré le peu d’exemples de textes transcrits disponibles pour entraîner le système. Ainsi, un modèle optique générique, appris sur de très nombreux exemples issus de divers ouvrages anciens est utilisé comme solution initiale. Il est ensuite optimisé sur des données augmentées spécifiques au document considéré, après application de transformations d’inclinaison, de changement d’échelle et d’adaptation à la taille des caractères, produisant davantage de variabilité à apprendre. Ensuite, nous avons proposé un modèle de langue combinant un modèle spécifique au document, estimé à partir de textes de l’auteur, mais aux capacités limitées par la quantité de données disponibles, et un modèle de langue plus générique de la même langue que celle de l’auteur estimé sur de nombreux corpus provenant d’autres auteurs. Des procédés de validation croisée ont permis la sélection d’hyper-paramètres optimaux. Enfin, l’augmentation de données est également appliquée sur les données de test (i.e. à transcrire) et un algorithme de programmation dynamique, appelé ROVER [Fis 1997], a été mis en place pour retenir une unique transcription finale à partir des multiples prédictions produites pour chacune des lignes. Ces travaux ont fait l’objet d’une soumission d’un article pour l’International Journal on Document Analysis and Recognition (IJDAR) [Sou 2018].

Cette nouvelle approche nous a permis d’améliorer significativement les résultats soumis lors de la compétition : nous obtenons à présent un taux d’erreur caractère global de 18.81%. Les résultats relevant de l’adaptation de l’approche sont présentés sur la figure 6, la dernière ligne en gras illustrant nos derniers travaux alors que les meilleurs scores sont présentés en rouge. Si la performance de notre modèle générique (initial, sans spécialisation sur le document étudié) reste un peu en deçà de celle des autres participants, l’approche proposée obtient les meilleures performances avec 4 et 16 pages spécialisées en apprentissage illustrant la performance de la stratégie d’adaptation à une écriture particulière. Avec 16 pages en apprentissage, notre approche obtient un taux d’erreur caractère global inférieur à 10%, ce qui est considéré comme étant un taux d’erreur acceptable pour une correction manuelle [Str 2018].

Taux d’erreur caractère (CER %) en fonction du nombre de pages spécifiques au document étudié en apprentissage
Laboratoire 0 1 4 16
Université de l’état d’Ohio (OSU, Etats-Unis) 31.40 17.73 13.27 9.02
Telecom ParisTech (France) et université de Balamand (Liban) 32.25 19.80 16.98 14.72
LITIS (Rouen, France)

lors de la compétition

35.29 22.51 16.89 11.34
Université Polytechnique de Valence (Espagne) 32.79 22.15 17.90 13.33
Université de Pernambuco (Brésil) 30.80 28.40 27.25 22.85
LITIS (Rouen, France) système actuel 34.18 19.97 12.49 8.57

figure 6 : Résultats de la compétition READ 2018 sur l’adaptation d’un système de reconnaissance d’écriture manuscrite en fonction du nombre de page du document étudié disponible en apprentissage (0 = aucune, 1, 4 ou 16 pages).

Combiné à l’algorithme de segmentation en lignes de texte (figure 4, [Ren 2017-b]), cette approche a été utilisée pour transcrire 4 ouvrages étudiés dans le cadre de ce projet : deux documents du fonds Montbret (431, 558), les jeux mathématiques (fonds Leber) et un ouvrage du fond de droit normand (Recueil d’arrêts extrait des Mémoires manuscrits de feu Monsieur le président d’Anfreville Poërier). Quelques pages ont été transcrites par Mathias Schonbuch pour les 3 documents en italien et Géraldine Cazals pour l’ouvrage de droit normand et utilisées pour l’apprentissage du système de reconnaissance d’écriture. Pour cela, on a associé les lignes de texte, extraites automatiquement avec l’approche de segmentation par FCN (figure 2), à une transcription par l’emploi du processus itératif décrit à la figure 3. Après 3 itérations, entre 83% et 97% des images de lignes ont été associées à une transcription selon le document, pour un taux d’erreur caractère estimé sur de petites bases de données test entre 3.8% et 8.3%. L’ouvrage ayant le moins d’association est celui de droit normand qui a présenté un certain nombre de difficultés lors de l’identification des lignes de texte. Les erreurs en identification de lignes sont principalement liées à des sous-segmentations (une seule ligne détectée alors qu’il y en a plusieurs) et à des fusions horizontales de lignes. Ceci est dû au fait que les lignes de texte sont rapprochées et le texte en marge est souvent proche de la colonne de texte principale. Il est à noter qu’en l’absence d’exemples de segmentation des documents de ce projet, le FCN n’a pu être entraîné spécifiquement à identifier les lignes de texte dans les données étudiées. De ce fait, les performances peuvent être altérée par un biais entre les données utilisées pour apprendre le FCN (divers ouvrages anciens) et les données évaluées (données du projet). Pour contourner ce biais, nous avons développé des post-traitements appliquées en sortie du FCN. Le premier post-traitement consiste à identifier le texte en marge en fonction des positions de début et fin de ligne dans l’image. De là, le texte en marge est séparé automatiquement de la colonne de texte principale. Le second post-traitement consiste à séparer en deux une ligne détectée par le FCN lorsque celle-ci présente des caractéristiques de la présence de plusieurs lignes de texte. L’ajout de ces post-traitements a permis de renforcer significativement l’identification des lignes de texte dans l’ouvrage de droit normand même si des erreurs subsistent parfois. De même, l’écriture en marge n’a pu être apprise par le modèle optique du fait de l’absence de transcription ligne à ligne, ce qui s’en ressent en reconnaissance.

Enfin, une interface de visualisation des ouvrages et de leurs transcriptions, nommée PIVAN (Plateforme d’Indexation et de Visualisation d’Archives Numériques), a été développée au LITIS par Daniel Antelme. Elle permet de visualiser un ouvrage numérisé avec précision (zoom) et de consulter l’analyse automatique des différentes pages (les lignes de texte identifiées et les transcriptions), et au besoin la corriger. L’interface propose la possibilité de corriger manuellement les transcriptions automatiques et de les télécharger au format texte. La plateforme de visualisation est disponible au lien suivant http://litis-pivan.univ-rouen.fr/pivan/home/ où sont présentés les 4 ouvrages étudiés.

3.2.2 Livrables attendus

Livrable 1 : briques logicielles d’analyses de structure de documents (2017).

Le module développé s’appuie sur la plateforme Keras et TensorFlow, et est donc à rapprocher du module du livrable 3. A noter que la participation du LITIS à la compétition cBAD 2017 a permi de valider le développement réalisé tant du point de vue fonctionnel, que des performances qu’il permet d’obtenir.

Livrable 2 : ICR multi-script et multi-lingue (2017).

Les corpus fournis par nos partenaires étant exclusivement manuscrits, cette tâche sur la reconnaissance de documents imprimés n’a pas été approfondie. Néanmoins, nous avons poursuivi l’exploration d’un point de vue multilingues en proposant un système multilingue unifié pour la reconnaissance d’écriture manuscrite. Dans cette approche, toutes les langues sont apprises par un unique système (modèle optique + modèle de langage). Ceci est rendu possible par l’emploi de sous-unités lexicales (multigrammes) au sein du modèle de langages. Ce travail a montré d’une part l’intérêt de combiner le français et l’anglais au niveau du modèle optique et d’autre part qu’il est possible de combiner ces langues sans détériorer la performance du modèle de langage. Ces travaux ont fait l’objet d’un article soumis au journal Pattern Recognition Letters [Swa 2018].

Livrable 3 : briques logicielles de reconnaissance de l’écriture manuscrite (2017-2018).

Le modèle optique a été implémentée en Python avec Tensorflow et Keras qui deviennent des librairies de référence pour l’emploi de réseaux de neurones profonds car elles permettent des calculs haute performance, notamment sur cartes graphiques. La plateforme implémentée propose les méthodes de référence dédiées à la reconnaissance optique d’écriture manuscrite (BLSTM-RNN avec des couches de convolution en amont). La librairie inclut 3 principaux modules : un module CTC Model, qui étend la classe Model de Keras à l’approche Connectionist Temporal Classification (CTC) pour faire de la reconnaissance d’écriture en séquence; un module de gestion des données (pré-traitements, génération, création de batchs et itérateurs); enfin un module d’analyse de la performance utilisant notamment l’outil de visualisation Tensorboard. Le CTCModel implémenté sera prochainement mis en open-source du fait qu’il n’existe pas actuellement d’équivalent disponible sur le net. Les résultats obtenus sur la base de données RIMES ont montré que le système implémenté retrouve les performances de l’état de l’art. Les prochains travaux viseront à combiner ce système avec le modèle de langages décrit précédemment.

Livrable 4 : démonstrateur web instancié sur quelques corpus sélectionnés au sein du consortium Digital Paris Normandie.

La plateforme de visualisation est disponible au lien suivant http://litis-pivan.univ-rouen.fr/pivan/home/ où sont présentés les 4 ouvrages étudiés.