Comment nous ferons en sorte que l'intelligence artificielle ne devienne pas incontrôlable

DeepMind vient de créer un algorithme de tri 70% plus rapide que tout ce qui existait

La révolution de l’IA semble être là, mais jusqu’à présent, ces systèmes n’ont pas été utilisés, par exemple, pour découvrir un médicament prodigieux ou un matériau aux propriétés spéciales. Les véritables applications pratiques semblaient limitées au domaine créatif, mais chez DeepMind, il prouve à maintes reprises que ces systèmes peuvent aller plus loin.

Héritier d’AlphaZero. Les responsables de DeepMind avaient déjà créé AlphaZero pour apprendre à jouer aux échecs à partir de zéro, mais maintenant ils ont créé AlphaDev, une version dérivée de ce système qui avait un objectif différent.

trier les listes. Précisément l’objectif d’AlphaDev était d’essayer de découvrir la meilleure façon d’ordonner des listes d’éléments. Comme ils l’expliquent dans l’article technique de Nature, ce système d’IA a réussi à découvrir une implémentation de la fonction qui est 70 % plus rapide que celle existante dans la bibliothèque standard LLVM en C++. C’est quelque chose de crucial pour de nombreux domaines, mais cela a eu un impact immédiat dans un domaine en particulier.

Les programmeurs ont bénéficié. Bien que la nouvelle de cette découverte soit maintenant publiée dans le prestigieux Nature, la technique d’ordonnancement des éléments dans une liste est disponible depuis des mois. En janvier 2022, DeepMind a envoyé sa solution à l’organisation qui gère le langage C++, l’un des plus populaires au monde, et après deux mois d’analyse rigoureuse, l’implémentation de la fonction a été incluse dans le langage pour remplacer la précédente : il a été la première modification de cette section en C++ depuis plus d’une décennie.

Il améliore également le cryptage. DeepMind a également ajouté de nouvelles découvertes à Abseil, un ensemble d’algorithmes C++ utilisés en cryptographie qui permettent de travailler avec des hachages, les identifiants uniques de tout type de données. Dans DeepMind, ils pensent que leurs algorithmes sont utilisés « des milliards de fois par jour » et accélèrent leur traitement de 30%, ce qui représente certainement une amélioration notable dans cette section.

L’algorithme créé par AlphaDev permettait de sauvegarder une instruction d’assemblage lors de la commande de listes de trois éléments. Pour ceux qui en avaient cinq, le gain était encore plus important. Source : Nature.

Le langage d’assemblage est la base. Pour atteindre leur objectif dans DeepMind, ils ont travaillé avec le pilier du langage d’assemblage bien connu, le langage de programmation de bas niveau qui permet de décomposer les algorithmes en petites étapes qui sont ensuite utiles pour trouver des « raccourcis » et de nouvelles solutions à des problèmes comme ceux que vous avez trouvés. J’ai trouvé DeepMind. Comme pour AlphaZero et les échecs, AlphaDev a trouvé la solution en « jouant à des millions de parties » ou, dans son cas, en essayant des millions de combinaisons d’instructions d’assemblage pour créer ne serait-ce qu’une nouvelle instruction pour son algorithme.

Moins d’instructions, mieux. Daniel Mankowitz, de DeepMind, a expliqué dans MIT Technology Review comment ils travaillaient avec des algorithmes pour commander des listes restreintes de trois ou cinq éléments, largement utilisés dans toutes sortes de développements. Son équipe a expliqué que la meilleure version humaine de l’algorithme pour les listes à trois éléments était de 18 instructions en assembleur. AlphaDev a réussi à créer un algorithme avec 17 instructions. Trier des listes de cinq prend 46 instructions dans le meilleur algorithme humain, et AlphaDev l’a réduit à 42. Cela ne ressemble pas à grand-chose, mais l’exécution de l’algorithme sur une puce Intel Skylake est passée du tri d’une liste de cinq en 6,91 nanosecondes. 2,01 nanosecondes, 70 % plus rapide.

limites. Pourtant, AlphaDev a ses limites. L’algorithme le plus long que vous puissiez écrire est de 130 instructions car lorsque vous essayez d’en combiner plus, le nombre de combinaisons possibles est encore plus grand que le nombre de coups possibles aux échecs (10^120) ou d’atomes dans l’univers (environ 10^80). ). Même ainsi, il est possible que nous voyions de nouvelles avancées à cet égard car DeepMind fonctionne avec d’autres algorithmes ou, comme l’ont souligné ses créateurs, directement avec des langages comme C++. Les raccourcis peuvent ne pas être aussi flashy, mais étant d’un niveau supérieur, ces améliorations peuvent être appliquées à d’autres scénarios.