Arnaud Megret : Akinator
Arnaud Megret, ingénieur en informatique, créé un logiciel popularisé sous le nom Akinator pour un « projet pas très ambitieux, pour s’amuser ». Le succès a été planétaire en 2007 par son impressionnante faculté de raisonnement. Le principe est simple, on pose 20 questions (tiré du jeu des 20 questions) à un utilisateur pour deviner le personnage qu’il a en tête. Akinator a une base de personnage, séries et des questions pertinentes qui s’enrichissent au fil des parties avec l’utilisateur avec le cheminement des questions et les réponses. Au fur et à mesure des apprentissages la rapidité du jeu s’améliore.
Le moteur d’inférence (du verbe « inférer » qui signifie « déduire ») est LIMULE dont le principe est simple. L’approche du moteur est probabiliste (proche du modèle bayésien). Il s’enrichit au fil des réponses et met à jour ses statistiques au fil des parties.
Il faut imaginer une base de données avec des personnages et ses caractéristiques, des questions qui s’enchainent dans un ordre logique. Chaque question correspond à une question fermée dont la réponse est oui ou non. À chaque tour, le choix des questions se restreint par éliminations (approche probabiliste). On choisit la question suivante en fonction du couple probabilité et de la question parente. Dans le cas où l’utilisateur répond « je ne sais pas … » alors la question suivante se portera sur la deuxième question la plus probable.
Et si Akinator ne trouvait pas la réponse, il note le cheminement de question et crée une nouvelle entrée pour alimenter sa base de connaissance.
Exemple d’illustration du fonctionnement : Questions sur les séries TV
Je choisis « Alice Nevers : le juge est une femme ».
Jeu de question
Est-ce une série policière ? Oui : 2, Non : 3
-> N'y a-t-il qu'un seul héro ? Oui : 6, Non 7
--> Le héros est-il un agent de police ? Oui : 8, Non 9
---> Le héros est-il ou a-t-il été marié ? Oui : 25, Non : 24
----> Le héros est-il un homme ? Oui 10, Non : 11
----> Le héros a-t-il des enfants ? Oui : 18, Non : 19
-----> Le héros est-il commissaire de police ? Oui : 74, Non : 20
-----> Les agents mettent-ils en costumes et cravates ? Oui : 28, Non : 27
----> Le héros a-t-il des enfants ? Oui : 26, Non : 27
-----> Le héros sait-il quand une personne ment en décryptant les expressions de son visage et ses gestes ? Oui : 46, Non : 28
-----> Le héros est-il un homme ? Oui : 29, Non : 30
--> Les héros travaillent-ils tous au sein de la même agence ? Oui : 32, Non : 33
-> N'y a-t-il qu'un seul héro ? Oui : 55, Non : 56
--> Le héros est-il marié ? Oui : 57, Non : 58
--> Y a-t-il des extraterrestres dans la série ? Oui : 103, Non : 104
L’enchaînement des questions est ordonné et pondéré. Mais toute l’intelligence repose sur la construction de l’enchaînement et la rédaction des questions. Au départ, les statistiques sont livrées avec le jeu avec les données d’entraînement.
Dans l’exemple, on voit clairement qu’une même question peut être présente deux fois, car il existe plusieurs chemins de pensée. Les probabilités de « Oui » ou de « Non » indiquent les statistiques de réponses lors de l’entraînement. Ses statistiques sont mises à jour au fur et à mesure du choix des questions/réponses.
Les statistiques de l’utilisateur pour chaque question sont consignées pour améliorer la rapidité du jeu. On part du principe que le choix de l’utilisateur n’est pas un hasard, mais orienté en fonction de ses goûts ce qui restreint un peu plus les questions à poser.
Web Application
C’est le moment de tester l’application puisque cette application française est toujours en ligne et maintenue par son auteur.
https://fr.akinator.com/theme-selection
Citation de l’auteur
« Derrière Akinator, nous avons un puissant moteur d’intelligence artificielle qui nous a permis de générer un puissant bouche-à-oreille. » Arnaud Megret (2007)
