Training Quantum Kernels for Clustering Algorithms
Creators: name: Metz, Niklas
Publisher: name: Karlsruher Institut für Technologie (KIT)
Year: 2022

description: Clustering ist eine außerordentlich wichtige Sparte des Maschinellen Lernens von der besonders Anwendungen, die sich mit großen Datenmengen beschäftigen, profitieren können. In diesen Anwendungen wird Clustering verwendet um Strukturen in Daten zu finden und ähnliche Datenpunkte zu gruppieren. Allerdings ist Ähnlichkeit in diesem Kontext kein wohldefiniertes Maß und hängt stark von der jeweiligen Situation und dem Datensatz ab. Diese Situationsabhängigkeit ist auch der Grund weshalb es nicht nur einen Clustering Algorithmus gibt. Vielmehr gibt es unterschiedliche Modelle dafür wie ein Cluster definiert sein kann und entsprechend unterschiedliche Algorithmen, die Cluster basierend auf diesen Modellen finden können. Außerdem verwenden viele dieser Algorithmen austauschbare Kernel-Funktionen, welche die Ähnlichkeit zwischen zwei Datenpunkten definiert. Diese Kernel-Funktionen können allerdings nicht ausschließlich auf klassischen Computern berechnet werden, denn jüngste Forschung im Bereich des Quanten Maschinellen Lernens zeigt, dass auch Quantencomputer verwendet werden können um Kernel-Funktionen zu berechnen. Quantencomputer sind hauptsächlich dafür bekannt bestimmte Probleme, die im Klassischen unlösbar oder nur schwer lösbar sind, effizient berechnen zu können. Die Hoffnung ist, dass es bestimmte Quanten Kernel-Funktionen gibt die klassisch nicht berechnet werden können, aber einen Vorteil gegenüber klassischen Kernel-Funktionen darstellen. Quanten Kernel-Funktionen können des weiteren mit variierbaren Quanten Schaltkreisen kombiniert werden. Diese Quanten Schaltkreise sind sehr ähnlich zu klassischen Neuronalen Netzen, denn beide besitzen variierbare Parameter die optimiert werden können, um eine bestimmte Zielfunktion zu realisieren. Die Kombination einer Quanten Kernel-Funktion und einem variierbaren Quanten Schaltkreis, auch variierbarer Quanten Kernel genannt, sorgt dafür, dass die Kernel-Funktion durch Training an den vorhandenen Datensatz angepasst werden kann. Diese Idee wurde zuerst von den Autoren von [Hub+21] eingeführt, die die Kernel-Funktion mit einer Support Vector Machine kombiniert haben. Im Vergleich dazu schlägt diese Arbeit eine Kombination von variierbaren Quanten Kernels mit klassischen Clustering Algorithmen vor. Da Clustering generell im Bereich des unüberwachten Maschinellen Lernens angesiedelt ist, wird die Optimierung der Parameter ohne klassifizierte Trainingsdaten schwierig. Deshalb betrachtet diese Arbeit zwei unterschiedliche Wege die Parameter zu trainieren. Einerseits vollständig unüberwacht, wodurch keine klassifizierten Trainingsdaten vorhanden sind, andererseits semi-überwacht, bei dem kleine Mengen von klassifizierten Daten für das Training verwendet werden können. Die trainierten Quanten Kernels werden anschließend mit unterschiedlichen klassischen Clustering Algorithmen, die Kernel-Funktionen nutzen können, kombiniert. Um diesen Ansatz zu evaluieren wurde eine Trainings- und Testpipeline implementiert, die simulierte Quantencomputer auf klassischer Hardware verwendet. Umfangreiche Experimente zeigen, dass variierbare Quanten Kernels mit unterschiedlichen semi-überwachten Kostenfunktionen trainiert werden können. Desweiteren können diese trainierten Quanten Kernels in klassischen Clustering Verfahren gute Ergebnisse erzielen. In den meisten Fällen sind die Clustering Ergebnisse mit trainierten Quanten Kernels besser als mit dem häufig benutzten, klassischen radial basis (rbf) Kernel. Allerdings konnten für die vorgestellten unüberwachten Kostenfunktionen keine guten Ergebnisse erreicht werden, weshalb diese momentan nicht geeignet sind, um einen variierbaren Quanten Kernel zu trainieren.