Interface du captcha pour la classification

2 ans après, où en est le projet CaptchAN ?

Il y a deux ans, en novembre 2018, se tenait le hackathon des Archives nationales au Liberté Living Lab auquel j’ai eu grand plaisir à participer. Avec Sylvain Boissel, Anne-Laure Donzel, Pol Enault & Kelyan Morfouesse, nous y présentions le projet CaptchAN. Il s’agissait d’un prototype visant à faciliter l’indexation du patrimoine numérisé en exploitant l’action des internautes sur les interfaces de sécurité que sont les captcha. Le projet a reçu le prix de l’innovation du jury. Deux ans plus tard, où en est-il ?

Tout d’abord, si vous souhaitez en savoir plus sur le projet et son ambition, je vous renvoie à cet article écrit peu après le hackathon dans lequel j’explique son principe et son ambition.

Suite à la publication de cet article, Christopher Kermorvant m’a contacté, intéressé par le projet. Christopher a fondé il y a quelques années la société Teklia, spécialisée en Traitement Automatique de Documents (ce qui inclut le traitement des images et de la langue naturelle). Teklia traite notamment les documents numérisés afin d’extraire automatiquement des informations. Ces documents sont par exemple ceux conservés dans des fonds d’archives. Si vous avez suivi le principe du captcha proposé, la synergie entre Teklia et le captcha est évidente : le captcha offre une validation aux données produites par les algorithmes.

Avec Teklia et Decalog (la société qui finance ma thèse et qui est spécialisée en ingénierie documentaire), nous avons repris le projet du hackathon et avons soumis en 2019 un dossier de financement au ministère de la culture et de la communication au titre de l’appel à services innovants du ministère. Il s’agit d’un appel annuel visant à soutenir la création de POC innovants dans le secteur culturel, par des industriels privés. Pour être éligible à cet appel, il est nécessaire d’être soutenu par une institution culturelle, qui ne peut soutenir qu’un projet lors cet appel. 

Pour le projet du captcha, ce n’est pas une, mais trois institutions qui ont choisi de nous soutenir. Trois institutions de premier plan par ailleurs : les Archives nationales, la Bibliothèque nationale de France et le musée de Bretagne. Un centre d’archives, une bibliothèque et un musée, illustrant le fort potentiel du projet au sein du secteur culturel.

La bonne nouvelle est que nous avons remporté cet appel à services innovants. Cela nous permet ainsi de financer le développement d’un POC pendant un an dont l’objectif est de valider la faisabilité du projet et son modèle économique.

Nous avons donc commencé en juillet 2019 le développement de ce prototype de captcha dont l’objectif est d’aider à l’indexation du patrimoine numérisé. L’objectif est double : faire en sorte que l’action de l’utilisateur sur le captcha produise des données intéressantes pour l’institution, mais également que la tâche demandée soit assez simple pour être réalisé par n’importe quelle personne. Et également si possible, qu’elle soit suffisamment intéressante pour ne pas être rejeté comme peuvent l’être les captchas traditionnels (nous pensons à celui de Google qui vous demande de reconnaître des feux rouges).

Identification des corpus et traitement des données

La première étape du projet a donc consisté à définir les corpus que nous allions exploités dans le captcha. Du côté des Archives nationales, la réponse était presque toute trouvée : il s’agit du fonds de dossier sur les récipiendaires de la Légion d’honneur, qui est accessible à travers la base Léonore et sur lequel nous avions travaillé pendant le hackathon, en montrant justement comment on pourrait extraire de nouvelles informations de ces dossiers via le captcha.

La BNF quant à elle développe actuellement des algorithmes de reconnaissance de forme qui seraient à même de reconnaître et classer les illustrations conservées dans ses collections. Il s’agit ici de planches naturalistes, représentant des animaux. De très belles représentations donc, mais qui s’éloignent largement d’une représentation photographique et constituent donc une difficulté notable pour les algorithmes actuels. Le captcha sera donc utilisé ici pour aider au développement de ces algorithmes, en aidant à identifier les différentes formes animales.

Enfin, viennent les collections du musée de Bretagne. Ici, contrairement aux deux premiers cas, les images ne peuvent pas être réduites : on ne peut pas montrer une partie d’un formulaire ou d’une planche. En effet, il s’agit principalement d’un fond de photographies du XXe siècle, décrivant des évènements ayant eu lieu en Bretagne. Ici, il s’agit d’aider le musée à indexer ces centaines de milliers de photographies, en repérant celles qui documentent des visites officielles, des cérémonies religieuses, ou des activités sportives. 

On constate donc ici que le captcha vient offrir une solution à l’indexation de projet très variés, exploitant aussi bien des corpus textuels que des corpus d’image. En ce sens, le captcha est donc très adaptable.

Ce qu’il ressort de nos premières expérimentations, c’est d’ailleurs que la majeure partie du travail et les plus grandes difficultés rencontrées se situe au niveau de pré-traitement des données, avant leur envoie sur le captcha. Identifier des corpus pertinents et préparer les données prend beaucoup de temps. Les hypothèses sur le futur modèle économique du service tourne d’ailleurs principalement autour de cet aspect du travail de pré-traitement. Le captcha en tant que tel ayant un coût très marginal.

Cela se voit d’ailleurs assez simplement à travers ce schéma réalisé par Teklia sur le déroulement d’un projet et illustrant le parcours d’une donnée d’une institution culturelle vers le captcha. La majeure partie du projet a lieu sur la plateforme Arkindex développée par Teklia, dans la définition des éléments à traiter et la définition des éléments de référence.

Concrètement, comme cela se matérialise-t-il ? Par une interface telle que la suivante sur laquelle on vient automatiquement ou manuellement (pour entraîner le modèle) typer les données que l’on veut annoter. Ce n’est qu’une fois le modèle suffisamment performant pour extraire des données parmis lesquels se trouveront peu de faux positifs, que ces données pourront être envoyées au captcha.

Alors pourquoi éliminer les faux positifs est nécessaire et ne peut précisément pas être délégué au captcha ? Car le captcha a pour but d’aider à l’indexation de ces images. Mais pour cela, il faut que l’image a bien été découpée. Par exemple, si l’écran ci-dessus, que la découpe se fasse bien sur un papillon, et pas deux, ou pas une moitié de papillon. Sans quoi, l’utilisateur aura du mal à identifier le papillon lors de la phase d’indexation.

Enjeux de l’interface utilisateur

Une fois ce travail d’identification et de traitement des corpus mené, il reste à s’attaquer à l’autre versant du projet : la validation de l’action par les utilisateurs.

Il faut ici que l’action soit simple à réaliser. L’utilisateur est dans un parcours visant à la validation d’une action (par exemple l’inscription sur un site), l’objectif premier du captcha est ainsi d’être validé le plus simplement possible, pour ne pas amener de friction au sein du parcours utilisateur. Il s’agit d’un défi majeur pour un captcha, je pense que toute personne naviguant régulièrement sur le web a déjà été confrontée à un captcha refusant de se valider, ce qui a pour effet d’être particulièrement frustrant… Il faut donc que l’action soit simple à réaliser. 

Nous proposons ainsi une interface de captcha la plus simple possible. Ci-dessous, vous pouvez constater que l’action demandée à l’utilisateur est de saisir les deux séries de chiffres présentées. Il s’agit ici de deux numéros de récipiendaires de la Légion d’Honneur. L’utilisateur peut demander à changer les images si celles-ci sont trop difficiles à lire en cliquant sur la roue de rechargement à droite. Cette difficulté à lire les images est la principale friction que nous anticipons, notamment pour les documents d’archive. Les premiers tests utilisateurs que nous avons menés nous amènent cependant à penser que l’action reste réalisable par un utilisateur non-expert. Nous confirmerons cette hypothèse lors du premier déploiement à grande échelle début 2021.

Si certains exercices représentent une certaine difficulté pour les utilisateurs, comme la transcription d’écritures manuscrites, d’autres seront plus simples. C’est notamment le cas de ce second captcha, où il s’agit de classifier des animaux, issus des planches de la BNF. Non seulement, l’action est ici simple à réaliser, mais nous pensons qu’elle est qui plus est plaisante du fait de la beauté des corpus présentés.

Une fois l’action de validation réalisée, il s’agit de faire preuve de transparence et d’expliquer à l’utilisateur l’action qu’il vient de réaliser et son utilité. Comme il ne s’agit pas d’une information essentielle à la réalisation de l’action, elle n’est présentée qu’à l’issue de la complétion. L’objectif est alors d’expliquer le sens du projet d’indexation patrimoniale, mais également de susciter l’envie de l’utilisateur de contribuer à nouveau ou de découvrir d’autres projets du même type.

Il s’agit d’ailleurs d’un point ressortant des entretiens utilisateurs réalisés dans le cadre du développement de ce prototype : les utilisateurs apprécient d’aider à la numérisation du patrimoine français, ce qui réduit considérablement la frustration liée à la complétude du captcha. Certains expriment même l’envie d’aller plus loin, en requérant la possibilité de remplir plusieurs fois le captcha pour aider un peu plus les projets d’indexation ! On ne vous cache pas que cela fait germer dans nos esprits l’idée de lancer une plateforme parallèle au captcha de micro-crowdsourcing pour les fana d’indexation… Peut-être un autre projet à suivre bientôt !

Quelle suite pour le projet ?

Fin octobre 2020, nous arrivons à la fin de la période de développement du projet. Nous reste à mettre en oeuvre le scénario d’usage du musée de Bretagne et la classification d’image entière, ainsi que quelques modifications à apporter à notre interface de captcha pour la rendre plus accessible. Mais dans l’ensemble, la majeure partie de travail est achevée.

Reste maintenant à déployer ce captcha, pour tester son efficacité, tant du point de vue de la sécurité que du point de vue de l’indexation patrimoniale. C’est la phase qui s’ouvre à présent avec des discussions en cours pour implémenter ce captcha.

D’ailleurs, vous possédez ou travaillez pour un service numérique et vous utilisez des captchas traditionnels ? Nous serions heureux de travailler avec vous pour déployer ce captcha et vous inclure dans notre réseau de partenaires ! Pour cela, vous pouvez écrire à Christopher Kermorvant chez TEKLIA (kermorvant@teklia.com)

Une fois le captcha en production, nous produirons un rapport d’usage après quelques mois de fonctionnement pour évaluer la qualité des données produites et prendre en compte les retours d’expérience de nos partenaires.

On se donne donc rendez-vous d’ici quelques mois pour la suite de l’aventure CaptchAN !

Vous souhaitez voir le captcha en oeuvre ? La démo se trouve ici. Le code source et la documentation d’implémentation se trouvent ici.


1 réflexion sur « 2 ans après, où en est le projet CaptchAN ? »

  1. Ping : Vaut le détour #2 – octobre 2020 | L'image de Lyon

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.