8

One of the possible ways to improve the results of an experiment on the IBM machine using the Qiskit language is to use the measurement calibration methods. This is the link to the documentation.

I understood that the calibration matrix is made looking at when a qubit in a determined state is measured in one other state. But I didn't get how this calibration matrix is applied to the results to obtain the mitigated results.

This is the command used: mitigated_results = meas_filter.apply(my_results, method).

Sanchayan Dutta
  • 17,945
  • 8
  • 50
  • 112

1 Answers1

3

There are two methods, when you look at the code you'll see their names: pseudo_inverse and least_squares (https://github.com/Qiskit/qiskit-ignis/blob/master/qiskit/ignis/mitigation/measurement/filters.py). pseudo_inverse is the simpler one, it applies the inverse of the calibration matrix on the measurement results. However it has some issues, which require the usage of the least_squares method, which finds valid mitigated results, such that: $$\text{min}_{P_{\rho}} ||\tilde{P}_{\rho}-\mathbf{A}\cdot P_{\rho}||$$ where $\mathbf{A}$ is the calibration matrix and $\tilde{P}_{\rho}$ are the measurement results. Please see more details in the last section of https://github.com/Qiskit/qiskit-tutorials/blob/master/community/ignis/measurement_error_mitigation.ipynb. In particular about the issues related to the pseudo inverse.

Yael Ben-Haim
  • 879
  • 4
  • 4