Mitigação de erros em redes tensoriais (TEM): uma função Qiskit da Algorithmiq
Consulte a referência da API
As funções do Qiskit são um recurso experimental disponível apenas para usuários dos planos IBM Quantum® Premium Plan, Flex Plan e On-Prem (via IBM Quantum Platform API). Eles estão no status de versão prévia e estão sujeitos a alterações.
O código nesta página foi desenvolvido utilizando os seguintes requisitos. Recomendamos usar essas versões ou mais recentes.
qiskit[all]~=2.5.0
Visão geral
O método Tensor-network Error Mitigation (TEM) da Algorithmiq é um algoritmo híbrido algoritmo híbrido quântico-clássico projetado para realizar a atenuação de ruído inteiramente no no estágio clássico de pós-processamento. Com o TEM, o usuário pode calcular os valores de expectativa dos observáveis, mitigando os inevitáveis erros induzidos por ruído que ocorrem no hardware quântico com maior precisão e eficiência de custo, tornando-a uma opção altamente atraente para pesquisadores quânticos e profissionais do e profissionais do setor.
O método consiste na construção de uma rede de tensores que representa o inverso do canal de ruído global o canal de ruído global que afeta o estado do processador quântico e, em seguida aplicar o mapa aos resultados de medição informacionalmente completos adquiridos do estado do estado ruidoso para obter estimadores imparciais para os observáveis.
Como vantagem, o TEM aproveita medições informativamente completas para dar acesso a um vasto conjunto de valores esperados mitigados de observáveis e tem sobrecarga de amostragem ideal no hardware quântico, conforme descrito em Filippov et al. (2023), e Filippov et arXiv:2307.11740 al. (2024). arXiv:2403.13542 A sobrecarga de medição refere-se ao número de medições adicionais necessárias para realizar uma mitigação eficiente de erros, um fator crítico na viabilidade dos cálculos quânticos. Portanto, o TEM tem o potencial de permitir a vantagem quântica em cenários complexos, como aplicações nas áreas de caos quântico, física de muitos corpos, dinâmica de Hubbard e simulações de química de pequenas moléculas. O artigo foi publicado na revista Nature Communications.
Os principais recursos e benefícios do TEM podem ser resumidos da seguinte forma:
- Ótima sobrecarga de medição : O TEM é ideal com relação a limites teóricos, o que significa que nenhum método pode alcançar uma sobrecarga de medição menor. Em outras palavras, o TEM requer o número mínimo de medições adicionais para realizar a mitigação de erros. Isso, por sua vez, significa que o TEM usa um tempo de execução quântico mínimo.
- Custo-benefício : Como o TEM lida com a atenuação de ruído inteiramente no pós-processamento, não há necessidade de adicionar circuitos extras ao computador quântico, o que quânticos, o que não só torna a computação mais barata, mas também diminui o risco de introdução de erros adicionais devido às imperfeições dos dispositivos quânticos dispositivos quânticos.
- Estimativa de vários observáveis : Graças às medições com informações completas completa, o TEM estima com eficiência vários observáveis com os mesmos dados de medição do computador quântico.
- Mitigação de erros de medição : O TEM Qiskit Function também inclui um método proprietário de atenuação de erros de medição capaz de reduzir significativamente os erros de leitura após uma curta execução de calibração.
- Precisão : O TEM melhora significativamente a precisão e a confiabilidade das simulações quânticas digitais, tornando os algoritmos quânticos mais precisos e confiáveis.
Descrição
A função TEM permite que você obtenha valores de expectativa atenuados por erro para vários observáveis em um circuito quântico com o mínimo de sobrecarga de amostragem. O circuito circuito é medido com uma medida de valor de operador positivo informacionalmente completa (IC-POVM), e os resultados de medição coletados são processados em um computador clássico. Essa medição é usada para executar os métodos de rede tensorial e criar um mapa de inversão de ruído. A função aplica um mapa que inverte totalmente inverte todo o circuito ruidoso usando redes de tensores para representar as camadas ruidosas camadas.
Depois que os circuitos são submetidos à função, eles são transpilados e otimizados para minimizar o número de camadas com portas de dois qubits (as portas mais mais ruidosas em dispositivos quânticos). O ruído que afeta as camadas é aprendido por meio de Qiskit Runtime usando um modelo de ruído Pauli-Lindblad esparso, conforme descrito em E. van den Berg, Z. Minev, A. Kandala, K. Temme, Nat. Física. (2023). arXiv:2201.09866.
O modelo de ruído é uma descrição precisa do ruído no dispositivo capaz de capturar recursos sutis, inclusive o cross-talk de qubit. Entretanto, o ruído nos dispositivos dispositivos pode flutuar e se desviar, e o ruído aprendido pode não ser preciso no no ponto em que a estimativa é feita. Isso pode resultar em resultados imprecisos resultados imprecisos.
Introdução
Autentique-se usando sua chave de API IBM Quantum Platform e selecione a função TEM da seguinte forma. (Este trecho pressupõe que você já tenha salvo sua conta no seu ambiente local.)
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)Exemplo
O trecho a seguir mostra um exemplo em que o TEM é usado para computar os valores de expectativa de um observável dado um circuito quântico simples.
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)Use as APIs do Qiskit Serverless para verificar o status da carga de trabalho do Qiskit Function:
# Print the ID so you can use it later, if necessary
print(job.job_id)
print(job.status())Output:
44f9a7aa-a101-4e81-a6d7-740e5000c41b
QUEUED
Você pode retornar os resultados como:
result = job.result()
evs = result[0].data.evs
print(evs[0])Output:
0.016561872123930566
O valor esperado para o circuito sem ruído para o operador em questão deve estar em torno de 0.18409094298943401.
Obtenha suporte
Entre em contato com a qiskit\ [email protected]
Certifique-se de incluir as seguintes informações:
- Qiskit Function Job ID (
qiskit-ibm-catalog),job.job_id - Uma descrição detalhada do problema
- Quaisquer mensagens ou códigos de erro relevantes
- Etapas para reproduzir o problema
Próximas etapas
- Solicite acesso à funcionalidade de mitigação de erros da rede de tensores do Algorithmiq.
- Consulte a referência da API para esta função do Qiskit.