NNFidelityEstimator
QuICT.qcda.utility.fidelity_estimator.nn_fidelity_estimator.ShallowFidelityNN ¶
Bases: Module
A simple NN for quantum circuit fidelity estimation.
Parameters:
-
input_size(int)–input size of NN
-
hidden_size(int)–hidden size of NN
Source code in QuICT/qcda/utility/fidelity_estimator/nn_fidelity_estimator.py
forward ¶
Parameters:
-
x(torch.Tensor)–input tensor
Returns:
-
–
torch.Tensor: output tensor
Source code in QuICT/qcda/utility/fidelity_estimator/nn_fidelity_estimator.py
QuICT.qcda.utility.fidelity_estimator.nn_fidelity_estimator.NNFidelityEstimator ¶
NN based fidelity estimator.
Parameters:
-
vqm(VirtualQuantumMachine)–target machine
-
hidden_size(int)–hidden size of NN
-
use_vqm(bool)–whether to use vqm information when estimating
Source code in QuICT/qcda/utility/fidelity_estimator/nn_fidelity_estimator.py
estimate_fidelity ¶
Estimate the fidelity of a given circuit.
Parameters:
-
circ(Circuit)–given circuit
-
vqm(VirtualQuantumMachine)–given vqm, use default vqm if not given
-
mapping(List[int])–Mapping of the circuit. Identity if None.
Returns:
-
float–fidelity
Source code in QuICT/qcda/utility/fidelity_estimator/nn_fidelity_estimator.py
fit ¶
Fit the fidelity estimator with given data.
Parameters:
-
data(list)–list of tuples (circ, vqm, fidelity)
-
have_vqm(bool)–whether the data contains vqm
-
num_epochs(int)–number of epochs to train
Source code in QuICT/qcda/utility/fidelity_estimator/nn_fidelity_estimator.py
from_target_machine
classmethod
¶
Load default fidelity estimator from given target_machine. See NNFidelityEstimator.SUPPORTED_MACHINE for supported machines.
Parameters:
-
target_machine(str)–target machine
Returns:
-
NNFidelityEstimator–fidelity estimator
Source code in QuICT/qcda/utility/fidelity_estimator/nn_fidelity_estimator.py
load
classmethod
¶
Load a fidelity estimator from a given path.
Parameters:
-
path(str)–path to the estimator
Returns:
-
NNFidelityEstimator–fidelity estimator
Source code in QuICT/qcda/utility/fidelity_estimator/nn_fidelity_estimator.py
save ¶
Save the fidelity estimator to a given path.
Parameters:
-
path(str)–path to save the estimator