Informatique Non classé Sciences

Temps de calcul humain disponible

Où comment même le troll peut contribuer au progrès de l’humanité…


De très nombreux blogs utilisent des CAPTCHA pour empêcher les robots spammeurs de mener leur sombre ouvrage. Ce joli nom aux consonances un peu soviétiques est l’acronyme de « Completely Automated Public Turing test to tell Computers and Humans Apart », soit en bon français « test de Turing Public Complètement Automatisé permettant de reconnaître les Ordinateurs des Humains ».

Turing, l’un des grands génies multidisciplinaires du XXième siècle, avait proposé le test suivant : imaginez que vous chattiez avec deux interlocuteur inconnus, l’un étant un homme, l’autre une machine, comment feriez-vous pour les distinguer ? (dans un genre un peu différent il y a le fameux psy d’emacs). A priori, plus la machine est intelligente, plus il va vous falloir du temps pour la distinguer de l’homme. La voie la plus rapide est de tester les compétences analytiques et synthétiques de votre interlocuteur dans des domaines pour lesquels l’ordinateur est toujours bien inférieur à l’homme. Un exemple est la reconnaissance de formes, utilisée donc dans nos CAPTCHAs : avant de pouvoir laisser un commentaire, l’interlocuteur doit reconnaître des caractères déformés, et les taper dans une fenêtre. Si cette tâche est typiquement assez difficile pour un ordinateur, elle reste très facile pour l’homme, qui en une fraction de seconde mobilise les ressources de son puissant cerveau pour déchiffrer la CAPTCHA ( et avoir le droit de laisser son commentaire pertinent ou son flame).

Mais quel gâchis quand on y pense ! Tous les jours, 100 millions de CAPTCHA sont déchiffrées sur les blogs, sites, etc…, c’est autant de tâches d’analyse complexe insolubles par des ordinateurs (par définition) et réalisées par des internautes. D’où l’idée derrière reCAPTCHA : « recycler » ce temps de calcul humain disponible gratuitement pour suppléer les ordinateurs sur les problèmes qu’ils ne savent pas à résoudre. Les détails de l’algorithme et la philosophie de la méthode sont exposés dans un article paru cette semaine dans la prestigieuse revue Science.

Le but du jeu ici est d’aider à la numérisation de livres, afin de préserver la connaissance humaine et de la rendre accessible au plus grand nombre. Les pages des livres sont scannées, et chaque mot est transformé en image bitmap par un logiciel approprié. Un autre logiciel de reconnaissance optique de caractères essaie ensuite de reconstituer le mot à partir de cette image.

Le problème est qu’ environ 20% des mots ne peuvent être reconnus automatiquement par les logiciels. C’est là qu’entre en jeu reCAPTCHA : il utilise les capacités intellectuelles des internautes laissant des commentaires sur les blogs pour lire les mots que les ordinateurs ne peuvent pas lire.

Pour voir un exemple de reCAPTCHA, faites défiler ce billet et regarder la section « laisser un commentaire » de ce blog. reCAPTCHA vous demande de reconnaître deux mots pour pouvoir laisser un commentaire. Pour l’un des mots, reCAPTCHA connaît la réponse : il s’agit d’un des mots déjà déchiffrés par d’autres humains, mais non reconnaissable par un ordinateur. C’est sur ce mot-ci, appelé « mot de contrôle » qu’on testera si vous êtes vraiment un internaute ou un robot spammeur.
L’autre mot est le mot inconnu que l’ordinateur ne sait pas déchiffrer, le mot « test ». C’est sur ce mot qu’on vous mettra réellement à contribution : reCAPTCHA va comparer votre proposition aux propositions d’autres internautes sur ce mot. Si les trois premières personnes tombant sur ce mot proposent la même lecture pour ce mot et qu’il n’est pas reconnaissable automatiquement, ce mot est considéré comme déchiffré et sera utilisé comme mot de contrôle futur. Si les réponses humaines sont plus variables, ce mot reste comme un mot test, et on additionne le nombre de possibilités proposées par les internautes pour ce mot. Dès qu’une proposition a plus de 2.5 voix [1], ce mot est considéré comme lu.
Evidemment, il y a des cas où les mots ne sont pas du tout lisibles. Dans ce cas, vous pouvez demander une autre CAPTCHA à reCAPTCHA – il y a un petit bouton « reload » à côté de la CAPTCHA. Si plus de six utilisateurs demandent à changer de CAPTCHA pour un même mot, le mot est considéré définitivement comme illisible et est sorti des bases de données de reCAPTCHA [2].

L’ efficacité de reCAPTCHA a été évaluée sur 50 articles extraits des archives du New York Times entre 1860 et 1970, pour un total de 24 080 mots. 99.1 % des mots ont pu être déchiffrés par reCAPTCHA (216 erreurs), contre 83.5 % des mots pour de simples logiciels de reconnaissance automatique. Un taux de 99 % est en général le taux de réussite « professionnel » : pour l’anecdote, un des professionels humains « témoin » travaillant sur les mêmes textes a effectué 189 erreurs, preque autant que reCAPTCHA. Cependant, les erreurs de reCAPTCHA et les erreurs humaines sont de natures différentes : reCAPTCHA est plutôt sensible aux erreurs de « reconnaissance » des mots, par exemple le logiciel va couper des mots au milieu ou au contraire grouper des mots ensemble, tandis qu’un humain va « bêtement » se tromper en faisant une faute typographique ou d’orthographe …

reCAPTCHA fonctionne depuis exactement un an et a été installé sur 40 000 sites web. 1.2 milliards de CAPTCHA ont été déchiffrées, soit 440 millions de mots déchiffrés correctement. Si on considère que 25 % des mots dans un livre scanné sont mal reconnus, cela correspond à la bagatelle de 17 600 livres transcrits manuellement. Aujourd’hui, les créateurs de reCAPTCHA estiment que l’équivalent de 160 livres par jour sont déchiffrés par reCAPTCHA; reCAPTCHA fournit l’équivalent du travail de 1500 personnes déchiffrant un mot par seconde et travaillant 40 h par semaine.

En plus d’être utile, reCAPTCHA est plus efficace qu’une CAPTCHA traditionnelle : en effet, les algorithmes des robots spammeur peuvent « apprendre » à lire des CAPTCHA dans la mesure où les déformations habituelles sur les CAPTCHA sont faites numériquement. Or, les distortions des mots imprimés sont beaucoup plus aléatoires, puisqu’il s’agit de « vraies » distorsions dues à des problèmes d’impression, des problèmes du papier, sans compter qu’il y a du bruit numérique due au passage au scanner, etc …

Comme l’expliquent les auteurs, reCAPTCHA est la mise en pratique d’une idée fascinante, qu’ils appellent « human computation » (pouvoir de calcul humain ?). C’est une petite rupture dans notre vision de l’ordinateur : au lieu d’essayer d’améliorer les machines pour en faire des équivalents humains, tâche peut être simplement impossible à long terme, on utilise la puissance d’internet pour mettre en réseau des hommes afin de résoudre les problèmes complexes insolubles par la puissance de calcul brute des ordinateurs. On parle ici de numérisation de livres, mais il existe aussi d’autres projets, comme Fold It, un jeu en ligne dans lequel les gens essaient de déterminer la structure des protéines, ou encore galaxy zoo dont nous avait parlé Dr Goulu. On peut imaginer que pour les grands défis numériques de demain, la mission de l’ordinateur ne sera alors que la mise en réseau et l’exécution en parallèles de tâches lourdes mais simples; mais le vrai pouvoir de pensée, la vraie créativité restera humaine . J’aime bien cette idée également pour son corollaire un peu utopique : qui pourra breveter une protéine dont la structure aura été trouvée grâce au calcul humain parallèle volontaire ? L’utilisation massive et volontaire des capacités des gens ne pourra pas être marchandisée, et le pouvoir de calcul humain deviendrait alors un pouvoir tout court, authentiquement démocratique …


Références :

Le site de reCAPTCHA.

reCAPTCHA: Human-Based Character Recognition via Web Security Measures
Luis von Ahn,* Benjamin Maurer, Colin McMillen, David Abraham, Manuel Blum, Science 12 September 2008: Vol. 321. no. 5895, pp. 1465 – 1468

Une vidéo d’une conférence de Luis von Ahn

Dernière minute : du retard des revues scientifiques sur les blogs – enfin certains : je m’aperçois après coup (encore!) que Dr Goulu avait déjà publié deux billets sur le même sujet

les Ordinateurs Humains : des Captchas à PeekaSearch

et
ReCaptcha : quand l’internet utilise les cerveaux humains

[1] une proposition d’un logiciel de reconnaissance optique de caractère comptant pour 0.5 voix
[2] Je suis personnellement un peu paresseux et j’ai tendance à abuser de ce bouton, dorénavant j’essaierai quand même de proposer quelque chose …

About the author

Tom Roud

Blogger scientifique zombie

14 Comments

  • Ah oui, c’est vrai, je n’avais pas fait le rapprochement . C’est d’autant plus pertinent que vonAhn disserte sur le fait que les hommes ont une relation plutot « parasitique »avec les ordinateurs dans son talk, et que la « human computation »est plus une relation symbiotique selon lui. L’étape suivante dans cette évolution est donc que les ordinateurs deviennent des parasites des hommes …

  • Je me demande si le taux de reconnaissance est lié à langue de l’internaute et celle du mot à déterminer… Si oui, il serait intéressant d’avoir une version multilingue de reCAPTCHA, où le blogueur choisirait à quelle langue les mots doivent appartenir…

  • […] A lire sur le web : – Une application de la Human Computation tres intelligente : reCAPTCHA qui demontre encore une fois le potentiel de l’intelligence collective et de l’Internet. L’idee est d’utiliser la lecture des captcha (anti-spams) par les commentateurs des blogs pour aider la numerisation des livres. Lire cet article. […]

  • Tu as raison Enro : ils précisent dans l’article que les IP des pays anglophones ont un taux de succès légérement supérieur aux IP des pays non anglophones. De la meme facon, les taux de succès sont plus importants sur les mots longs, probablement parce qu’il y a plus d’information contextuelle .

  • Et tout ça sur la base du pur bénévolat, comme d’habitude, je suppose ? Tout comme l’était Seti-at-home, qui faisait appel à nos ordis pour « aider la science » ? Quand cessera-t-on de nous prendre pour des cochons de payants, taillables et corvéables à merci ?

  • « Quand cessera-t-on de nous prendre pour des cochons de payants, taillables et corvéables à merci ?  »

    Je serais curieux de savoir quel navigateur vous avez utilisé pour venir sur ce blog.
    Internet Explorer ? Dans ce cas vous pouvez difficilement vous plaindre de devoir payer, c’est vraiment que vous le voulez.
    Safari ? idem
    Opera ? dans ce cas vous etes obligé de subir de la pub
    Firefox ? Dans ce cas, vous aurez noté la petite barre de recherche google en haut a gauche. Firefox est (fut) en partie financé par google. Le cas google est assez intéressant pour notre sujet, car à chaque fois que vous utilisez google, celui-ci enregistre bien sur vos recherches et votre navigation. Autrement dit, vous avez le droit gratuitement de lancer vos recherches, mais il faut quand meme payer un certain prix : celui de voir ses traces enregistrées sur internet pour en fait améliorer les recherches des uns et des autres. Si vous voulez etre anonyme, vous avez le droit de ne pas utiliser google. Mais demander à utiliser google sans vouloir etre enregistré n’a pas de sens car la puissance des outils de recherche dépend justement du fait que les requetes sont enregistrées et donc que vous devez laisser des traces.

    En fait, à part avec une navigation sous lynx avec du surf pur et simple d’un site à l’autre, je ne vois pas quel navigateur web on peut utiliser sans quelque part « payer » quelque chose.

    J’utilise personnellement firefox car je suis un adepte des logiciels libres, et je défends la gratuité maximale. Mais comme dirait un économiste, il n’y a pas de repas gratuit : il me parait normal et acceptable de devoir d’une facon ou d’une autre contribuer au système qui me permet d’utiliser gratuitement ce formidable logiciel. Vouloir tout gratuitement sans vouloir jamais rien donner, c’est un peu du parasitisme.

    Sur ce sujet précis, je constate que bien peu de personnes se chargent de numériser les oeuvres imprimées, ce qui me parait pourtant un travail très important car je crois qu’un accès maximal aux oeuvres écrites permettra de diffuser la connaissance, la culture et le savoir. J’aurais aimé que l’Etat francais par exemple finance de tels projets, mais je ne crois pas que quiconque aujourd’hui serait pret à voir ses impots augmenter pour financer ce travail. Le droit d’avoir un accès gratuit à ces futures oeuvres, nous le payons maintenant en tapant nos petites captcha. Pardonnez-moi, mais cela me parait etre un bien petit prix à payer comparé aux bénéfices collectifs engendrés …

  • J’ai été enchanté de lire ce billet. Je me doutais de l’utilisation du système de Captcha pour différencier les robots des humains sans jamais trop me pencher sur ce sujet… En revanche j’étais à 1000 lieux de me douter du ReCaptcha, je pensais que le 2ieme captcha était juste là pour renforcer la différenciation robot/humain !

    Ce système est tout simplement génial et aide à la numérisation des ouvrages, qui est, il faut l’avouer, un travail de titan… et nécessaire !

    Pour répondre à Valneandre concernant le SETI, personne n’était obligé, c’était juste une « contribution bénévole ». Je ne vois pas où est le problème à cela, c’est comme critiquer les gens de la croix rouge qui sont bénévole !!!

    Pour le ReCaptcha, c’est différent car on a pas le choix (alors qu’on a le choix de ne pas utiliser IE comme navigateur), il ne faudrait pas tomber dans l’outrance et devoir taper 25 mots et répondre à des questions de culture générale pour valider une réponse dans un blog (quoique ca pourrait etre marrant et faire le tri parmi les humains mais passons).

    Si des sites commençaient cette pratique, plus personne ne s’embêterait à laisser de messages et cela nuerait aux sites en question donc pas de risque de ce coté là à mon avis… Désormais je suis même fier de poster ce billet pour saisir le ReCaptcha et ainsi donner la traduction d’un mot à numériser !

  • J’aime beaucoup cette histoire. Comme quoi nous humains pouvons filer un coup dem ain aux ordinateurs. Ca a un côté rassurant! A bientot J.

  • Je ne connaissais pas ce reCAPTCHA, mais c’est vraiment une belle idée, et une idée utile 🙂

    Du coup je laisse un message peu constructifs juste pour le plaisir d’aider à numériser un livre 😀

  • Je me suis régalé à lire ce post, merci !

    Je trouvais que ReCAPTCHA était l’un des CAPTCHA les plus compliqués à déchiffrer, mais maintenant je ne lui en voudrais plus !

    Mais quand même, là je crois que je vais être obligé de recharger le CAPTCHA avant de poster mon commentaire, parce que c’est pas facile ^^

  • Je sais, j’arrive deux ans en retard, mais j’ai tellement pesté dans le passé contre ces CAPTCHA si compliqués à déchiffrer que lorsque je suis tombé par hasard sur cet article, j’ai eu envie de me racheter en laissant un commentaire.

    J’en profite tout de même pour poser une question : si le but est vraiment de faire reconnaître un mot incompréhensible par un ordinateur, pourquoi donc le déformer et le barrer comme cela semble être fait pour l’exemple « morning » ? Parce que franchement pour moi la difficulté vient plus de cette déformation supplémentaire que des problèmes de papier ou d’impression.

Leave a Comment