NoiseLearnerV3
class NoiseLearnerV3(mode=None, options=None)
Bases: object
Class for executing noise learning experiments.
The noise learner allows characterizing the noise processes affecting target instructions, based on the Pauli-Lindblad noise model described in [1]. The instructions provided to the run() method must contain a twirled-annotated BoxOp containing ISA operations. The result of a noise learner job contains a list of NoiseLearnerV3Result objects, one for each given instruction.
Parameters
-
mode (BackendV2 | Session |Batch | None) –
The execution mode used to make the primitive query. It can be:
- A
Backendif you are using job mode. - A
Sessionif you are using session execution mode. - A
Batchif you are using batch execution mode.
Refer to the Qiskit Runtime documentation for more information about the execution modes.
- A
-
options (NoiseLearnerV3Options) – The desired options.
References
- E. van den Berg, Z. Minev, A. Kandala, K. Temme, Probabilistic error cancellation with sparse Pauli–Lindblad models on noisy quantum processors, Nature Physics volume 19, pages 1116–1121 (2023). arXiv:2201.09866 [quant-ph]
Attributes
options
Type: NoiseLearnerV3Options
The options in this noise learner.
Methods
backend
run
run(instructions)
Submit a request to the noise learner program.
Parameters
instructions (Iterable[CircuitInstruction]) – The instructions to learn the noise of.
Returns
The submitted job.
Raises
IBMInputValueError – If the instructions cannot be used with the noise learner, such as: * If an instruction contains a box without twirl annotation. * If an instruction contains unphysical qubits, i.e., qubits that do not belong to the “physical” register QuantumRegister(backend.num_qubits, 'q') for the backend in use. * If an instruction contains a box with non-ISA gates. * If an instruction cannot be learned by any of the supported learning protocols.
Return type