Logo Spiria

Le réseau neuronal qui dessine des chats

18 mai 2017.
Google a présenté un outil logiciel capable de reconnaître et compléter un dessin, alors même que vous êtes en train de dessiner. Cette amusante performance repose sur les réseaux neuronaux et l’apprentissage.

Au commencement : un ordinateur qui joue aux échecs

Pendant longtemps, l’approche majeure en intelligence artificielle était de fournir une tonne de données à l’ordinateur, afin de permettre à celui-ci d’avoir en banque toutes les équations possibles. C’est par exemple ce qui a mené à la création de Deep Blue, le superordinateur joueur d’échecs d’IBM du milieu des années 1990. 

Afin de battre les maîtres des échecs, la prémisse sur laquelle les travaux ont été fondés consistait à programmer tous les coups possibles, toutes les stratégies imaginables. Ainsi, grâce à ses processeurs puissants et en ayant toute l’information à sa disposition, Deep Blue pouvait « comprendre » toutes les stratégies de ses adversaires et arriver ainsi à les battre, ou pour le moins, à les forcer à faire match nul.

Le réseau neuronal

Par contre, les limitations de Deep Blue sont rapidement apparues évidentes. Il a fallu des années aux ingénieurs pour programmer toutes les stratégies du jeu d’échecs, une à une, et ainsi créer un super répertoire dans lequel Deep Blue pouvait piocher, plus rapidement que n’importe quel humain. Bien qu’impressionnant, il s’agit d’un système à règles définies, à l’ensemble programmé d’avance. On comprend donc qu’on est bien loin de l’adaptabilité et de l’imagination que requiert l’intelligence au sens humain du terme.

Les chercheurs en intelligence artificielle travaillent donc actuellement plutôt à renouveler un concept qui n’est pas récent, celui du réseau neuronal qui permet à la machine d’apprendre par la création d’interconnexions, tout comme les neurones de notre cerveau. La machine apprend grâce à des images identifiées par des humains : un chat ressemble à ceci, un chien à cela. Puis, les réseaux neuronaux se forment pour l’identification des caractéristiques de base : les couleurs, les formes, les textures. 

Les interconnexions se raffinent

Après avoir vu des milliers de photos de chats et de chiens, la machine va créer de plus en plus de liaisons neuronales qui permettront de distinguer d’abord les formes de base, puis les subtilités — dans le cas de nos chers animaux domestiques, le museau, les moustaches, les poils, etc. Ce qui permettra à la machine d’analyser des informations apprises puis de distinguer et de catégoriser par elle-même. Un chat sera reconnu comme tel et sera considéré comme distinct d’un chien ; et ce, même s’il s’agit d’une espèce encore inconnue. 

Google investit beaucoup dans la recherche en intelligence artificielle, notamment en ce qui a trait aux réseaux neuronaux. La plateforme Sketch-RNN (pour Recurrent Neural Network), a permis à Google de démontrer que la machine pouvait apprendre à dessiner des chats, entre autres, en interprétant les quelques 5 millions de dessins que les utilisateurs du jeu Quick, Draw !, un outil mis en ligne en 2016, ont fournis. Il faut reconnaître l’ingéniosité de Google, qui a utilisé cette contribution des utilisateurs pour… apprendre à son propre outil comment dessiner et constamment s’améliorer !

La machine qui fait des dessins

Sketch-RNN

Image 1.

Est-ce que Sketch-RNN a un talent incomparable en dessin ? Non. Certains affirment que la machine dessine aussi bien « qu’un enfant de 2 ans ». Mais cela n’empêche pas l’outil d’être assez révolutionnaire. Parce que ce qui est arrivé durant « l’enseignement », c’est que la machine a compris qu’il fallait reproduire un concept, plutôt que simplement recopier les traits effectués par les humains. Sur l’image 1, on le voit bien par exemple pour la ligne où un petit malin a fait un chat avec trois yeux ; Sketch-RNN n’est pas dupe et conçoit que ce n’est pas correct, en puisant dans son « expérience » qui lui indique que les chats n’en ont que deux.

Sketch-RNN

Image 2.

Ensuite, Sketch-RNN a commencé à gribouiller des dessins sans se baser sur l’apport des humains. On voit le type de dessins produits sur l’image 2. Et finalement, Sketch-RNN est parvenu à faire des prédictions — assez valables et parfois surprenantes ! — sur les éléments nécessaires pour compléter un gribouillis commencé par un humain. On le voit sur l’image 3, par les lignes rouges. Il est remarquable de constater les catégories qu’a établies la machine par elle-même : par exemple, un visage humain est ovale, un hibou a de gros yeux, un moustique a deux ailes, etc.

Sketch-RNN

Image 3. “Le logiciel peut commencer par des esquisses incomplètes (les tracés rouges, à gauche de la ligne verticale) et les compléter automatiquement de différentes façons.”

Un chat est un chat

L’expérience a non seulement démontré que la machine pouvait identifier qu’il s’agissait bien de chats à partir des dessins somme toute assez sommaires, mais qu’elle pouvait également bien apprendre ses caractéristiques, comme les moustaches, ou les deux yeux. L’initiative de la machine pour proposer des éléments pourrait même être vue comme une forme sommaire de… créativité !

L’apprentissage par réseaux neuronaux offre de nombreuses promesses en imitant plus fidèlement l’intelligence humaine. Ainsi, l’apprentissage se fait comme pour nous, c’est-à-dire de manière non linéaire, et même avec une certaine part « d’intuition » et d’assimilation inconsciente. Après tout, notre connaissance des chats ne provient pas seulement des livres de notre enfance, mais plutôt des milliers de chats que nous avons croisés durant notre vie et de notre expérience avec ceux-ci.

Sketch-RNN

S’il vous plaît… intelligence artificielle, dessine-moi un mouton !