Des avancées stupéfiantes

La principale leçon que l’on peut tirer de 70 ans de recherche en IA, c’est que les méthodes générales qui exploitent la puissance de calcul sont en fin de compte les plus efficaces, et de loin.
— Richard Sutton (2019)

Cette phrase ouvre le fameux billet de Richard Sutton, the bitter lesson.

Richard Sutton travaille sur un certain type d’algorithmes d’apprentissage automatique : l’apprentissage par renforcement. Il conçoit des agents dont le but est de trouver des solutions à des problèmes complexes. Ces problèmes se situent souvent dans des espaces de grande dimension.

Richard Sutton travaille sur un certain type d’algorithmes d’apprentissage automatique : l’apprentissage par renforcement. Il conçoit des agents dont le but est de trouver des solutions à des problèmes complexes. Ces problèmes se situent souvent dans des espaces de grande dimension.

L’espace où nous vivons est structuré autour de quatre dimensions : longueur, largeur, hauteur et temps. Les physiciens des cordes modélisent plutôt cet espace avec une dizaine de dimensions, la plupart de ces dimensions échappant à notre perception. 

Cependant, en apprentissage automatique, on travaille régulièrement dans des espaces à plusieurs millions de dimensions. On parle d’espace à grande dimension. L’optimisation numérique et l’exploration de données sont particulièrement concernés. Jouer aux échecs, classer des images, engendrer des textes plausibles, gagner à 7 Wonders, sont autant d’activités qui sont pratiquées dans des espaces à grande dimension. 

Ça pose un tas de difficultés, notamment parce qu’il est difficile de se faire une idée de ce qu’il s’y passe. L’intuition ne suffit plus.

Pour résoudre ces problèmes, on doit recourir à des programmes informatiques très complexes qui utilisent des stratégies adaptées. Construire de tels programmes demande des compétences partagées entre différents domaines, dont les mathématiques appliquées, la simulation numérique, le calcul hautes performances et l’ingénierie logicielle. Pour obtenir des financements plus rapidement, et pour rendre le domaine un peu plus sexy, il a été décidé que ces programmes seraient « intelligents ». On parle donc d’intelligence artificielle depuis ~2018.

Ces programmes ont vu leurs performances s’améliorer fortement depuis 70 ans. Richard Sutton soutient que l’augmentation de leurs performances est principalement due à l’amélioration d’un certain type d’algorithmes. 

Elle n'est pas dûe à une plus grande complexité des stratégies, mais au contraire à leur simplification. Les algorithmes plus efficaces sont, initialement, plus bêtes. Ils ne reposent pas, ou peu, sur la compréhension humaine du problème à résoudre et sur les lois que des générations de chercheurs ont essayé d'extraire. Par contre, ils sont capables d'explorer efficacement les espaces en grande dimension pour déterminer, sans a priori, des solutions satisfaisantes.

Les algorithmes dont il est question s’attaquent à des problèmes d’algèbre linéaire, liés par exemple au calcul matriciel, ou à des problèmes d’optimisation difficile comme la satisfaisabilité booléenne (SAT). Les gains sur la multiplication de matrices carrées de taille un million sont autour de 400, avec un indice de complexité qui est passé de 2.81 à 2.38 entre 1969 et 1987. La résolution de système linéaire a progressé d’un facteur plus important encore. Ces algorithmes ont pu tirer profit de l’augmentation stupéfiante de la puissance de calcul en suivant la loi de Moore, d’une part, et en voyant une amélioration des méthodes de calculs, d’autre part.

C’est la leçon que tire Richard Sutton des 70 dernières années en intelligence artificielle.

Elle a fait couler beaucoup d’encre.

Précédent
Précédent

gzip+kNN ~ BERT

Suivant
Suivant

Nos programmes se droguent ?