运行理论量子机器学习算法,例如前面讨论的变分量子分类器或量子核方法,通常无法直接在物理量子处理器上执行。在纸面或高级模拟器中设计的抽象量子电路很少与实际量子硬件的物理限制和原生操作相符。这种差异使得两项重要工作成为必需:电路优化和转译。这些步骤将理想化的量子电路转换为等效或近似等效的电路,该电路更短、耗用更少资源,并可在特定目标量子设备上执行,从而减轻前面讨论过的噪声的一些有害影响。电路优化的目标在将电路调整到特定硬件之前,我们通常以不依赖硬件的方式对其进行简化。电路优化的主要目的是减少电路的资源需求,这通常意味着在有噪声的硬件上能获得更佳的性能:减少门数量: 尽量减少量子门的总数。门越少,操作错误的可能越小。减少电路深度: 尽量减少执行电路所需的时间步数。较浅的电路完成得更快,减少退相干的影响,即量子态随时间推移失去完整性。减少特定门数量: 特别注意尽量减少在大多数硬件上已知噪声较大或资源耗用较多的门,主要指像 CNOT 这样的双量子比特门。单量子比特门通常更快且保真度更高。常用优化方法优化程序通常通过应用一系列重写规则或综合算法来工作。一些常用方法包括:门抵消: 识别并移除相互抵消的门对,例如一个门紧接着其逆门(如 H 门后跟 H 门)或连续的相同 CNOT 门(CNOT(a,b) CNOT(a,b) 是恒等操作)。门可交换与合并: 重新排列可交换的门(顺序不影响结果的操作)以实现进一步的优化。例如,同一量子比特上的一系列单量子比特旋转通常可以合并为一个单一的、等效的旋转(例如,$R_Z(\theta_1) R_Z(\theta_2) = R_Z(\theta_1 + \theta_2)$)。代数恒等式: 应用已知的数学恒等式来简化门序列。一个典型例子是用 X 替换 HZH,或使用涉及受控操作的恒等式。基于模板的合成: 识别电路中特定的模式或门块,并用已知的、更高效的实现方式替换它们,以完成相同的酉操作。大多数量子计算软件开发工具包(SDK)提供多级优化。更高的级别会应用更积极、可能更耗时的优化过程。转译:使电路适应硬件特点优化侧重于通用电路简化,转译则专门使电路适应目标量子处理器的限制。这包含两项主要子任务:基门分解: 量子硬件供应商通常只支持一小部分基本操作,称为原生基门集。常见例子包括单量子比特旋转(如 $U(\theta, \phi, \lambda)$ 或特定的旋转如 $R_X(\pi/2)$)以及一到两种双量子比特纠缠门(如 CX 或 ECR)。转译将优化后的电路中的所有门分解为这些原生门的序列。例如,一个 Toffoli (CCX) 门可能被分解为几个 CX 门和单量子比特旋转。这种分解会增加门数量和深度,与抽象表示相比。连接映射(路由): NISQ 设备通常具有有限的量子比特连接性。这意味着双量子比特门只能直接应用于特定的、物理相邻的量子比特对之间。如果电路要求在两个不直接连接的量子比特之间进行操作,转译器必须插入额外的门,通常是 SWAP 门,以便将所涉及量子比特的量子信息移动到相邻位置。一个 SWAP 操作交换两个量子比特的状态,$\text{交换}|a\rangle|b\rangle = |b\rangle|a\rangle$。实现一个 SWAP 门本身需要原生门,通常是三个 CX 门。找到最优映射并最小化插入的 SWAP 门数量在计算上具有挑战性(一个NP难问题),并依赖于复杂的启发式算法(例如 SABRE, Stochastic Swap)。graph G { layout=neato; // 使用尊重位置的布局引擎 node [shape=circle, style=filled, fillcolor="#a5d8ff", fontcolor="#1c7ed6", fontsize=10, width=0.4, fixedsize=true]; edge [color="#495057"]; // 定义T形拓扑的节点位置 q0 [pos="0,1!"]; q1 [pos="1,1!"]; q2 [pos="2,1!"]; q3 [pos="1,0!"]; // 边代表物理连接 q0 -- q1; q1 -- q2; q1 -- q3; }一个4量子比特硬件拓扑,双量子比特门仅能作用于连接的量子比特之间(例如 q0-q1, q1-q2, q1-q3)。在 q0 和 q2 之间应用 CNOT 需要通过 q1 进行 SWAP 操作。映射算法的选择以及逻辑量子比特到物理量子比特的初始布局会显著影响最终电路的深度和门数量,直接影响噪声敏感性。转译流程实践中,优化和转译常交织在一起。量子计算框架通常执行一系列过程:初始优化: 应用不依赖硬件的优化。布局选择: 选择逻辑电路量子比特到物理硬件量子比特的初始映射。路由: 插入 SWAP 门(或等效序列)以满足所需双量子比特门的连接限制。基分解: 将所有门转换为目标硬件的原生基集。最终优化: 应用进一步的优化过程,可能会借助原生门和连接性的知识,以消除路由和分解过程中引入的低效。每个阶段都可以应用不同的策略和投入程度,从而在转译时间和所得电路的质量(深度、门数量)之间产生权衡。对QML算法性能的影响有效的电路优化和转译不仅仅是实现细节;它们是当前硬件上从QML算法获得有意义结果所必需的。减少噪声累积: 较短的电路深度可以最大限度地减少量子比特暴露于环境噪声(退相干)的时间。门越少,特别是噪声大的双量子比特门越少,操作错误的累积就越少。可行性: 对于具有许多参数或量子比特的复杂QML模型,未优化的电路可能超出硬件的相干时间或门限制,使其根本无法可靠运行。优化和转译可以将这些电路带入可执行的范围。资源效率: 最小化门数量,特别是 SWAP 门,节省了有限的量子资源并减少了运行时间。因此,理解转译器的工作方式以及如何指导它们(例如,通过选择优化级别或初始布局)使得QML从业者能够为特定硬件定制其算法,最大化观察到可靠性能的可能性,并可能体现出优于经典方法的优势。Qiskit (qiskit.transpile)、Pennylane 和 Cirq 等框架提供了强大的工具来管理这一复杂过程,抽象化了许多细节,但为追求最高性能的高级用户提供了控制选项。