4. 量子门操作成本建模

在量子模型训练中,真正消耗时间和保真度的并不是“一次迭代”这个抽象单位,而是迭代内部被展开的一连串量子门与测量操作。要把训练成本算清楚,第一步就是把每个门操作折算成可比较的“时间成本”和“保真度成本”,再沿电路结构累加。本节围绕单比特门、双比特门、多比特门和测量四类操作建立门级成本模型,并推导门深度与训练迭代次数的乘积关系,最终形成一张可直接用于估算的门级成本表。

一、四类操作的成本口径

建模前必须先统一口径,否则不同硬件、不同编译结果之间无法比较。我们采用如下定义:时间成本指该操作在目标硬件上占用的等效时长(含必要的校准与调度开销),单位取纳秒;保真度成本指该操作引起的保真度衰减,用“1 − 保真度”即错误率表示,便于后续相乘累加。总保真度按各操作保真度连乘,等价于错误率近似相加(小错误率下)。

四类操作的典型差异如下:单比特门(如 Rx、Ry、H)通常最快、最准;双比特门(如 CX、CZ)因需要纠缠交互,时间和错误率都显著上升,往往是成本主导项;多比特门(如三比特 Toffoli 或受控多比特门)在多数硬件上需分解为若干双比特门,成本按分解后的门数计;测量操作时间较长且错误率不低,尤其在需要多次采样时不可忽略。

下面这张图给出了一次训练迭代从参数到门序列、再到成本累加的整体信号链,帮助建立“门级成本如何汇入迭代成本”的直观结构。

门级成本建模信号链 训练参数 θ (变分层输入) 电路展开 门序列 + 测量 门级成本累加 时间 / 错误率 单次迭代成本 T_iter / F_iter 四类操作的成本参数(示例假设值) 单比特门 t₁ ≈ 25 ns ε₁ ≈ 1e-3 双比特门 t₂ ≈ 200 ns ε₂ ≈ 1e-2 多比特门 分解为 k 个双比特门 t₃ ≈ k·t₂ 测量 t_m ≈ 500 ns ε_m ≈ 2e-2 总成本 = 单次迭代成本 × 训练迭代次数 N T_total = T_iter × N , F_total ≈ F_iter^N

二、单次迭代成本的计算

设一次训练迭代的电路包含 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,几乎不可用。这意味着在含噪中等规模量子设备上,可支持的迭代次数存在硬上限,成本评估必须把“保真度预算”与“时间预算”并列,而不能只算时间。

实用判据:先由目标总保真度 F_target 反推允许的迭代次数上限 N_max ≈ ln(F_target) / ln(F_iter),再与时间预算给出的 N 取较小值,即为该电路可实际执行的训练规模。

四、门级成本估算表

把上述参数整理成可填写的估算表,是本节最直接的交付物。表中“示例值”为教学假设,实际使用时替换为目标硬件的校准数据即可。

操作类型 符号 单次时间 单次错误率 每迭代数量 时间小计 错误率小计
单比特门t₁ / ε₁25 ns1e-3481200 ns0.048
双比特门t₂ / ε₂200 ns1e-26012000 ns0.600
多比特门(分解)k·t₂ / k·ε₂1200 ns6e-267200 ns0.360
测量t_m / ε_m500 ns2e-22412000 ns0.480
单次迭代合计————32400 ns1.488

注意表中多比特门一行已按 k=6 展开,因此其“每迭代数量”填的是原始多比特门个数 6,而时间与错误率小计按 36 个双比特等效门计。这种“数量按原始门、成本按分解门”的记法能同时保留电路结构与成本口径,避免混淆。由合计可见,双比特门与测量是时间主项,双比特门与多比特门是错误率主项,优化应优先针对这三处。

五、建模时的三个易错点

  • 把编译后门数当成逻辑门数。 应使用目标硬件编译、映射后的实际门序列统计 n₁、n₂,否则会低估 SWAP 插入带来的双比特门膨胀。
  • 忽略测量次数与采样 shot 的关系。 若每次迭代需多次采样,测量时间应按 shot 数放大,错误率也随采样次数累积。
  • 用平均错误率掩盖分布差异。 双比特门错误率在不同比特对上可能相差数倍,关键路径上的高错误门应单独标注,而非一律取均值。

完成门级建模后,后续的资源评估就有了统一货币:任何电路改动、硬件切换或训练规模调整,都可以换算成时间与保真度的增减,从而在训练开始前就判断方案是否可行。