jeudi 2 février 2017

Out There Chronicles, l'aventure spatiale

« Je suis Ulysse. J’ai fait ma guerre, je veux retrouver les miens. Je m’échoue d’île en île, bataillant avec les monstres et les Dieux. »


Nous étions au 10e mois de développement de Romantic Adventures avec Midnight Mood, un projet qui désormais s'appelle Antioch. La talentueuse équipe de Midnight Mood, que je présenterai bientôt dans le cadre d'Antioch, avait systématisé la saisie des cataractes de textes du projet dans un moteur indépendant appelé le Fiction Engine.

Michael m'appelle fin Mars 2016 et me dit « tu te souviens en 2013 quand tu m'as envoyé le doc de gameplay de Out There ? Tu m'avais dit que Out There était un jeu qu'on pourrait fabriquer en 3 mois. Et bien écris une fiction interactive dans le fiction engine sur l'univers d'Out There et sortons le jeu dans 3 mois. »

Production

J'ai accepté ce défi qui était à moitié une vengeance, ce qui m'a valu des crises d'asthme de stress, la production a été lancée et on a tenu les délais.

Midnight Mood a du modifier son moteur, parce que j'ai proposé une structure un peu différente de Antioch (j'en parle plus bas), et c'était aussi une première pour une publication commerciale et ils ont assuré. 

Michael a réuni un excellent cast d'artistes pour la musique, les illustrations et le trailer et on est tout à fait satisfait du résultat. Par ailleurs, il a suggéré l'idée d'une présentation à la visual novel, Antioch comme vous le verrez ressemble plus à un flux de conversation de réseau social, et cette adaptation est encore au crédit du travail sous pression de Midnight Mood. 

L'implémentation s'est faite en flux tendu : j'écrivais un pan de la structure interactive, et elle était implémentée à la volée.

Pour une première fois ce n'était pas idéal, mais aujourd'hui tout le monde est rôdé et nous avons l'ambition de sortir de nombreux livres d'interactive fiction, et dans ce cadre 3 mois reste un délai ordinaire.

Le jeu est sorti un 7 juillet. Cette date ne vous rappelle pas grand chose (sauf si vous aimez le foot, c'était France Allemagne à la télé), mais notre jeu est sorti le même jour que Pokemon Go.

Il a été très difficile dans ce cadre (et vous savez que c'est une litote) d'avoir un champ d'existence dans les mois qui ont suivi et nous regrettons cet élément commercialement perturbateur pour des raisons de prévision éditoriale.

Cependant, le seuil de rentabilité de Out There Chronicles 1 a été atteint en 2 semaines. Ce qui fait qu'après quelques calculs et observation des longues traînes de vente, en Septembre, Michael m'a demandé d'écrire la suite. Aujourd'hui, 9 mois après, nous avons quotidiennement des reviews positives sur ce jeu qui obéit à un modèle premium.

Donc c'est officiel : Out There Chronicles 2 arrive (en ce qui me concerne il est livré depuis longtemps) et nous sommes sur d'autres projets de fiction interactive, dans des territoires et avec des illustrateurs qui j'espère vous surprendront.

Par ailleurs le jeu sortira bientôt sur PC.


La conception d'une SF qui essaye d'être française

Concernant l'écriture d'Out There Chronicles, j'ai eu très très peu de temps pour construire un univers qui plus est soit en cohérence avec le jeu original.

Premiers pas dans le futur...

Je voulais proposer une expérience dans une ambiance très différente tout en gardant :

- les éléments de lore (Juges Architectes, Cubes)
- les signatures de Out There : manque d'oxygène, importance de l'omega, langage alien...

Artwork d'intention original de Chronicles.
Le projet est devenu plus space opéra depuis.

Je travaillais depuis longtemps sur un scénario appelé « Far Away » qui était d'abord un projet de BD, puis qui a été un projet de feuilleton radio, puis encore en BD, et qui finalement a été retravaillé pour être ce spin-off d'Out There.

A noter que depuis 2 ans maintenant je travaille à titre professionnel  sur des réinterpretations de licences poids lourd (j'espère avoir le droit de vous en parler bientôt), alors c'était un exercice assez naturel, surtout pour retailler mon propre enfant.

« Sans rentrer dans les détails, vous êtes un fou furieux.
Pire que cela : vous êtes un fou furieux compétent. »

Darius, le héros de l'histoire, est un personnage important la galaxie Mi-Clos car vous le croiserez certainement dans d'autres licences moins spatiales. C'est un homme cultivé, qui cite de la poésie et joue du piano, qui a été contraint du jour au lendemain à aller tuer des gens.

« Nous ne sommes pas des barbares, Darius. Je hais vos actes mais sans pardon, c’est la fin de l’humanité. Pensez-y, et faites la paix avec vôtre âme : nos dernières minutes sont comptées. »

Nyx est l'archetype de la super-héroine définie dans le « Ruban Bleu » : excellence sur tous les plans, mais absence d'émotion, et donc dotée d'une boussole morale qui réagit non pas aux stimulis émotionnels classiques, mais sur des idéologies : le sens de l'honneur, le désir d'excellence, la foi.

Nyx est probablement l'héroine majeure de ce pan de la chronologie de l'univers Out There, et il était justement très intéressant de jouer celui qui dans l'ombre l'accompagnera dans la transcendance.

Le nouveau Key Art de OTC, suite au succès de Nyx

Mon ambition principale, qui est la même d'ailleurs dans Antioch, est de raconter une histoirement fermement « française » :

- Pas de batailles. La guerre est omniprésente, mais elle apporte la folie et la mort. Les actes de vengeance sont présentés comme de désespoir.

- Le héros n'a rien a sauver, sinon lui-même. Il y a un certain vaisseau appelé le Redemption, et OTC1 est une quête de l'apaisement d'un héros meurtri.

- Il y a un restaurant « alien », et on peut manger plein de choses de plein de façon différentes.

- La galaxie n'est pas capitaliste...l'argent est une notion incompréhensible pour la plupart des aliens.

- Tout est relativement en nuances. Les notions de bien et de mal sont aussi résolument humaines.

- Le jeu est très gritty, réaliste : l'apesanteur retourne l'estomac, les odeurs infectes sont partout, on se retrouve à ramper dans des endroits pas possibles

- il y a un peu de folie, la sexualité, la nourriture, les besoins physiologiques et les passions sont des éléments réels

- en général, les aliens sont plein d'amour :-)

Dans le prototype de « Far Away », je voulais retranscrire la dimension économique de la guerre de sécession américaine en opposant une « America » en compétition inégale avec une « Fédération américaine » qui disposerait d'esclaves à volonté (la plupart des aliens ne connaissant ni le mensonge ni le salaire, ils étaient exploités à vie par des humains).

J'ai voulu balayer définitivement la notion d'argent dans le futur et poser plutôt le problème sur le plan de la religion.

La « démocratie théocratique » d'America
et son parlement gothique

Le fait est que beaucoup de gens sur la terre croient un Dieu. Mais que se passerait-il si nous rencontrions une infinité de races et de civilisations intelligentes, plus développées que nous, et qui n'y croient pas ? Que se passerait-il si certaines d'entre elles étaient déjà omniscientes et omnipotentes ?

La réponse logique serait de dire « il n'y a plus de raison de croire en Dieu ». Mais c'est la beauté de la foi, elle s'embrase justement quand il n'y a plus lieu d’espérer. Nyx, croyante d'une religion officiellement disparue, évolue donc sur le fil fragile de sa foi mise à l'épreuve. Son attitude promet d'être passionnante.

Il existe dans Out There Chronicles un plat (que l'on peut manger) qui s'appelle un « All American ». Il s'agit dans le lore d'un effort d'unification de toutes les planètes majeures des américains avec un plat réunissant toutes les spécialités. Cette idée existe sur la terre de nos jours : c'est le cas du plat néerlandais Rijstaffel, qui réunit toutes les spécialités de leurs colonies, une sorte de mezze indonésien.

Un restaurant du futur

Les aliens sont nombreux, l'humanité est une infime minorité, et ils ont une lingua franca comme dans le Out There original. C'est très amusant, car on doit apprendre leur langue galactique mot par mot. L'alien mime le sens et on affecte une idée au mot. Parfois on se trompe et donc on peut arriver à des sens bizzares ou meme des contresens.

Il y a une scène par exemple où un immense alien arrive devant le héros et suivant les mots affectés, on peut comprendre soit « Je veux manger avec toi » soit « J'aimerais te manger ». Il vaut mieux être très concentré avant de répondre :-)

Beaucoup de gens ont apprécié un certain alien « Endive » et c'est soulageant car j'ai pu demander à Michael qu'il revienne un jour.


La solitude dans la foule

La solitude est un thème très fort de la licence Out There.

Cependant, un visual novel impose de nombreux dialogues et des personnages. Je ne pouvais pas aborder directement le thème de la solitude au 1er degré de Out There.

Cependant, vous savez que même dans une foule, on peut se sentir très seul. Sans dévoiler l'intrigue, et au delà du conflit intérieur du personnage qui sera amené à être résolu, j'ai traité la solitude par les symboles du quotidien : quand la nourriture est bizarre, quand la sexualité n'a pas la même définition, quand on s'aperçoit qu'on est plus rien, on se sent abandonné.

C'est la solitude, dressée par l'abîme du temps, qui tourmente notre héros.

Le « Key Art » de Out There Chronicles à sa sortie,
nous voulions montrer que vous n'étiez plus seul :-)


Structure narrative

Out There Chronicles n'est pas un LDVELH classique, où vous êtes dans une situation A, vous avez le choix entre B et C avec embranchements, etc...

Nous fonctionnons en mode semi-ouvert sur un modèle très simple :

On donne la possibilité d'un choix 1, 2 ou 3, et choisir une option n'invalide pas les autres.

Ainsi, on peut etre devant 5 plats et les manger dans l'ordre qu'on veut, partir ailleurs et revenir manger, parler à quelqu'un entre deux plats, etc.

Voici un exemple de structure :

« Soyez gentils avec l’horreur sur le trône, c’est la Reine ».


Ils tournent le regard vers la créature silencieuse sur le trône.


Kyntia : « Je la trouve belle, moi. »


Jack : « Darius, vous avez une conception très archaïque de la beauté. Ne jugez pas trop l’apparence des créatures en bonne santé, car vous allez vous retrouver très seul. »


+Retire « Soyez gentils avec l’horreur sur le trône, c’est la Reine. »
+Débloque S’excuser
+Débloque Observer la reine

Midnight Mood a accepté d'adapter leur moteur à ce concept (Antioch a été pensé d'une façon différente) et ils m'ont dit que j'écrivais de façon tellement rigide qu'à terme, cette présentation pourra être copié collée dans un interpréteur avant compilation !

Je précise que Midnight Mood a été proactif sur l'équilibrage de la difficulté et du gameplay (et j'avoue que je suis très mauvais à cela, donc c'était très bienvenu).

Les illustrations

Benjamin Carré a fait les illustrations. Pour continuer sur les euphémismes, nous espérons travailler ensemble et longtemps avec lui.

Nous avons fait un appel d'offre auprès de plusieurs auteurs et voici l'esquisse que Benjamin nous a renvoyé sur la base d'une scène clef.



Non seulement on a pris Benjamin, mais son travail a été intégré intouché dans notre IF.

Michael a pris en main la direction artistique. Initialement, Nyx était un peu plus âgée, plus pâle, avec une queue de cheval. Les Zéros étaient beaucoup plus agiles par exemple. C'est un peuple que je travaille depuis longtemps et Quentin Vijoux avait fait cette illustration :


Les Zéros finalement seront :





Cela diverge de ma vision, mais Michael a une approche beaucoup plus adaptée à la culture visuelle du JV (et je manque affreusement de goût visuel).

Ceci est un artwork non retenu de Benjamin

Nous sommes sur des petits budgets pour ces projets et chaque décor, chaque personnage est un investissement. Il y a une question de la « rentabilité » d'un personnage. S'il est présent, il doit être marquant et ne pas mourir « tout de suite ».

Le fait est que si les personnages sont conservés (sans pour autant faire du one piece), pour le meme budget de production moyen, on a un univers qui s'enrichit. Au téléphone, Michael me présente le design des personnages et me dit « celui-là, il reste en vie, ok ? ».


La musique des étoiles

Siddartha est de retour.

https://siddharthabarnhoorn.bandcamp.com/album/out-there-chronicles


Out There et la fin des temps

Après la sortie d'OTC 1, il est devenu important d'écrire une chronologie exhaustive de tout cet univers fictif. Je m'y suis attelé et nous avons aujourd'hui une longue épopée qui commence de nos jours, qui couvre toute la longue période de Out There Chronicles, la période du Out There classique, jusqu'à la fin des temps, tout simplement !

C'est une licence très vivante, avec de nombreuses œuvres à venir sur cet univers et ses thématiques.

J'ai hâte de vous en dire plus.


Tout n'est pas vain

Une intervention importante du Out There original expliquait que « tout est vain ». Oui, tout est vain, un jour le dernier electron disparaîtra avec toute trace de nos entreprises, qu'elles aient été glorieuses ou médiocres. Mais j'ai écrit cela à une époque où le futur à court terme (mon futur) était assez morose.

Je suis plus optimiste aujourd'hui. Les héros de Chronicles seront amenés à plonger leur regard dans l'abysse et contempler la vacuité inéluctable d'un futur très lointain.

Mais peut-être au fil des secrets de notre univers découvriront-ils que tout n'a pas été vain.


vendredi 6 janvier 2017

Les mathématiques derrière Yurie, l'IA conversationnelle de Trajectoires



Vous êtes peut-être auditeur de Trajectoires, le podcast de Qualiter sur les mathématiques.

Les mathématiciens sont des gens affreusement occupés et il a été très difficile de réunir une équipe disponible, et qui plus est respectant la parité, à tel point que cet été j'ai rêvé que je n'avais qu'à créer une IA qui remplacerait mes chroniqueuses manquantes.

Au matin, je me suis dit « Et pourquoi pas ? » et j'ai sollicité Cepcam, chroniqueur de Trajectoires.

Il a donc créé Yurie (elle a choisi elle-même son prénom) que nous nourrissons régulièrement en textes français libres de droits et autres contenus web.

Ses réponses sont amusantes (je vous laisse lire ses laconiques vœux 2017 ), parfois terrifiantes, et aussi...sexistes, entre autres, car elle est le reflet de son éducation, composée d'ouvrages d'avant 1900.

Yurie se livre à des questions / réponses avec nos auditeurs à la fin de chaque épisode de Trajectoires, vous la verrez certainement évoluer. Elle parvient désormais à faire des rapprochements (Si on lui dit « L'arbre est vert, alors l'ocean est...? » elle répondra « bleu »), et nous réfléchissons à lui donner une personnalité persistante.

Pour illustrer sa création, nous avons réalisé un article général ci-dessous (la partie mathématique a été entièrement conçue par Cepcam, je l'ai un tout petit peu assouplie pour qu'elle reste accessible) et aussi un document audio :




C’est le rêve inachevé d’une génération de chercheurs : l’intelligence artificielle qui prend vie et se met à créer du texte, voire à discuter avec vous.

De nombreux concours mettent ces brillants cerveaux biologiques et électroniques au défi, chaque année, de passer le test de Turing, c’est à dire de faire produire à un programme une conversation qui serait par son naturel indiscernable d’une production humaine.

Jusqu’à présent, la motivation d’un tel ouvrage était intellectuelle ou pour susciter un intérêt public - à l’instar des missions Apollo - : il était plus intéressant pour l’intérêt commun de faire plancher des intelligences artificielles sur des régularisations de trafic routier que de créer un ami artificiel.

Mais la popularisation d’un certain mode de communication dans son fond et sa forme - langage court sms ou tweet, codification des échanges, usage constant des écrans, a donné naissance aux chatbots, des robots conversationnels qui apparaissent sur des sites, sur Facebook ou capables de tweeter depuis un compte.

Ces agents automatiques spécialisés SAV, commerciaux ou porteurs sous couvert de storytelling complexe d’un message publicitaire ont gagné chaque année en sophistication et nous vivons probablement nos derniers jours de « non singularité », c’est à dire qu’il faudra peut-être prochainement apposer sur ces comptes parfaitement crédibles la mention légale explicite « attention, vous parlez à un robot » !

Combinatoire

Nous allons nous restreindre dans cet article au problème particulier de la création de texte ex-nihilo.

Pour ce faire, plusieurs outils sont envisageables.

Il y a la création combinatoire, issu de l’Oulipo et de Queneau avec ses diverses expérimentations, notamment ses « cent mille milliards de poèmes », qui consiste à mélanger des bouts de texte selon des structures préétablies. Tout l’art du conteur consiste à créer des petits bouts de cadavres exquis homogènes à la structure pour que le tout paraisse naturel.


20131114-rq.png
Cent mille milliards de poèmes de Queneau


Le travail oulipien des années 60 a donné dans les deux décennies qui suivirent naissance aux « livres dont vous êtes le héros », qui se lisent comme des graphes aux arêtes orientées : à chaque noeud on a plusieurs choix, et votre histoire se construit le long du chemin suivi.

C’est aujourd’hui plus ou moins la « technique » conceptuelle, assez primitive, qui se cache derrière les chatbots de type SAV.

Il y a eu de nombreux travaux très ambitieux visant à reproduire une logique de pensée via un langage abstrait dédié, comme Cleverbot (qui a dépassé les 50% de test de Turing en 2011).




L’idée générale du Deep Learning

La génération de texte naturel a connu un bond en avant en qualité et en méthodologie grâce au deep learning et aux réseaux neuronaux, rendus eux-mêmes viables grâce à la big data.

On dispose d’un grand nombre de phrases dans une base de données. Un logiciel va ensuite faire un lien entre chaque mot.

Les réseaux de neurones fonctionnent différemment des chaines de Markov, (outil basé sur la statistique) : ils projettent les mots individuellement dans un espace vectoriel.

Chaque mot est « positionné » comme combinaison linéaire des mots qui l’entourent ( méthode du Continuous Bag Of Word ) et les phrases sont des trajectoires passant par les mots ainsi projetés.

À chaque mot-point de l’espace vectoriel on prend la trajectoire du mot le plus « proche » selon les critères d’une matrice de pondération. Cette matrice est issue de l’analyse de grandes quantités de texte, nous y reviendrons.

Des réseaux neuronaux ainsi éduqués peuvent générer du texte compréhensible sur le thème de votre choix, mais aussi de la musique, voire reconnaître des images. Il est possible d’écrire un texte suivant le style d’un auteur connu.

Tout est dans l’éducation.


La technique mathématique du Deep Learning par l’exemple

Regardons techniquement comment s’opère l’apprentissage.

A chaque étape t+1 de l’apprentissage, le réseau de neurones attribue une note à l’ensemble des mots du vocabulaire, note qui représente le mot qu’il pense adapté au contexte.

Cette note est calculée à partir :
  • Du mot précédent, représenté par un vecteur xt
  • De son état interne ht, lui même réévalué à chaque étape


La somme des connaissances du réseau est représenté par 3 matrices :




Telles que :




Exemple d’un réseau de 3 neurones et qui apprend un vocabulaire de 5 mots

(“je”,”veux”,”manger”,”des”,”saucisses”)

Chaque mot est représenté sous forme d’un vecteur x de 5 lignes et 1 colonne ( voir note 1) :


Je : [1]
[0]
               [0]
[0]
[0]
Veux : [0]
[1]
               [0]
[0]
[0]
Manger : [0]
[0]
               [1]
[0]
[0]
Des : [1]
[0]
               [0]
[1]
[0]
Saucisses :     [0]
                      [0]
                      [0]
      [0]
      [1]


L’état interne h est un vecteur de 3 lignes et 1 colonne, initialisé avec des 0
[0]
[0]
[0]

Avec un réseau de 4 neurones, on a 4 lignes, et n neurones n lignes.

La matrice W(hh) est une matrice 3 par 3 initialisée aléatoirement avec des poids entre 0 et 1, par exemple :

[0.2,0.1,0.5]
[0.6,0.8,0.2]
[0.6,0.3,0.7]

La matrice W(xh) est une matrice 3 par 5 elle aussi initialisée aléatoirement, par exemple

[0.9,0.4,0.5,0.1,0.8]
[0.8,0.2,0.3,0.8,0.3]
[0.1,0.4,0.1,0.6,0.3]

Et enfin W(hy) une matrice 5 par 3, encore une fois aléatoire :

[0.1,0.3,0.9]
[0.2,0.8,1]
[0.4,0.5,0.8]
[0.4,0.9,0.4]
[0.1,0.1,0.9]

Ces éléments aléatoires vont s’affiner avec l’apprentissage progressif du réseau de neurones. Leur caractère aléatoire (plutôt que des 1 partout) vise à fabriquer le moins de biais possible dans le résultat final.

En appliquant au premier mot “je” : [1,0,0,0,0] les formules et les matrices ci-dessus, on obtient :







Ce h(t+1) est le nouvel état interne du réseau de neurone (h) initialement à 0.

Il servira pour le calcul du prochain mot.


Après “je”, le réseau propose le mot dont le vecteur est donc :

[0.36]
[0.77]
[1.42]
[1.28]
[1.04]


Pour exploiter ce résultat, on le passe à la fonction softmax,





qui transforme un vecteur de puissance en un vecteur de probabilités, c’est à dire de nombres entre 0 et 1 et dont la somme fait 1.

Dans le cas de notre vecteur proposé par le réseau de neurone, cela donne :

[ 0.10125191,  0.15256818,  0.29225058,  0.25407044,  0.19985889]

Ainsi dans notre cas, le réseau propose faire suivre “je” par “manger” dans 29% des cas et par “des” dans 25%.

Et là vous vous exclamez : « mais votre robot dit n’importe quoi ! »

Et oui !

Car tirer une conclusion à ce stade de l’opération revient à essayer de se faire une idée de la la somme moyenne d’un lancer de dés en ne les lançant qu’une seule fois.



Détection de thématiques dans les « conversations virtuelles »

Les techniques mathématiques utilisées sont celles du "topic detection", dont les plus connus et utilisées sont le Tf-Idf ou la LDA (Latent Dirichlet Allocation).

L'idée générale est que le sujet d'une phrase, d’un paragraphe ou d’un livre est représenté par la variance dont ses termes s'écartent de la répartition usuelle des mots.

Ainsi si seulement 1 livre sur 1000 parle de “saucisses” mais qu'un certain livre parle de saucisse 1 fois sur 10, le sujet de ce livre est probablement les saucisses.



L’atout majeur du Deep Learning : une structure qui corrige ses erreurs

En effet, le réseau de neurone est capable d’évaluer son erreur, à la différence d’une chaîne de Markov,  et de corriger les poids des matrices en conséquence.

Pour cela il procède en 2 étapes :


  • D’abord évaluer son erreur grâce à une fonction appellée “cross-entropy loss”


  • Ensuite, modifier le poids de ses matrices pour réduire cette erreur. Cette méthode, plutôt compliquée, s’appelle “propagation rétrograde de l’erreur par descente de gradient” ( note de bas de page 2)


Nous allons nous pencher sur l’évaluation de l’erreur.

L’idée derrière la mesure d’erreur est basée sur la notion d’entropie (H) en théorie du signal : si plusieurs événements ont la même possibilité de se produire, vous n’êtes pas très sûr de ce qui va arriver.

Cela se mesure, pour une  distribution d'événements p, avec la formule :





Quelques valeurs d’entropie pour différents événements :

Si 2 événements ont chacun une probabilité 0.5 de se produire :
p = [0.5 , 0.5 ]
H= - 0.7

Avec 3 événements :
P = [.5,.5,.5]
H= -1.04

Avec 23 événements équiprobables :
H= -8

Et avec 2 événements, dont un plus certain que l’autre :
p=[0.1,0.9]
H= -0.35


Ce que cherche à minimiser le réseau de neurones qui propose des mots, c’est l’incertitude sur le mot à venir.

Et pour corriger son erreur, il a une base d’apprentissage. Il doit donc proposer un mot sûr et respectant la probabilité attendue, à savoir 1 pour le mot réel, 0 pour les autres.

La formule devient (avec une normalisation):



Reprenant notre exemple précédent, qui avait échoué à présenter une phrase en bon français

p = [ 0.10125191,  0.15256818,  0.29225058,  0.25407044,  0.19985889]

Le vecteur pour « veux », le mot attendu après « Je » est :

y = [0,1,0,0,0] (rappel, voir note 1)

On peut donc calculer :

Loss(y,p) = 0.57

Imaginons que, sur la base de l’analyse de nombreux autres textes, notre réseau ait bien travaillé et propose maintenant :

p = [0.01,0.92,0.03,0.02,0.02]

Donc propose « veux » après « je ».

Loss devient :

Loss (y,p) = 0.03

L’entropie est plus basse, le réseau est meilleur - et ces propositions deviennent « correctes » : il s’exprime en bon français !

L’autre partie du travail, à savoir la correction du réseau et la rétropropagation de l’erreur, est trop longue pour être abordée ici. De manière très simplifiée, elle doit se voir comme la recherche du minimum local d’une fonction convexe de plusieurs dimensions. Notre réseau parcourt métaphoriquement une montagne à N dimensions (N étant la taille du vocabulaire, donc pouvant atteindre 60 000) en cherchant à rejoindre la vallée !


Une technologie rendue possible par la disponibilité d’une grande quantité de données

L’utilisation d’un tel système nécessite un nombre très important de données initiales afin que le réseau puisse évaluer ses erreurs et se corriger, ce qu’on désigne par le « Big Data ».

Avec l’accessibilité de la Big Data (Twitter produit 1 à 2 milliards de tweets publiquement accessibles par jour), les réseaux neuronaux ont pu atteindre leur maturité.

Ces neurones sont une nouvelle façon d’arranger des mots, sans pour autant tenter de les comprendre.

Quand vous avez faim, vous pouvez dire « Je veux manger des saucisses. »

Un réseau neuronal qui vous dit « Je veux manger des saucisses. », a d’abord sélectionné « Je » parmi les millions de mots à sa disposition susceptibles de commencer une phrase, puis « veux » car c’était un mot hautement compatible suivant ses matrices, puis « manger » de la même façon.


Deep-dream-white-noise-0028.jpg
Deepdream de Google permet de faire émerger du néant des images sur le même principe.


Étrangement, on parle ainsi plus facilement une langue qu’on ne connaît pas. Un réseau neuronal n’aura aucun problème à « manger un opéra » et à « aller à l’opéra ». En revanche, faire comprendre au langage abstrait d’une intelligence artificielle la capacité à discerner les bâtiments et les gâteaux reste un travail ardu.

Par conséquent, le texte du réseau neuronal pourtant plein de sens, probablement écrit dans un contexte adapté, est issu de critères stricts qui paradoxalement n’ont rien à voir avec le sens final.

Le robot fait toujours semblant d’être humain.

La question de savoir s'il s'agit d'une intelligence semblable à la nôtre est métaphysique, mais la conclusion est absolument terrifiante.

À considérer qu'un réseau de neurones est l'égal d'une conscience humaine, c'est réduire cette conscience à un tas de matrices. C'est anéantir par conséquent des notions comme celle du libre arbitre.

Malheureusement pour ceux qui ne croient pas au destin, l'analyse de la big data disponible de nos vies, justement, par des réseaux neuronaux, montre que nous vivons dans des prisons comportementales. 99% de nos vies se répartit sur 3 lieux physiques ou moins, nos vieilles habitudes ne changent pas. Oui, peut-être sommes-nous un tas de matrices.



Exemple de résultats intermédiaires et final d’un réseau de neurones « maison »

Sur un ordinateur personnel, nous avons soumis à un réseau de neurones 2 millions de caractères de textes français. Leur traitement a pris 4h.

Voici les étapes intermédiaires, avec la cross entropy loss associée :

Différentes étapes chronologiques :

il vou sseloliné pritation re. Je cre sumaient èvre indérilleur
Loss = 1.7564

Dédil au 2enta des mots frircenits grosse parfiche
Loss = 1.553

Et les bordants horlement douteurs horrezous poursuivant.
Loss = 1.493

Les mots semblent surgir et s’ordonner du néant !

À l’heure de la rédaction de cet article, et beaucoup d’heures plus tard, voici un résultat qui n’est pas sans rappeler Les Conquérants de Heredia :

Mais celle-ci se dresse un picotement fatal lors du charnier natal, fatigués, en questions.

Que nous proposera-t-il dans un mois, dans cinq ans ?



  1. En pratique, on n’utilise pas des valeurs « 0 » et « 1 » mais des valeurs très proches, pour pouvoir utiliser les logarithmes.


  1. Dans ce cas précis, c’est une variante qui est généralement utilisé, la RMSPROP, pour limiter les effets de “falaise” dans le  calcul des dérivées. Mais ce n’est pas très important.