4. 量子门操作成本建模
在量子模型训练中,真正消耗时间和保真度的并不是“一次迭代”这个抽象单位,而是迭代内部被展开的一连串量子门与测量操作。要把训练成本算清楚,第一步就是把每个门操作折算成可比较的“时间成本”和“保真度成本”,再沿电路结构累加。本节围绕单比特门、双比特门、多比特门和测量四类操作建立门级成本模型,并推导门深度与训练迭代次数的乘积关系,最终形成一张可直接用于估算的门级成本表。
一、四类操作的成本口径
建模前必须先统一口径,否则不同硬件、不同编译结果之间无法比较。我们采用如下定义:时间成本指该操作在目标硬件上占用的等效时长(含必要的校准与调度开销),单位取纳秒;保真度成本指该操作引起的保真度衰减,用“1 − 保真度”即错误率表示,便于后续相乘累加。总保真度按各操作保真度连乘,等价于错误率近似相加(小错误率下)。
四类操作的典型差异如下:单比特门(如 Rx、Ry、H)通常最快、最准;双比特门(如 CX、CZ)因需要纠缠交互,时间和错误率都显著上升,往往是成本主导项;多比特门(如三比特 Toffoli 或受控多比特门)在多数硬件上需分解为若干双比特门,成本按分解后的门数计;测量操作时间较长且错误率不低,尤其在需要多次采样时不可忽略。
下面这张图给出了一次训练迭代从参数到门序列、再到成本累加的整体信号链,帮助建立“门级成本如何汇入迭代成本”的直观结构。
二、单次迭代成本的计算
设一次训练迭代的电路包含 n₁ 个单比特门、n₂ 个双比特门、n₃ 个多比特门(每个分解为 k 个双比特门)、n_m 个测量。则单次迭代的时间成本与错误率可写为:
T_iter = n₁·t₁ + n₂·t₂ + n₃·k·t₂ + n_m·t_m
ε_iter ≈ n₁·ε₁ + n₂·ε₂ + n₃·k·ε₂ + n_m·ε_m
F_iter ≈ 1 − ε_iter (小错误率近似)
这里有一个容易被忽略的细节:多比特门不能直接套用双比特门参数,必须先明确其分解方案。例如三比特 Toffoli 在多数超导硬件上需分解为约 6 个 CX 加若干单比特门,若直接按“一个门”计成本,会严重低估时间和错误率。因此建模时应把“分解后门数 k”作为显式参数记录,而不是隐含在经验系数里。
以一个教学示例说明(以下数值为合理假设,非实测):某变分电路每层含 8 个单比特门、4 个双比特门、1 个三比特门(k=6)、末端 4 个测量,共 6 层。则单层双比特等效数为 4 + 6 = 10,六层共 60 个双比特等效门、48 个单比特门、24 个测量。代入示例参数:
T_iter = 48×25 + 60×200 + 24×500
= 1200 + 12000 + 12000 = 25200 ns ≈ 25.2 μs
ε_iter ≈ 48×1e-3 + 60×1e-2 + 24×2e-2
= 0.048 + 0.6 + 0.48 = 1.128
F_iter ≈ 1 − 1.128 → 已超过 1,说明该电路错误率过高
这个结果本身就是重要判断依据:当 ε_iter 接近或超过 1 时,单次迭代的保真度已无法支撑有效训练,必须减少层数、降低双比特门占比或引入纠错/缓解手段,而不是继续增加迭代次数。
三、门深度与迭代次数的乘积关系
门深度 D 指电路中最长依赖路径上的门数,它决定了单次迭代的串行时间下界;而训练迭代次数 N 决定重复次数。二者相乘构成总时间的主项:
T_total ≈ D · t_gate_avg · N + 测量与调度开销
F_total ≈ F_iter^N ≈ exp(−N·ε_iter)
乘积关系带来两个直接结论。第一,时间成本对 D 和 N 是对称线性的:把深度减半与把迭代次数减半,对总时间的收益相同,但前者往往还能同时降低 ε_iter,因此优先压缩深度通常更划算。第二,保真度对 N 是指数衰减的:即使 ε_iter 只有 0.05,N=100 时 F_total ≈ exp(−5) ≈ 0.0067,几乎不可用。这意味着在含噪中等规模量子设备上,可支持的迭代次数存在硬上限,成本评估必须把“保真度预算”与“时间预算”并列,而不能只算时间。
四、门级成本估算表
把上述参数整理成可填写的估算表,是本节最直接的交付物。表中“示例值”为教学假设,实际使用时替换为目标硬件的校准数据即可。
| 操作类型 | 符号 | 单次时间 | 单次错误率 | 每迭代数量 | 时间小计 | 错误率小计 |
|---|---|---|---|---|---|---|
| 单比特门 | t₁ / ε₁ | 25 ns | 1e-3 | 48 | 1200 ns | 0.048 |
| 双比特门 | t₂ / ε₂ | 200 ns | 1e-2 | 60 | 12000 ns | 0.600 |
| 多比特门(分解) | k·t₂ / k·ε₂ | 1200 ns | 6e-2 | 6 | 7200 ns | 0.360 |
| 测量 | t_m / ε_m | 500 ns | 2e-2 | 24 | 12000 ns | 0.480 |
| 单次迭代合计 | — | — | — | — | 32400 ns | 1.488 |
注意表中多比特门一行已按 k=6 展开,因此其“每迭代数量”填的是原始多比特门个数 6,而时间与错误率小计按 36 个双比特等效门计。这种“数量按原始门、成本按分解门”的记法能同时保留电路结构与成本口径,避免混淆。由合计可见,双比特门与测量是时间主项,双比特门与多比特门是错误率主项,优化应优先针对这三处。
五、建模时的三个易错点
- 把编译后门数当成逻辑门数。 应使用目标硬件编译、映射后的实际门序列统计 n₁、n₂,否则会低估 SWAP 插入带来的双比特门膨胀。
- 忽略测量次数与采样 shot 的关系。 若每次迭代需多次采样,测量时间应按 shot 数放大,错误率也随采样次数累积。
- 用平均错误率掩盖分布差异。 双比特门错误率在不同比特对上可能相差数倍,关键路径上的高错误门应单独标注,而非一律取均值。
完成门级建模后,后续的资源评估就有了统一货币:任何电路改动、硬件切换或训练规模调整,都可以换算成时间与保真度的增减,从而在训练开始前就判断方案是否可行。