一个python通用软件库,支持量子计算应用程序的开发。聚焦于NISQ阶段的算法实现与落地+
基于昇思开源深度学习平台开发的新一代通用量子计算框架,聚焦于NISQ阶段的算法实现与落地。结合HiQ高性能量子计算模拟器和昇思MindSpore并行自动微分能力,MindQuantum有着极简的开发模式和极致的性能体验,能够高效处理量子机器学习、量子化学模拟和量子组合优化等问题,为广大科研人员、老师和学生提供快速设计和验证量子算法的高效平台,让量子计算触手可及。
一个python通用软件库,支持量子计算应用程序的开发。聚焦于NISQ阶段的算法实现与落地 ...
初体验搭建参数化量子线路通过如下示例可便捷搭建参数化量子线路 - from mindquantum import *
- import numpy as np
- encoder = Circuit().h(0).rx({'a0': 2}, 0).ry('a1', 1)
- print(encoder)
- print(encoder.get_qs(pr={'a0': np.pi / 2, 'a1': np.pi / 2}, ket=True))
复制代码你将得到 - ┏━━━┓ ┏━━━━━━━━━━┓
- q0: ──┨ H ┠─┨ RX(2*a0) ┠───
- ┗━━━┛ ┗━━━━━━━━━━┛
- ┏━━━━━━━━┓
- q1: ──┨ RY(a1) ┠───────────
- ┗━━━━━━━━┛
- -1/2j¦00⟩
- -1/2j¦01⟩
- -1/2j¦10⟩
- -1/2j¦11⟩
复制代码在jupyter notebook中,也可通过线路的svg()接口来以svg格式绘制量子线路图(更有dark和light模式可选) - circuit = (qft(range(3)) + BarrierGate(True)).measure_all()
- circuit.svg() # circuit.svg('light')
复制代码
一个python通用软件库,支持量子计算应用程序的开发。聚焦于NISQ阶段的算法实现与落地 ...
训练量子神经网络
- ansatz = CPN(encoder.hermitian(), {'a0': 'b0', 'a1': 'b1'})
- sim = Simulator('mqvector', 2)
- ham = Hamiltonian(-QubitOperator('Z0 Z1'))
- grad_ops = sim.get_expectation_with_grad(
- ham,
- encoder.as_encoder() + ansatz.as_ansatz(),
- )
- import mindspore as ms
- ms.set_context(mode=ms.PYNATIVE_MODE, device_target='CPU')
- net = MQLayer(grad_ops)
- encoder_data = ms.Tensor(np.array([[np.pi / 2, np.pi / 2]]))
- opti = ms.nn.Adam(net.trainable_params(), learning_rate=0.1)
- train_net = ms.nn.TrainOneStepCell(net, opti)
- for i in range(100):
- train_net(encoder_data)
- print(dict(zip(ansatz.params_name, net.trainable_params()[0].asnumpy())))
复制代码 训练得到参数为
- {'b1': 1.5720831, 'b0': 0.006396801}
复制代码

链接:https://pan.quark.cn/s/0a90f406d33a
提取码下载:
|