1. Kwantumfeaturemapping
Het coderen van klassieke datapunten in kwantumtoestanden wordt bereikt door ze in een kwantum-Hilbertruimte te mappen, die efficiënt toegankelijk en gemanipuleerd kan worden door een kwantumcomputer16˒17,19. Dit proces maakt gebruik van een niet-lineaire kwantumfeaturemap die klassieke data in de Hilbertruimte inbouwt (Figuur 1). Een vaste kwantumcircuit-featuremap transformeert de invoerdatapunten naar kwantumtoestanden17, terwijl variatiecircuits machine learning-taken mogelijk maken door de meetbasis22 aan te passen. Een variatiecircuit bestaat uit een set geparametriseerde kwantumpoorten, geoptimaliseerd via hybride kwantum-klassieke technieken23.

Figuur 1: Featuremapping in de Quantum Hilbertruimte. Klik hier om een grotere versie van deze figuur te bekijken.
2. Het coderen van doelpunt en zwaartepunten in qubits
Om de kenmerken van onze datapunten te coderen, moeten we rotaties uitvoeren met U3-poorten.

Hierdoor draait de qubit θ radialen weg van de positieve z-as, en Φ radialen van de positieve x-as.
Alle qubits werden geïnitialiseerd in de ∣0〉-toestand voordat het coderingsproces begon. Elke genexpressiewaarde werd genormaliseerd naar het bereik [0,1] en omgezet in een rotatiehoek met behulp van de relatie θi=πxi. Vervolgens werd een geparametriseerde unitaire poort toegepast op elke qubit om de bijbehorende functie te coderen, geïmplementeerd in Qiskit met de operatie qc.u(theta_i, pi, pi, qubit_index). Wanneer meerdere features werden gecodeerd, werd de rotatieprocedure herhaald over de juiste qubits om een multifeature-representatie te creëren. Na deze bewerkingen vertegenwoordigde de resulterende kwantumtoestand ∣ψ〉 de gecodeerde kenmerkvector in de Hilbertruimte. Er werd in deze fase geen meting uitgevoerd, omdat de voorbereide toestand werd gereserveerd voor latere gelijkenisschatting.
3. Vergelijking van kwantumtoestanden
De uitkomsten van kwantumexperimenten zijn van nature willekeurig omdat qubits van nature instabiel zijn, zoals beschreven in de kwantumfysica. Daarom moeten conclusies en voorspellingen worden uitgedrukt in termen van waarschijnlijkheden en onzekerheden. Het trekken van ondubbelzinnige conclusies vormt daarom een echte uitdaging. Wanneer de beschouwde kwantumtoestanden echter zuiver zijn, kunnen verschillen tussen toestanden (met een niet-nul waarschijnlijkheid) ondubbelzinnig worden voorspeld door experimenten24˒25.
Twee kwantumtoestanden, ∣ψ〉 en ∣φ〉, werden eerst geladen in aparte kwantumregisters. Een ancilla-qubit werd vervolgens geïnitialiseerd in de ∣0〉-toestand om de swap-operatie te beheersen. Een Hadamard-poort werd op de ancilla geplaatst om deze in superpositie te plaatsen voordat de gecontroleerde-SWAP-operatie werd uitgevoerd. De Fredkin (CSWAP) poort gebruikte de ancilla als controlequbit en de twee dataregisters als doelen, waardoor interferentie tussen de toestanden mogelijk werd. Na deze operatie werd een tweede Hadamard-poort op de ancilla aangebracht om het interferentiepatroon te voltooien. Alleen de ancilla-qubit werd gemeten, en het meetresultaat codeerde de gelijkenis tussen de twee toestanden. Wanneer de toestanden identiek waren, leverde de ancilla de uitkomst 0 met kans 1 op, terwijl orthogonale toestanden de uitkomst 0 met kans 0,5 opleverden.

Figuur 2: Illustratie van kansgebaseerde vergelijking, Als toestanden ρ en ξ verschillend zijn, dan behoort de waargenomen kansverdeling tot PE− \ PE+. Klik hier om een grotere versie van deze figuur te bekijken.
De dichtheidsoperator ρ is geassocieerd met elke kwantumtoestand ρ ∈ S(H), zodanig dat tr[ρ] = 1 en ρ ≥ 0. Hier is een verzameling van alle toestanden S(H) van een systeem die geassocieerd is met de Hilbertruimte H. De positieve operatorwaarde maat (POVM) is een quantumstatistische kenmerken die een verzameling positieve operatoren E1, . . . , En als E (die op H werken) en de identiteit I =
is. Een kansverdeling 
kent de maat E toe voor elke toestand ρ ∈ S(H) waarbij pj = tr[Ejρ]≥ 0 en
= 126.
4. SWAP-gebaseerde Kwantumtoestanden vergelijken
Het verschil tussen twee kwantumtoestanden kan worden gemeten met behulp van de SWAP-testprocedure in kwantumberekening. Deze methode werd voor het eerst geïntroduceerd door Barenco et al.27 en later herontdekt door John Watrous, Ronald de Wolf, Harry Buhrman en Richard Cleve 28. De SWAP-test is toegepast op quantum computing en quantum machine learning 15, 29.
De SWAP-test neemt ∣ψ〉 en ∣φ〉 als invoertoestanden en geeft 1 (een Bernoulli-willekeurige variabele) met kans 1/2 - 1/2〈φ,ψ〉2 , die het kwadraatproduct van de twee toestanden 30 schat.
Uitleg van het circuit
Beschouw twee toestanden ∣φ〉 en ∣ψ〉 van het systeem, het protocol aan het begin is ∣0,φ,ψ〉. Na toepassing van de Hadamard-poort wordt de toestand gewijzigd naar
∣0,φ,ψ〉 + ∣1,φ,ψ〉. De CSWAP-poort transformeert de toestand naar
(0,φ,ψ〉 + ∣1,ψ,φ〉). Na de tweede Hadamard-poort wordt de toestand 1/2(|0,φ,ψ〉 + ∣1,φ,ψ〉 + |0,ψ,φ〉 - ∣1,ψ,φ〉)= 1/2∣0〉(|φ,ψ〉 + |ψ,φ〉) + 1/2|1〉(|φ,ψ〉 - |ψ,φ〉). De eerste qubit wordt dan gemeten, de kans om uitkomst 0 te verkrijgen is P(Eerste qubit = 0) = 1/2 (〈φ|〈ψ| + 〈ψ|〈φ|) 1/2 (|φ,ψ〉 + |ψ,φ〉) = 1/2 + 1/2 |〈ψ|φ〉|2. Als ψ en φ orthogonaal zijn (|〈ψ|ϕ〉|2 = 0), dan is de kans om 0 te verkrijgen 1/2. Als de toestanden identiek zijn (|〈ψ|ϕ〉|2 = 1) dan is de kans om 0 te verkrijgen 1. 24

Figuur 3: (a) Circuit van Fredkin-poort met polaire tegengestelde toestand, (b) Output van kansgemeten graaf, (c) Circuit van Fredkin-poort met Hadamard-poort, (d) Output van kansgemeten grafiek. Klik hier om een grotere versie van deze figuur te bekijken.
Het circuit gebruikte één ancilla-qubit samen met twee registers die de kwantumtoestanden ∣ψ〉 en ∣φ〉 codeerden. Alle qubits werden geïnitialiseerd voordat de coderingsfase begon. De genexpressiekenmerken werden vervolgens gecodeerd in de respectievelijke registers met behulp van de feature-mappingprocedure. Een Hadamard-poort werd toegepast op de ancilla-qubit om een superpositie te creëren, waarna een controlled-SWAP-operatie werd uitgevoerd tussen de twee toestandsregisters met de ancilla als controle. Een tweede Hadamard-poort werd op de ancilla aangebracht om het interferentiepatroon te voltooien, waarna de ancilla-qubit werd gemeten. Wanneer de twee gecodeerde toestanden identiek waren, produceerde de ancilla consequent het resultaat 0. Wanneer de toestanden orthogonaal waren, leverde de ancilla de uitkomst op met waarschijnlijkheid 0,5. Voor gedeeltelijk vergelijkbare toestanden lag de kans om 0 te verkrijgen tussen 0,5 en 1, wat de mate van gelijkenis tussen de toestanden weerspiegelt.
5. Kwantumafstandsschatting
In klassieke data-analyse kunnen afstanden tussen datapunten direct worden berekend met behulp van maten zoals Euclidische of Manhattanafstand 2,3. In het geval van qubits op een quantumcomputer is deze taak complexer vanwege de probabilistische aard van quantumtoestanden. Hoewel faseverschillen en kansamplitudes gemeten kunnen worden, kunnen ze niet direct worden weergegeven als afstanden tussen twee vectoren 24, 26.
Voor clustering is het noodzakelijk om de relatieve posities van datapunten te evalueren ten opzichte van clusterzwaartepunten13. Om elke qubit aan het juiste cluster toe te wijzen, moet een parameter worden gedefinieerd die dient als indicator van nabijheid tot het bijbehorende clusterzwaartepunt.
Om dit te bereiken wordt een parameter geïntroduceerd die positief correleert met gelijkenis, en zo functioneert als alternatief voor conventionele afstandsmaten 15,30.
Het afstandsschattingsproces begon met een genormaliseerde kwantumtoestand ∣Ψ〉 en een nul-geïnitialiseerde aanvullende qubit ∣q0〉. Het doel was om de afstand te schatten tussen het nieuwe datapunt gecodeerd in ∣q1〉 en een cluster-centroïde gecodeerd in ∣q2〉. Om de superpositie voor het interferentiepatroon voor te bereiden, werd een Hadamard-poort toegepast op de ancilla-qubit, wat de toestand
( ∣0〉 + ∣1〉 ) ⊗ ∣Ψ〉 opleverde. Vervolgens werd een gecontroleerde-SWAP (Fredkin) poort toegepast met de ancilla als controle, die de ancilla verstrengelde met de twee gecodeerde toestanden en hun overlap mogelijk maakte om de meetuitkomst te beïnvloeden. Deze bewerking produceerde de toestand
( ∣0〉 ⊗ ∣Ψ〉 + ∣1〉 ⊗ Fswap(∣Ψ〉)) ), waaruit de op het binnenproduct gebaseerde afstand kon worden afgeleid door latere meting van de ancilla.
Schakelingimplementatie & Uitvoer
Dit kwantumcircuit codeert genexpressiegegevens in qubits met behulp van fase-encoding en vergelijkt vervolgens twee genexpressietoestanden via de Controlled-Swap (CSwap) poort, ook bekend als de Swap Test12.
Om de vereiste superpositie te creëren, worden Hadamard-poorten toegepast op alle qubits (q0 tot q4), wat resulteert in een gelijke superpositie van alle basistoestanden |Ψ〉 =
, Deze initialisatie maakt parallelle berekening mogelijk over meerdere genexpressiewaarden. Elke qubit ondergaat vervolgens een faserotatie,
, waarbij θx overeenkomt met de gemapte genexpressiewaarde. De unitaire operatoren U(θ,π,π) toegepast op qubits q1-q 4 coderen de expressieniveaus van individuele genen, waarbij elke hoek θ een getransformeerde versie van de expressie van een gen vertegenwoordigt. Deze procedure brengt klassieke biologische data in kwantumtoestanden via fasecodering, waardoor meerdere genen kunnen worden weergegeven in een hoogdimensionale kwantumruimte6.
De CSwap-poorten worden vervolgens gebruikt om gecodeerde toestanden te vergelijken door ze te verstrengelen. De aanvullende qubit q0 fungeert als de controle, die bepaalt of de toestanden van q1-q 4 worden verwisseld. Vergelijkbare kwantumtoestanden genereren constructieve interferentie in q0, wat resulteert in een hogere kans om ∣0〉 te meten. Omgekeerd verhogen verschillende toestanden de kans om ∣1 te meten. Een daaropvolgende Hadamard-poort op q0 zorgt voor amplitude-interferentie, waardoor het mogelijk is om gelijkenisinformatie via meting te extraheren.
Stel dat twee kwantumtoestanden ∣ψ〉 en ∣φ〉 verschillende genexpressiedatasets representeren, |ψ〉 = ∑iai |i〉, |φ〉 = ∑ibi |i〉.
De Swap Test evalueert de trouwheid (inwendig product) tussen beide:
P (0) =
,
Waar ∣〈ψ∣φ〉∣ het inwendige product aanduidt. Als P(0) 1 ≈, zijn de toestanden vergelijkbaar; als P(0) 0,5 of lager ≈, zijn ze verschillend.
Dit kader maakt het mogelijk om datasets tussen patiënten of experimentele aandoeningen te vergelijken (bijvoorbeeld normaal versus ziek weefsel). Het biedt een efficiënte basis voor het clusteren van hoogdimensionale data binnen quantum machine learning-modellen. De Swap Test ondersteunt het identificeren van overeenkomsten tussen kwantumtoestanden, wat kan worden gebruikt om monsters te groeperen in betekenisvolle clusters4.

Figuur 4: Schakeling van het meten van afstand tussen datapunten en zwaartepunten. Klik hier om een grotere versie van deze figuur te bekijken.

Figuur 5: Output van de kansgemeten grafiek. Klik hier om een grotere versie van deze figuur te bekijken.
Een datapunt werd eerst gecodeerd in de kwantumtoestand ∣ψ〉 en het overeenkomstige clusterzwaartepunt werd gecodeerd in de toestand ∣φ〉. De eerder beschreven swaptestprocedure werd vervolgens uitgevoerd om deze twee toestanden te vergelijken, en de aanvullende meetkans P(0) werd geregistreerd. De trouw tussen de toestanden werd verkregen als F=∣〈ψ∣φ〉∣2, en de kwantumafstand werd gedefinieerd als D (ψ,φ) =
. Een kleinere waarde van D gaf aan dat het datapunt dichter bij het zwaartepunt lag in de kwantumfeatureruimte.
6. Initiële Centroideselectie
De initialisatie van clustercentroïden is cruciaal voor de stabiliteit en nauwkeurigheid van K-Means clustering. Gerandomiseerde selectie kan slecht verdeelde zwaartepunten opleveren, wat leidt tot trage convergentie en suboptimale resultaten. Om dit probleem aan te pakken, wordt een probabiliteitsevenredige afstandsmethode toegepast, geïnspireerd op de K-Means++-strategie20 . Bij de quantum-enhanced benadering worden afstanden geëvalueerd met behulp van de Quantum Distance Estimator op basis van de SWAP-test, zodat de geselecteerde centroïden de onderliggende dataverdeling beter weergeven. Deze strategie verbetert clusterafscheiding en verbetert de algoritmische robuustheid, vooral in datasets met hoge dimensies.
Het initialisatieproces van het centroid begon met het willekeurig selecteren van één datapunt dat als eerste centroid diende. De kwantumafstand tussen dit centroide en elk overgebleven datapunt werd vervolgens berekend met behulp van de kwantumafstandsschattingsprocedure. Op basis van deze afstandswaarden werd een kansverdeling gemaakt waarbij elk punt een selectiekans kreeg toegekend evenredig aan de kwadraatafstand van het dichtstbijzijnde zwaartepunt. Nieuwe centroïden werden volgens deze verdeling bemonsterd en de procedure werd herhaald totdat het gewenste aantal centroïden K was verkregen. Deze benadering leverde een initiële centroideset op met aanzienlijk betere scheiding dan willekeurige selectie.
7. Kwantumvariantieberekening
Clustervariantie kwantificeert de compactheid van datapunten rond hun centroïden, waardoor het een cruciale maatstaf is voor het evalueren van clusteringkwaliteit. In klassieke K-Means wordt variantie berekend als de gemiddelde kwadraatafstand tussen datapunten en hun toegewezen zwaartepunten. In de quantum-enhanced benadering worden deze afstanden verkregen met behulp van de Quantum Distance Estimator (via de SWAP-test), die fideliteitsgebaseerde overeenkomsten tussen quantumtoestanden berekent. Door de kwadraatafstanden binnen elk cluster op te tellen en te normaliseren op clustergrootte, verkrijgen we een variantiewaarde die de mate van intra-cluster cohesie weerspiegelt. Het minimaliseren van deze variatie zorgt voor strakkere, betekenisvollere clusters, wat vooral belangrijk is in hoogdimensionale genexpressiedatasets om kankerachtige en niet-kankerachtige monsters te onderscheiden.
Clustertoewijzing werd uitgevoerd door elk gecodeerd kwantumdatapunt toe te wijzen aan het dichtstbijzijnde zwaartepunt met behulp van kwantumafstandsschatting. Voor elke cluster Ck werd de kwantumafstand D(ψi,C k) tussen elk datapunt en zijn zwaartepunt berekend. De variantie binnen het cluster werd vervolgens berekend met ,
die de compactheid van elk cluster mat. De totale variantie werd verkregen door de individuele varianties over alle clusters op te tellen. Deze totale variantiewaarde werd geregistreerd om het optimale aantal clusters te bepalen en om de algehele clusteringprestaties te evalueren.
8. Optimalisatie op basis van kwantumgradiënt
Het bepalen van het optimale aantal clusters (K) is een fundamentele uitdaging bij clustertaken. Traditionele K-Means vereist dat K vooraf wordt gedefinieerd, wat vaak leidt tot onder- of overclustering. In onze kwantumversterkte aanpak integreren we Quantum Gradient-Based Optimization (QGBO) om adaptief het optimale aantal clusters te identificeren. Het algoritme verhoogt Iteratief K, berekent de variantie bij elke stap opnieuw en evalueert de vermindering van variantie (ΔV). Wanneer verbeteringen in variantie onder een drempel komen, wordt clustering beëindigd. De kwantumgradiënt wordt berekend met behulp van de parameterverschuivingsregel, die afgeleiden van verwachtingswaarden uit kwantumcircuits schat. Deze aanpak zorgt ervoor dat het uiteindelijke aantal clusters een balans houdt tussen nauwkeurigheid en efficiëntie, waardoor het bijzonder nuttig is in bio-informatica-toepassingen waar het werkelijke aantal biologische subtypes niet van tevoren bekend is.
Het clusteringsproces begon met K=1, en de totale variantie V(K) werd berekend met behulp van de kwantumvariantie-berekeningsprocedure. Het aantal clusters werd vervolgens verhoogd tot K+1, en de variantie V(K+1) werd opnieuw berekend. De vermindering van de variantie, ΔV=V(K)−V(K+1), werd geëvalueerd om te bepalen of extra clusters de compactheid van de data bleven verbeteren. De iteratie stopte toen ΔV onder de vooraf gedefinieerde drempel viel, wat aangeeft dat verdere verhogingen van K geen betekenisvolle verbeteringen opleverden. Er werd een geparametriseerd kwantumcircuit met variatiepoorten gebouwd om krommingsveranderingen in de variantietrend te monitoren, en deze informatie leidde het clusteroptimalisatieproces. Het optimale aantal clusters werd gekozen als de waarde van K waarbij de variantievermindering stabiliseerde, wat resulteerde in compacte en goed gescheiden clusters.
9. Clustervariantie berekenen en opslaan inV-lijst
Zodra stabiele clusters zijn gevormd, berekent het algoritme de clustervariantie om de compactheid van elke cluster te meten. De variantie Vkj voor een gegeven cluster wordt bepaald met behulp van de afstanden tussen elk datapunt in de cluster en het clusterzwaartepunt:

waarbij: x een genexpressiemonster vertegenwoordigt, Ci een cluster, Cci het zwaartepunt van cluster Ci, Vkj de variantie vertegenwoordigt die is geregistreerd voor de j-de iteratie met k clusters.
Deze variantie wordt opgeslagen in een lijst V-lijst, die later wordt gebruikt om het optimale aantal clusters te bepalen.
10. Het bepalen van het optimale aantal clusters
Om het optimale aantal clusters K te vinden, voert het algoritme meerdere iteraties uit, waarbij verschillende beginvoorwaarden worden geobserveerd. De belangrijkste stappen zijn:
Het algoritme identificeerde eerst de minimale variantiewaarde uit de lijst van varianties die voor verschillende waarden van K waren berekend. De vermindering van de variantie tussen opeenvolgende clustertellingen werd vervolgens gemeten met de uitdrukking ΔV=∣Vk−Vk−1∣, waarbij Vk de variantie voor K clusters aanduidde en Vk−1 de variantie voor K−1 clusters aanduidde. Als de reductie van ΔV onder de vooraf gedefinieerde drempel viel, wat wijst op een verwaarloosbare verbetering in clustering, werd de procedure beëindigd. Anders werd het aantal clusters verhoogd en werd de berekening herhaald totdat het optimale aantal clusters was bereikt.
11. Definitieve clusters voor kanker- en niet-kankerclassificatie
Zodra het optimale aantal clusters K is bepaald, vertegenwoordigt de uiteindelijke set clusters verschillende groepen binnen de genexpressiegegevens. Typisch resulteert het algoritme in twee primaire clusters:
Eén cluster die kankercellen vertegenwoordigt (gemarkeerd door onderscheidende genexpressiesignaturen die geassocieerd worden met kwaadaardigheid).
Eén cluster die niet-kankercellen vertegenwoordigt (met normale genexpressieprofielen).
De parameters, variabelen en constanten die worden gebruikt in het voorgestelde Quantum K-Means clustering-algoritme worden vermeld in Tabel 1. Definieer de datasetdimensies, stel het aantal clusters K in en pas stopcriteria en optimalisatiedrempels toe om het proces te sturen. Configureer rekenkundige instellingen zoals het aantal schoten per run en willekeurige seed om reproduceerbaarheid te garanderen. Initialiseer centroïden met behulp van een op kans gebaseerde selectiemethode en werk ze iteratief bij tot convergentie. De tabel specificeert ook de verwachte outputs, waaronder clusterlabels, zwaartepunten, optimale K, evaluatiemetrieken en visualisatiegrafieken.
| Categorie | Parameter | Waarde / Standaard | Noten |
| Dataset | Borstkankerdataset | 569 samples × 32 features (teruggebracht tot 2 PCA-componenten) | Dimensionaliteit verminderd met PCA |
| Aantal clusters | K | Dynamisch, aanvankelijk 1, tot 5 | Geoptimaliseerd met variantievermindering |
| Maximale clusters | Kmax | 5 | Bovengrens voor zoekopdrachten |
| Schoten per run | N | 1024 | Metingen per schakeluitvoering |
| Stoptolerantie | ε | 1 × 10^-14 | Variantieconvergentiecriterium |
| Variantiehellingdrempel | ΔV | 9.9 × 10^-4 | Stopdrempel voor optimalisatie |
| Waarnemingen | Mobsrv | 3 | Onafhankelijke runs per clustergrootte |
| Iteratielimiet | – | 10 | Maximale centroid-updatestappen per run |
| Willekeurig zaad | – | 42 | Zorgt voor reproduceerbaarheid |
| Verwachte output | – | Clusterlabels, zwaartepunten, optimale K, evaluatiemetrieken, plots | Geëxporteerd als .csv en .png bestanden |
| Varianties tussen clusters | Vlist | leeg | Detecteert optimale K |
| Centroïde j | CJ | geïnitialiseerd door functie (gebaseerd op kansen evenredig met de kwadratische afstanden van punten) | Iteratief bijgewerkt en de laatste zwaartepunten opgeslagen |
Tabel 1: Materiaal, Software en Reproduceerbaarheidsinstellingen
| Step | Functie / API (uit jouw code) | Actie | Verwacht resultaat |
| Feature-encoding | qc.u(theta, pi, pi, qubit) | Codéer genormaliseerd klassiek kenmerk in qubitrotatie | Qubittoestand |
| SWAP-test / kwantumafstand | get_Distance(x, y) met behulp van qc.cswap() | Bouw een 3-qubit circuit (ancilla + twee toestanden) | Identiek → P(0) ≈ 1,0; orthogonale → P(0) ≈ 0,5 |
| Circuituitvoering | SamplerV2 met AerSimulator (1024 schoten) | Schakel circuit op de simulator met transpilatie (opt niveau 1) | Kansverdeling voor ancilla-qubit |
| Centroid-initialisatie | initialize_centroids_kmeans_pp(punten, k) | Selecteer beginzwaartepunten evenredig aan de afstand | Diverse begin-centroïden |
| Clusterhertoewijzing | find_nearest_neighbour(punten, zwaartepunten) | Wijs punten toe aan het dichtstbijzijnde zwaartepunt | Stabiele clusterlidmaatschappen |
| Variantieberekening | calculate_variance(midden, centers_distance) | Bereken intra-cluster variantie | De variantie neemt elke iteratie af |
| Variantiehelling | grad_slope(k, V_k, k-1, V_k-1) | Vergelijk ΔV met ε = 1e-14 en hellingsdrempel ΔV ≤ 0,000099 | Optimale K gedetecteerd |
| Visualisatie | matplotlib.pyplot, plot_histogram | Plot clustertoewijzingen & kwantumresultaten | PCA-spreiddiagrammen, variantiegrafieken, histogrammen |
| Metrische berekening | silhouette_score, calinski_harabasz_score, davies_bouldin_score | Evalueer clusteringkwaliteit | Silhouette ≈ 0,64, CH ≈ 766, DB ≈ 0,65 |
Tabel 2: Uitvoerbare implementatiedetails van het voorgestelde algoritme.
Implementatie en algoritmen
Het Quantum K-Means Algoritme met Optimale Cluster Determination is een kwantumversterkte clusteringmethode die dynamisch het optimale aantal clusters identificeert terwijl kwantumfeaturemappingwordt toegepast 19 . De procedure begint met het beschouwen van alle datapunten als behorend tot één cluster. Het aantal clusters K wordt vervolgens geleidelijk verhoogd. Clustercentra worden probabilistisch geïnitialiseerd op basis van inter-punt afstanden, waarna elk datapunt wordt toegewezen aan zijn dichtstbijzijnde zwaartepunt, waardoor K clusters ontstaan. Clustervariantie wordt vervolgens berekend en zwaartepunten worden bijgewerkt. Dit hertoewijzingsproces wordt iteratief herhaald totdat er geen verdere wijzigingen plaatsvinden.
Het algoritme evalueert variantie over meerdere iteraties en slaat variantiewaarden op die overeenkomen met verschillende clustertellingen. De optimale waarde van K wordt bepaald door de variantie te minimaliseren terwijl de variantievermindering ΔV wordt gemonitord. Als ΔV verwaarloosbaar klein wordt, wordt de procedure beëindigd; anders wordt K verhoogd en begint het clusteringsproces opnieuw. Deze adaptieve strategie zorgt voor een efficiënte en nauwkeurige verdeling van data, vooral in hoogdimensionale featureruimtes.

Figuur 6: Stroomdiagram van de voorgestelde Hybrid Quantum K-Means Clustering-procedure, met kwantumfeature-mapping, centroid-initialisatie, iteratieve clustertoewijzing, quantumvariantieberekening, variantie-gebaseerde convergentiecontrole en kwantumgradiënt-ondersteunde selectie van het optimale aantal clusters. Klik hier om een grotere versie van deze figuur te bekijken.
De volgende stappen beschrijven het Quantum K-Means Algoritme voor het clusteren van kanker- en niet-kankergenexpressiegegevens.
Algoritme: Genexpressiegegevens clusteren van kanker- en niet-kankercellen met behulp van het Quantum K-Means-algoritme
Stap 1: Quantum feature mapping (Multifeature Encoding).
Stap 2: Uitgaande van het feit dat aanvankelijk alle datapunten tot dezelfde cluster behoren, stel dan de waarde van K=1 in (waarbij K: het nummer is van de Optimale Clusters, V: de Clustervariantie en ΔV: Vermindering van de Variantie).
Stap 3: Initialiseer Centra (Kies de Initiële Middelpunten met behulp van de waarschijnlijkheidsverhouding van afstanden tussen de datapunten).
Stap 4: Ken elk datapunt toe aan hun dichtstbijzijnde zwaartepunt, dat de vooraf gedefinieerde 'K'-clusters zal vormen.
Stap 5: Bereken de clustervariantie en plaats een nieuw zwaartepunt van elke cluster.
Stap 6: Herhaal de Stap-4, wat betekent dat je elk datapunt opnieuw toewijst aan het nieuwe dichtstbijzijnde zwaartepunt van elke cluster.
Stap 7: Als er een herplaatsing plaatsvindt, ga dan naar Stap-5, anders naar Stap-8.
Stap 8: Nu krijgen we de cluster Cj ('j'de iteratie met 'k' aantal clusters) en berekenen we variantie Vkj=
, waarbij 'x': het datapunt behoort tot cluster Ci, en Cci: clusterzwaartepunt van cluster Ci. Houd de variantie Vkj in de V-lijst bij en begin opnieuw met clusteren met nieuwe centra vanaf stap 3 (enkele keren, dus 'j'-keer, waarbij 1 ≤ j ≤ Mobsrv) met dezelfde 'K'.
Stap 9: Zoek de minimale variantie V uitde V-lijst met 'K' aantal clusters.
Stap 10: Bereken ΔV (ΔV = |Vk - Vk-1|, waarbij Vk: de variantie is met 'K' nummer van clusters en Vk-1: is de variantie met 'K-1' aantal clusters), als ΔV Quantum Gradient Based Optimized is (enorme reductie), dan FINISH anders verhoog K (K=K+1) en ga naar stap 3 met een nieuwe 'K'.
Stap 11: De clusters zijn klaar en het optimale aantal clusters is 'K'.
Quantum Features Mapping Algoritme
Algoritme 1: Mapping van kwantumkenmerken
Invoer: P punten elk van de kwantumtoestanden |ψ〉 en |Φ〉
Output: Een schatting van | 〈 ψ | Φ〉 |2
Algoritmestappen:
Stap 1: We nemen een qubit en initialiseren deze met nul; pas Hadamard-poort toe en draai deze van Z-basis naar X-as.
Step 2: We stellen φ (0 ≤ φ ≤ π ) in radiaal volgens de waarde van het datapunt ten opzichte van kenmerk 1.
φ = 2*rad(cos-1)(d0)), waarbij d0 de datawaarden van kenmerk 1 en d0 ∈ [0, 1] vertegenwoordigen.
Stap 3: We stellen θ (0 ≤ θ ≤ π ) in radiaal volgens de waarde van het datapunt ten opzichte van kenmerk 2.
θ = 2 * rad(cos-1(d1)), waarbij d1 de datawaarden van kenmerk 2 en d1 ∈ [0, 1] vertegenwoordigen.
Stap 4: We gebruiken de U3 quantum gate om de rotaties te implementeren die de kenmerken van datapunten coderen.

Dit roteert qubit Φ radiaal ten opzichte van positieve x-as en θ radiaal ten opzichte van positieve z-as.
Vergelijken van het algoritme voor kwantumtoestanden
Algoritme 2: Kwantumtoestanden vergelijken
Invoer: Twee qubits |q1〉 en |q2〉 elk van de kwantumtoestanden |ψ〉 en |Φ〉
Output: Een schatting van | 〈ψ|Φ〉 |2
Algoritmestappen:
Stap 1: Qubit A als een ancilla beschouwen en initialiseren via toestand |0〉
Stap 2: Pas Hadamard-poort toe op de qubit A
Stap 3: Pas CSWAP toe op de qubit |q1 〉 en |q2 〉 (op toestand|ψ〉 en |Φ〉), met A als controlequbit
Stap 4: Pas Hadamard-poort toe op qubit A
Stap 5: Meet A op basis van Z en registreer het meetresultaat als M
Terugkeer M als onze schatting van | 〈 ψ|Φ 〉 |2
Kwantumafstandsschatter-voor-k-means-clustering Algoritme
Algoritme 3: Kwantumafstandsschatter en Kies een nieuw clusterzwaartepunt
Invoer: P aantal datapunten en K no clustercentroïden, elk van de kwantumtoestanden |ψ〉 en |Φ〉
Output: Nieuw geclusterd zwaartepunt dat aan de datapunten is gekoppeld
Algoritmestappen:
voor i in die varieert van 1 tot P:
Kies ihet datapunt en registreer het op |qi 〉
voor j in bereik van 1 tot K:
Kies jth geclusterde zwaartepunt en zet het op |qj 〉
Vergelijk kwantumtoestanden |qi 〉 en |qj 〉 d.w.z. ide qubit met jde zwaartepunt en de meting in M als (Mi, j)
einde voor
Vind de minimale afstand (Mmin , min) van M en stel min is het nieuwe zwaartepunt van |qi 〉 en het opnemen als Ci
einde voor
Terugkeer C als onze nieuwe zwaartepuntenlijst
M= lijst van alle geclusterde zwaartepuntenafstand van |qi 〉 i-de qubit
C = lijst van alle nieuw berekende minimale afstand geclusterde zwaartepunt Ci van |qi 〉; ∀(i∈{1,...,P})
Initiële Centroid Selectie-algoritme
Algoritme 4: Bereken de initiële zwaartepunten met behulp van de waarschijnlijkheidsverhouding van de afstanden tussen de datapunten
Invoer: m aantal datapunten (X1, X2,...,Xm), elk van de kwantumtoestanden |ψ〉 en |Φ〉
Output: geef een verzameling S met K beginzwaartepunten terug
Algoritmestappen:
Stap 1: Kies willekeurig één punt X uit datapunten Xi (1 ≤ i ≤ m) en voeg dit toe aan de verzameling S
Stap 2: Voor alle Xi bereken je de afstand tussen Xi met behulp van de Quantum Distance Estimator en het dichtstbijzijnde zwaartepunt in S en stel je de afstand in alsDist(Xi)
Stap 3: Kies een getal Y gelijkmatig tussen 0 en Ddist(X1)2 + Ddist (X2)2 + ...+ Ddist (Xm)2
Stap 4: Vind een uniek geheel getal i zodat
D-distrik (X1)2 +D-distrik (X2)2 + ...+D-distrik (Xi)2 >= Y >D-distrik (X1)2 +D-distrik (X2)2 + ...+D-distrik (Xi-1)2
Stap 5: Voeg Xi op aan S
Stap 6: Totdat K centroïden zijn gevonden, herhaal je Stappen 2 – 4
Terugkeer S als de beginpunten van de zwaartepunten
Kwantumvariantieberekeningsalgoritme
Algoritme 5: Bereken kwantumvariantie
Invoer: P aantal datapunten, elk van de kwantumtoestanden | ψ〉 en |Φ〉
Output: geef de variantie van de datapunten terug
Algoritmestappen:
totalVariantance ← 0
voor i in variërend van 1 tot K:
Kies ide geclusterde zwaartepunt en zet het op |qi 〉
totalVariancei ← 0, M ← 0
voor alle j ∈ P, geassocieerd met clusterzwaartepunt i:
Kies jde datapunt en stel het in op |qj 〉
Vergelijk kwantumtoestanden |qi 〉 en |qj 〉d.w.z. ide zwaartepunt met jde datapunt en de meting in Mj registreren
M ← M + Mj
einde voor
totalVariantancei ←
[Ci is dei-de cluster; |Ci | is het aantal datapunten ini-de cluster, Dk is het datapunt ∈ Ci &M k
is de afstand tussen het zwaartepunt van Ci en Dk]
totalVariantie ← totalVariantie + totalVariancei
einde voor
totaal retourVariantie
Optimalisatie-algoritme gebaseerd op kwantumgradiënt (het optimale aantal clusters krijgen)
De optimalisatiestap op basis van kwantumgradiënt bepaalt het optimale aantal clusters door te monitoren hoe intra-cluster variantie verandert naarmate K toeneemt. Bereken de variantie voor opeenvolgende waarden van K en evalueer de verandering tussen deze waarden. Wanneer de vermindering van de variantie onder de vooraf gedefinieerde drempel valt, verbeteren extra clusters de compactheid niet meer en wordt de overeenkomstige K als optimaal geselecteerd. Dit krommingsgebaseerde criterium zorgt ervoor dat clustering stopt op het punt waar de natuurlijke structuur in de data wordt vastgelegd zonder overpartitionering.
Algoritme 6: Quantum Gradient Based Optimization
Invoer:
Een geparametriseerd kwantumcircuit QC(θ) met een enkele qubitrotatiepoort RY(θ).
A quantum observable
= Z (Pauli-Z verwachtingswaarde).
Een bereik van parameterwaarden θ.
Output: De tweede afgeleide f′′(θ) van de verwachtingswaarde 〈Z〉 ten opzichte van θ.
Algoritmestappen:
Stap 1: Initialiseer een kwantumcircuit QC(θ) met één qubit met:
Een geparametriseerde rotatiepoort RY(θ).
Meting in de computationele (Z) basis.
Stap 2: Definieer de functie Evaluate_ Verwachting(θ), d.w.z. f′(θ) = 
Bind de parameter θ aan het circuit.
Voer het circuit uit op een quantumsimulator met N schoten.
Meet uitkomstkansen P(0) en P(1).
Bereken verwachtingswaarde:
f(θ)=P(0)−P(1)
Stap 3: Bereken de tweede afgeleide met behulp van de parameterverschuivingsregel:
Stel de verschuivingswaarde in s = 
Bereken verwachtingswaarden op verschoven punten:
f(θ+s), f(θ), f(θ−s)
Bereken de tweede afgeleide:
f ′′(θ) = 
Stap 4: f ′′(θ) om het gedrag van variantievermindering te analyseren.
De implementatiedetails van de voorgestelde quantumclusteringbenadering zijn weergegeven in Tabel 2. De tabel specificeert de uitvoerbare functies en API's die in elke fase van het algoritme worden gebruikt, inclusief feature-encoding in quantumcircuits, uitvoering van de SWAP-test voor afstandsschatting, initialisatie van zwaartepunten, iteratieve clusterhertoewijzing en variantie/ΔV-evaluatie. Circuit-uitvoeringsparameters, zoals het gebruik van SamplerV2 met de AerSimulator-backend bij 1024 shots en transpilatieoptimalisatieniveau 1, worden ook vermeld. Bovendien geeft de tabel de visualisatiemethoden weer die zijn toegepast om PCA-scatterplots, variantiediagrammen en histogrammen te genereren, evenals de clusterevaluatiemetrieken (silhouette_score, calinski_harabasz_score en davies_bouldin_score). Door specifieke commandoniveaufuncties en API's te beschrijven, zorgt de tabel voor reproduceerbaarheid van alle berekeningsstappen in het voorgestelde algoritme.