Un escargot à Manhattan

Duolingo

Update 29/06. Leur article, Mixture Modeling of Individual Learning Curves a remporté le Best Paper Award de la conférence !

La keynote de bienvenue à la conférence Educational Data Mining 2015 (26 juin, Madrid) a été donnée par Luis von Ahn, créateur de reCAPTCHA, ESP game et co-fondateur de Duolingo et Matt Streeter.

C’était impressionnant. Luis a parlé 20 minutes, Matt a parlé 20 minutes, puis les questions ont fusé pendant les 50 dernières minutes.

Historique et méthodes, par Luis von Ahn

Quelques chiffres

  • Aujourd’hui, 1,2 milliards de personnes apprennent une deuxième langue1.
  • Duolingo vient de fêter (en 2015) ses 3 ans.
  • Ils ont 15 millions d’utilisateurs actifs.

Quelques citations

In the past two days I’ve learned more from Duolingo than in four years of high school in Spanish.

Et puis…

This is probably the single greatest thing currently on the Internet.

Après avoir montré cette citation, Luis a dit : « That’s from my mother. » Effet assuré.

Démarche et principe

Au départ, ils voulaient travailler avec les écoles pour définir leur programme scolaire. Mais la 1re école voulait qu’ils fassent exactement comme elle le leur disait ; une autre école voulait également qu’ils fassent exactement comme ils le voulaient (mais différemment, évidemment), puis quand les écoles allaient les voir ils répondaient « Sorry, we don’t talk to schools » et aujourd’hui, ce sont les écoles qui adaptent leur programme scolaire en fonction de Duolingo.

Le principe est simple : le langage est découpé en un arbre de compétences, les gens doivent remplir une jauge (dorée une fois remplie) pour chaque nœud qui leur permet de débloquer de nouveaux mondes.

Chaque leçon représente 20 exercices, et ils ont une sorte de barre de progression intelligente qui augmente et diminue d’un certain montant selon la difficulté de l’exercice en cours.

Ils estiment que 34 heures de Duolingo équivaut à un semestre d’école de langues. Ils souhaitent être aussi bons qu’un vrai cours.

Culture de l’addiction

La jauge d’un monde diminue lorsqu’on ne s’est pas connecté depuis longtemps (c’est leur manière de modéliser l’oubli). Les gens reviennent sur le système parce qu’ils souhaitent garder des jauges dorées sur leurs mondes.

Ils ont même testé d’envoyer des mascottes en larmes par mail pour dire « Ça fait longtemps qu’on ne vous a pas vu » et ils testaient via A/B testing la mascotte qui faisait le plus culpabiliser.

En fait, ils ont tellement d’utilisateurs qu’ils peuvent A/B tester n’importe quoi (par exemple, est-ce qu’il vaut mieux faire Food ou Plurals en premier dans l’arbre de compétences ?) : ça ne leur prend que 6 heures pour avoir 50 000 nouveaux inscrits.

Aspects plus techniques, par Matt Streeter

Comme fonctionnalités, ils ont la détection de faute de frappe. Ils sont très contents de leur modèle d’apprentissage pour la barre de progression.

Vérification de réponse

Le problème principal qu’ils se posent : étant donné une phrase donnée A et une phrase tapée B, comment déterminer si B est une traduction correcte de A ? C’est d’autant plus compliqué que par exemple, en japonais il y a plus de 200 000 manières de dire « Je t’aime » (le registre de langue pour chacun des sujets, la capacité à ajouter des superlatifs, etc.). Et les faux négatifs énervent les utilisateurs.

Le souci, c’est que la traduction à base de règles est difficile à mettre en place et la traduction purement statistique n’est pas assez précise. Leur solution : beaucoup d’entrées manuelles, plus quelques règles générales.

En fait, leur idée géniale (que j’imagine hyper classique mais qui était très bien expliquée) : construire un automate (étiqueté par des mots) qui va reconnaître plusieurs réponses correctes (en cas de contraction, de nombre écrit en chiffres, d’orthographe alternative color-colour), et reconnaître des erreurs fréquentes (mot manquant : ε-transition empruntée, mot manquant, accent manquant, grammaire incorrecte).

Détection de faute de frappe

Pour ce problème, ils ont également un automate étiqueté par des lettres. Un algorithme de programmation dynamique (que je devine similaire au calcul de la distance de Levenshtein) permet de déterminer un chemin passant par au plus une erreur.

Barre de progression

Leurs objectifs :

  • La barre de progression doit être mise à jour de manière intuitive.
  • La leçon ne doit pas se terminer tant que l’utilisateur n’a pas appris tous les mots de la leçon.
  • L’utilisateur ne doit pas être découragé par ses erreurs.

Leur but est de modéliser la probabilité que l’utilisateur connaisse tous les mots traités dans la leçon. Ils ont un modèle qui est un mélange de Bernoulli (expliqué dans le papier Mixture Modeling of Individual Learning Curves) : c’est une généralisation du modèle de Bayesian Knowledge Tracing qui est une chaîne de Markov cachée modélisant la variable (« L’utilisateur connaît-il le mot X ? »).

Leur business model

À la fin d’une leçon ils proposent parfois : « Si vous souhaitez mettre en pratique votre apprentissage, vous pouvez nous aider à traduire ce document. » CNN leur envoie des news à traduire et les paie pour ça.

Une perle :

En fait, notre business model est simple. On a un financement par capital-risque, puis on attend et ça grossit tout seul.

Ils souhaitent valoriser leur certification, qui est leur autre source de revenus. Harvard commence tout juste à l’accepter.

  1. J’ai galéré à trouver, mais ça vient de Play at Work: How Games Inspire Breakthrough Thinking de Adam L. Penenberg.