La revue culturelle critique qui fait des choix délibérés.

La revue culturelle critique qui fait des choix délibérés.

Hommage à un idiot sublime
| 30 Jan 2018

S’il est un résultat récent de l’Intelligence Artificielle qui a de quoi faire rêver – sans préjudice d’un éventuel cauchemar –, c’est bien le logiciel AlphaGo Zero de Google. Il s’agit du dernier né d’une impressionnante et toute nouvelle dynastie de programmes champions dans un jeu, le Go, que la plupart des spécialistes considéraient encore il y a peu comme inaccessible aux ordinateurs, tant est grande la combinatoire de ses positions possibles : comparés au Go, les échecs font presque mine de morpion.

En 2016, l’ancêtre AlphaGo Lee avait pourtant fait la une en battant le champion du monde en titre, le coréen Lee Sedol, en conditions de jeu réelles. En 2017, son successeur AlphaGo Master avait renouvelé l’exploit, battant le champion Ke Jie ainsi que soixante grands maîtres.

Ces deux extraordinaires programmes font pourtant pâle figure auprès d’AlphaGo Zero, qui après seulement trois jours d’entraînement a humilié le premier par le score sans appel de 100 à 0 (utilisant au passage dix fois moins de ressources de calcul), avant de laminer le second (89 à 11) quarante jours après avoir commencé d’apprendre à jouer.

Si ce résultat est fascinant en soi, tout aussi fascinante est la simplicité qui en sous-tend la conception. AlphaGo Zero ne connaissait strictement rien au jeu de Go quand il commença à apprendre. Nada. Zéro, justement. Pas de bibliothèque de parties célèbres ou de tactiques classiques. Pas le moindre paramètre ad-hoc introduit dans les algorithmes par un développeur adepte du noble jeu. AlphaGo ne connaissait à l’origine que la règle du jeu, juste le minimum pour l’empêcher d’effectuer des mouvements illégaux et pour savoir quand il avait gagné ou perdu. Le grand débutant dans toute sa splendeur, passé champion toutes catégories en moins de deux mois.

Mazette. Voilà qui donne tout de même envie de soulever le capot, vous ne trouvez pas ? Cela tombe bien : un récent article dans Nature (accessible via ce blog, et bizarrement pas si abscons que cela au non-spécialiste) nous dévoile ses secrets. Allons y faire un tour.

AlphaGo Zero est – comme les autres logiciels joueurs – équipé d’un puissant algorithme de recherche arborescente, lui permettant d’explorer les différentes suites de mouvements possibles et leurs conséquences. Mais il est aussi et surtout muni d’un réseau de neurones qui apprend progressivement à reconnaître une situation potentiellement gagnante.

Dans n’importe quel programme de jeu, l’algorithme de recherche arborescente permet d’explorer l’arbre des mouvements possible – du joueur et de son adversaire – jusqu’à une certaine profondeur, puis d’évaluer la « valeur » de la position finale atteinte. Le programme choisit alors son prochain mouvement pour aller vers la meilleure position finale qui lui soit accessible en supposant que son adversaire jouera au mieux. Nous avons déjà parlé de cela plus en détail.

L’algorithme de recherche arborescente utilisé par AlphaGo est dit de Monte-Carlo : pour évaluer la valeur d’une position, il joue de multiples parties, initialement au hasard, à partir de cette position. En comptant ses défaites et victoires, il détermine une probabilité de gain à partir de cette position. Un programme de jeu classique peut ensuite utiliser ces résultats pour choisir un mouvement qui l’emmène vers la meilleure position parmi toutes celles immédiatement accessibles.

Ce qu’ajoute AlphaGo à ce cocktail, c’est la capacité d’apprendre à « deviner » tout seul ce que son algorithme de recherche (fort coûteux en calculs, et dont il doit user avec discernement dans le temps imparti) pourrait lui dire sur une position qu’il n’a encore jamais rencontrée. AlphaGo Zero ajuste son réseau de neurones de façon à prédire en gros la même valeur que son algorithme de recherche pour les positions qu’il a étudiées lors de ses précédentes parties ; cela lui permet également de prédire un résultat a priori pour des positions inconnues. Lors des prochaines parties simulées pendant la recherche arborescente, il utilisera cette connaissance nouvellement acquise et jouera donc mieux, moins au hasard, ce qui rendra à son tour ce même algorithme de recherche plus efficace. AlphaGo ajustera à nouveau les paramètres de son réseau de neurones pour prévoir des résultats ressemblant le plus possible à ceux qu’a ramenés l’algorithme de recherche amélioré, et les deux composants – algorithme d’exploration d’arbre et réseau de neurones – vont ainsi s’aider mutuellement à progresser. C’est en jouant près de cinq millions de fois contre lui-même selon ce principe qu’AlphaGo Zero a atteint son incroyable niveau de jeu, réinventant au passage la plupart des figures classiques du go, plus l’une ou l’autre variante originale.

Un aspect intriguant de cette expérience est qu’AlphaGo s’est révélé moins compétent que d’autres programmes – entraînés, eux, à partir de parties jouées par des humains – pour prédire les mouvements qu’effectuerait un champion humain dans une position donnée, ce qui ne l’a pas empêché de battre ces mêmes programmes – comme leur modèles humains – à plate couture. Les auteurs de l’article le relèvent : « […] Ceci suggère qu’AlphaGo Zéro apprend une stratégie qui est qualitativement différente de la manière de jouer des humains ». Et de conclure : « L’humanité a accumulé une connaissance du Go à travers des millions de parties jouées sur des millénaires, collectivement distillées en configurations types, en proverbes et en livres. En l’espace de quelques jours, partant d’une table rase, AlphaGo Zero a été capable de redécouvrir une grande partie de ce savoir sur le Go, ainsi que des stratégies inédites offrant de nouvelles perspectives sur le plus vieux des jeux ».

Fascinant, oui… mais n’est-il pas un peu triste que ce champion absolu, surhumain du Go ne sache même pas qu’il joue au Go ? Aussi effrayante que soit l’alternative, et pour ridicule que soit l’anthropomorphisme appliqué à ce qui reste un programme, votre chroniqueur se sent tout de même un peu navré pour ce sublime idiot savant, aveugle à sa propre réussite.

0 commentaires

Dans la même catégorie

Exx Machina #44: Un joli papiyon

Si un concept subjectif et son dual sont en fait la même chose, ce n’est plus un treillis que tu manipules: c’est le papyion lui-même, dans lequel chaque concept et son dual se confondent en un seul cercle vu en transparence, et c’est ce cercle qui est le concept subjectif. Si on va par là, tout notre travail sur les treillis est à mettre à la poubelle. Attention, je ne dis pas que c’est absurde, je dis juste que si c’est vrai tu viens de nous rajouter quelques mois de boulot.

Ex Machina #43 : Delta est un génie

Delta ne verra jamais Delta. Pourtant, il lui faudrait bien un concept de “moi”, non? Donc, si Delta ne peut pas se percevoir elle-même, il faut bien qu’elle s’invente. D’autant plus que dans mes dessins Delta était elle-même un triangle bleu!

Ex Machina #42: Une question d’attention

Nous dotons Delta d’un treillis d’expérience qui contient certains concepts du treillis subjectif. À tout instant, certains de ces concepts sont activés, mobilisés: c’est à eux que Delta pense. En fonction de ses pensées, les perceptions de Delta sont filtrées, orientées par un mécanisme inconscient, et Delta percevra consciemment une version résumée de la réalité au lieu de tous ses détails. Elle la comparera aux concepts de son treillis d’expérience, ce qui pourra l’amener à en mobiliser d’autres, modifiant ainsi ses pensées.

Ex Machina #40: Pas le choix

Un choix n’est possible que si les deux branches de l’alternative sont ouvertes. Comment diantre un programme pourrait-il avoir le choix d’effectuer ou non une action donnée, puisque c’est in fine un calcul qui en décidera?