Passer au contenu

AlphaCode : la nouvelle IA de DeepMind code aussi bien qu’un développeur humain

Après avoir mis à l’amende les géants du Go et les professionnels de StarCraft, Deepmind s’intéresse aux développeurs. AlphaCode, sa dernière intelligence artificielle, est capable d’écrire du code informatique aussi bon que celui d’un développeur humain moyen… pour l’instant.

Vous vouliez devenir un dieu vivant du Go ? Jusqu’à ce qu’AlphaGo défasse sans ciller les plus grands joueurs du monde. Vous vous êtes ensuite réorienté vers une carrière pro dans StarCraft II… jusqu’à ce qu’AlphaStar, autre IA de DeepMind, mette une déculottée aux rois du secteur… En désespoir de cause, pour oublier, vous vous êtes mis au développement. Décidément, vous n’avez pas de chance.

Une intelligence artificielle pour écrire du code

DeepMind vient de dévoiler AlphaCode, une intelligence artificielle, qui « écrit des programmes informatiques à un niveau compétitif ». Comprenez que les chercheurs de la filiale de Google ont entraîné leurs algorithmes… Puis les ont confrontés à une dizaine de problèmes soumis à des développeurs humains dans le cadre de compétitions hébergées sur Codeforces, une plate-forme qui organise régulièrement des rencontres de développeurs, et émet ensuite un classement.

Il ne s’agit évidemment pas de coder une application pour votre smartphone, mais bien plutôt de demander à des professionnels de résoudre des problèmes complexes, qui demandent « un esprit critique, de la logique, des algorithmes, du code et une compréhension du langage naturel », explique DeepMind.

A découvrir aussi en vidéo :

 

Entraînement et affinage…

AlphaCode, qui combine des modèles de générateur automatique de texte à grande échelle avec des fonctions de sampling et de filtrage, a été confronté à des dizaines de défis, dans la même forme que celle soumise aux participants humains, à savoir un texte, un énoncé classique, écrit en anglais.

Il a tout d’abord généré un grand nombre de réponses possibles (en C++ et Python), avant d’en réduire le nombre à une dizaine en exécutant le code produit et en observant le résultat. Un processus pendant lequel les chercheurs de DeepMind n’interviennent évidemment pas.

DeepMind – Schéma d’entraînement et de fonctionnement d’AlphaCode.

Avant de devoir résoudre les problèmes de dix compétitions récentes, il a été entraîné grâce à des codes publiquement disponibles sur GitHub. Une phase d’affinage de son fonctionnement a ensuite été réalisé avec un petit ensemble de données tiré des résultats des compétitions de Codeforces. Elles avaient évidemment toutes eu lieu avant les problèmes qui lui ont été soumis par la suite et sur lesquels AlphaCode a été jugé.

Un début très prometteur…

Dans ce contexte, leur intelligence artificielle a fourni des réponses qui se placent approximativement au mitan du classement des compétiteurs. Elle se classe dans les 54 % des meilleures réponses humaines. Vous pouvez d’ailleurs consulter les différentes approches de l’IA sur cette page. Les résultats valent le coup d’être observés.

DeepMind

En fonction du système de notation Elo de Codeforces, AlphaCode se positionne parmi les 28 % des meilleurs compétiteurs des six derniers mois.

Dans le communiqué de DeepMind, Mike Mirzayanov, fondateur de Codeforces, indique que « les résultats d’AlphaCode dépassent [ses] attentes ».

Il explique évidemment pourquoi :

« J’étais sceptique parce que même pour les problèmes simples, il est souvent nécessaire non seulement d’implémenter l’algorithme, mais aussi (et c’est la partie la plus difficile) de l’inventer. »
Selon Mike Mirzayanov, « AlphaCode a réussi à atteindre un niveau de performances du niveau d’un nouveau compétiteur prometteur. »

Un début impressionnant, donc, puisque DeepMind n’en est qu’à ses débuts en la matière, selon The Verge. Oriol Vinyals, qui est le chercheur en charge du projet, indiquait ainsi à nos confrères que :

« Sur le long terme, nous sommes enthousiasmés par le potentiel d’AlphaCode pour aider les développeurs et les non-développeurs à écrire du code, en augmentant leur productivité ou en créant de nouvelles façons de concevoir un logiciel. »

Le futur en marche

À l’heure actuelle, AlphaCode ne peut exercer ses talents que dans le cadre de compétition de code, avec un point de départ, une consigne stricte.

Les développeurs ont donc encore quelques années devant eux. D’autant qu’il y a toujours un risque à confier la rédaction ou la complétion d’un code à une intelligence artificielle. Si les données qui servent à son entraînement contiennent des failles, de sécurité notamment, le risque de voir les IA les reproduire est élevé.

Quoi qu’il en soit, DeepMind n’est pas le seul sur les rangs. Microsoft s’attelle également à la tâche, tout comme OpenAI. Les deux entités travaillent sur la base du générateur de texte GPT-3, notamment pour qu’il soit capable de compléter une ligne de code, comme le fait par exemple Gmail avec certaines phrases que vous saisissez dans vos courriels.

Cette approche intermédiaire pourrait faciliter la tâche des développeurs humains, sans chercher à les remplacer… Même si la route semble devoir être encore longue avant que cela n’arrive.

Néanmoins, face à cette incertitude, peut-être est-il encore temps de changer d’orientation, et d’échapper à la « termitière future » et à ses « vertu(s) de robots ». Ne désespérez pas : et si, comme Saint-Exupéry, vous étiez fait pour être jardinier ?

Sources : DeepMind et The Verge

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.