Suivez

la liste

Les réseaux de neurones peuvent se mettre en œuvre sur des processeurs quantiques actuels (NISQ) notamment à l’aide de circuits quantiques paramétrés et d’un algorithme quantique variationnel (VQA). Le circuit quantique est alors configuré par un jeu de paramètres qui sont en général des angles de portes de déphasage, et appliqué successivement aux différentes données à chaque époque du réseau de neurone. A la fin de chaque époque la partie CPU de l’algorithme variationnel calcule l’évolution des poids du réseau de neurones et en déduit les nouveaux paramètres à lui appliquer pour la prochaine époque. Cette approche fonctionne mais demande de nombreuses exécutions du circuit quantique sur le QPU, qui sont aujourd’hui (et pour des années) des machines chargées et peu rapides.
L’objectif de cette thèse est d’explorer diverses approches, cumulables, pour améliorer les résultats de réseaux de neurones sur architectures hybrides multi-CPUs – multi-QPUs et accélérer leurs temps de calculs, pour des tâches de clustering de données. Pour améliorer les résultats de ces clustering de données on peut notamment :

  • Développer les réseaux de neurones quantiques les plus adaptés aux problèmes de clustering et aux types de datasets considérés, pour des exécutions sur plusieurs QPUs [1,2]. La topologie des circuits utilisés, leur profondeur et leurs schémas d’intrication peuvent être fortement limités par les architectures réelles visées.

Pour réduire leurs temps d’exécution plusieurs solutions existent :

- Créer un macro-circuit quantique en utilisant plus de qubits pour répliquer le circuit initial [3]. On peut alors traiter en parallèle plusieurs données. La profondeur du circuit n’augmente pas, mais utiliser plus de qubits peut quand même engendrer plus de bruit dans le QPU. Un compromis est à trouver pour chaque QPU. 
- Distribuer la partie CPU de l’algorithme variationnel sur plusieurs ressources de calcul et appeler un QPU différent depuis chaque processus. La partie CPU de l’algorithme neuronal doit ensuite assembler les mesures obtenues sur les différents QPU pour reconstituer les résultats globaux d’une époque de l’apprentissage et en déduire l’évolution globale du réseau neuronal. Cette étape peut se faire en suivant un algorithme distribué synchrone (tous les QPUs doivent avoir fourni leurs résultats aux CPUs avant que tous ne passent à l’époque suivante), ou asynchrone (un CPU commence l’époque suivante dès qu’il a reçu les résultats d’une partie des QPUs) [4]. Un algorithme asynchrone permet de ne pas ralentir quand un ou plusieurs QPU sont plus chargés, mais la convergence du réseau de neurones peut être plus lente et demander plus d’époques. Ce sujet de thèse consiste donc à explorer conjointement ces différentes voies algorithmiques hybrides (classiques et quantiques) de réseaux de neurones appliqués à du clustering de données, pour identifier, implanter et expérimenter du clustering de données rapide et de bonne qualité sur des architectures distribuées multi-CPU - multi-QPU.

Neural networks can be implemented on today's quantum processors (NISQ) using parameterized quantum circuits and a variational algorithm (VQA). The quantum circuit is then configured by a set of parameters, usually phase-shifting gate angles, and applied successively to the different data at each epoch of the neural network. At the end of each epoch, the CPU part of the variational algorithm calculates the evolution of the neural network's weights and deduces the new parameters to be applied for the next epoch. This approach works, but requires numerous executions of the quantum circuit on the QPU, which today (and for years to come) are busy, slow machines.

The aim of this thesis is to explore various cumulative approaches for improving the results of neural networks on hybrid multi-CPU - multi-QPU architectures and accelerating their computation times, for data clustering tasks. To improve data clustering results, we can:

  • Develop quantum neural networks best suited to the clustering problems and types of dataset considered, for execution on multiple QPUs [1,2]. The topology of the circuits used, their depth and their entanglement patterns can be severely limited by the actual architectures targeted.

To reduce their execution times, several solutions exist:

  • Create a quantum macro-circuit using more qubits to replicate the initial circuit [3]. In this way, multiple data can be processed in parallel. The depth of the circuit does not increase, but using more qubits can still generate more noise in the QPU. A compromise has to be found for each QPU.
  • Distribute the CPU part of the variational algorithm over several computing resources and call a different QPU from each process. The CPU part of the neural algorithm must then assemble the measurements obtained on the different QPUs to reconstitute the global results of an epoch of learning and deduce the overall evolution of the neural network. This step can be carried out using a distributed algorithm, either synchronous (all QPUs must have provided their results to the CPUs before they all move on to the next epoch), or asynchronous (a CPU starts the next epoch as soon as it has received the results from some of the QPUs) [4]. An asynchronous algorithm means there's no slowdown when one or more QPUs are busier, but neural network convergence may be slower and require more epochs. The aim of this thesis is to explore these different hybrid (classical and quantum) neural network algorithms applied to data clustering, in order to design, implement and experiment with fast, high-quality data clustering on distributed multi-CPU - multi-QPU architectures.