Qiskit noise learning
A Python toolkit for randomization-based quantum noise characterization.
Alpha software. This library is in the 0.x stage of development and under active development. No part of the public interface is yet stable: while the major version is 0, expect breaking changes between releases and pin your dependency accordingly (for example, qiskit-noise-learning==0.1.*). We do not currently issue deprecation warnings, but all changes are recorded in the changelog. See the deprecation policy for details. All feedback is appreciated.
Interfaces and Documentation
This library has two levels of interface. The first is the low-level interface where the user directly interacts with objects representing core concepts in noise learning, enabling custom design of every aspect of a noise learning protocol. The second is a higher-level interface, the qiskit_noise_learning.protocols subpackage, whose prepare_learning_program and process_learning_result functions wrap a stock workflow into a single call on each side of execution.
See the following guides for examples on how to use this package:
- Learn the noise model of a gate — end-to-end use of the protocol functions
- Build a learning experiment — step-by-step walkthrough of the internal pipeline
Contributing
See the contribution guidelines for details on developer setup, testing, building the documentation, and the changelog workflow.
Citing this package
If you use this package in your research, use the CITATION.bib file in this project’s repository to cite the appropriate reference(s).