Quantum Machine Learning
L’apprentissage automatique quantique (QML) entraîne des circuits quantiques paramétrés et des noyaux quantiques à l’aide d’optimiseurs classiques. Découvre son fonctionnement et son état actuel.
L'apprentissage automatique quantique (QML) applique les ordinateurs quantiques aux tâches d'apprentissage automatique, le plus souvent en entraînant des circuits quantiques paramétrés dont les angles des portes jouent le rôle de poids du modèle, ou en utilisant un processeur quantique pour calculer des similarités dans les méthodes à noyau. Un registre de n qubits est décrit par 2^n amplitudes complexes, de sorte que même un petit circuit transforme un très grand vecteur ; toutefois, une mesure ne renvoie qu'une chaîne de bits aléatoire, et chaque grandeur nécessaire au modèle doit être estimée à partir de nombreuses exécutions répétées, appelées tirs. Le domaine comprend aussi l'apprentissage classique appliqué aux données issues d'expériences quantiques ; Jacob Biamonte, Seth Lloyd et leurs collègues ont passé en revue les deux approches dans un article de synthèse publié dans Nature en 2017.
Circuits quantiques variationnels#
La plupart des applications actuelles du QML sur du matériel réel sont hybrides. Un ordinateur classique encode chaque entrée sous forme d'angles de rotation, un processeur quantique exécute un circuit paramétré de rotations et de portes intriquantes, puis les valeurs moyennes mesurées alimentent une fonction de perte classique qu'un algorithme d'optimisation classique minimise, souvent par simple descente de gradient. Ces modèles sont aussi appelés réseaux neuronaux quantiques, par analogie avec les couches entraînables d'un réseau neuronal classique. La même boucle exécute le solveur propre quantique variationnel (VQE), présenté en 2014 pour estimer les énergies de l'état fondamental moléculaire, ainsi que QAOA, un algorithme variationnel destiné aux problèmes combinatoires visés par l'optimisation quantique.
La rétropropagation ne peut pas examiner l'intérieur d'un processeur quantique ; les gradients sont donc calculés au moyen de la règle de décalage de paramètre : pour une porte de rotation, la dérivée exacte d'une valeur moyenne est égale à la moitié de la différence entre les exécutions où l'angle est décalé de +π/2 et de -π/2. La simulation d'un classificateur à deux qubits avec NumPy montre l'ensemble de la boucle :
import numpy as np
rng = np.random.default_rng(0)
x = rng.uniform(-np.pi, np.pi, size=(100, 2)) # 100 points with 2 features each
y = np.sign(np.cos(x[:, 0] - 1.0) * np.cos(x[:, 1] + 0.5)) # XOR-like labels
def circuit(features, theta):
"""Simulate RY encoding, trainable RY rotations, and a CNOT on 2 qubits, then return <Z> of qubit 2."""
half = (features + theta) / 2 # RY(theta) after RY(x) is one rotation by x + theta
state = np.kron([np.cos(half[0]), np.sin(half[0])], [np.cos(half[1]), np.sin(half[1])])
state = state[[0, 1, 3, 2]] # CNOT flips qubit 2 when qubit 1 is |1>
return state @ np.diag([1, -1, 1, -1]) @ state
theta = np.zeros(2)
for _ in range(100):
errors = np.array([circuit(xi, theta) for xi in x]) - y
for i in range(2): # parameter-shift rule: an exact gradient from two extra circuit runs
shift = np.eye(2)[i] * np.pi / 2
slopes = np.array([(circuit(xi, theta + shift) - circuit(xi, theta - shift)) / 2 for xi in x])
theta[i] -= 0.5 * np.mean(errors * slopes)
accuracy = np.mean([np.sign(circuit(xi, theta)) == yi for xi, yi in zip(x, y)])
print(f"theta = {theta.round(2)}, accuracy = {accuracy:.2f}")Il affiche theta = [-0.99 0.4 ], accuracy = 0.97 : le circuit apprend des décalages d'angle proches de -1,0 et 0,5, qui ont généré les étiquettes, et classe correctement 97 % des points. La porte CNOT fait de la valeur moyenne du deuxième qubit le produit des deux cosinus encodés ; sans elle, ce qubit ne verrait que la deuxième caractéristique. Sur du matériel réel, chaque valeur moyenne serait elle-même une moyenne calculée sur des milliers de tirs. PennyLane, Qiskit Machine Learning et TensorFlow Quantum fournissent les mêmes briques avec des simulateurs et un accès à de vrais processeurs quantiques.
Noyaux quantiques et modèles hybrides#
Un noyau quantique associe deux entrées à des états quantiques au moyen d'un circuit d'encodage fixe et estime leur chevauchement, qui sert ensuite de mesure de similarité dans une machine à vecteurs de support (SVM) classique. Vojtěch Havlíček et ses collègues d'IBM ont présenté cette approche sur un processeur supraconducteur dans un article publié dans Nature en 2019. Les données réelles comportent bien plus de caractéristiques que le nombre de qubits disponibles ; les pipelines commencent donc par compresser les entrées avec une analyse en composantes principales (PCA) ou un réseau préentraîné. En 2020, Andrea Mari et ses collègues de Xanadu ont utilisé cette forme d'apprentissage par transfert, en transmettant les caractéristiques d'un ResNet-18 préentraîné à un circuit variationnel à 4 qubits pour la classification d'images.
Où en est l'avantage quantique ?#
L'avantage le plus net concerne les données quantiques. En 2022, Hsin-Yuan Huang et ses collègues de Caltech et Google Quantum AI ont utilisé jusqu'à 40 qubits supraconducteurs et 1 300 portes quantiques sur le processeur Sycamore de Google pour montrer qu'un apprenant qui stocke des états quantiques et les traite sur un ordinateur quantique peut apprendre les propriétés d'un système quantique à partir d'un nombre d'expériences exponentiellement inférieur à celui requis par tout apprenant qui mesure uniquement chaque copie séparément.
Les accélérations sur des données classiques sont moins établies. Les premières propositions s'appuyaient sur l'algorithme HHL de 2009 pour les systèmes linéaires, qui nécessite des entrées creuses et bien conditionnées, déjà stockées en mémoire quantique ; en 2018, Ewin Tang a découvert un algorithme classique inspiré du quantique qui a supprimé l'accélération exponentielle revendiquée pour les systèmes de recommandation quantiques. L'entraînement se heurte à des plateaux stériles, mis en évidence par Jarrod McClean et ses collègues en 2018 : pour de nombreux circuits initialisés aléatoirement, les gradients diminuent de manière exponentielle avec le nombre de qubits. Ce phénomène, équivalent quantique du problème de disparition du gradient, entraîne également une croissance exponentielle du nombre de tirs requis. Les processeurs actuels sont ce que John Preskill a appelé en 2018 des dispositifs quantiques à échelle intermédiaire bruités (NISQ), dont les erreurs de portes limitent la profondeur des circuits.
Le chargement des données constitue un autre goulot d’étranglement. Une seule image RGB de 640 x 640 à la taille d’entrée par défaut d’Ultralytics YOLO26 contient 1 228 800 valeurs, et l’encodage d’amplitude permet de les représenter avec 21 qubits, mais la préparation d’un état arbitraire à 21 qubits nécessite un nombre de portes qui croît avec 2²¹, soit à peu près autant d’opérations qu’il en faut à un CPU pour lire les pixels.










