2. 量子模型基础回顾
数据重上传策略并不是一套孤立的新算法,它建立在量子机器学习最基础的几条形式化约定之上:状态如何表示、演化如何描述、信息如何读出、损失如何定义。如果这些约定不清晰,后续讨论“把数据多次编码进电路”时,就很容易把编码、门操作和测量混为一谈。本节用一套统一的记号把这些基础重新梳理一遍,并给出一个可以直接手算核对的小例子,为理解重上传策略建立必要的语言。
量子比特与状态向量
单个量子比特的纯态写为 |ψ⟩ = α|0⟩ + β|1⟩,其中 α、β 为复数且满足 |α|² + |β|² = 1。在计算基下,它对应列向量 [α, β]ᵀ。多比特系统的状态是各子系统张量积构成的 2ⁿ 维复向量,例如两比特基态 |01⟩ = |0⟩⊗|1⟩ 对应向量 [0,1,0,0]ᵀ。课程中统一采用“左向量右矩阵”的约定:态向量为列向量,门作用写作 U|ψ⟩,多门依次作用时按时间顺序从右向左相乘,即先作用 U₁ 再作用 U₂ 写作 U₂U₁|ψ⟩。这一约定在后续所有电路表达式中保持一致。
需要特别区分的是“态”与“可观测量”。态是系统本身的描述,可观测量是厄米算符,只有通过测量才能把二者联系起来。数据重上传中反复出现的“把经典数据 x 编码为量子态”,本质上是构造一个以 x 为参数的酉变换 U(x) 作用于某个固定初态,而不是直接“写入”某个态向量。
量子门:酉演化与常用门
封闭系统的演化由酉矩阵描述,满足 U†U = I。单比特常用门包括:
- 旋转门
R_x(θ)=exp(-iθX/2)、R_y(θ)、R_z(θ),分别绕布洛赫球 X、Y、Z 轴旋转角度 θ; - 相位门
P(φ)=diag(1, e^{iφ}),只改变|1⟩的相对相位; - Hadamard 门
H,把|0⟩变为(|0⟩+|1⟩)/√2,是制备叠加态的常用手段。
两比特门以 CNOT 为代表,控制比特为 1 时翻转目标比特,其矩阵在基 |00⟩,|01⟩,|10⟩,|11⟩ 下为分块对角形式。CNOT 与单比特旋转门组合可构成通用门集,这是变分量子电路能够表达丰富函数类的前提。数据重上传电路通常写成 U(x) = ∏ᵢ Wᵢ · S(x) 的形式,其中 S(x) 是依赖数据的编码层,Wᵢ 是不含数据的可训练层;理解“哪些门带参数、哪些门带数据”是读懂这类表达式的关键。
测量与期望值估计
对态 |ψ⟩ 在计算基下测量,得到结果 m 的概率为 p(m)=|⟨m|ψ⟩|²,测量后态坍缩到 |m⟩。量子机器学习中更常用的是期望值:给定可观测量 O(如 Pauli 算符 Z),其期望为 ⟨O⟩ = ⟨ψ|O|ψ⟩。由于硬件只能给出采样比特串,实践中通过多次重复制备与测量来估计:若在 Z 基下测得 n₀ 次 0、n₁ 次 1,则 ⟨Z⟩ ≈ (n₀ - n₁)/(n₀ + n₁)。估计误差随采样次数 N 大致按 1/√N 下降,这是设定 shots 数量的直接依据。
若可观测量不是 Z,需要先做基变换再测量。例如估计 ⟨X⟩ 时,在测量前加一个 H 门把 X 基转到 Z 基;估计 ⟨Y⟩ 时加 S† 再 H。多比特 Pauli 串(如 Z⊗X)则对每个比特分别做相应基变换,再统计比特串的联合符号。这一“测量前旋转”的步骤在实现中极易遗漏,是期望值结果系统性偏差的常见来源。
把四件事串成一条可核对的链路
上图给出一个最小但完整的例子,建议读者亲手验算一遍。取初态 |0⟩,编码层用 R_y(x),可训练层用 R_y(θ),可观测量取 Z。当 x = π/2 时,R_y(π/2)|0⟩ = (|0⟩+|1⟩)/√2;再作用 R_y(π/2),由于 R_y(π/2) 把 |0⟩→(|0⟩+|1⟩)/√2、把 |1⟩→(−|0⟩+|1⟩)/√2,叠加后得到 |1⟩,于是 ⟨Z⟩ = −1。这个结果说明:数据 x 通过旋转角度改变了最终测量结果的概率分布,而可训练参数 θ 则在同一角度空间里与 x 叠加,二者在电路中的位置关系直接决定了模型能拟合什么样的函数。
在实现层面,这条链路对应如下伪代码结构(以常见框架的记法示意,参数为示例值):
shots = 4096
x = pi/2; theta = pi/2
for each shot:
q = |0>
q = R_y(x) q # 数据编码
q = R_y(theta) q # 可训练层
m = measure(q) # Z 基测量,得到 0 或 1
z_exp = (count(0) - count(1)) / shots # 期望值估计
# 理论值 -1;有限 shots 下结果在 -1 附近波动
运行后若得到约 −0.98 至 −1.00 之间的值,说明链路正确;若得到接近 +1,应首先检查旋转门方向或测量基是否写反;若得到接近 0,则要检查编码层是否真的作用在了初态上。这类“先用手算小例子校准链路,再扩展到多比特电路”的做法,在后续调试重上传电路时同样适用。