1. 量子数据编码与特征映射工程导论

量子机器学习并不是把经典数据直接“倒进”量子计算机就能获得加速。量子处理器天然操作的是量子态:一组归一化复振幅、相位与纠缠关系。经典数据则通常以表格、图像、时间序列或图结构存在。二者之间必须经过一层工程化转换——量子数据编码(Quantum Data Encoding)与特征映射(Feature Mapping)。本课程讨论的正是这层转换的工程方法:如何把经典样本映射为量子态,如何设计可训练的特征映射,如何评估编码带来的表达能力与代价,以及如何在真实硬件约束下落地。

课程定位:连接数据工程与量子算法

可以把整个技术栈分成四层。最底层是经典数据层:原始样本、标签、特征工程结果。往上是编码层:把每个特征值编码为旋转角、振幅或相位。再往上是量子模型层:由参数化量子电路(PQC)构成的可训练模型,如变分量子分类器、量子核方法。最上层是测量与优化层:通过测量得到期望值,计算损失,再用经典优化器更新参数。

本课程的定位不是泛泛介绍量子计算,而是聚焦“数据如何进入量子模型”这一关键接口。它既涉及数学(希尔伯特空间、内积、核函数),也涉及工程(电路深度、噪声、测量次数、梯度估计)。

核心问题:编码决定了模型的上限

一个常见的误解是:只要量子电路足够深,模型就能拟合任意数据。实际上,编码方式直接决定了数据在量子态空间中的几何结构。若编码把两个不同样本映射到几乎相同的量子态,后续电路再深也难以区分它们。因此,编码设计要回答三个问题:

  • 表达能力:映射后的量子态能否区分原始数据中的关键模式?
  • 可训练性:参数梯度是否消失(贫瘠高原)或爆炸?
  • 硬件可行性:电路深度、门数量、测量次数是否在噪声容忍范围内?

这三者往往互相制约。例如,角度编码简单但表达能力有限;振幅编码表达能力强,但制备任意量子态需要指数级深度的电路。工程实践就是在三者之间做权衡。

技术栈全景:从数据到量子态

下面这张图展示了从经典样本到量子模型输出的完整信号链。左侧是经典数据,经过特征预处理后进入编码层;编码层把每个特征映射为量子门参数;量子模型层执行参数化电路;测量层得到期望值;最后进入经典优化循环。

经典数据层 样本 x ∈ R^d 标签 y 特征预处理 归一化 / 标准化 降维 / 特征选择 量子编码层 角度编码 RY(θ) 振幅编码 |ψ(x)⟩ 相位编码 / 数据重上传 特征映射 φ(x) 量子模型层 参数化电路 PQC 纠缠层 / 可训练门 测量与优化 期望值 ⟨Z⟩ 损失 / 梯度更新 经典优化器反馈:更新编码参数与电路参数 原始特征 数值范围 量子态制备 可训练变换

图中虚线回路表示经典优化器根据测量结果反向更新参数。注意:编码层中的参数可能分为两类——数据编码参数(由输入样本决定,不可训练)和可训练编码参数(如数据重上传中的缩放因子,可被优化)。区分这两类参数是工程实现中的关键。

工程实践路线图

从零开始构建一个量子编码与特征映射项目,通常经历以下阶段。这里给出一个可参考的路线,但具体项目可根据数据规模和硬件条件调整。

阶段 关键任务 典型输出
数据准备 清洗、归一化到 [-π, π] 或 [0, π],处理缺失值 标准化后的特征矩阵
编码方案选择 根据特征维度、硬件量子比特数选择角度/振幅/相位编码 编码电路模板
特征映射设计 设计数据重上传层数、纠缠拓扑、可训练缩放 参数化量子电路
仿真验证 在态矢量模拟器上验证表达能力与梯度行为 损失曲线、梯度方差
硬件执行 编译到目标后端,设置测量次数与误差缓解 期望值估计
迭代优化 联合优化编码参数与电路参数,监控贫瘠高原 收敛模型与评估指标

一个具体的教学示例

假设我们有一个二维二分类数据集,样本点分布在单位圆内,标签由半径决定:内圈为类别 0,外圈为类别 1。我们使用两个量子比特,采用角度编码:

# 角度编码示例(伪代码)
for i, x_i in enumerate(sample):
    circuit.ry(2 * x_i, qubit=i)   # 将特征值映射为旋转角
    circuit.rz(2 * x_i, qubit=i)   # 增加相位信息

# 数据重上传:重复编码层 L 次
for layer in range(L):
    circuit.ry(2 * x_i, qubit=i)
    circuit.cx(0, 1)               # 纠缠
    circuit.ry(trainable_theta[layer], qubit=i)

这里 2 * x_i 是编码缩放因子。若特征已归一化到 [-π/2, π/2],则旋转角覆盖 [-π, π],能充分利用布洛赫球。若缩放因子过小,不同样本的量子态会聚集在布洛赫球同一区域,分类边界模糊;若过大,则可能引入周期性混叠。实际工程中,缩放因子本身也可以作为可训练参数,通过梯度下降自动调整。

工程提示:在真实硬件上,角度编码的旋转门通常比振幅编码更易实现,因为振幅编码需要制备任意量子态,电路深度随量子比特数指数增长。对于中等规模数据(特征维度 ≤ 20),角度编码加数据重上传往往是更务实的选择。

如何判断编码方案是否合适

可以从三个可观测指标入手。第一,核矩阵秩:计算编码后量子态之间的内积矩阵,若秩远小于样本数,说明表达能力不足。第二,梯度方差:在随机初始化下估计参数梯度,若方差随量子比特数指数衰减,说明存在贫瘠高原。第三,硬件执行保真度:比较模拟器与真实后端的期望值差异,若差异过大,说明噪声已淹没编码信号。