第八章:把二维点云排成一条完美主轴

本章造假目标

四行中心化后的双传感器数据为

(2,1),(1,2),(1,2),(2,1).(-2,-1),\quad(-1,-2),\quad(1,2),\quad(2,1).

两列都拥有取值集合 {2,1,1,2}\{-2,-1,1,2\},均值为 0,样本方差为 10/310/3,单列报表完全一致。当前相关系数为 0.80.8,第一主成分解释 90%90\% 的总方差。规格把两台传感器描述为对同一载荷的近似测量,要求样本相关至少为 0.950.95、第一主成分解释率至少为 99%99\%。允许的操作只有重排第二列,不得改变任何单列数值。本章将求出所需的最少交换次数,构造通过规格的点云,再用特征值、重构误差和马氏距离检查完全共线留下的痕迹。

边缘统计量通过,行内搭配仍未通过验收

把四个点写成中心化数据矩阵:

Xc=(21121221).X_c= \begin{pmatrix} -2&-1\\ -1&-2\\ 1&2\\ 2&1 \end{pmatrix}.

两列均值都为 0,所以无需再次中心化。样本协方差矩阵为

S0=1n1XcXc=13(108810).\begin{aligned} S_0 &=\frac1{n-1}X_c^\top X_c\\ &=\frac13 \begin{pmatrix} 10&8\\ 8&10 \end{pmatrix}. \end{aligned}

两列标准差相同,相关系数为

r=s12s11s22=8/3(10/3)(10/3)=0.8.r =\frac{s_{12}}{\sqrt{s_{11}s_{22}}} =\frac{8/3}{\sqrt{(10/3)(10/3)}} =0.8.

单列均值和方差均已通过验收,逐行搭配产生的相关只有 0.80.8,没有达到 0.950.95

造假动作留下的影子

重排第二列会保留它的取值集合、均值、方差、分位数和直方图。痕迹集中在行身份与空间方向:原始时间戳和传感器采集顺序能够恢复配对;最终协方差矩阵还会出现零特征值,表明某个方向的样本波动已经变为零。

一次消除逆序为什么一定提高内积

第一列已经按

2<1<1<2-2<-1<1<2

排列,第二列的顺序却是

1,2,2,1.-1,-2,2,1.

其中前两个位置和后两个位置各有一个逆序。考虑任意 xi<xjx_i<x_j,若对应的 yi>yjy_i>y_j,交换这两个 yy 以后,内积的变化为

Δ=(xiyj+xjyi)(xiyi+xjyj)=(xjxi)(yiyj)>0.\begin{aligned} \Delta &=(x_i y_j+x_j y_i)-(x_i y_i+x_j y_j)\\ &=(x_j-x_i)(y_i-y_j)\\ &>0. \end{aligned}

每消除一个逆序,ixiyi\sum_i x_i y_i 都会增大。反复执行这项交换,最终让两列按相同次序排列,内积达到最大。这给出了重排不等式在本例中的交换证明。两列数值互不相同时,同序排列也是唯一的最大值;反序排列以同样理由给出最小值。

由于重排不改变两列均值与标准差,相关系数的分母固定。最大化内积也就最大化协方差和相关系数。

为什么一次交换还不够

当前第二列为

(1,2,2,1).(-1,-2,2,1).

由于两列的中心和平方和保持不变,交换后的相关等于新内积除以 10。六种单次交换可以全部列出:

交换位置ixiyir(1,2),(3,4)90.9(1,3),(2,4)10.1(1,4),(2,3)00\begin{array}{c|c|c} \text{交换位置}&\sum_i x_i y_i&r\\ \hline (1,2),(3,4)&9&0.9\\ (1,3),(2,4)&-1&-0.1\\ (1,4),(2,3)&0&0 \end{array}

最高值为 0.90.9,所以一次交换无法达到相关门槛 0.950.95。依次交换第 1、2 个位置和第 3、4 个位置,第二列经历

(1,2,2,1)(2,1,2,1)(2,1,1,2).(-1,-2,2,1) \longrightarrow(-2,-1,2,1) \longrightarrow(-2,-1,1,2).

最终点云成为

(2,2),(1,1),(1,1),(2,2),(-2,-2),\quad(-1,-1),\quad(1,1),\quad(2,2),

它保持两列原有的全部数值,并给出

r=1010=1.r=\frac{10}{10}=1.

两次交换通过相关验收。六种单次交换已经全部失败,因此两次就是最少改动。

PCA 为什么会把这次重排读成“更整齐”

对一般的 n×pn\times p 中心化数据矩阵 XcX_c,把第 ii 行记为 xi\mathbf x_i^\top,样本协方差矩阵为

S=1n1XcXc.S=\frac1{n-1}X_c^\top X_c.

取任意单位方向

v=(v1,,vp),vv=1.\mathbf v=(v_1,\ldots,v_p)^\top, \qquad \mathbf v^\top\mathbf v=1.

ii 个点投影到该方向后的得分为

ti=vxi.t_i=\mathbf v^\top\mathbf x_i.

中心化保证 tˉ=0\bar t=0,所以投影得分的样本方差为

st2=1n1i=1n(vxi)2=v(1n1i=1nxixi)v=vSv.\begin{aligned} s_t^2 &=\frac1{n-1}\sum_{i=1}^n(\mathbf v^\top\mathbf x_i)^2\\ &=\mathbf v^\top \left( \frac1{n-1}\sum_{i=1}^n\mathbf x_i\mathbf x_i^\top \right) \mathbf v\\ &=\mathbf v^\top S\mathbf v. \end{aligned}

协方差矩阵由此记录每个旋转方向上的方差。PCA 把第一主成分方向定义为投影方差最大的单位向量:

maxv vSvs.t.vv=1.\max_{\mathbf v}\ \mathbf v^\top S\mathbf v \qquad \text{s.t.}\quad \mathbf v^\top\mathbf v=1.

构造拉格朗日函数

L(v,λ)=vSvλ(vv1),\mathcal L(\mathbf v,\lambda) =\mathbf v^\top S\mathbf v -\lambda(\mathbf v^\top\mathbf v-1),

v\mathbf v 求导并令其为零:

2Sv2λv=0.2S\mathbf v-2\lambda\mathbf v=0.

于是

Sv=λv.S\mathbf v=\lambda\mathbf v.

vv=1\mathbf v^\top\mathbf v=1 下,左乘 v\mathbf v^\top 还能得到 λ=vSv\lambda=\mathbf v^\top S\mathbf v。目标函数的最大值因此是 SS 的最大特征值,第一主成分方向是对应的单位特征向量。后续主成分在与已有方向正交的约束下继续最大化投影方差;实对称矩阵的正交特征向量恰好给出这些方向。

方法来路:PCA 最初要解决什么

Pearson 在 1901 年研究如何寻找一条直线或一个平面,使各点到这个低维对象的正交距离平方和最小。Hotelling 在 1933 年把多个互不相关的线性组合系统化为主成分。两项工作对应 PCA 的两种等价表述:最大化保留的投影方差,或最小化线性重构误差。

当前点云的 90% 从哪里来

章首协方差矩阵

S0=13(108810)S_0=\frac13 \begin{pmatrix} 10&8\\ 8&10 \end{pmatrix}

拥有特征对

λ1=6,v1=12(1,1),\lambda_1=6,\qquad \mathbf v_1=\frac1{\sqrt2}(1,1)^\top, λ2=23,v2=12(1,1).\lambda_2=\frac23,\qquad \mathbf v_2=\frac1{\sqrt2}(1,-1)^\top.

第一主轴沿 y=xy=x,第二主轴沿 y=xy=-x。把特征向量整体乘以 1-1 只会反转得分符号,不会改变主轴、解释率或重构。两个特征值之和等于矩阵的迹,也就是两列样本方差之和。第一主成分解释率为

λ1λ1+λ2=66+2/3=0.90.\frac{\lambda_1}{\lambda_1+\lambda_2} =\frac6{6+2/3} =0.90.

这正是章首的当前结论。点云大体沿对角线延伸,垂直方向仍保留 2/32/3 的样本方差。

当两列样本方差都为 s2s^2、相关 r0r\ge0 时,

S=s2(1rr1),S=s^2 \begin{pmatrix} 1&r\\ r&1 \end{pmatrix},

两个特征值为

s2(1+r),s2(1r).s^2(1+r),\qquad s^2(1-r).

所以第一主成分解释率可以直接写成

s2(1+r)2s2=1+r2.\frac{s^2(1+r)}{2s^2} =\frac{1+r}{2}.

因此,r=0.8r=0.8 对应 90%90\%r=0.9r=0.9 对应 95%95\%。要达到 99%99\%,必须满足

1+r20.99r0.98.\frac{1+r}{2}\ge0.99 \quad\Longleftrightarrow\quad r\ge0.98.

这个 PCA 门槛已经蕴含 r0.95r\ge0.95。两项验收指标来自同一个二阶结构,不能当作两条相互独立的证据。若相关为负,最大特征值改写为 s2(1+r)s^2(1+|r|),主轴则转向负斜率方向。

方差不相等时,标准化会改写主轴

解释率 (1+r)/2(1+r)/2 依赖两列方差相等。若温度用摄氏度、压力用帕记录,数值较大的尺度可能主导协方差矩阵,第一主轴会偏向高方差变量。令

Ds=diag(s1,,sp),R=Ds1SDs1,D_s=\operatorname{diag}(s_1,\ldots,s_p), \qquad R=D_s^{-1}SD_s^{-1},

RR 是样本相关矩阵,对标准化数据做 PCA 等价于分解 RR。常见的三种尺度选择是:

  • 对中心化原始数据使用协方差矩阵,保留物理尺度;

  • 先把每列除以样本标准差,再对相关矩阵做 PCA,使每列初始方差为 1;

  • 按测量误差、工程容差或损失成本定义专门尺度。

三种尺度回答不同问题,也会产生不同主成分。缩放规则应在分析前根据量纲与任务确定。看过解释率后再选择协方差矩阵或相关矩阵,会增加一条结果选择路径。

适用边界:主成分方向不能直接充当物理机制

主成分由变量集合、缩放规则和样本协方差共同决定。某个方向解释了大量方差,只能说明这组数据沿该线性组合变化较多;把它命名为“共同载荷”还需要传感器结构、标定实验或测量方程。PCA 是几何分解,潜在物理因子的解释需要额外证据。

最终点云为什么出现零特征值

两次交换后的协方差矩阵为

S1=13(10101010).S_1=\frac13 \begin{pmatrix} 10&10\\ 10&10 \end{pmatrix}.

它的两个特征值为

λ1=203,λ2=0,\lambda_1=\frac{20}{3}, \qquad \lambda_2=0,

特征向量仍分别沿 y=xy=xy=xy=-x。第一主成分解释率为

20/320/3+0=1.\frac{20/3}{20/3+0}=1.

验收所需的 99%99\% 被推到 100%100\%。零特征值表示

v2xi=0\mathbf v_2^\top\mathbf x_i=0

对每一行都成立;所有点严格落在同一条直线上,垂直方向没有任何样本波动。

适用边界:解释率越高未必越可信

若两台传感器含有独立测量误差,垂直方向通常应保留少量波动。四行数据恰好相关为 1 不能单独证明造假;第二列若由第一列确定性换算而来,完全共线也可能符合设计。两条独立采集的小数读数在较大样本中仍然完全共线时,机制解释才会变得困难。解释率是几何压缩指标,真实性还需设备精度、数据来源与误差模型。

最大方差与最小重构误差为何是同一问题

只保留单位方向 v\mathbf v 时,点 xi\mathbf x_i 的正交投影为

x^i=(vxi)v.\widehat{\mathbf x}_i =(\mathbf v^\top\mathbf x_i)\mathbf v.

投影与残差互相正交,所以

xi2=x^i2+xix^i2.\|\mathbf x_i\|^2 =\|\widehat{\mathbf x}_i\|^2 +\|\mathbf x_i-\widehat{\mathbf x}_i\|^2.

所有点的总长度固定,增大投影平方和等价于减小残差平方和。令 Vk=(v1,,vk)V_k=(\mathbf v_1,\ldots,\mathbf v_k) 收集前 kk 个正交主成分方向,整张数据矩阵的重构为

X^c=XcVkVk.\widehat X_c=X_cV_kV_k^\top.

AF2\|A\|_F^2 表示矩阵全部元素的平方和,总平方重构误差满足

XcX^cF2=tr(XcXc)tr(VkXcXcVk)=(n1)(tr(S)j=1kλj)=(n1)j>kλj.\begin{aligned} \|X_c-\widehat X_c\|_F^2 &=\operatorname{tr}(X_c^\top X_c) -\operatorname{tr}(V_k^\top X_c^\top X_cV_k)\\ &=(n-1)\left(\operatorname{tr}(S)-\sum_{j=1}^k\lambda_j\right)\\ &=(n-1)\sum_{j>k}\lambda_j. \end{aligned}

最后一个等号使用了 tr(S)=jλj\operatorname{tr}(S)=\sum_j\lambda_j。被舍弃特征值的总和由此直接量化丢失的样本方差。

当前点云只保留第一主成分,误差为

(41)23=2.(4-1)\frac23=2.

最终点云的第二特征值为 0,重构误差也变为 0。两次重排没有改变任何单列数值,却把全部正交残差消除。

PCA 所说的信息是方差

PCA 优先保留样本方差。低方差方向可能承载关键告警,高方差方向也可能来自单位、批次或噪声。高解释率只说明线性重构损失小,工程价值与真实性需要另行定义。

协方差尺度怎样重新定义远近

欧氏距离平方

dE2=(xμ)(xμ)d_E^2 =(\mathbf x-\boldsymbol\mu)^\top (\mathbf x-\boldsymbol\mu)

给每个坐标方向相同权重,测量单位和变量相关性都会影响结果。

方法来路:马氏距离最初要解决什么

Mahalanobis 在 1936 年系统提出广义距离,用来比较由多个相关测量共同描述的群体。若身高、臂长等变量共享变化,逐坐标累加距离会重复计算同一方向的信息;协方差矩阵可以同时校正量纲和共同变化。

当总体协方差矩阵 Σ\Sigma 正定时,点 x\mathbf x 到总体均值的马氏距离平方定义为

DM2=(xμ)Σ1(xμ).D_M^2 =(\mathbf x-\boldsymbol\mu)^\top \Sigma^{-1} (\mathbf x-\boldsymbol\mu).

Σ=QΛQ,z=Q(xμ),\Sigma=Q\Lambda Q^\top, \qquad \mathbf z=Q^\top(\mathbf x-\boldsymbol\mu),

DM2=jzj2λj=Λ1/2Q(xμ)2.D_M^2=\sum_j\frac{z_j^2}{\lambda_j} =\left\|\Lambda^{-1/2}Q^\top (\mathbf x-\boldsymbol\mu)\right\|^2.

它先旋转到主成分方向,再把每个坐标除以该方向的标准差;马氏距离就是白化坐标中的欧氏距离。

下面只考察几何效果,暂用样本矩阵 S0S_0 代替 Σ\Sigma,并取中心为 (0,0)(0,0)。点 (3,3)(3,3) 完全沿长轴,点 (1,1)(1,-1) 完全沿短轴:

DM2(3,3)=186=3,D_M^2(3,3)=\frac{18}{6}=3, DM2(1,1)=22/3=3.D_M^2(1,-1)=\frac{2}{2/3}=3.

两个欧氏距离平方相差九倍,按点云自身尺度衡量却同样远。这两个数值是代入 S0S_0 得到的描述量,此处没有使用卡方参照进行推断。

最终 S1S_1 含零特征值,普通逆矩阵不存在。任何离开直线 y=xy=x 的微小偏差都会落入零方差方向,严格的退化模型会把它视为不在支持集内。Moore–Penrose 伪逆把该方向的倒数设为 0,因而不会惩罚离线分量;使用伪逆时还要单独报告点到主轴的正交残差。正则化 S1+εIS_1+\varepsilon I 则把两个特征值改成 20/3+ε20/3+\varepsilonε\varepsilon,离线分量 z2z_2 的惩罚变为 z22/εz_2^2/\varepsilonε\varepsilon 实际规定了模型容许多大的垂直噪声。

适用边界:卡方参照需要总体模型

XNp(μ,Σ)\mathbf X\sim N_p(\boldsymbol\mu,\Sigma),且总体参数已知,则 DM2χp2D_M^2\sim\chi_p^2。从同一小样本估计均值和协方差后再计算距离,统计量之间会相互依赖,参照分布也会改变;协方差奇异时还要先说明子空间、伪逆或正则化规则。

把完美主轴放回审计链

两次交换把第二列从 (1,2,2,1)(-1,-2,2,1) 排成 (2,1,1,2)(-2,-1,1,2)。两列边缘完全不动,相关从 0.80.8 升到 11,第一主成分解释率从 90%90\% 升到 100%100\%,单主成分重构误差从 2 降到 0。本章规定的造假目标已经完成。

在本例中,99%99\% 解释率把有效相关门槛提高到 0.980.98。每个排列的内积都是整数,相关只能取 0.10.1 的整数倍;一次交换的最高值为 0.90.9,下一项可行值直接跳到 11。这解释了为何规格要求 99%99\%,最终结果却达到 100%100\%

零特征值记录了这次过度修整,也需要结合机制解释:最终两台传感器的中心化读数逐行完全相等。复核时应恢复采集顺序,检查原始时间戳、设备分辨率、换算关系、舍入规则和垂直主成分得分。PCA 能定位消失的方向,行级证据负责判断消失是否合理。

本章研究的是整个点云的二阶几何。下一章会保持整体秩相关近似不变,专门移动联合分布右上角的极端配对,由全局方向进入尾部相依。

本章知识链

  1. 重排一列会保留全部边缘统计量,同时改变行内积、协方差和点云方向。

  2. 消除逆序会提高内积;六种单次交换的最高相关为 0.90.9,两次交换达到唯一的同序排列和 r=1r=1

  3. PCA 把最大投影方差化为特征值问题;等方差、正相关的二维数据满足第一主成分解释率 (1+r)/2(1+r)/2

  4. 舍弃特征值之和决定线性重构误差;最终矩阵的第二特征值与单主成分重构误差都为零。

  5. 马氏距离等于白化坐标中的欧氏距离;协方差奇异时,子空间残差、伪逆和正则化规则都要单独说明。

思考与练习

  1. 验证原始四点的协方差矩阵、相关系数和两个特征对。

  2. 逐项复算第二列的六种单次交换,验证交换表,并说明它怎样证明两次操作最少。

  3. 用交换差公式证明:当两列都没有重复值时,相同排序唯一地最大化内积。

  4. 推导等方差二维数据的解释率公式,并把 99%99\% 门槛换算成相关门槛;说明本章两个验收指标之间的关系。

  5. 只保留原始点云的第二主成分重构四个点,计算总平方误差,并与被舍弃的特征值比较。

  6. 对样本协方差 S=diag(9,1)S=\operatorname{diag}(9,1),分别讨论协方差矩阵 PCA 与相关矩阵 PCA 的第一方向。

  7. 对协方差矩阵 diag(9,1)\operatorname{diag}(9,1),比较点 (3,0)(3,0)(0,1)(0,1) 的欧氏距离和马氏距离。

  8. S1S_1 加上 εI\varepsilon I,写出两个特征值,并说明 ε\varepsilon 如何控制离开直线方向的马氏惩罚。

  9. 举出一个低方差方向承载关键工程告警的例子,说明仅按解释方差选主成分会遗漏什么。

专题导航