Human computation, ton cerveau m’intéresse!

{plusone}

Note: Cet article invité a été rédigé par Christophe Méheut. Christophe Méheut, ingénieur Arts et Métiers est l’architecte technique des Krabott. A 43 ans, Christophe est expert dans les systèmes de calcul intensif faisant notamment appel au calcul parallèle sur GPU (CUDA). La partie théorique de Krabott s’appuie sur un projet de thèse en finance quantitative de l’Ecole des Mines de Paris.
La résolution d’un simple captcha, l’association de tags à des images, la reconnaissance d’une signature manuscrite : toutes ces taches qui paraissent pourtant simples résistent encore à l’automatisation. Le cerveau humain aurait-il un meilleur processeur que les machines ?

C’est en partant de ce constat que Luis von Ahn va poser en 2005 dans sa thèse le concept de « Human computation », un concept placé aux côtés de l’intelligence collective ou du crowdsourcing. Partant du constant que les logiciels d’OCR (reconnaissance automatique de caractères) atteignent rapidement leurs limites lorsque les ouvrages sont anciens ou lorsqu’il s’agit de s’approcher d’une fiabilité à 100%, il a l’idée de mutualiser « du temps de cerveau disponible » pour réaliser cette tache. C’est le projet reCAPTCHA.

Le CAPTCHA est un test informatique bien connu, permettant d’éviter qu’un robot vienne polluer les inscriptions d’un forum par exemple ou créer des millions de faux utilisateurs. reCAPTCHA est une sorte de CAPTCHA qui vérifie qu’un humain est bien derrière la machine en lui demandant de retaper des mots scannés présentés à l’écran sous forme de petites images. Mais ces mots scannés sont ceux d’un document réel ou d’un ouvrage en cours de numérisation. Ainsi, sans le savoir l’utilisateur participe à un travail de digitalisation qui serait couteux et de moins bonne qualité s’il avait été confié à un logiciel d’OCR.

 

 

reCAPTCHA est donc un banal logiciel d’OCR mais qui a la particularité de s’appuyer sur une puissance de calcul humaine phénoménale : l’équivalent de 23 000 personnes travaillant 7j/7 et 24h24, soit 23 000 processeurs humains.

 

 

 

Il serait alléchant de pouvoir disposer d’une telle puissance de calcul pour du trading algorithmique : des milliers voire des millions d’utilisateurs viendraient mettre à disposition leur temps, leur énergie et leur intuition pour concevoir et améliorer sans cesse des stratégies de trading. Et gratuitement si possible!

Utopique ? Pas tout à fait. En 2001, un chercheur Alexander Kosorukoff définit le concept de « human based genetic algorithm » ancêtre en quelque sorte de l’algorithme de reCAPTCHA. Il s’agissait de faire intervenir des humains au cœur même d’un processus d’optimisation et d’exploration algorithmique : c’est à dire aux étapes cruciales de sélection et de reproduction qui sont au fondement de la théorie des algorithmes génétiques. Alexander Kosorukoff a démontré dans ses publications qu’un processus qui mettait l’homme au service de la machine donnait des résultats plus performants que la machine seule.

Le projet Krabott, initialement développé au CERNA (Laboratoire de l’Ecole des Mines de Paris) en 2009 s’appuie sur le « human based genetic algorithm » pour appliquer un principe de Human computation dans la sphère du trading algorithmique. Il s’agit de recruter des utilisateurs pour participer aux étapes de sélection et de reproduction de stratégie de trading, sur le modèle défini par Alexander Kosorukoff. L’utilisateur a pour mission d’« adopter » un dizaine de stratégies de trading, pour les évaluer, les comparer et en créer des nouvelles par croisement « génétique » de deux stratégies « parents ».

Krabott est présenté sous forme d’un jeu, on peut y participer pour la compétition en face des autres « desk » ou pour bénéficier soi-même de stratégies de trading « entrainées » par la communauté. Particularité de Krabott, on y joue en « aveugle » le contenu des stratégies n’est pas connu des joueurs qui ne peuvent visualiser que leurs performances macro (P&L et ratio de Sharpe). Il est ainsi ouvert à des joueurs amateurs sans aucune connaissance du trading*.  Toutes les stratégies sont appliquées sur le marché du FOREX et sur la paire EURUSD, sur une fréquence à la minute. La plate-forme calcule toutes les minutes les positions de dizaines de milliers de Krabott sur le marché en simulant des passages d’ordres dans des conditions réelles (temps réel, spread…), ce processus fait appel à du calcul sur carte graphique (CUDA).

En concurrence de ces utilisateurs humains, des machines de calcul réalisent des millions d’opérations génétiques visant à améliorer le contenu des stratégies de trading existantes, et constituer un vivier de solutions possibles. Ce vivier sert à la fois de base initiale de travail pour les joueurs et de référentiel pour mesurer la performance de l’ensemble du processus.

Les premiers résultats qui seront publiés cette année sont étonnants :  ainsi 70% des meilleures stratégies de trading sont issues du travail des joueurs alors même que les stratégies « joueurs » ne représentent que 16% du total des stratégies évaluées dans le jeu (les autres sont purement issues du calcul). Idem pour le ratio de Sharpe qui est très sensiblement meilleur avec des Krabott issus d’interventions humaines.

Mais Krabott a démarré en 2010 avec des stratégies de trading très basiques dont les performances moyennes sont médiocres et peu spéculatives. Une seconde version de Krabott prévue début novembre 2012 apportera de nouvelles stratégies plus spéculatives et le multidevise (EURUSD, EURJPY, EURCHF, EURGBP).

Quelles applications concrètes pour le Human computing dans le trading ? Un système comme Krabott permettrait à la fois de confier à un ordinateur « humain » l’optimisation des paramètres d’une stratégie de trading existante ou d’explorer de nouvelles combinaisons à partir d’une stratégie donnée, avec une capacité d’adaptation temps réel en fonction des comportements du marché.

Reste à trouver l’incentive qui sera capable de réunir en permanence des milliers ou des millions de joueurs !

Krabott sur le web : www.krabott.com
Krabott optimisé mobile : www.mkrabott.com et sur l’App Store « Krabott »
En savoir plus sur le Human computation : http://humancomputing.blog.lemonde.fr/

(*) Cette ignorance des joueurs rejoint un autre projet scientifique né un peu plus tôt, et également fondé sur le jeu et le human computation : Fold-it.

Laisser un commentaire

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

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>