IA Quantique - Partie 1 - En finir avec l’impuissance !
“IA” et “quantique”, et voilà deux buzzwords pour le prix d’un ! Plus sérieusement, même si j’ai conscience qu’il est délicat de vouloir creuser deux domaines aussi vastes avec quelques articles, il me semblait important d’essayer d’exposer au plus grand nombre, et le plus fidèlement possible, les avantages et inconvénients de l’informatique quantique appliquée à l’intelligence artificielle et plus particulièrement au machine learning. Le principal problème sous-jacent est celui de la limitation de nos capacités de calcul pour l’exécution de certains algorithmes lourds. En effet, bien que la puissance de nos équipements ait plus que décuplé ces trente dernières années, il faut comprendre que nous serons toujours plus consommateurs de ressources, et que l’informatique traditionnelle pourrait un jour ne plus être en mesure de répondre à certains de nos besoins d’analyse en lien avec le Big Data et l’Internet des Objets. La mécanique quantique est aujourd’hui vue comme une des solutions techniques permettant à l’informatique de rentrer dans une nouvelle ère du point de vue de la vitesse d’exécution de certains algorithmes et de la sécurité. Décryptage.
Vous avez dit “quantique” ?
Déjà, on pourrait rappeler d’où vient l’adjectif “quantique”. Ce terme est tellement galvaudé - comme l’intelligence artificielle d’ailleurs - qu’on en vient presque à en oublier l’origine. Il faut remonter dans les années 1920-1930 et reprendre les travaux des physiciens Planck, Born, Einstein - entre autres - pour entendre parler de quantification. Pour simplifier, l’adjectif “quantique” et le nom commun associé “quantum” trouvent grossièrement leur origine dans la quantification des niveaux d’énergie atomiques - au travers de l’effet photoélectrique - et dans les rayonnements du corps noir. [1]
Plus tard, quand la théorie se développera, on prendra conscience que la mesure de certaines grandeurs relatives aux molécules, atomes et particules, ne peut prendre que certaines valeurs bien déterminées et non divisibles. De telles grandeurs sont dites “quantifiées”. C’est un peu comme les orbites planétaires dans notre système solaire : les astres se déplacent sur des ellipses bien définies mais on ne trouve aucun astre entre deux orbites consécutives (exception faite des astéroïdes). Cela peut paraître anodin dit comme cela, mais si on imagine que la température sur Terre ait un jour le malheur de devenir quantique, alors elle pourrait par exemple ne valoir que -20°C, 5°C ou +40°C… et jamais autre chose. Bonjour l’enfer !
Aujourd’hui, le terme quantique réfère à toute la physique de l’infiniment petit, c’est-à-dire à un monde subatomique où les objets sont à la fois des corpuscules et des ondes décrits par des grandeurs dont les mesures sont probabilistes.
Rétrospective de l’évolution de la puissance de calcul des ordinateurs
Il faut remonter dans les années 70 pour voir arriver le premier microprocesseur d’Intel contenant 2300 transistors - composant de base du calcul informatique. Depuis, la performance du matériel informatique, intrinsèquement lié au nombre de transistors dans le processeur, suit une tendance - la loi empirique de Moore [2] - qui stipule que la puissance de calcul de nos ordinateurs double tous les 18 mois. Ceci est dû au fait que la finesse de gravure des transistors est réduite de moitié sur cette période. Le problème est que cette “loi” ne pourra pas éternellement s’appliquer. Si IBM a récemment franchi le seuil des cinq nanomètres pour la dimension d’un transistor [3], il se pourrait bien que nous soyons face à un plancher d’ici 2020-2021 dans la mesure où nous nous rapprochons inexorablement de la taille des atomes - qui est de l’ordre de l’angström en moyenne, à savoir un dixième de nanomètre. Pourquoi cela pose-t-il problème ? Car lorsque l’on manipule des composants aussi petits, certains phénomènes quantiques comme l’effet tunnel (les électrons “traversent les murs” au lieu de d’être stoppés) apparaissent et à cause de ces derniers, les transistors ne fonctionnent plus comme des transistors habituels.
Par ailleurs, pour augmenter la puissance de calcul des processeurs, même sans considérer ces effets quantiques, les constructeurs n’ont pas pu se fier uniquement à leur miniaturisation car ces derniers ont vite rencontré certains inconvénients comme la surchauffe des circuits. Ainsi, pour favoriser la parallélisation des calculs et limiter la température des composants, ils se sont intéressés à de nouvelles architectures que l’on pourrait rattacher selon moi à deux types d’approches.
La première est la croissance horizontale (multi-serveurs légers) des ressources, caractéristique de l’avènement du Big Data. Celle-ci prend forme à travers la notion de calcul distribué, c’est-à-dire que l’on sollicite désormais, non pas un, mais plusieurs processeurs de machines différentes au sein de fermes de serveurs (ou clusters) ou de grilles de calcul.
La seconde logique est celle de la croissance verticale (mono-serveur lourd) des ressources. L’architecture des multi-coeurs (plusieurs coeurs physiques dans un processeur) en est le plus ancien représentant. Elle a évolué vers des architectures plus modernes qui visent à accroître massivement la parallélisation dans le cadre du calcul à haute performance (HPC). Deux architectures sont assez typiques de l’HPC : les processeurs graphiques (GPU) commercialisés par les sociétés Nvidia et AMD entre autres, et les architectures multiprocesseurs (dites “manycores” en anglais) optés historiquement par Intel à travers sa gamme Xeon Phi.
Dans la même veine, on peut aussi ajouter les processeurs tensoriels (TPU) de Google, historiquement développés pour les besoins relatifs à l’utilisation de la bibliothèque TensorFlow (pour les réseaux de neurones à couches profondes). Et je pense que c’est dans cette catégorie que l’on pourra ranger les processeurs neuromorphiques (NPU) et les processeurs quantiques (QPU).
Tous ces matériels sont évidemment onéreux ; comptez facilement plus de 5000 euros pour une bonne carte graphique. Mais le problème, qui n’est pas seulement d’ordre financier (bien que la facture énergétique puisse rapidement devenir colossale), c’est que l’intelligence artificielle et l’internet des objets nécessitent parfois énormément de puissance… et que, même avec ces nouvelles technologies, certains algorithmes - qu’ils soient de machine learning ou non - prennent un temps considérable, voire sont impraticables.
Dans ce contexte, pourquoi l’informatique quantique est-elle en passe de devenir la nouvelle mode ?
Bien que l’on soit encore peu mature sur le sujet de l’informatique quantique, cette dernière apporterait un lot de belles promesses en matière d’algorithmique. Il s’agirait donc d’une algorithmique ayant un formalisme qui permet de tenir compte des propriétés spéciales des matériels quantiques. Plus particulièrement, on peut démontrer que pour certains types de tâches spécifiques comme la résolution de systèmes d’équations linéaires (inversions de matrices) et la décomposition de nombres entiers en facteurs premiers, la vitesse d’exécution des algorithmes quantiques est théoriquement supérieure à celle des algorithmes classiques équivalents. Les mathématiciens disent que la complexité - évolution du nombre d’opérations en fonction du nombre de données en entrée - des algorithmes classiques est bien plus élevée que celle des algorithmes quantiques équivalents, lorsque ces derniers existent. Par exemple, lorsque le nombre à factoriser augmente d’une décimale, la durée de l’algorithme de factorisation classique augmente presque exponentiellement tandis que pour son homologue quantique, le temps de calcul ne croît “que” quadratiquement, c’est-à-dire bien plus lentement.
Ainsi, ces nouveaux ordinateurs permettraient de résoudre certains algorithmes extrêmement chronophages - plusieurs dizaines d’années - en un temps “raisonnable”, à savoir de quelques heures à quelques jours. Nous verrons dans un autre article l’idée générale du fonctionnement d’un algorithme quantique.
Quels algorithmes de machine learning sont concernés ?
On a précédemment évoqué la décomposition en facteurs premiers. Cet algorithme, emblème de la cryptographie (a fortiori de la cybersécurité), est en effet une des meilleures illustrations d’algorithme très long, voire impossible à exécuter avec un ordinateur classique. Si l’on regarde plutôt du côté des algorithmes de machine learning, utilisés dans le cadre de projets d’intelligence artificielle, on a également affaire à des temps de calcul parfois considérables : inversions de matrices, descente de gradient, rétro-propagation...
Digression technique
En conséquence, les algorithmes de machine learning théoriquement concernés par une accélération quantique sont bien connus des data scientists. Parmi les plus célèbres, on citera les analyses factorielles (ex : l’ACP), la plupart des clusterings (ex : K-Means), les séparateurs à vaste marge (SVM), les machines de Boltzmann, les inférences bayésiennes, les apprentissages par renforcement, les algorithmes d’optimisation (recherche d’extrema globaux), etc. Plus généralement, ce sont bien souvent des algorithmes dont la résolution passe par des opérations linéaires (ou des fonctions de coût linéaires), dans la mesure où les calculs quantiques sont eux-mêmes linéaires. Dans des réseaux de neurones, c’est donc plus délicat car les fonctions d’activation ne sont pas linéaires. On peut néanmoins utiliser des accélérateurs quantiques pour les étapes de pré-entraînement non supervisé basées sur des machines de Boltzmann, par exemple.
Du fait des freins induits par l’explosion du volume des données, démocratiser l’informatique quantique - ce qui est loin d’être une mince affaire - permettrait donc de faire passer certains algorithmes de la théorie à la pratique, comme l’a fait en son temps les GPU pour certains algorithmes de deep learning.
Du coup, faut-il passer au processeur quantique ?
Évitons de se précipiter. En réalité, il y a trois freins à l’adoption de l’informatique quantique pour vos projets d’IA.
Premièrement, et comme expliqué précédemment, les algorithmes de machine learning ne sont pas tous concernés par une accélération quantique. Ensuite, le fonctionnement des ordinateurs quantiques actuels est - aujourd’hui - loin d’être probant : les résultats des algorithmes comportent de nombreuses erreurs du fait de la grande sensibilité des phénomènes physiques qui y siègent (nous illustrerons ce phénomène dans un autre article). Enfin, le coût actuel de prototypes quantiques est… rédhibitoire. Si vous êtes un acheteur compulsif, prévoyez quelques dizaines de millions d’euros pour un ordinateur quantique, sachant qu’il n’est même pas sûr que celui-ci fonctionne comme espéré.
Néanmoins, bien que les grands acteurs tels que IBM, Atos ou Microsoft ne commercialisent aujourd’hui que des “simulateurs” quantiques (des supercalculateurs “classiques” capables d’évaluer rapidement l’ensemble des solutions possibles d’un système quantique), il peut sembler opportun pour des équipes data de commencer dès à présent à tester des algorithmes quantiques, ou tout du moins, à “penser quantique” avec des algorithmes plus traditionnels, sur des cas d’usage bien ciblés comme la détection des fraudes, la génomique ou les prévisions de phénomènes thermosensibles. Cet apprentissage en avance de phase pourrait effectivement être un avantage concurrentiel non négligeable lorsque les premiers véritables processeurs quantiques seront commercialisés à moyenne échelle, probablement dans une dizaine d’années.
L’informatique quantique est donc porteuse de belles promesses en matière de rapidité algorithmique et de performance des IA. La question de l’adoption de cette dernière est avant tout économique et politique. Mais ce dont on peut être sûr, c’est que si celle-ci apporte un avantage décisif dans votre secteur d’activité au regard des cas d’usage adressés (ceux ayant une très grande complexité algorithmique), alors il conviendrait d’amorcer dès aujourd’hui la montée en compétences des équipes data via des simulateurs quantiques et la conduite du changement visant notamment à rapprocher la R&D et les métiers.
____
Cet article fait partie d’une chronique dédiée à l’IA quantique. Retrouvez tous les posts du même thème :
Partie 1 – En finir avec l’impuissance !
Partie 2 – Faites vos jeux !
A. Augey
Publication relayée sur le blog de Saagie : https://www.saagie.com/fr/blog/lia-quantique-en-finir-avec-limpuissance/