Détecter des anomalies d'écriture manuscrite par autoencodeur
Détecter qu'une portion de texte manuscrit a été écrite par une autre main — sans aucune annotation, sans set d'entraînement séparé du set de test. Plutôt que de reconnaître les caractères, j'apprends le **style** d'une écriture grâce à un autoencodeur convolutionnel, et laisse l'anomalie se trahir comme un outlier.
Une signature stylistique sans référentiel
La graphologie repose sur des mesures fines : extension des hampes verticales au-dessus et en-dessous de la ligne de base, slope des lettres, fermeture des « o », rondeur des courbes. Mais ces critères changent d'un scripteur à l'autre — il n'y a pas de référentiel absolu.
Le cadre du problème : un seul échantillon de texte, potentiellement contenant une anomalie (un passage écrit par une autre main), pas d'annotation, pas de set d'entraînement séparé du set de test. C'est de la détection d'outliers en mode totalement unsupervised, où l'algo doit lui-même apprendre une métrique appropriée.
De l'image au signal d'anomalie
Style appris, anomalie révélée
L'idée : ne pas reconnaître les caractères. Apprendre directement les caractéristiques stylistiques globales (forme, slope, fermeture), et laisser ce qui ne s'y conforme pas se signaler tout seul.
- Tile splitting : l'image du texte est découpée en tuiles à partir de la ligne de base détectée par image processing. Chaque tuile contient une portion locale d'écriture.
- Transformée de Radon partielle sur les tuiles (range π/2) : capture les variations stylistiques (slope, épaisseur, courbure) dans un espace plus abstrait que les pixels — c'est ce qui rend la méthode robuste aux variations de taille ou de position.
- Autoencodeur convolutionnel : apprend à reconstruire les Radon projections des tuiles. Pour les tuiles outliers, la reconstruction est moins bonne — l'erreur de reconstruction sert de score d'anomalie.
- Astuce d'entraînement : à chaque epoch, les tuiles sont permutées entre batchs. Les outliers, qui ne se reconstruisent pas bien, sont écartés ou repérés au fil des epochs. La discrimination émerge pendant l'entraînement, pas après.
Ce que la méthode permet
Détection sans labels
Aucune annotation des outliers n'est nécessaire. La méthode est entièrement unsupervised, contrairement aux approches classiques de classification qui demandent un set de référence par scripteur.
Localisation spatiale
Les outliers ne sont pas seulement détectés comme « présents ou absents » : ils sont localisés dans l'image (quelle zone du texte est suspecte), grâce à la granularité des tuiles.
Robuste aux variations bénignes
Les variations naturelles d'un même scripteur (fatigue, encre, position) restent reconstruites correctement par l'autoencodeur. Seules les vraies variations stylistiques (autre main) sortent.
Validation sur compositions synthétiques
Tests sur des extraits manuscrits où on injecte des passages écrits par d'autres scripteurs — la méthode isole et localise les passages injectés.
Ce que cette publication apporte
- Reformulation du problème graphologique : passer de mesures hand-crafted (extends, slope, closure) à une représentation apprise par un réseau profond.
- Détournement du shuffling batch-à-batch : le mécanisme habituel d'apprentissage devient un outil de discrimination, sans changer l'architecture.
- Détection unsupervised + localisation : la combinaison des deux est rare en outlier detection — la plupart des méthodes donnent un score global, pas une carte.
- Méthode transposable : applicable à d'autres tâches de détection unsupervised où l'anomalie est rare (intrusion detection, forgery detection, fraud).
Conférence & contexte
- Publié à EUVIP 2019 (European Workshop on Visual Information Processing).
- Travail mené pendant mon Master Recherche, MIA Laboratory · Université de La Rochelle.
- Mots-clés : deep learning, handwriting, outlier detection, convolutional autoencoder, Radon transform.