机器学习数学基础 120 章

线性相关、线性无关与生成

层级:B|按需

1. 这个概念在问什么

给定一组向量,我们要判断:是否有向量是其他向量的重复信息?它们能组合出多大的空间?这些问题决定特征是否冗余、参数能否唯一识别、矩阵秩有多大,以及线性方程是否有唯一解。

2. 线性组合回顾

v1,,vk\boldsymbol v_1,\ldots,\boldsymbol v_k 的线性组合是

c1v1++ckvk.c_1\boldsymbol v_1+\cdots+c_k\boldsymbol v_k.

所有可能线性组合构成它们的生成空间:

span{v1,,vk}.\operatorname{span}\{\boldsymbol v_1,\ldots,\boldsymbol v_k\}.

例如二维中,单个非零向量的所有倍数生成一条过原点的直线;两个不平行向量生成整个平面。

3. 线性无关

向量组 v1,ldots,vk\boldsymbol v_1,ldots,\boldsymbol v_k 线性无关,如果

c1v1++ckvk=0c_1\boldsymbol v_1+\cdots+c_k\boldsymbol v_k=\boldsymbol0

只有平凡解

c1==ck=0.c_1=\cdots=c_k=0.

若存在不全为零的系数组合出零向量,则称线性相关。

为什么用“组合为零”定义?若某个 cj0c_j\ne0,就能移项得到

vj=ijcicjvi,\boldsymbol v_j=-\sum_{i\ne j}\frac{c_i}{c_j}\boldsymbol v_i,

说明至少一个向量能由其余向量表示,它没有贡献新的方向。

4. 几何例子

R2\mathbb R^2 中:

  • (1,0)T(1,0)^T(0,1)T(0,1)^T 线性无关;
  • (1,2)T(1,2)^T(2,4)T(2,4)^T 相关,因为第二个是第一个的 2 倍;
  • 任意三个二维向量都线性相关,因为二维空间最多容纳两个独立方向。

包含零向量的向量组必然相关,因为可给零向量非零系数、其余系数为零,仍得到零。

5. 如何判断

把向量作为矩阵列:

A=[v1  vk].\boldsymbol A=[\boldsymbol v_1\ \cdots\ \boldsymbol v_k].

线性组合为零就是

Ac=0.\boldsymbol A\boldsymbol c=\boldsymbol0.

若齐次方程只有零解,则列向量线性无关;若有非零解,则相关。可通过高斯消元、秩或奇异值判断。

kkkk 维向量组成的方阵,还可用行列式:行列式非零等价于列向量线性无关。但数值计算不应仅靠浮点行列式判断接近相关。

6. 精确相关与近似相关

现实数据很少精确满足一列等于另一列的组合,却可能高度接近。这称多重共线性或病态性。例如

x32x1x2.x_3\approx2x_1-x_2.

此时线性回归可能仍有唯一解,但参数对微小噪声极敏感、标准误变大、权重符号不稳定。奇异值和条件数比“是否精确相关”更能反映数值问题。

7. 特征工程中的相关性

若同时加入摄氏温度 CC 与华氏温度 F=1.8C+32F=1.8C+32,因为偏置列也在模型中,这些列存在仿射关系,设计矩阵可能不满秩。类别 one-hot 编码若保留所有 KK 列又加入截距,因各类别列之和等于全一列,会产生“虚拟变量陷阱”。常见做法是去掉一列或调整截距约定。

线性相关不同于统计相关系数高。前者是确定的精确线性代数关系;后者描述数据共同波动程度。两者有关联,但不是同一个概念。

8. 唯一表示

若一组向量线性无关,则生成空间中的每个向量都有唯一的线性组合系数。若向量组相关,同一个向量可能有多种表示。

参数可辨识性与此相似:若多个参数组合产生完全相同预测,数据无法区分它们,最优参数可能不唯一。正则化可以选择其中某个解,但不能凭空创造数据中不存在的信息。

9. 与秩和维数的关系

矩阵列中最大线性无关向量数称为列秩;行中最大线性无关向量数称为行秩。一个重要定理是二者相等,统称矩阵的秩。

dd 维空间里最多有 dd 个线性无关向量。超过 dd 个必然相关;少于等于 dd 个也可能相关。

易错点

  1. 两个向量不相等不代表线性无关;只要是非零倍数就相关。
  2. 线性相关不是“统计相关系数不为零”。
  3. 高维中的样本数多不代表特征列独立。
  4. 理论上非零的极小奇异值在数值上可能等同于相关。
  5. 删除冗余特征会改变参数解释,但不一定改变可表达的预测。

常见问答

Q1:相关特征必须删除吗?

不一定。预测模型可使用正则化处理,多重共线性主要影响参数稳定性与解释。树模型对其反应也不同。是否删除取决于任务、算法和解释需求。

Q2:样本向量相关与特征列相关有什么区别?

把向量放在矩阵列还是行,讨论的对象不同。机器学习中多重共线性通常指特征列之间的关系。

Q3:神经网络参数为什么常不唯一?

隐藏单元置换、尺度重参数化等对称性会让不同参数产生同一函数。这是比线性相关更广的不可辨识性。

练习

  1. 判断 (1,2)T(1,2)^T(3,6)T(-3,-6)^T 是否线性无关。
  2. 判断 (1,0,0)T,(0,1,0)T,(1,1,0)T(1,0,0)^T,(0,1,0)^T,(1,1,0)^T 是否无关,并给出非平凡关系。
  3. 为什么 R3\mathbb R^3 中任意 4 个向量必线性相关?
  4. 写出包含零向量的向量组相关的证明。
  5. 解释带截距的回归为什么不能同时保留所有 one-hot 类别列。

答案与提示

  1. 相关,第二个是第一个的 3-3 倍。
  2. 相关,v1+v2v3=0v_1+v_2-v_3=0
  3. 空间维数只有 3,最多三个独立方向。
  4. 给零向量系数 1、其余系数 0,即得到非平凡零组合。
  5. 所有类别列之和等于截距的全一列,列之间精确线性相关。