4. QNN的数学表示与线路映射
经典神经元的核心计算可以写成 y = f(Σ wᵢxᵢ + b):输入与权重做加权求和,加上偏置,再经过激活函数得到输出。量子神经网络(QNN)要做的事情,本质上是把这个式子"翻译"成量子线路能够执行的形式。翻译过程中有三处关键变化:输入不再是普通实数,而是被编码进量子态的振幅或相位;权重不再是乘法系数,而是旋转门的旋转角;激活函数不再是一个函数调用,而是由测量、非线性门或重复测量期望值来体现。理解这三处映射,就建立了QNN的线路级数学模型。
从加权求和到参数化旋转
最直接的映射方式是把单个输入 xᵢ 编码为绕某个轴的旋转角,把权重 wᵢ 也编码为旋转角,两者在同一量子比特上先后作用。以单量子比特为例,初始态为 |0⟩,先施加 Ry(xᵢ),再施加 Ry(wᵢ),由于同轴旋转可交换且角度相加,最终态为:
R_y(wᵢ)·R_y(xᵢ)|0⟩ = R_y(wᵢ + xᵢ)|0⟩
= cos((wᵢ+xᵢ)/2)|0⟩ + sin((wᵢ+xᵢ)/2)|1⟩
此时测量 Z 的期望值为 ⟨Z⟩ = cos(wᵢ + xᵢ)。可以看到,量子线路天然实现了"输入与权重相加后进入三角函数"的结构,这与经典神经元的"加权求和后进入激活函数"在形式上高度相似——cos 就扮演了非线性激活的角色。若希望更接近 wᵢxᵢ 的乘积形式,则需要引入受控旋转或数据重上传(data re-uploading),让输入在多个层中反复参与,从而在整体线路中产生输入与参数的高阶交叉项。
多输入情形:纠缠作为求和结构
当有多个输入时,仅靠单比特旋转无法把不同输入的信息汇聚到同一个可观测量上。常用做法是:每个输入 xᵢ 编码到各自的量子比特上,再通过受控门或纠缠门把信息耦合起来。以两比特为例,一种典型结构是:
|0⟩ ─ R_y(x₁) ─●───────── R_y(θ₁) ─ M(Z)
│
|0⟩ ─ R_y(x₂) ─X ─ R_y(θ₂) ─ M(Z)
这里的 CNOT 把两个比特的相位关联起来,使得后续对第二个比特的测量结果依赖于两个输入的组合,而不是各自独立。参数 θ₁、θ₂ 就是可训练权重,它们在训练中被梯度下降更新。若把每个比特的测量期望值加权求和作为输出,就得到 y = Σ vᵢ⟨Zᵢ⟩,其中 vᵢ 是读出层的经典权重。这一层"量子线路 + 经典加权读出"的混合结构,是当前大多数QNN的标准形态。
激活函数的量子对应物
经典网络中的 ReLU、Sigmoid 等激活函数在量子线路中没有直接对应物,因为量子演化是线性的酉变换。实践中常用三种替代方案。第一种是"测量即非线性":测量得到的是概率或期望值,⟨Z⟩ = cos(θ) 本身就是非线性的,直接把它当作激活输出。第二种是引入辅助比特与受控门,构造分段线性或阈值型响应,例如用辅助比特的测量结果控制是否翻转目标比特,从而近似阶跃函数。第三种是在读出层保留经典非线性,即量子线路输出期望值后,再经过一个经典激活函数,形成"量子特征提取 + 经典激活"的混合结构。选择哪种方案,取决于任务对非线性表达能力的要求以及当前硬件的门保真度。
一个可执行的建模示例
假设要建模一个二分类任务,输入为二维向量 (x₁, x₂),取一组示例参数:x₁ = 0.6,x₂ = -0.3,初始权重设为 θ₁ = 0.2,θ₂ = -0.4,读出权重 v₁ = 0.5,v₂ = 0.5,偏置 b = 0。线路按"编码—参数化—CNOT—测量"执行。在理想模拟器上,第一步得到两比特态,第二步施加参数化旋转,第三步 CNOT 后测量两个比特的 Z 期望值,最后计算 y = 0.5⟨Z₁⟩ + 0.5⟨Z₂⟩。若 y > 0 判为正类,否则为负类。训练时,以交叉熵为损失,对 θ₁、θ₂、v₁、v₂ 求梯度并更新。需要强调的是,上述数值仅为教学示例设定,实际结果需在具体模拟器或硬件上运行后读取,不能直接当作已验证的实测值。
映射时的工程约束
把数学模型落到真实线路时,有三点必须提前考虑。其一是门集限制:硬件通常只原生支持 R_z 与少量固定角度的 X 门,R_y 需要分解为 R_z 与 H 的组合,分解后线路深度会增加,影响噪声累积。其二是测量开销:每个期望值需要多次采样(shots),若读出层有 n 个可观测量,采样次数按 n 倍增长,训练成本随之上升。其三是参数初始化:旋转角若全部初始化为 0,线路退化为恒等变换,梯度可能消失;通常采用小随机数或均匀分布初始化,并配合数据重上传结构增强表达能力。理解这些约束,才能让"数学上成立"的映射在"工程上可运行"。