NoiseLearnerV3
class NoiseLearnerV3(mode=None, options=None)
Bases: object
Clase para realizar experimentos de aprendizaje de ruido.
El «noise learner» permite caracterizar los procesos de ruido que afectan a las instrucciones objetivo, basándose en el modelo de ruido de Pauli-Lindblad descrito en [el apartado 1]. Las instrucciones proporcionadas al run() método deben contener una anotación BoxOp «twirled» que incluya operaciones ISA. El resultado de una tarea de aprendizaje automático de ruido contiene una lista de NoiseLearnerV3Result objetos, uno por cada instrucción dada.
Parámetros
-
mode (BackendV2 | Session |Batch | None) –
El modo de ejecución utilizado para realizar la consulta primitiva. Puede ser:
- A
Backendsi estás utilizando el modo de trabajo. - A
Sessionsi estás utilizando el modo de ejecución de sesión. - A
Batchsi estás utilizando el modo de ejecución por lotes.
Consulta la documentación de IBM Quantum Compute (antes Qiskit Runtime ) para obtener más información sobre los modos de ejecución.
- A
-
options (NoiseLearnerV3Options) – Las opciones deseadas.
Referencias
- E. van den Berg, Z.; Minev, A.; Kandala, K.; Temme, K., «Cancelación probabilística de errores con modelos de Pauli-Lindblad dispersos en procesadores cuánticos con ruido », Nature Physics, vol. 19, págs. 1116-1121 (2023). arXiv:2201.09866 [física cuántica]
Atributos
mode
Devuelve el modo de ejecución utilizado por esta primitiva.
Devuelve
Modo utilizado por esta primitiva, o bien si None no se utiliza ningún modo de ejecución.
options
Tipo: NoiseLearnerV3Options
Las opciones de este modelo de aprendizaje de ruido.
Métodos
backend
backend()
Devuelve el backend en el que se ejecutará la consulta primitiva.
Tipo de retorno
BackendV2
run
run(instructions, dry_run=False)
Envía una solicitud al programa Noise Learner.
Se admiten dos protocolos:
-
Lindblad: para instrucciones entre corchetes cuyo contenido se puede convertir a
Cliffordy contienen una única capa de puertas de (hasta) dos qubits. -
TREX: para instrucciones en recuadro cuyo contenido puede incluir exactamente una medida por qubit.
Para reducir al mínimo el número de experimentos de aprendizaje con ruido, llama a find_unique_box_instructions() antes de ejecutar la tarea de aprendizaje con ruido.
Parámetros
- instructions (Iterable[CircuitInstruction]) – Las instrucciones para aprender el sonido de...
- dry_run (bool) – Si
True, realiza una simulación sin ejecutar el trabajo en una QPU. Este modo se puede utilizar para validar el trabajo, calcular el consumo y recuperar metadatos sobre la sincronización de los circuitos. Los resultados devueltos conservan el esquema esperado, pero contienen datos ficticios aleatorios en lugar de resultados de medición reales o simulados. A diferencia de los backends falsos, el procesamiento de esta simulación se lleva a cabo en el lado del servidor, por lo que es posible que la tarea no finalice de inmediato y que el acceso a esta función esté restringido.
Devuelve
El trabajo enviado.
Subidas
IBMInputValueError – Si las instrucciones no se pueden utilizar con el «noise learner», por ejemplo: * Si una instrucción contiene un cuadro sin la anotación «twirl». * Si una instrucción contiene qubits no físicos, es decir, qubits que no pertenecen al registro QuantumRegister(backend.num_qubits, 'q') «físico» del backend en uso. * Si una instrucción contiene un bloque con puertas que no pertenecen a la ISA. * Si una instrucción no puede aprenderse mediante ninguno de los protocolos de aprendizaje compatibles.
Tipo de retorno