Skip to content

核主成分分析

kernel principal component analysis · kernel PCA · KPCA

在特征空间中心化 Gram 矩阵并求谱方向,给出规范化与样本外投影。

条目类型
算法

形式陈述

给定特征向量 ϕi=ϕ(xi),先在特征空间取均值 ϕ¯=m1iϕi,令 ψi=ϕiϕ¯。经验协方差算子是

C=1mi=1mψiψi.

核技巧计算原 Gram 矩阵 K,再令

H=I1m11,Kc=HKH.

若按有限维谱定理取单位特征向量

Kcv=mλv,v2=1,λ>0,

则特征空间的单位主方向为

u=1mλi=1m(v)iψi.

训练点坐标是 u,ψj=mλ(v)j。把输入坐标中心化通常不能替代 Kc=HKH;只有线性核等特殊情形二者才一致。

直觉

普通 PCA 寻找中心化向量方差最大的方向;KPCA 做同一件事,只是向量位于由核决定的特征空间。非线性来自 ϕ,谱问题本身仍是一个中心化 Gram 矩阵的线性代数问题。

双侧乘 H 同时减去行均值、列均值并加回总均值,确保每个 ψi 的和为零。只减一次全局常数或只中心化原始输入,都会留下特征空间均值,首个成分可能主要记录偏移而非变异。

Kc 的非零特征值等于经验协方差非零特征值的 m 倍,这解释了方程中的 mλ。特征向量只确定到符号;同一主方向把 v1 会让所有坐标同时变号,却不改变重构子空间、方差或任意成对距离。重根时甚至只能唯一确定整个特征子空间,不能逐列比较两个实现的向量。

例子与边界

在一维取训练点 (0,1,2) 与线性核 k(x,z)=xz。原 Gram 矩阵为

K=(000012024),

特征均值为 1,故

Kc=(101000101).

唯一正特征值是 2=mλ1,所以 λ1=2/3;可取 v1=(1,0,1)/2。归一化公式给 u1=1,训练坐标为 (1,0,1),与中心化输入 (1,0,1) 只差主成分任意的整体符号。

对样本外点 x,必须按训练均值中心化核向量:

k~c(x)i=k(xi,x)1mjk(xj,x)1mjk(xi,xj)+1m2j,rk(xj,xr).

投影是

u,ϕ(x)ϕ¯=vk~c(x)mλ.

对上例 x=3,中心化核向量为 (2,0,2),投影为 2,与 u1(31)=2 完全一致。

零特征值方向不能除以 mλ,应丢弃;显著负特征值表示核不 PSD 或数值误差过大。KPCA 只给特征空间坐标,一般没有唯一输入空间 pre-image;把近似逆映射当作算法自带输出会越过定义边界。

推论与应用

KPCA 可提取非线性低维坐标,用于可视化、降噪或后续预测。保留成分的方差比例要基于 Kc 的非负特征值,并说明经验协方差采用 1/m 而非 1/(m1),否则特征值尺度会不同。

样本外公式必须沿用训练集的均值,不可把查询点加入后重新中心化,否则每次查询都改变基底。大样本时完整特征分解成本高,可用迭代或 Nyström 近似;近似谱误差和中心化方式需要一起验证。

参考资料
  • Bernhard Schölkopf, Alexander Smola, and Klaus-Robert Müller, “Nonlinear Component Analysis as a Kernel Eigenvalue Problem,” Neural Computation 10(5), 1998, pp. 1299–1319, doi:10.1162/089976698300017467.
  • Bernhard Schölkopf and Alexander J. Smola, Learning with Kernels, MIT Press, 2002, Sec. 14.2.
  • John Shawe-Taylor and Nello Cristianini, Kernel Methods for Pattern Analysis, Cambridge University Press, 2004, Sec. 6.2.
关系图谱4 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系