mitigate_depolarizing_noise(K, num_wires, method, use_entries=None)[source]

Estimate depolarizing noise rate(s) using on the diagonal entries of a kernel matrix and mitigate the noise, assuming a global depolarizing noise model.

  • K (array[float]) – Noisy kernel matrix.

  • num_wires (int) – Number of wires/qubits of the quantum embedding kernel.

  • method ('single' | 'average' | 'split_channel') –

    Strategy for mitigation

    • 'single': An alias for 'average' with len(use_entries)=1.

    • 'average': Estimate a global noise rate based on the average of the diagonal entries in use_entries, which need to be measured on the quantum computer.

    • 'split_channel': Estimate individual noise rates per embedding, requiring all diagonal entries to be measured on the quantum computer.

  • use_entries (array[int]) – Diagonal entries to use if method in ['single', 'average']. If None, defaults to [0] ('single') or range(len(K)) ('average').


Mitigated kernel matrix.

Return type



This method is introduced in Section V in arXiv:2105.02276.


For an example usage of mitigate_depolarizing_noise please refer to the PennyLane demo on the kernel module or the postprocessing demo for arXiv:2105.02276.