mindquantum.nn¶
Quantum neural networks operators and cells.
-
mindquantum.nn.
generate_evolution_operator
(param_names, circuit: mindquantum.circuit.circuit.Circuit, hams=None)[source]¶ A method to generate a parameterized quantum circuit simulation operator.
- Parameters
circuit (Circuit) – The whole circuit combined with encoder circuit and ansatz circuit.
hams (Union[Hamiltonian, list[Hamiltonian]]) – The measurement hamiltonian.
- Returns
Evolution, A parameterized quantum circuit simulator operator supported by mindspore framework.
Examples
>>> import numpy as np >>> from mindspore import Tensor >>> import mindquantum.gate as G >>> from mindquantum import Circuit >>> circ = Circuit(G.RX('a').on(0)) >>> evol = generate_evolution_operator(['a'], circ) >>> state = evol(Tensor(np.array([0.5]).astype(np.float32))) >>> state = state.asnumpy() >>> state = state[:, 0] + 1j * state[:, 1] array([0.9689124+0.j , 0. -0.24740396j], dtype=complex64) >>> G.RX(0.5).matrix()[:, 0] array([0.96891242+0.j , 0. -0.24740396j])
-
mindquantum.nn.
generate_pqc_operator
(encoder_params_names, ansatz_params_names, circuit: mindquantum.circuit.circuit.Circuit, hams, n_threads=1)[source]¶ A method to generate a parameterized quantum circuit simulation operator.
- Parameters
encoder_params_names (list[str]) – The list of parameter names for encoder circuit.
ansatz_params_names (list[str]) – The list of parameter names for ansatz circuit.
circuit (Circuit) – The whole circuit combined with encoder circuit and ansatz circuit.
hams (Union[Hamiltonian, list[Hamiltonian]]) – The measurement hamiltonian.
n_threads (int) – Number of threads for data parallelize.
- Returns
PQC, A parameterized quantum circuit simulator operator supported by mindspore framework.
Examples
>>> from projectq.ops import QubitOperator >>> from mindquantum import Circuit >>> import mindquantum.gate as G >>> encoder_circ = Circuit([G.RX('a').on(0)]) >>> ansatz_circ = Circuit([G.RY('b').on(0)]) >>> circ = encoder_circ + ansatz_circ >>> ham = G.Hamiltonian(QubitOperator('Z0')) >>> pqc = generate_pqc_operator(['a'], ['b'], circ, ham)
Operators¶
API Name |
Description |
Supported Platforms |
Inputs of this operation is generated by MindQuantum framework. |
|
|
A trainable Mindquantum layer. |
|
|
|
||
|