Mitigazione degli errori della rete tensoriale (TEM): una funzione Qiskit di Algorithmiq
Consulta la documentazione dell'API
Le funzioni Qiskit sono una funzione sperimentale disponibile solo per gli utenti di IBM Quantum® Premium Plan, Flex Plan e On-Prem (tramite IBM Quantum Platform API) Plan. Sono in stato di anteprima e sono soggetti a modifiche.
Il codice presente in questa pagina è stato sviluppato utilizzando i seguenti requisiti. Si consiglia di utilizzare queste versioni o versioni più recenti.
qiskit[all]~=2.5.1
Panoramica
Il metodo Tensor-network Error Mitigation (TEM) di Algorithmiq è un algoritmo ibrido algoritmo quantistico-classico progettato per eseguire la mitigazione del rumore interamente in fase di post-elaborazione classica. Con la GST, l'utente può calcolare i valori di aspettativa delle osservabili mitigando gli inevitabili errori indotti dal rumore che si verificano nell'hardware quantistico, con una maggiore precisione ed efficienza dei costi, che la rendono un'opzione molto interessante per i ricercatori quantistici e gli operatori del settore industria.
Il metodo consiste nel costruire una rete di tensori che rappresenti l'inverso del del canale di rumore globale che influisce sullo stato del processore quantistico e poi applicare la mappa ai risultati di misura completi dal punto di vista informativo acquisiti dallo stato stato rumoroso per ottenere stimatori imparziali per le osservabili.
Come vantaggio, il TEM sfrutta misurazioni complete dal punto di vista informativo per fornire accesso a una vasta serie di valori attesi mitigati di osservabili e ha un overhead di campionamento ottimale sull'hardware quantistico, come descritto in Filippov et al. (2023), e Filippov et arXiv:2307.11740 al. (2024), arXiv:2403.13542. Il sovraccarico di misurazione si riferisce al numero di misurazioni aggiuntive necessarie per eseguire un'efficiente mitigazione degli errori, un fattore critico nella fattibilità dei calcoli quantistici. Pertanto, il TEM ha il potenziale per consentire un vantaggio quantistico in scenari complessi, come le applicazioni nei campi del caos quantistico, della fisica dei sistemi a molti corpi, della dinamica di Hubbard e delle simulazioni chimiche di piccole molecole .
Le caratteristiche e i vantaggi principali della GST possono essere riassunti come segue:
- Spese generali di misura ottimali : La GST è ottimale rispetto ai limiti teorici, significa che nessun metodo può ottenere un sovraccarico di misura inferiore. In altre in altre parole, il GST richiede il numero minimo di misurazioni aggiuntive per eseguire la attenuazione degli errori. Questo significa che la GST utilizza un tempo di esecuzione quantistico minimo.
- Economicità : Poiché la GST gestisce la mitigazione del rumore interamente nella di post-elaborazione, non è necessario aggiungere altri circuiti al computer quantistico computer quantistico, il che non solo rende il calcolo più economico, ma riduce anche il rischio di introdurre ulteriori errori dovuti alle rischio di introdurre ulteriori errori dovuti alle imperfezioni dei dispositivi quantistici dispositivi quantistici.
- Stima di più osservabili : Grazie a misure informaticamente complete, la GST misurazioni, la GST stima in modo efficiente più osservabili con gli stessi dati di misura del computer quantistico.
- Attenuazione degli errori di misura : La Funzione GST Qiskit include anche un metodo proprietario di mitigazione degli errori di misura in grado di ridurre significativamente gli errori di lettura dopo un breve ciclo di calibrazione.
- Precisione : La GST migliora significativamente l'accuratezza e l'affidabilità delle simulazioni quantistiche digitali, rendendo gli algoritmi quantistici più precisi e affidabili affidabili.
Descrizione
La funzione GST consente di ottenere valori di aspettativa mitigati dagli errori per di più osservabili su un circuito quantistico con un overhead di campionamento minimo. Il il circuito viene misurato con una misura a valore operatore positivo completa di informazioni (IC-POVM) misura (IC-POVM) e i risultati delle misure raccolte vengono elaborati su un computer classico. Questa misura viene utilizzata per eseguire i metodi di rete tensoriale e costruire una mappa di e costruire una mappa di inversione del rumore. La funzione applica una mappa che inverte completamente inverte l'intero circuito rumoroso utilizzando reti tensoriali per rappresentare gli strati rumorosi strati.
Una volta sottoposti alla funzione, i circuiti sono transpilati e ottimizzati per ridurre al minimo il numero di strati ottimizzati per ridurre al minimo il numero di strati con porte a due qubit (le porte più rumorose dei dispositivi quantistici) più rumorose dei dispositivi quantistici). Il rumore che colpisce gli strati viene appreso attraverso Qiskit Runtime utilizzando un modello di rumore sparso di Pauli-Lindblad come descritto in E. van den Berg, Z. Minev, A. Kandala, K. Temme, Nat. Fisico. (2023). arXiv:2201.09866.
Il modello di rumore è una descrizione accurata del rumore sul dispositivo in grado di di catturare le caratteristiche più sottili, tra cui il cross-talk dei qubit. Tuttavia, il rumore dei dispositivi tuttavia, il rumore dei dispositivi può fluttuare e andare alla deriva e il rumore appreso potrebbe non essere accurato al momento della stima il punto in cui viene effettuata la stima. Questo potrebbe portare a risultati imprecisi risultati imprecisi.
Introduzione
Autenticati utilizzando la tua chiave API IBM Quantum Platform e seleziona la funzione TEM come segue. (Questo frammento di codice presuppone che tu abbia già salvato il tuo account nell'ambiente locale.)
from qiskit_ibm_catalog import QiskitFunctionsCatalog
tem_function_name = "algorithmiq/tem"
catalog = QiskitFunctionsCatalog(channel="ibm_quantum_platform")
# verify that you have access to the function
catalog.list()Output:
[QiskitFunction(qunova/hivqe-chemistry),
QiskitFunction(global-data-quantum/quantum-portfolio-optimizer),
QiskitFunction(algorithmiq/tem),
QiskitFunction(qedma/qesem),
QiskitFunction(multiverse/singularity),
QiskitFunction(ibm/circuit-function),
QiskitFunction(q-ctrl/optimization-solver),
QiskitFunction(colibritd/quick-pde),
QiskitFunction(q-ctrl/performance-management),
QiskitFunction(kipu-quantum/iskay-quantum-optimizer)]
# Load your function
tem = catalog.load(tem_function_name)Esempio
Il seguente frammento mostra un esempio in cui la GST viene utilizzata per calcolare i valori di aspettativa di un osservabile dato un semplice circuito quantistico.
from qiskit import QuantumCircuit
from qiskit.quantum_info import SparsePauliOp
# Create a quantum circuit
qc = QuantumCircuit(3)
qc.u(0.4, 0.9, -0.3, 0)
qc.u(-0.4, 0.2, 1.3, 1)
qc.u(-1.2, -1.2, 0.3, 2)
for _ in range(2):
qc.barrier()
qc.cx(0, 1)
qc.cx(2, 1)
qc.barrier()
qc.u(0.4, 0.9, -0.3, 0)
qc.u(-0.4, 0.2, 1.3, 1)
qc.u(-1.2, -1.2, 0.3, 2)
# Define the observables
observable = SparsePauliOp("IYX", 1.0)
# Define the execution options
pub = (qc, [observable])
options = {"default_precision": 0.02}
# Define backend to use. TEM will choose the least-busy device
# reported by IBM if not specified
backend_name = "ibm_marrakesh"
# Run the TEM function (uses around three minutes of QPU time)
job = tem.run(pubs=[pub], backend_name=backend_name, options=options)Utilizzare le API di Qiskit Serverless per controllare lo stato del carico di lavoro di Qiskit Function:
# Print the ID so you can use it later, if necessary
print(job.job_id)
print(job.status())Output:
ea1d7802-b067-4cc9-af39-3c2402d22413
QUEUED
È possibile restituire i risultati come:
result = job.result()
evs = result[0].data.evs
print(evs[0])Output:
-0.10628832892063486
Il valore atteso per il circuito senza rumore per l'operatore dato dovrebbe essere intorno a 0.18409094298943401.
Ottenere supporto
Rivolgetevi a qiskit [email protected]
Assicuratevi di includere le seguenti informazioni:
- Qiskit Function Job ID (
qiskit-ibm-catalog),job.job_id - Una descrizione dettagliata del problema
- Eventuali messaggi o codici di errore rilevanti
- Passi per riprodurre il problema
Passi successivi
- Richiedi l'accesso alla funzione di mitigazione degli errori della rete Tensor di Algorithmiq.
- Consulta la documentazione di riferimento dell'API relativa a questa funzione di Qiskit.