1Face au volume croissant des données issues de la numérisation et de la reconnaissance optique de caractères (OCR) émergent des problématiques relatives à la qualité de ces données et à leur exploitabilité scientifique étant donné le bruit ou les « contaminations » (terme repris de Hamdi et al. 2022) que l’on trouve dans les transcriptions OCR. Le bruit désigne alors toutes les erreurs produites par le système OCR (insertion, suppression et substitution de caractères). En aval, les modèles entraînés sur des données textuelles correctement orthographiées (Eshel et al. 2017), peinent à maintenir leurs performances sur ces données moins standardisées. Une des manières de contourner ce problème est de corriger les erreurs pour améliorer la qualité intrinsèque des corpus. Néanmoins, si certaines interférences des dispositifs d’OCR sont systématiques (Stanislawek et al. 2019), lorsqu’elles sont singulières, la correction devient difficile. En outre, il est montré que la correction produisait de nouvelles erreurs (phénomène de sur-correction) provenant soit des algorithmes de basse complexité (Huynh et al. 2020)1, soit des grands modèles de langue (Boros et al. 2024). Ceci motive la recherche sur le traitement du bruit issu de la phase d’OCR et son influence sur la Reconnaissance d’Entités Nommées (REN), dans le cadre de laquelle nous proposons une nouvelle approche pour exploiter les sorties d’OCR bruitées.
- 2 Nous avons aussi évalué Stanza (Qi et al. 2020), dont les résultats sont disponibles sur le dépôt G (...)
2Nos analyses s’appuient sur deux corpus pour lesquels nous comparons les entités nommées reconnues par spaCy (Montani et al. 2023)2 sur les versions de référence d’une part et des versions OCR, corrigées automatiquement ou non.
- 3 Nous reprenons le terme Silver Standard en s’appuyant sur la définition de Rebholz-Schuhmann et al. (...)
- 4 NERVAL est un outil d’évaluation de la REN sur des textes bruités en termes du calcul de la précisi (...)
- 5 JamSpell est un outil de correction automatique des sorties OCR, basé sur les modèles de langue tri (...)
3Dans le cadre applicatif qui nous intéresse, nous nous positionnons du point de vue d’un·e chercheur·se ne disposant pas des données standards, corrigées et annotées manuellement (Gold Standard), mais des données réelles (éventuellement imparfaites) que l’on considère comme référence, et qui sont annotées automatiquement (Silver Standard)3. En l’absence de données Gold, les données Silver permettent d’évaluer efficacement s’il est nécessaire de corriger en détails un corpus en amont de son annotation automatique. Nous proposons des analyses manuelles et automatiques, qui reprendront les expériences effectuées par Koudoro-Parfait et al. (2022) avec l’outil NERVAL4, ainsi que les expérimentations menées par Petkovic et al. (2022) avec l’outil JamSpell5. Notre objectif est d’établir (i) une typologie des contaminations d’OCR et (ii) une typologie des erreurs de la correction automatique. Nous montrerons qu’une partie imporatnte du bruit n’est en vérité pas imputable à l’OCR mais bien à la REN.
- 6 Les données utilisées dans le cadre de cet article sont disponibles sur le dépôt GitHub https://git (...)
4Nous dressons dans la section suivante un état de l’art sur influence de l’OCR et de la correction automatique d’OCR sur les traitements réalisés en aval. La section 3 décrit les corpus utilisés dans cette étude. Nous analysons la relation entre la qualité de l’OCR, de sa correction et la tâche de REN dans les sections 4 et 5. Nous proposons enfin dans la section 6 d’exploiter de multiples versions bruitées pour aider à éliminer les entités nommées fautives (faux positifs) sans supervision (sans Gold Standard donc). Nous présentons des résultats prometteurs de filtrage automatique qui nous permettent de tracer de nouvelles perspectives de recherche sur l’utilisation de données textuelles bruitées6.
5En vue de dépasser les limites de l’exploitation de données OCR, la communauté TAL s’est penchée sur la correction des erreurs d’OCR (Sagot & Gábor 2014). Selon Kukich (1992), l’origine des questions concernant la correction automatique de texte remonte à Damerau (1964) qui a analysé ce phénomène sur les textes artificiellement bruités. Ce dernier a constaté que 80 % d’erreurs de tous les mots mal orthographiés contenaient une seule instance d’une des quatre erreurs possibles (insertion, suppression, substitution et transposition) tout en implémentant le premier algorithme de correction orthographique (distance minimale d’édition). Ce constat, bien qu’il ne s’applique pas directement aux erreurs issues des textes océrisés, est à entendre comme une première tentative de cerner la problématique de la robustesse de la correction automatique face à des variations textuelles : bruit artificiel, contamination OCR ou erreurs d’orthographe d’internautes.
6Malgré de nombreuses avancées dans ce domaine jusqu’à présent, cette pratique reste toujours questionnée (Nguyen et al. 2021). Même s’il n’existe pas une classification unanimement établie (Bassil & Alwani 2012, Edwards 2016, Nguyen et al. 2020, Nguyen et al. 2021), nous avons identifié trois méthodes courantes : fondées sur des lexiques, sur des modèles de langue, et sur un apprentissage automatique spécifique (Hládek et al. 2020, Petkovic et al. 2022).
- 7 Toponyme extrait de Home influence, Aguillar 1847.
- 8 Peuples de Sarmatie, dans le contexte « Tel sur les monts glacés des farouches Gelons », Œuvres de (...)
7Oger et al. (2012) proposent de classer le bruit OCR en deux catégories : (i) les erreurs de non-mots (angl. non-word errors) qui représentent les termes absents d’un lexique, p. ex. « Devonshire »7 → « Dconshire » et (ii) les erreurs de mots réels (angl. real-word errors) ou erreurs sémantiques (angl. semantic/context-sensitive errors) (Azmi et al. 2019), p. ex. « Gélons »8 → « Gelons », terme existant dans la langue (ou a minima dans des lexiques de référence) mais incorrect dans le contexte donné. Cette seconde catégorie est plus rare, et souvent liée à la sur-correction automatique, p. ex. « M. Eyssette » → « M. Assiette », où un mot connu remplace un mot inconnu.
8Un certain nombre de membres de la communauté TAL s’intéresse à la manière d’évaluer l’impact des erreurs d’OCR sur la REN et les tâches en aval (Chiron et al. 2017, Hamdi et al. 2020, Tual 2023, Van Strien et al. 2020) pour répondre à deux questions : (i) s’il est bien nécessaire de corriger les erreurs de l’OCR et (ii) si l’absence de la correction détériore véritablement les performances des outils de TAL en aval (segmenteurs, outil de REN etc.).
- 9 Suppression des césures et remplacement des « s longs » ⟨ſ⟩ par des « s ».
9La REN est un moyen efficace d’améliorer l’accès aux informations contenues dans de vastes corpus (Van Strien et al. 2020). D’ailleurs, Chiron et al. (2017) ont montré qu’un nombre important de requêtes sur Gallica étaient affectées par des termes mal océrisés et absents des usuels. Koudoro-Parfait et al. (2021) ont montré que les systèmes de REN présentaient une certaine robustesse face à la variabilité, au bruitage des données. Certaines entités dont la forme est donc « contaminée » sont en effet reconnues par des outils tels que spaCy ou Stanza, p. ex. quand la forme « Iuda » apparaît dans l’OCR au lieu de « India ». Des tâches comme le topic modeling sont également perturbées par le bruitage (Van Strien et al. 2020). Enfin, Evershed et Fitch (2014) soulignent l’importance de la correction automatique (sur un corpus de journaux), qui a réduit de plus de 50 % le nombre de faux positifs (FP) en Recherche d’Information grâce à une réduction du Word Error Rate. Alex et al. (2012) montrent par ailleurs que des corrections ciblées9 contribuent à une amélioration significative des résultats de la REN. Notre contribution s’attachera à déterminer si la correction de l’OCR permet d’améliorer significativement les résultats de la tâche de REN.
10La TGB10 est une ressource documentaire qui comprend des œuvres en français, issues des collections Gallica transcrites par OCR. Elle comprend 128 441 textes en XML-TEI11 sur différentes thématiques (littérature, histoire, droit, philosophie, etc.). Nous avons extrait 10 œuvres de la catégorie « Littérature française », pour constituer notre corpus dont la composition et la densité12 en EN sont présentées dans le tableau 1. Les textes sont produits par OCR et non corrigés. La qualité de l’OCR est hétérogène, le corpus provenant de plusieurs campagnes avec différents outils.
Tableau 1. Statistiques sur le corpus TGB, la densité en EN est le pourcentage de tokens couverts par celles-ci
Ouvrage
|
Auteur
|
Année
|
Pages
|
Tokens
|
spaCy-lg
|
Densité EN (%)
|
La princesse Pallianci
|
Bazancourt, C. L.
|
1852
|
340
|
36 423
|
1 438
|
3.95
|
Meryem, scènes de la vie algérienne. Marcel
|
Bentégeat, C. P.
|
1863
|
360
|
85 077
|
3 768
|
4.43
|
Wilmina, ou L’enfant des Apennins
|
Girard de Caudemberg, L.
|
1820
|
242
|
36 218
|
1 533
|
4.23
|
Les fourmis du parc de Versailles raisonnant ensemble dans leurs fourmilières
|
Lambert, C.
|
1803
|
72
|
10 173
|
244
|
2.40
|
Œuvres complètes de Pierre Loti
|
Loti, P.
|
1893-1911
|
588
|
133 129
|
4 153
|
3.12
|
La confession d’un enfant du siècle / Alfred de Musset ; avec un portrait… par Eugène Lami…
|
Musset, A. de
|
1879
|
494
|
92 140
|
2 478
|
2.69
|
Le Parnasse envahi, petit poème allégorique au sujet du sacre de S. M. Charles X.
|
Rullier, E.
|
1825
|
71
|
10 261
|
830
|
8.09
|
La Comtesse de Rudolstadt
|
Sand, G.
|
1861
|
340
|
102 423
|
3 653
|
3.57
|
Diégarias, drame en 5 actes et en vers
|
Séjour, V.
|
1844
|
38
|
18 603
|
3 869
|
20.8
|
Le département de l’Oise : Compiègne et Marat, fragment historique
|
Sorel, A.
|
1865
|
19
|
6 277
|
315
|
5.02
|
11Notre second corpus est extrait de ELTeC, créé dans le cadre de l’action COST Distant Reading for European Literary History13. La majorité des textes sont de très bonne qualité si l’on se réfère aux règles suivies pour la composition du corpus14.
Tableau 2. Statistiques sur le corpus ELTeC français
Ouvrage
|
Auteur
|
Année
|
Pages
|
Tokens
|
spaCy-lg
|
Densité EN (%)
|
Mon village
|
Adam, J.
|
1860
|
200
|
20 938
|
906
|
4.33
|
Les trappeurs de l’Arkansas
|
Aimard, G.
|
1858
|
450
|
91 119
|
2 149
|
2.36
|
La Belle rivière
|
Aimard, G.
|
1894
|
339
|
137 392
|
3 686
|
2.68
|
Marie-Claire
|
Audoux, M.
|
1925
|
120
|
35 780
|
835
|
2.33
|
Albert Savarus. Une fille
d’Ève
|
Balzac, H. de
|
1853
|
60
|
79 924
|
2 121
|
2.65
|
La petite Jeanne
|
Carraud, Z.
|
1884
|
220
|
53 212
|
2 294
|
4.31
|
Le château de Pinon, vol. I
|
Dash, G. A.
|
1844
|
332
|
44 246
|
2 162
|
4.89
|
Le petit chose
|
Daudet, A.
|
1868
|
292
|
86 482
|
3 158
|
3.65
|
L’Éducation sentimentale
|
Flaubert, G.
|
1880
|
520
|
150 494
|
6 313
|
4.19
|
Une vie
|
Maupassant, G. de
|
1883
|
337
|
75 745
|
1 725
|
2.28
|
La nouvelle espérance
|
Noailles, A. de
|
1903
|
325
|
54 272
|
1 544
|
2.84
|
- 15 Contrairement aux cas des données synthétiques, où le bruit artificiel (dégradations des caractères (...)
12Pour chacun des deux corpus, TGB et ELTeC, nous disposons donc d’une version de référence (ci-après Réf.), et de deux versions OCR (ci-après v-OCR) produites avec Kraken et Tesseract pour chaque texte15. Dans le cas de la TGB, en l’absence du corpus Gold Standard, le terme « référence » est à entendre comme une approximation de la vérité terrain, car elle n’est pas exempte de bruit d’OCR à l’origine des campagnes de numérisation. D’où la contrainte de considérer la TGB presqu’au même niveau qu’ELTeC du point de vue de la qualité de l’OCR.
- 16 Ces plongements désignent un réseau neuronal convolutionnel profond avec des connexions résiduelles (...)
13Pour obtenir les versions OCR, nous avons utilisé deux modèles : Tesseract (Smith 2007) avec le modèle français entraîné sur des données Google (LSTM tessdata_best) et Kraken (Kiessling 2019) avec le modèle de base. Pour la REN nous nous sommes appuyés sur spaCy qui utilise les plongements Bloom et un réseau de neurones convolutif16. Trois modèles de langue small, medium et large sont proposés (cf. tableau 3). Nous avons privilégié l’usage du modèle français large (spaCy-lg), plus efficace.
Tableau 3. Description des modèles de langue de spaCy
|
Plongements
|
Taille jeu de données
|
Données d’entraînement
|
small
|
❌
|
15 MB
|
UD French Sequoia v2.8, WikiNER, spaCy lookups data
|
medium
|
✔️
|
43 MB
|
UD French Sequoia v2.8, WikiNER, spaCy lookups data, Explosion fastText Vectors (cbow, OSCAR Common Crawl + Wikipedia)
|
large
|
✔️
|
545 MB
|
UD French Sequoia v2.8, WikiNER, spaCy lookups data,
Explosion fastText Vectors (cbow, OSCAR Common Crawl + Wikipedia)
|
14En l’absence de Gold Standard de REN sur des versions bruitées multiples, nous avons constitué un Silver Standard à partir de l’annotation automatique avec spaCy des données de référence (cf. tableaux 1 et 2). Notre Silver Standard comporte potentiellement du bruit, étant donné que les entités extraites n’ont pas été manuellement vérifiées, mais ceci permet de montrer à quel point le bruit dans les entités des v-OCR est véritablement dû à la qualité de celles-ci. Les entités détectées dans la Réf. permettent de juger si les entités détectées dans la v-OCR sont massivement bruitées ou si ce bruit n’était pas déjà présent dans la version de Réf., et donc imputable à la REN. Pour justifier l’utilisation du Silver Standard, nous avons calculé le F-score entre les annotations manuelles (Gold)17 et automatiques (Silver) avec l’outil NERVAL, en obtenant le score de 0.67 entre l’accord inter-annotateur (annotation obtenue par vote majoritaire)18 et la référence19. Afin de bien définir l’évaluation de la REN sur données bruitées, il faut tenir compte des phénomènes suivants dans v-OCR :
-
du bruit au niveau des blocs : du texte absent de Réf. (notes de bas de pages)
-
du bruit au niveau des mots : les contaminations d’OCR
-
du silence également, certaines pages de texte ayant été peu ou pas du tout transcrites.
- 20 Une partie du bruit est déjà présente dans la version de Réf. ; ce n’est pas dû aux données mais à (...)
15Koudoro-Parfait et al. (2021) identifient deux types principaux d’erreurs : (i) des FP liés au bruit de l’OCR (non-word errors), soit les EN récupérées dans l’OCR mais pas dans la Réf. et (ii) des FP qui sont en fait des entités dont la forme est contaminée (plus proche des context-sensitive errors évoquées plus haut), mais dont le contenu renvoie à une vraie EN. Conséquemment, une partie des FP sont en fait des faux FP, p. ex. « Mlorlincourtl » est une forme contaminée de « Morlincourt », il faut le considérer donc comme un vrai positif, car son contenu se réfère à une vraie EN. Nous proposons une traduction et une réorganisation de la typologie classique positif/négatif, selon que les cas présentés participent du bruit ou du silence dans la REN. Cette catégorisation vise à ce que l’évaluation dans le cas d’usage d’un Silver Standard soit plus fine que les critères binaires classiques de l’évaluation propres à un Gold. Celle-ci engendre trois sous-catégories en plus des FP, les vrais positifs (VP, entités correctes), faux négatifs (FN, entités manquantes ou silence) et enfin vrais négatifs (VN, non-entités). Pour bien expliciter la limite de ces catégories dans un contexte bruité il faut garder en mémoire qu’une entité contaminée comme « Rh6ne » pour « Rhône » est un FP strictement car « Rh6ne » n’existe dans le texte de Réf. mais c’est un VP, car il est bien une variante contaminée de « Rhône ». La typologie propose donc d’ajouter des catégories adaptées au contexte bruité20 pour mieux évaluer bruit et silence que nous présentons ci-après.
-
CAS DE SOUS-ÉVALUATION DU BRUIT ET DU SILENCE DE LA REN
Faux VP : EN détectées à tort dans les deux versions
Faux VN : EN manquantes dans les deux versions
-
CAS DE SUR-ÉVALUATION DU BRUIT ET DU SILENCE DE LA REN
- 21 Notamment EN contaminées dans v-OCR.
Faux FP : EN dans v-OCR mais pas dans Réf.21
Faux FN : EN détectées à tort dans Réf.
16Nous exemplifions cette catégorisation immédiatement après sous la forme d’ensembles GOLD (EN obtenues manuellement), SILVER (EN obtenues sur la référence) et OCR. Pour la lisibilité de l’exemple à cette étape, on montre l’entité hors contexte, en s’appuyant sur une liste d’occurrences. Néanmoins, pour chaque EN ayant subi une contamination OCR nous avons bien observé le contexte d’apparition et nous l’avons comparé avec la Réf. pour nous assurer qu’il s’agit bien de la même EN.
-
GOLD : {“département du Cher”, “Languedoc”, “Marseille”, “Rhône”, “Lyon”, “La grande route”}
-
SILVER : {“département du Cher”, “Languedoc”, “Eysette”, “Marseille”, “Rhône”, Annou}
-
OCR : {“tCher”, “Languedoc”, “Marseille”, “Eysette”, “Rh6ne”, “Rhone”, “Lyon”}
Tableau 4. Comparaison des résultats GOLD/SILVER et OCR
- 22 Ce cas de figure est totalement silencieux : il n’apparaît que si l’on dispose d’un Gold Standard.
|
GOLD vs. SILVER
|
GOLD vs. OCR
|
SILVER vs. OCR
|
VP
|
• département du Cher, Languedoc, Marseille, Rhône
|
• Languedoc, Marseille, Lyon
|
• Languedoc, Marseille
• Eysette (Faux VP)
|
FP
|
• Eysette, Annou
|
• Eysette
• tCher, Rh6ne, Rhone (Faux FP)
|
• tCher, Rh6ne, Rhone (Faux FP)
|
FN
|
• Lyon, La grande route
|
• département du Cher, La grande route
|
• Annou (Faux FN)
• département du Cher
|
VN
|
• –
|
• –
|
• La grande route (Faux VN)22
|
17Le tableau 4 montre les limites d’une évaluation classique sur des données bruitées. Nous proposons donc, en suivant la typologie évoquée plus haut, une évaluation plus fine qui tient compte des particularités de ce cas d’étude. En effet, dans une évaluation GOLD vs. SILVER, « bleu » et « aller » sont des FP. Alors que dans l’évaluation SILVER vs. OCR « bleu » est un faux VP car c’est une entité erronée. Le verbe « aller » quant à lui est un faux FN car il a été récupéré de manière fautive par l’outil de REN sur la Réf. mais pas sur l’OCR. Dans une évaluation portant sur des données bruitées par rapport à un GOLD ou un SILVER, « Parisl », « Rh6ne », « Rhone », et « Lile » sont des FP. Néanmoins, ce sont des formes contaminées des VP « Paris », « Rhône », et « Lille », que le regard humain peut identifier comme tel. « Mont-parnasse » serait un faux VN car en fait il faudrait le rapprocher de la forme correcte Montparnasse.
18Pour corriger les transcriptions OCR, nous avons utilisé la version 0.0.12 de l’outil JamSpell basé sur un modèle de langue trigramme de mots et utilisant l’alphabet de la langue23. Ce choix d’utilisation dans cette étude est dû à la prise en compte du contexte lors de la correction, sa rapidité de traitement de textes, ainsi qu’à son utilisation relativement facile, bien qu’il existe des outils de correction automatique d’OCR basés sur des architectures de l’état de l’art ou nécessitant l’utilisation du GPU. Une partie des fonctionnalités ainsi que les modèles de langue pour le français (Jspll-fr) sont accessibles gratuitement sur le web24. Nous avons entraîné 40 % de la partie du corpus ELTeC non utilisée pour cette étude pour entraîner un nouveau modèle JamSpell (Jspll-ELTeC).
19Les v-OCR et les Réf. ont été annotées en EN spaCy-lg, les EN de la Réf. constituent le Silver Standard (pseudo-vérité de terrain, soit une annotation automatique qui nous sert de référence en l’absence de Gold). Le tableau 5 montre des exemples de variations produites par le correcteur automatique sur des contextes contenant l’EN « Meunet-sur-Vatan », où nous pouvons constater que les différentes contaminations de cette EN ne sont pas toutes détectées par le modèle de REN. Nous voyons également que la correction automatique n’améliore systématiquement ni (i) la qualité de l’entrée avec par exemple « Meunet » incorrectement corrigé en « Meuret » par JamSpell ni (ii) la qualité de la sortie puisque la sur-correction de « Yatan » en « Satan/Avant » sur les versions Kraken aboutit à ce que l’entité « Neunet-sur-Yatan » n’est même pas partiellement reconnue.
Tableau 5. Influence de la correction de l’OCR sur la REN avec spaCy-lg. (La petite Jeanne, Carraud)
Version
|
Contexte
|
spaCy-lg
|
Référence
|
à l’assemblée de Meunet-sur-Vatan ;
|
Meunet-sur-Vatan
|
Kraken “brut”
|
a l’assemhl6e’ de Neunet-sur- Yatan’ ’
|
Yatan
|
Kraken Jspll-fr
|
a l’assembl6e’ de Neuner-sur- Satan’ ;
|
⌀
|
Kraken ELTeC-fr
|
a l’assemhl6e’ de Neunet-sur-Avant’ ;
|
⌀
|
Tess. fr. “brut”
|
à l’assemblée’ de Meunet-sur-| Vatan* ;
|
Meunet-sur-|
|
Tess. fr. Jspll-fr
|
à l’assemblée’ de Meuret-sur- | Vatan* ;
|
⌀
|
Tess. fr. ELTeC-fr
|
à l’assemblée’ de Meunet-sur-| Vatan* ;
|
Meunet-sur-_
|
20Afin d’aller plus loin, nous proposons dans le tableau 6 une typologie des erreurs et réussites de la correction automatique avec des exemples concrets de leur influence sur la REN. Cette typologie est principalement motivée par la volonté de distinguer les cas où il y a une correction justifiée et correcte (MOBC), une correction manquante (MONC), des corrections erronées et sur-corrections (MOMC, BOIC) qui sont particulièrement problématiques pour le cas qui nous intéresse, par exemple « Arbres » pour « Brûlés » et « Martincourt » pour « Morlincourt ».
Tableau 6. Typologie de l’influence de la correction de l’OCR sur la REN pour les configurations avec spaCy-lg. (Belle rivière, Aimard et Mon village, Adam). Les erreurs sont mises en gras
Type de correction (acronyme)
|
Description du type de correction
|
Version
|
Contexte
|
spaCy-lg
|
MOBC
|
mal océrisé
bien corrigé
|
Réf.
Kraken
Jspll-fr
Jspll-ELTeC
|
ennemis de l’Angleterre
ennemis de l’Anglelterre
ennemis de l’Angleterre
ennemis de l’Anglelterre
|
Angleterre
Anglelterre
Angleterre
Anglelterre
|
MOMC
|
mal océrisé
mal corrigé
|
Réf.
Kraken
Jspll-fr
Jspll-ELTeC
|
le surnom de Bois-Brûlés
le surnom de Bois-Brtles
le surnom de Bois-Brales
le surnom de Bois-Arbres
|
Bois-Brûlés
Bois-Brtles
Bois-Brales
Bois-Arbres
|
MONC
|
mal océrisé
non corrigé
|
Réf.
Kraken
Jspll-fr
Jspll-ELTeC
|
cure de Morlincourt
cure de Mlorlincourtl
cure de Mlorlincourtl
cure de Mlorlincourtl
|
Morlincourt
Mlorlincourtl
Mlorlincourtl
Mlorlincourtl
|
BOIC
|
bien océrisé indûment corrigé
|
Réf.
Kraken
Jspll-fr
Jspll-ELTeC
|
en retournant de Morlincourt
en retournant de Morlincourt
en retournant de Martincourt
en retournant de Morlincourt
|
Morlincourt
Morlincourt
Martincourt
Morlincourt
|
21Nous étudions les intersections entre les EN détectées dans Réf. et les v-OCR pour généraliser notre évaluation. Les intersections sont calculées œuvre par œuvre, avant d’être additionnées. Ainsi, l’EN « Paris » repérée dans une v-OCR ne compte que pour la Réf. correspondante (on raisonne sur les types, document par document). Les intersections dans la figure 1 représentent les EN de v-OCR qui ont une orthographe identique à une EN de la Réf. correspondante, après correction automatique.
22Les v-OCR Kraken et Tesseract sont corrigées avec le modèle pré-entraîné de Jspll-fr. Il est notable que les intersections sont meilleures pour les figures 1c et 1d, pour lesquelles la qualité de l’OCR Tesseract est meilleure que Kraken.
Figure 1. Intersections entre les EN détectées dans Réf. (Silver Standard) et les v-OCR pour les configurations Kraken (4a-4b) et Tess. fr. (4c-4d) corrigées par JamSpell pré-entraîné, spaCy-lg sur le corpus ELTeC français et la TGB
23Les diagrammes de Venn présentés ci-dessus permettent un travail sur les types (la présence est traitée, mais pas la fréquence). Pour travailler sur les occurrences nous utilisons des mesures de distance textuelle. Nous avons privilégié la métrique cosinus qui est une des mesures de référence quand il est question de distance textuelle (Buscaldi et al. 2020). Elle est calculée sur des 2 et 3-grammes de caractères constituant les vecteurs d’effectifs pour être robuste à la contamination des entités. Dans les figures 2, plus la boîte est proche de zéro, plus les sorties comparées sont similaires. Les figures 2a et 2b illustrent les résultats obtenus pour les Réf. et les v-OCR pour tous les corpus avec une distance cosinus. Les figures 2c et 2d montrent les résultats en comparant les sorties de REN (en construisant les vecteurs d’effectif uniquement sur les EN identifiées de part et d’autre) obtenues sur les Réf. et v-OCR. Les résultats de la configuration Tess. fr—Jspll-fr peuvent être un signe du bruit ou des sur-corrections, étant donné les valeurs réparties dans un espace important au sein de la boîte (figure 2c). Généralement, nous observons ce qui se passe entre les expériences sur les corpus hétérogène et homogène (dont la qualité de l’OCR est très variable ou très bonne, respectivement), et nous constatons un saut qualitatif entre les différentes versions OCR de la TGB.
Figure 2. Distances cosinus entre les Réf. et les v-OCR (4a-4b) et entre les EN extraites par spaCy-lg sur les Réf. et les v-OCR (4c-4d)
24La figure 3 montre la variation de la précision et du rappel en fonction de la longueur (ci-après LEN pour length) et de la fréquence documentaire (ci-après DF pour Document Frequency) des entités. DF a une influence plus marquée sur les résultats que la fréquence absolue. Cela se produit car les formes contaminées ne se répètent pas d’un texte à l’autre et les formes contaminées sont tout de même beaucoup moins fréquentes que les formes stables. La partie gauche montre que les entités hapax sont les plus bruitées. Corollaire, la probabilité qu’une entité soit un VP augmente avec sa fréquence documentaire (elle est trouvée dans plusieurs hypothèses). D’autre part, les entités de longueur 1 et 2 sont très susceptibles d’être bruitées. Au-delà d’une longueur de 20 caractères, il y a aussi une proportion importante de bruit, mais ces entités sont aussi moins nombreuses. La figure 4 est une carte thermique montrant l’évolution de la précision sur notre Silver Standard selon différentes combinaisons (DF, longueur). Nous pouvons voir de nouveau que les entités hapax sont très souvent des faux positifs et d’autant plus si elles sont courtes. On observe que la zone constituée par les entités avec DF < 6 et LN < 5 correspond à des entités rarement présentes dans la référence et constitue sans doute majoritairement du bruit. Ceci nous invite à construire un filtre qui exploite ces caractéristiques pour écarter les entités contaminées.
Figure 3. Évaluation de la qualité de la REN (Précision et Rappel) dans les versions non corrigées selon la fréquence documentaire (DF) et la longueur (LEN) des formes
Figure 4. Carte thermique de précision pour tous les couples (DF, LEN)
25Nous avons utilisé notre Silver Standard pour construire un modèle de filtrage des EN contaminées. Nous utilisons simplement la longueur et la DF comme caractéristiques et nous choisissons d’utiliser un arbre de décision pour l’interprétabilité. Le tableau 7 présente les résultats de ce classifieur. S’il n’est pas particulièrement performant pour détecter les vrais positifs, nous pouvons voir qu’il a une précision supérieure à 99 % dans la détection des faux positifs avec un Rappel de 65 %. Ce faisant, nous ne perdons que 10 % des vrais positifs (rappel de 90,74 %). Autrement dit, un tel filtre élimine 65 % du bruit tout en occasionnant moins de 10 % de silence.
Tableau 7. Résultat d’un arbre de décision entraîné sur la TGB et appliqué sur les données ELTeC
|
Précision
|
Rappel
|
F-mesure
|
Effectif
|
Faux positifs
|
0.9918
|
0.6509
|
0.7860
|
72 895
|
Vrais positifs
|
0.1314
|
0.9074
|
0.2296
|
4 242
|
26Nous présentons ci-dessous des exemples de faux positifs filtrés par notre classifieur pour différents couples [LEN,DF] :
[LEN= 2, DF=1] : {‘KT’, ‘dp’, ‘Iw’, ‘av’, ‘H ‘}
[LEN =6, DF=1] : {‘A AN S’, ‘DAMENE’, ‘AECAAE’, ‘Jactes’, ‘DNIITE’}
[LEN=10, DF=1] : {‘Alala Bale’, ‘RTEE E EME’, ‘Du Sal als’, ‘lieis Srew’, ‘DEE ELBCEW’}
27Nous présentons cette fois des exemples de vrais positifs qui ont bien été conservés par le classifieur (en italiques les erreurs issues de la référence, des faux VP) :
[LEN=10, DF= 1] : {‘Huit à Dix’, ‘Qui chante’, ‘Regardez !’, ‘Barbette !’, ‘Madagascar’}
[LEN= 6, DF=10] : {‘Girard’, ‘Restez’, ‘Tribou’, ‘Peyrol’, ‘christ’}
[LEN=10, DF=10] : {‘Villenauxe’, ‘Larsillois’, ‘la Blanche’, ‘Neufchâtel’, ‘Christophe’}
28Ces séries d’exemples montrent que la fréquence documentaire est un indice très utile pour filtrer les FP, ce qui permet à la fois de valoriser les versions bruitées en tant que « ressource lexicale » et d’aider aussi à exploiter ces versions pour elles-mêmes en rendant les séries d’EN extraites moins bruitées.
29Dans cet article, nous avons exploité des données Silver Standard afin d’examiner à grande échelle l’influence du bruit des données OCR sur la Reconnaissance d’Entités Nommées, en nous plaçant au plus près des conditions réelles rencontrées dans les humanités, notamment en ne choisissant que des outils librement disponibles et simples à utiliser (off-the-shelf en résumé). Nos premiers résultats confirment que la correction automatique introduit des biais dans les données textuelles. Le F-score sur la REN entre la version OCR et la version OCR corrigée diminue de 12 points de pourcentage avec Tesseract dans le cas d’un OCR de bonne qualité (Character Error Rate ou CER de 0.03, Daudet, Le petit chose) et de 4 points pour un OCR de moindre qualité (CER de 0.13 Maupassant, Une vie). En revanche, les résultats avec Kraken, OCR moins performant sur ces corpus, baissent de 8 points dans le premier cas et augmentent de 23 points dans le second. Ce qui illustre le fait que le gain de la correction automatique n’est présent et significatif que lorsque l’OCR est de très mauvaise qualité. Ces résultats nous ont amenés à présenter une nouvelle manière d’exploiter des sorties d’OCR bruitées. Nous avons établi (i) une typologie des contaminations d’OCR et (ii) une typologie des erreurs de la correction automatique. Nous avons montré que la correction automatique de données en entrée n’a offert que peu d’améliorations de la qualité de la REN, très probablement du fait de la sur-correction. Cette affirmation découle surtout des résultats présentés sur la figure 2c au niveau de la configuration Tess. fr—Jspll-fr, mais également des travaux de Koudoro-Parfait et al. (2024). Bien que les corrections ne dégradant pas les résultats soient repérées (p. ex. la forme leanne bien corrigée en le prénom jeanne, si l’on ignore la sensibilité à la casse), elles semblent être plus rares. En revanche, le filtrage des entités en sortie semble être une piste plus prometteuse. Nous avons montré que les entités incorrectes sont massivement des entités courtes et hapax en corpus et que la fréquence documentaire et la longueur des entités étaient de bons critères pour exclure des entités candidates avec une précision de plus de 98 %. Nous avons montré ainsi qu’exploiter plusieurs versions bruitées, issues de différents outils d’OCR et ayant subi un impact de l’outil de REN, offre une réelle plus-value et que, en l’absence d’outils de correction automatique véritablement efficaces, il existe une alternative à la coûteuse correction manuelle des textes océrisés. Ceci montre une nouvelle manière d’exploiter des données bruitées existantes pour valoriser d’autres corpus bruités, notamment dans l’optique d’utiliser la DF et la longueur comme les critères discriminatoires pour filtrer les EN. Nous pensons explorer cette idée en comparant des données PDF de différentes qualités afin de voir si les versions OCR qui en seront tirées pourraient être complémentaires. Combiner des versions bruitées, comme le fait par exemple Riddell (2022) pour enrichir les possibilités de filtrage des entités sera une autre piste que nous comptons suivre.