量子机器学习框架

适用版本 · ArcQML 0.1.0

以 Rust 原生接口构建量子电路、模拟量子态并训练参数,通过 Python 接口使用常用能力。这里汇集框架说明、接口约定与完整任务教程。

本页目录

1.1 框架定位

ArcQML 是一个以 Rust 原生实现、同时提供 Rust 与 Python 接口的量子机器学习框架。用户可以通过统一接口构建固定或含参量子电路,使用状态向量模拟器执行单个或批量量子态的演化,并以 Pauli 算符及其线性组合定义待测量的可观测量。框架将电路输出组织为可微分 Tensor;期望值不仅可以直接读取,还可以继续参与损失函数、经典张量运算和其他可微计算,从而把量子计算与经典计算纳入同一条自动微分链路。

对于含参量子电路,ArcQML Runtime 负责状态演化、可观测量期望值和伴随梯度计算;公开接口层负责电路与参数管理、自动微分图、损失函数和优化器等。调用 backward 后,梯度可由经典损失沿计算图回传至电路参数,再由 Adam 或 SGD 等优化器进行更新。该能力组合适用于变分量子本征求解、量子神经网络、量子态分析和小规模酉矩阵综合等任务。由于 Rust 具备原生编译、内存安全和高效并行等特性,ArcQML 能够在保持接口可靠性的同时提供良好的计算性能。

1.2 当前支持的能力

能力域 当前实现
量子态 归一化 C64 稠密纯态状态向量
电路 固定门、参数化门、自定义酉门、参数共享与拼接
训练 Tensor 自动微分与量子伴随法
可观测量 PauliString 与实系数 SparsePauliOp
分析 概率、边缘概率、保真度、Bloch 向量、末端抽样
损失与优化 MSE/L1/交叉熵、SGD/Adam
用户接口 Rust 完整接口;Python 原生扩展提供常用电路、模拟、分析与训练接口

1.3 当前限制

当前后端仅支持 CPU 上的 C64 稠密纯态状态向量模拟,暂未包含 CUDA、稀疏态、噪声模型、密度矩阵、量子信道、中途测量或经典条件控制等。BatchStateVectorSimulator 表示多条独立初态共享同一电路和参数,当前暂未提供批量抽样接口。权重检查点只保存电路参数,暂未保存电路拓扑、优化器状态、训练数据位置或随机数状态。Python API 暴露的是常用功能子集;需要完整能力时,应使用 Rust 原生接口。