经典机器学习经常处理数据集,其中每个数据点都由一个包含大量特征的向量表示,通常有数千甚至数百万个特征。例如图像识别、自然语言处理或基因组分析。将此类高维数据引入量子范畴,构成一个重大难题,在量子机器学习中常被称为“输入问题”。简单地将每个特征映射到一个量子比特(如在基本基编码中)对于当前和近期量子硬件是不可行的,这些硬件通常只提供数十到数百个量子比特。我们需更巧妙的策略,以便在可用量子资源的限制下,紧凑而有效地表示这些丰富的经典信息。本节讨论将高维经典数据向量 $x \in \mathbb{R}^N$(当 $N$ 很大时)编码到量子态 $|\phi(x)\rangle$ 中的方法和考量,使用可控数量的量子比特 $n$,理想情况下 $n \ll N$。维度挑战编码向量 $x = (x_1, x_2, ..., x_N)$ 最直接、信息无损的方式似乎是振幅编码。在这里,$N=2^n$ 个特征被归一化并编码为 $n$ 个量子比特量子态的振幅: $$ |\phi(x)\rangle = \frac{1}{|x|} \sum_{i=1}^{N} x_i |i\rangle $$ 这里 $|i\rangle$ 代表与 $i$ 的二进制表示对应的计算基态。这实现了指数级压缩,仅使用 $n$ 个量子比特编码了 $2^n$ 个特征。然而,制备像 $|\phi(x)\rangle$ 这样的任意量子态通常很困难。已知算法通常需要电路深度与 $n$ 成多项式甚至指数级增长,可能抵消所寻求的量子优势。此外,从结果状态中提取有关特定特征(振幅)的信息并非易事。基编码中,每个特征可能控制一个特定量子比特或一组量子比特的状态,它随特征数量 ($N$) 线性扩展($N$ 个特征需要 $\mathcal{O}(N)$ 个量子比特),使其在当前硬件上不适合高维数据。角度编码将特征 $x_i$ 映射到应用于单个量子比特的旋转角度 $\theta_i(x_i)$(例如,$R_X(\theta_i(x_i))$、$R_Y(\theta_i(x_i))$、$R_Z(\theta_i(x_i))$),如果每个特征都有自己的旋转门,通常需要 $n \approx N$ 个量子比特。尽管存在使用更少量子比特但电路更复杂的变体(例如密集角度编码或数据重上传),但基本的难题依然存在:我们如何有效地压缩高维信息?高维数据编码策略面对这些限制,采用了一些策略,通常是组合使用:1. 经典降维在考虑量子编码之前,应用经典降维技术通常是最实用的第一步。如果数据的固有维度远低于环境维度 $N$,可以采用以下方法:主成分分析 (PCA): 找到数据中最大方差的正交方向。将数据投影到前 $k$ 个主成分上,可以在显著降低维度的同时保留大部分方差。自动编码器: 训练用于将数据压缩成低维潜在表示(编码)然后重建(解码)的神经网络。压缩后的潜在向量可以随后编码到量子比特上。特征选择: 识别并选择原始特征中最具信息量的子集的算法,基于统计属性或模型性能。目标是获得一个低维表示 $x' \in \mathbb{R}^{N'}$,其中 $N' \ll N$,这样更容易使用量子方法编码到 $n \approx N'$ 或更少量子比特上。这种预处理步骤利用强大的经典机器学习工具,并将量子资源集中在最重要的信息上。2. 量子比特高效的量子编码方案即使经过经典降维,$N'$ 对于朴素编码可能仍然太大。量子比特高效的量子编码策略旨在利用 $n < N'$ 个量子比特:振幅编码(再审视): 尽管其状态制备存在挑战,但如果 $N' = 2^n$,它仍然是最量子比特高效的方法。针对与机器学习任务相关的特定状态类别的有效制备方法正在进行研究。如果后续量子算法能够整体处理振幅中的信息而无需单独访问它们,则尤其重要。角度编码变体:密集角度编码: 多个特征 ($k$) 可以通过围绕不同轴的旋转序列编码到单个量子比特上,例如 $R_Z(\theta_1) R_Y(\theta_2) R_Z(\theta_3)...$,并且 $\theta_j$ 取决于特征的某个子集。如果每个量子比特编码 $k$ 个特征,$N'$ 个特征大约需要 $n \approx N'/k$ 个量子比特。数据重上传: 如前所述,采用数据重上传的电路可以使用固定且可能较少数量的量子比特 ($n$) 处理高维数据。经典数据 $x$ 影响整个电路中的多个参数化门。这隐式地创建了一个复杂的特征映射,而无需 $N'$ 个量子比特。表达能力取决于电路深度和结构,而不仅仅是量子比特的数量。digraph G { rankdir=LR; node [shape=box, style=rounded, fontname="Arial", fontsize=10]; edge [fontname="Arial", fontsize=9]; subgraph cluster_classical { label = "经典数据(高维)"; style=filled; color="#e9ecef"; bgcolor="#f8f9fa"; x_high [label="x ∈ ℝᴺ", shape=plaintext]; } subgraph cluster_preprocess { label = "经典预处理"; style=filled; color="#dee2e6"; bgcolor="#f1f3f5"; pca [label="PCA / 自动编码器 /\n特征选择"]; } subgraph cluster_quantum { label = "量子编码"; style=filled; color="#ced4da"; bgcolor="#e9ecef"; x_low [label="x' ∈ ℝᴺ' (N' < N)"]; encoder [label="量子\n特征映射\n|ϕ(x')⟩"]; n_qubits [label="n 量子比特 (n ≈ N' 或 n < N')", shape=note, color="#adb5bd"]; x_low -> encoder; encoder -> n_qubits [style=dotted]; } x_high -> pca [label="输入"]; pca -> x_low [label="降维数据"]; }针对高维数据的典型工作流程,涉及量子编码前的经典降维。3. 随机投影受约翰逊-林登施特劳斯引理等经典技术启发,随机投影可以将高维数据映射到较低维空间,同时近似保持距离。量子对应方法涉及应用由数据参数化的随机(或伪随机)量子电路。尽管在电路深度方面可能高效,但分析此类随机特征映射的特性是一个活跃的研究方向。权衡与考量为高维数据选择编码策略需要权衡多方面因素:量子比特数量: 相对于数据维度 ($N$ 或 $N'$) 需要多少量子比特 ($n$)?振幅编码在此方面最佳,而基编码最差。角度编码变体介于两者之间。电路深度/复杂度: 实现编码需要多少个门?振幅编码可能深度较大,而简单角度编码深度较浅但需要大量量子比特。数据重上传在量子比特数量和深度之间提供了一种权衡。NISQ 硬件偏爱浅层电路。信息损失: 经典降维本身就涉及一些信息损失。量子编码方法也可能隐式地丢弃信息或根据结构使其无法访问。表达能力与纠缠: 这种编码是否创建了丰富的特征空间?基本角度编码的简单乘积态可能缺乏复杂任务所需的表达能力。更复杂的编码或使用纠缠的编码可以创建更丰富的特征映射,但更难实现和分析。算法兼容性: 编码的选择影响后续算法。核方法依赖于有效计算内积 $\langle\phi(x)|\phi(x')\rangle$。VQA 依赖于 $|\phi(x)\rangle$ 的结构以及参数如何影响测量。编码必须与量子算法处理信息的方式兼容。有效编码高维数据仍然是QML中的一个重要瓶颈和活跃的研究方向。通常,结合经典预处理和精心选择的、量子比特高效的量子编码方案的混合方法提供了最可行的前进方向,特别是针对近期量子设备时。最佳策略通常取决于数据和特定任务,需要进行实验并仔细分析这些权衡。