Prezentare generală a tehnicilor de gestionare a zgomotului
Când rulezi sarcini de lucru cuantice, poți folosi mai multe tehnici pentru a reduce impactul zgomotului. Addon-urile Qiskit open-source oferă tehnici de atenuare și suprimare a erorilor care se integrează direct în fluxul tău de dezvoltare, în timp ce IBM Quantum Compute Service aplică automat strategii avansate de atenuare a erorilor când joburile sunt trimise spre execuție. Această pagină indexează toate instrumentele și funcționalitățile disponibile în ambele opțiuni, pentru a te ajuta să alegi abordarea potrivită de gestionare a zgomotului când construiești sarcini de lucru cuantice.
Tehnici generale de gestionare a zgomotului
Tehnici de suprimare a erorilor
Aceste capabilități sunt utile pentru reducerea adâncimii circuitului sau pentru suprimarea zgomotului în timpul execuției și vin de obicei cu un overhead de eșantionare crescut
Gestionează zgomotul pentru estimarea valorilor așteptate
Folosește următoarele addon-uri pentru a gestiona zgomotul când construiești sarcini de lucru cuantice care estimează valori așteptate ale observabilelor.
Gestionează zgomotul pentru rezultatele de eșantionare
Aceste tehnici sunt utile pentru gestionarea zgomotului în rezultatele de eșantionare.
Capabilități de suport
Folosește aceste capabilități pentru a susține și a compune fluxurile tale de lucru care folosesc alte addon-uri.
Explicații ale tehnicilor de gestionare a zgomotului
Tehnicile de atenuare și suprimare a erorilor sunt utilizate pentru a îmbunătăți calitatea rezultatelor la scalarea la sarcini de lucru mai mari. Această pagină oferă explicații de nivel înalt pentru mai multe dintre tehnicile de suprimare și atenuare a erorilor disponibile cu Qiskit SDK și cu IBM Quantum Compute service.
Versiunea beta a unui nou model de execuție este acum disponibilă. Modelul de execuție direcționată oferă mai multă flexibilitate la personalizarea fluxului tău de lucru pentru atenuarea erorilor. Consultă ghidul Modelul de execuție direcționată pentru mai multe informații.
Tehnicile de atenuare și suprimare a erorilor sunt utilizate pentru a îmbunătăți calitatea rezultatelor la scalarea la sarcini de lucru mai mari. Această pagină oferă explicații de nivel înalt ale tehnicilor de suprimare și atenuare a erorilor disponibile cu Qiskit.
Decuplare dinamică
Circuitele cuantice sunt executate pe hardware-ul IBM® ca secvențe de impulsuri de microunde care trebuie programate și rulate la intervale de timp precise. Din păcate, interacțiunile nedorite dintre Qubiți pot duce la erori coerente pe Qubiții inactivi. Decuplarea dinamică funcționează prin inserarea de secvențe de impulsuri pe Qubiții inactivi pentru a anula aproximativ efectul acestor erori. Fiecare secvență de impulsuri inserată echivalează cu o operație de identitate, dar prezența fizică a impulsurilor are efectul de a suprima erorile. Există multe posibilități de alegere a secvențelor de impulsuri, iar care secvență este mai bună pentru fiecare caz particular rămâne un domeniu activ de cercetare.
Reține că decuplarea dinamică este utilă în principal pentru Circuite care conțin goluri în care unii Qubiți stau inactivi fără nicio operație care acționează asupra lor. Dacă operațiile din Circuit sunt foarte dense, astfel încât toți Qubiții sunt ocupați cea mai mare parte a timpului, atunci adăugarea de impulsuri de decuplare dinamică s-ar putea să nu îmbunătățească performanța. De fapt, ar putea chiar să înrăutățească performanța din cauza imperfecțiunilor impulsurilor în sine.
Diagrama de mai jos ilustrează decuplarea dinamică cu o secvență de impulsuri XX. Circuitul abstract din stânga este mapat pe un program de impulsuri de microunde în dreapta sus. Dreapta jos ilustrează același program, dar cu o secvență de două impulsuri X inserate în timpul unei perioade inactive a primului qubit.

Poți activa decuplarea dinamică în următoarele moduri:
- Pasul de Transpiler pentru decuplare dinamică din Qiskit
- Opțiunea de decuplare dinamică, dacă folosești IBM Quantum Estimator sau Sampler
Twirling Pauli
Twirling-ul, cunoscut și ca compilare randomizată, este o tehnică larg utilizată pentru conversia canalelor arbitrare de zgomot în canale de zgomot cu o structură mai specifică.
Twirling-ul Pauli este un tip special de twirling care utilizează operații Pauli. Are efectul de a transforma orice canal cuantic într-un canal Pauli. Aplicat singur, poate atenua zgomotul coerent, deoarece zgomotul coerent tinde să se acumuleze pătratic cu numărul de operații, în timp ce zgomotul Pauli se acumulează liniar. Twirling-ul Pauli este adesea combinat cu alte tehnici de atenuare a erorilor care funcționează mai bine cu zgomotul Pauli decât cu zgomotul arbitrar.
Twirling-ul Pauli este implementat prin încadrarea unui set ales de porți între porți Pauli cu un singur qubit, alese aleatoriu, în așa fel încât efectul ideal al porții rămâne același. Rezultatul este că un singur Circuit este înlocuit cu un ansamblu aleatoriu de Circuite, toate cu același efect ideal. La eșantionarea Circuit-ului, eșantioanele sunt extrase din mai multe instanțe aleatorii, nu doar dintr-una singură.
Deoarece majoritatea erorilor din hardware-ul cuantic actual provin din porțile cu doi Qubiți, această tehnică este adesea aplicată exclusiv porților (native) cu doi Qubiți. Diagrama următoare ilustrează câteva twirl-uri Pauli pentru porțile CNOT și ECR. Fiecare circuit dintr-un rând are același efect ideal.

Poți activa twirling-ul Pauli în următoarele moduri:
- Un pas personalizat de twirling Pauli în Qiskit
- Opțiunile de twirling, dacă folosești IBM Quantum Estimator sau Sampler
Extincția erorilor de citire prin răsucire (TREX)
Extincția erorilor de citire prin twirling (TREX) atenuează efectul erorilor de măsurare pentru estimarea valorilor așteptate ale observabilelor Pauli. Se bazează pe noțiunea de măsurători cu twirling, care sunt realizate prin substituirea aleatorie a porților de măsurare cu o secvență de (1) o poartă Pauli X, (2) o măsurătoare și (3) o inversare a bitului clasic. La fel ca în twirling-ul standard al porților, această secvență este echivalentă cu o măsurătoare simplă în absența zgomotului, așa cum este ilustrat în diagrama următoare:
În prezența erorii de citire, twirling-ul măsurătorii are efectul de a diagonaliza matricea de transfer a erorii de citire, făcând-o ușor de inversat. Un termen de rescalare din canalul de zgomot diagonal este învățat prin testarea unor circuite aleatorii inițializate în starea zero. Aceasta permite serviciului să elimine deplasarea (bias-ul) valorilor așteptate care rezultă din zgomotul de citire. Estimarea matricei de transfer a erorii de citire necesită executarea unor Circuite de calibrare suplimentare, ceea ce introduce un mic cost suplimentar.
Poți activa TREX în următoarele moduri:
- Addon-ul Qiskit Mitigation pentru Qiskit
- Opțiunea
measure_mitigation, dacă folosești IBM Quantum Estimator - Nivelul de reziliență, dacă folosești IBM Quantum Estimator
Extrapolarea la zgomot zero (ZNE)
Extrapolarea la zgomot zero (ZNE) este o tehnică pentru atenuarea erorilor în estimarea valorilor așteptate ale observabilelor. Deși îmbunătățește adesea rezultatele, nu garantează producerea unui rezultat nedeplasat (fără bias).
ZNE constă din două etape:
-
Amplificarea zgomotului: Circuitul cuantic original este executat de mai multe ori la diferite niveluri de zgomot. (Aceasta se poate face fie prin împăturirea porților, fie prin amplificare probabilistică a erorilor.)
-
Extrapolarea: Rezultatul ideal este estimat prin extrapolarea rezultatelor valorilor așteptate zgomotoase la limita de zgomot zero. (De obicei cu o funcție exponențială sau polinomială.)
Atât etapele de amplificare a zgomotului, cât și cele de extrapolare pot fi implementate în multe moduri diferite. Implicit, IBM Quantum Compute implementează amplificarea zgomotului prin ”pliere digitală a porților”, ceea ce înseamnă că porțile cu doi qubiți sunt înlocuite cu secvențe echivalente ale porții și inversul acesteia. De exemplu, înlocuirea unui unitar cu ar produce un factor de amplificare a zgomotului de 3. Pentru extrapolare, poți alege dintre mai multe forme funcționale, inclusiv o ajustare liniară sau o ajustare exponențială. Imaginea de mai jos ilustrează plierea digitală a porții în stânga și procedura de extrapolare în dreapta.

Costul suplimentar al acestei metode se scalează cu numărul de factori de zgomot. Setările implicite eșantionează valoarea așteptată la trei factori de zgomot, conducând la un cost suplimentar de aproximativ 3x.
Poți activa ZNE în următoarele moduri:
- Addon-ul Qiskit Mitigation pentru Qiskit
- Opțiunea
zne_mitigation, dacă folosești IBM Quantum Estimator - Nivelul de reziliență, dacă folosești IBM Quantum Estimator
ZNE cu amplificare probabilistică a erorilor (PEA)
Una dintre principalele provocări în ZNE este amplificarea cu acuratețe a zgomotului care afectează Circuit-ul țintă. Plierea porților oferă o modalitate ușoară de a efectua această amplificare, dar este potențial inexactă și ar putea duce la rezultate incorecte. Consultă articolul "Scalable error mitigation for noisy quantum circuits produces competitive expectation values", și în special pagina 4 a informațiilor suplimentare pentru detalii. Amplificarea probabilistică a erorilor oferă o abordare mai precisă a amplificării erorilor prin învățarea zgomotului.
PEA este o tehnică mai sofisticată care efectuează experimente preliminare pentru a reconstrui zgomotul și apoi folosește aceste informații pentru a efectua o amplificare precisă. Începe prin învățarea modelului de zgomot cu twirling al fiecărui strat de porți de entanglement din Circuit înainte ca acestea să fie rulate. După faza de învățare, Circuitele sunt executate la fiecare factor de zgomot, unde fiecare strat de entanglement al Circuitelor este amplificat prin injectarea probabilistică a zgomotului cu un singur qubit proporțional cu modelul de zgomot învățat corespunzător. Consultă articolul "Evidence for the utility of quantum computing before fault tolerance" pentru mai multe detalii.
PEA constă din trei etape:
- Învățarea: Modelul de zgomot cu twirling al fiecărui strat de porți de entanglement din Circuit este învățat.
- Amplificarea zgomotului: Circuit-ul cuantic original este executat de mai multe ori la diferiți factori de zgomot.
- Extrapolarea: Rezultatul ideal este estimat prin extrapolarea rezultatelor valorilor așteptate zgomotoase la limita de zgomot zero.
Pentru experimente la scară de utilitate, PEA este adesea cea mai bună alegere.
Deoarece PEA este o tehnică de amplificare a zgomotului pentru ZNE, trebuie să activezi și ZNE. Poți activa PEA și ZNE în următoarele moduri:
- Addon-ul Qiskit Mitigation pentru Qiskit
- Opțiunea
zne_mitigationcupeaca amplificator, dacă folosești IBM Quantum Estimator
Dacă folosești noul Estimator client-side introdus în qiskit-ibm-runtime v0.50.0, este necesar un job separat de învățare a zgomotului pentru a folosi PEA.
Vezi Migrează de la Sampler și Estimator server-side la client-side pentru mai multe informații.
Anularea probabilistică a erorilor (PEC)
Anularea probabilistică a erorilor (PEC) este o tehnică pentru atenuarea erorilor în estimarea valorilor așteptate ale observabilelor. Spre deosebire de ZNE, returnează o estimare nedeplasată (fără bias) a valorii așteptate. Cu toate acestea, implică în general un cost suplimentar mai mare.
În PEC, efectul unui Circuit țintă ideal este exprimat ca o combinație liniară de Circuite zgomotoase care sunt efectiv implementabile în practică:
Ieșirea Circuit-ului ideal poate fi reprodusă apoi prin executarea unor instanțe diferite de circuit zgomotos extrase dintr-un ansamblu aleatoriu definit de combinația liniară. Dacă coeficienții formează o distribuție de probabilitate, aceștia pot fi utilizați direct ca probabilitățile ansamblului. În practică, unii dintre coeficienți sunt negativi, astfel că formează o distribuție de quasi-probabilitate. Pot fi utilizați în continuare pentru a defini un ansamblu aleatoriu, dar există un cost de eșantionare legat de negativitatea distribuției de quasi-probabilitate, care este caracterizat de mărimea
Costul de eșantionare este un factor multiplicativ pentru numărul de shot-uri necesar pentru a estima o valoare așteptată la o precizie dată, comparativ cu numărul de shot-uri care ar fi necesare din Circuit-ul ideal. Se scalează pătratic cu , care la rândul său se scalează exponențial cu adâncimea Circuit-ului.
Poți activa PEC în următoarele moduri:
- Addon-ul Qiskit Mitigation pentru Qiskit
- Opțiunea
pec_mitigation, dacă folosești IBM Quantum Estimator
Dacă folosești noul Estimator client-side introdus în qiskit-ibm-runtime v0.50.0, este necesar un job separat de învățare a zgomotului pentru a folosi PEC.
Vezi Migrează de la Sampler și Estimator server-side la client-side pentru mai multe informații.
Pași următori
-
Consultă tutorialul despre combinarea opțiunilor de atenuare a erorilor cu primitiva Estimator.
-
Explorează alte opțiuni pentru primitivele IBM Quantum.
-
Decide în ce mod de execuție să rulezi job-ul tău.