qiskit_addon_qcbm package¶
Submodules¶
qiskit_addon_qcbm.born_machine module¶
Define the Quantum Circuit Born Machine.
- class MMD(rbf_sigmas, nparange_hilbert_dim)¶
Bases:
objectMaximum Mean Discrepancy
- k_expval(px, py)¶
- mmd_loss(px, py)¶
- class QCBM(num_qubits, num_layers, ansatz=None, data=None)¶
Bases:
objectQuantum Circuit Born Machine
- compute_loss(params, ansatz_isa, sampler, loss_fcn, train_history, target_probs)¶
Return the value of the loss function.
- Parameters:
params (ndarray) – Array of ansatz parameters
ansatz_isa (QuantumCircuit) – Parameterized transpiled ansatz
sampler (SamplerV2) – Sampler primitive instance
loss_fcn (python function) – Function using to compute the loss
train_history (dict) – Dictionary for storing intermediate results
target_probs (ndarray) – the actual probability distribution
- Returns:
Scalar loss value
- Return type:
- draw()¶
Draw the QCBM circuit.
- plot_compare_model_and_target_probs(x_max, target_probs, qcbm_probs)¶
Compare the probabilities obtained with QCBM with the actual probability distribution.
- print()¶
Provide the stats on the QCBM.
- train(data=None, loss_fcn=None, num_iterations=10, num_shots=100, backend=<qiskit_ibm_runtime.fake_provider.backends.fez.fake_fez.FakeFez object>)¶
Train the QCBM.
qiskit_addon_qcbm.datasets module¶
Create datasets to model with a QCBM.
Module contents¶
Primary QCBM functionality.