【机器学习教程】第02章:线性代数基础【上】

第02章:线性代数基础

前言

线性代数是现代数学的通用语言,也是机器学习的基石。在机器学习中,我们关注的焦点并非复杂的行列式计算或方程组求解,而是数据的表示空间的变换几何的度量 以及优化的方向

本章将构建一套严谨、完整且直观的数学体系。我们将从向量空间的基本概念出发,深入理解线性组合、基、维度与秩等核心思想;从几何视角解析投影、正交与范数的本质;最终掌握适用于任意矩阵的奇异值分解 (SVD)伪逆理论。这些知识是深入理解后续算法(如 PCA、线性回归、神经网络优化)的必要前提。


目录


2.1 基础数据结构

标量、向量、矩阵与张量

数学对象的定义由其维度决定:

  • 标量 (Scalar) : x ∈ R x \in \mathbb{R} x∈R。仅具有大小的单个数值。例如温度、距离等。

  • 向量 (Vector) : x ∈ R n \mathbf{x} \in \mathbb{R}^n x∈Rn。 n n n 个数的一维有序排列,代表空间中的一个点或方向。本书默认向量为列向量

    例如, x = [ 2 3 ] \mathbf{x} = \begin{bmatrix} 2 \\ 3 \end{bmatrix} x=[23] 表示2D平面上的一个点或从原点指向该点的箭头。

  • 矩阵 (Matrix) : A ∈ R m × n \mathbf{A} \in \mathbb{R}^{m \times n} A∈Rm×n。 m m m 行 n n n 列的二维数组,代表从 n n n 维空间到 m m m 维空间的线性变换。

    A i j \mathbf{A}_{ij} Aij 表示矩阵第 i i i 行第 j j j 列的元素。

  • 张量 (Tensor) : X ∈ R n 1 × n 2 × ⋯ × n k \mathcal{X} \in \mathbb{R}^{n_1 \times n_2 \times \cdots \times n_k} X∈Rn1×n2×⋯×nk。多维数组的泛化。

    例如,三阶张量 R H × W × C \mathbb{R}^{H \times W \times C} RH×W×C 可表示一张高度 H H H、宽度 W W W、 C C C 个通道的彩色图像。

符号约定

  • 标量:小写字母 x , y , λ x, y, \lambda x,y,λ
  • 向量:粗体小写字母 x , y , v \mathbf{x}, \mathbf{y}, \mathbf{v} x,y,v
  • 矩阵:粗体大写字母 A , X , W \mathbf{A}, \mathbf{X}, \mathbf{W} A,X,W
  • 张量:花体大写字母 X , Y \mathcal{X}, \mathcal{Y} X,Y

实践注记:稀疏矩阵 (Sparse Matrix)

在机器学习中(如NLP及其词袋模型、推荐系统),矩阵往往极其巨大但绝大多数元素为零。仅存储非零元素(COO, CSR, CSC格式)不仅节省内存,还能通过专门的稀疏矩阵算法将计算复杂度从 O ( n 2 ) O(n^2) O(n2) 降低到 O ( nnz ) O(\text{nnz}) O(nnz)(非零元素个数)。


核心运算

1. 矩阵乘法

对于 A ∈ R m × n \mathbf{A} \in \mathbb{R}^{m \times n} A∈Rm×n 和 B ∈ R n × p \mathbf{B} \in \mathbb{R}^{n \times p} B∈Rn×p,其乘积 C = A B ∈ R m × p \mathbf{C} = \mathbf{A}\mathbf{B} \in \mathbb{R}^{m \times p} C=AB∈Rm×p 定义为:

C i j = ∑ k = 1 n A i k B k j \mathbf{C}{ij} = \sum{k=1}^n \mathbf{A}{ik} \mathbf{B}{kj} Cij=k=1∑nAikBkj

几何意义 :矩阵乘法代表线性变换的复合。先应用 B \mathbf{B} B 变换,再应用 A \mathbf{A} A 变换。

前提条件:前者的列数必须等于后者的行数。

性质

  • 满足结合律: ( A B ) C = A ( B C ) (\mathbf{AB})\mathbf{C} = \mathbf{A}(\mathbf{BC}) (AB)C=A(BC)
  • 一般不满足交换律: A B ≠ B A \mathbf{AB} \neq \mathbf{BA} AB=BA
2. 内积(点积)

对于两个向量 x , y ∈ R n \mathbf{x}, \mathbf{y} \in \mathbb{R}^n x,y∈Rn,其内积定义为:

⟨ x , y ⟩ = x T y = ∑ i = 1 n x i y i \langle \mathbf{x}, \mathbf{y} \rangle = \mathbf{x}^T \mathbf{y} = \sum_{i=1}^n x_i y_i ⟨x,y⟩=xTy=i=1∑nxiyi

几何意义:衡量两个向量的相关性和方向的一致程度。

应用:在机器学习中,内积用于计算相似度、特征加权求和等。

3. 哈达玛积(元素乘积)

对于同型矩阵 A , B ∈ R m × n \mathbf{A}, \mathbf{B} \in \mathbb{R}^{m \times n} A,B∈Rm×n,其哈达玛积定义为:

( A ⊙ B ) i j = A i j B i j (\mathbf{A} \odot \mathbf{B}){ij} = \mathbf{A}{ij} \mathbf{B}_{ij} (A⊙B)ij=AijBij

应用:神经网络中的门控机制(如LSTM、注意力机制)、对角矩阵的简化表示。


转置、逆矩阵与伪逆

转置 (Transpose)

矩阵 A ∈ R m × n \mathbf{A} \in \mathbb{R}^{m \times n} A∈Rm×n 的转置 A T ∈ R n × m \mathbf{A}^T \in \mathbb{R}^{n \times m} AT∈Rn×m 定义为行列互换:

( A T ) i j = A j i (\mathbf{A}^T){ij} = \mathbf{A}{ji} (AT)ij=Aji

性质

  • ( A T ) T = A (\mathbf{A}^T)^T = \mathbf{A} (AT)T=A
  • ( A B ) T = B T A T (\mathbf{AB})^T = \mathbf{B}^T \mathbf{A}^T (AB)T=BTAT
逆矩阵 (Inverse)

对于方阵 A ∈ R n × n \mathbf{A} \in \mathbb{R}^{n \times n} A∈Rn×n,若存在 B \mathbf{B} B 使得:

A B = B A = I \mathbf{A}\mathbf{B} = \mathbf{B}\mathbf{A} = \mathbf{I} AB=BA=I

则称 B \mathbf{B} B 为 A \mathbf{A} A 的逆矩阵,记为 A − 1 \mathbf{A}^{-1} A−1。

存在条件

  • A \mathbf{A} A 必须是方阵
  • A \mathbf{A} A 必须是满秩 的(非奇异, det ⁡ ( A ) ≠ 0 \det(\mathbf{A}) \neq 0 det(A)=0)

性质

  • ( A − 1 ) − 1 = A (\mathbf{A}^{-1})^{-1} = \mathbf{A} (A−1)−1=A
  • ( A B ) − 1 = B − 1 A − 1 (\mathbf{AB})^{-1} = \mathbf{B}^{-1} \mathbf{A}^{-1} (AB)−1=B−1A−1
  • ( A T ) − 1 = ( A − 1 ) T (\mathbf{A}^T)^{-1} = (\mathbf{A}^{-1})^T (AT)−1=(A−1)T
Moore-Penrose 伪逆 (Pseudoinverse)

对于任意矩阵 A ∈ R m × n \mathbf{A} \in \mathbb{R}^{m \times n} A∈Rm×n(可以是非方阵或奇异矩阵),存在唯一的伪逆 A † ∈ R n × m \mathbf{A}^\dagger \in \mathbb{R}^{n \times m} A†∈Rn×m 满足以下四个条件:

  1. A A † A = A \mathbf{A}\mathbf{A}^\dagger\mathbf{A} = \mathbf{A} AA†A=A
  2. A † A A † = A † \mathbf{A}^\dagger\mathbf{A}\mathbf{A}^\dagger = \mathbf{A}^\dagger A†AA†=A†
  3. ( A A † ) T = A A † (\mathbf{A}\mathbf{A}^\dagger)^T = \mathbf{A}\mathbf{A}^\dagger (AA†)T=AA†
  4. ( A † A ) T = A † A (\mathbf{A}^\dagger\mathbf{A})^T = \mathbf{A}^\dagger\mathbf{A} (A†A)T=A†A

计算方法

  • 若 A \mathbf{A} A 列满秩( m ≥ n m \geq n m≥n, rank ( A ) = n \text{rank}(\mathbf{A}) = n rank(A)=n): A † = ( A T A ) − 1 A T \mathbf{A}^\dagger = (\mathbf{A}^T\mathbf{A})^{-1}\mathbf{A}^T A†=(ATA)−1AT
  • 若 A \mathbf{A} A 行满秩( m ≤ n m \leq n m≤n, rank ( A ) = m \text{rank}(\mathbf{A}) = m rank(A)=m): A † = A T ( A A T ) − 1 \mathbf{A}^\dagger = \mathbf{A}^T(\mathbf{A}\mathbf{A}^T)^{-1} A†=AT(AAT)−1
  • 一般情况:通过 SVD 计算(见2.4节)

意义:伪逆解决了线性方程组的广义求解问题:

  • 当 A x = y \mathbf{A}\mathbf{x} = \mathbf{y} Ax=y 无解(超定系统)时, x = A † y \mathbf{x} = \mathbf{A}^\dagger \mathbf{y} x=A†y 提供最小二乘解 (使 ∥ A x − y ∥ 2 2 \|\mathbf{Ax} - \mathbf{y}\|_2^2 ∥Ax−y∥22 最小)
  • 当有无穷多解(欠定系统)时, x = A † y \mathbf{x} = \mathbf{A}^\dagger \mathbf{y} x=A†y 提供最小范数解 (在所有解中 ∥ x ∥ 2 \|\mathbf{x}\|_2 ∥x∥2 最小)

这是处理病态问题、过拟合、欠拟合的核心工具。


迹与行列式

迹 (Trace)

方阵 A ∈ R n × n \mathbf{A} \in \mathbb{R}^{n \times n} A∈Rn×n 的迹定义为对角线元素之和:

tr ( A ) = ∑ i = 1 n A i i \text{tr}(\mathbf{A}) = \sum_{i=1}^n \mathbf{A}_{ii} tr(A)=i=1∑nAii

性质

  • 线性性: tr ( A + B ) = tr ( A ) + tr ( B ) \text{tr}(\mathbf{A} + \mathbf{B}) = \text{tr}(\mathbf{A}) + \text{tr}(\mathbf{B}) tr(A+B)=tr(A)+tr(B)
  • 循环不变性: tr ( A B C ) = tr ( B C A ) = tr ( C A B ) \text{tr}(\mathbf{ABC}) = \text{tr}(\mathbf{BCA}) = \text{tr}(\mathbf{CAB}) tr(ABC)=tr(BCA)=tr(CAB)(这是矩阵求导的重要技巧)
  • tr ( A ) = ∑ i = 1 n λ i \text{tr}(\mathbf{A}) = \sum_{i=1}^n \lambda_i tr(A)=∑i=1nλi(等于所有特征值之和)
行列式 (Determinant)

方阵 A ∈ R n × n \mathbf{A} \in \mathbb{R}^{n \times n} A∈Rn×n 的行列式记为 det ⁡ ( A ) \det(\mathbf{A}) det(A) 或 ∣ A ∣ |\mathbf{A}| ∣A∣。

几何意义:衡量线性变换对体积的缩放比例。

  • 在2D平面, ∣ det ⁡ ( A ) ∣ |\det(\mathbf{A})| ∣det(A)∣ 是矩阵列向量张成的平行四边形的面积
  • 在3D空间, ∣ det ⁡ ( A ) ∣ |\det(\mathbf{A})| ∣det(A)∣ 是列向量张成的平行六面体的体积
  • 若 det ⁡ ( A ) = 0 \det(\mathbf{A}) = 0 det(A)=0,说明变换将空间压缩到更低维度(矩阵不可逆)

性质

  • det ⁡ ( A B ) = det ⁡ ( A ) det ⁡ ( B ) \det(\mathbf{AB}) = \det(\mathbf{A}) \det(\mathbf{B}) det(AB)=det(A)det(B)
  • det ⁡ ( A T ) = det ⁡ ( A ) \det(\mathbf{A}^T) = \det(\mathbf{A}) det(AT)=det(A)
  • det ⁡ ( A − 1 ) = 1 det ⁡ ( A ) \det(\mathbf{A}^{-1}) = \frac{1}{\det(\mathbf{A})} det(A−1)=det(A)1
  • det ⁡ ( c A ) = c n det ⁡ ( A ) \det(c\mathbf{A}) = c^n \det(\mathbf{A}) det(cA)=cndet(A)( n n n 为矩阵阶数)

2.2 向量空间基础

向量空间是线性代数的核心抽象。理解向量空间的结构,是掌握线性变换、矩阵分解和机器学习算法的基础。

线性组合与张成空间

定义

给定向量 v 1 , v 2 , ... , v k ∈ R n \mathbf{v}_1, \mathbf{v}_2, \ldots, \mathbf{v}_k \in \mathbb{R}^n v1,v2,...,vk∈Rn 和标量 c 1 , c 2 , ... , c k ∈ R c_1, c_2, \ldots, c_k \in \mathbb{R} c1,c2,...,ck∈R,称

v = c 1 v 1 + c 2 v 2 + ⋯ + c k v k \mathbf{v} = c_1 \mathbf{v}_1 + c_2 \mathbf{v}_2 + \cdots + c_k \mathbf{v}_k v=c1v1+c2v2+⋯+ckvk

为这些向量的一个线性组合 (Linear Combination)

张成空间 (Span)

向量集合 { v 1 , ... , v k } \{\mathbf{v}_1, \ldots, \mathbf{v}_k\} {v1,...,vk} 的所有线性组合构成的集合称为张成空间

span ( v 1 , ... , v k ) = { c 1 v 1 + ⋯ + c k v k ∣ c i ∈ R } \text{span}(\mathbf{v}_1, \ldots, \mathbf{v}_k) = \{c_1 \mathbf{v}_1 + \cdots + c_k \mathbf{v}_k \mid c_i \in \mathbb{R}\} span(v1,...,vk)={c1v1+⋯+ckvk∣ci∈R}

几何直觉

  • 2D平面中,一个非零向量张成一条通过原点的直线
  • 两个不共线的向量张成整个2D平面
  • 三个不共面的向量张成整个3D空间

意义 :张成空间刻画了"用这些向量能表示的所有位置"。在机器学习中,特征矩阵 A \mathbf{A} A 的列向量张成的空间,就是所有可能的预测值所在的空间。

例子

例1 :在 R 3 \mathbb{R}^3 R3 中,向量 v 1 = [ 1 0 0 ] \mathbf{v}_1 = \begin{bmatrix} 1 \\ 0 \\ 0 \end{bmatrix} v1= 100 和 v 2 = [ 0 1 0 ] \mathbf{v}_2 = \begin{bmatrix} 0 \\ 1 \\ 0 \end{bmatrix} v2= 010 张成的是 x y xy xy 平面(所有形如 [ a b 0 ] \begin{bmatrix} a \\ b \\ 0 \end{bmatrix} ab0 的向量)。

例2 :在 R 2 \mathbb{R}^2 R2 中,向量 v 1 = [ 1 2 ] \mathbf{v}_1 = \begin{bmatrix} 1 \\ 2 \end{bmatrix} v1=[12] 和 v 2 = [ 2 4 ] \mathbf{v}_2 = \begin{bmatrix} 2 \\ 4 \end{bmatrix} v2=[24] 张成的是一条直线(因为 v 2 = 2 v 1 \mathbf{v}_2 = 2\mathbf{v}_1 v2=2v1,它们共线)。任何线性组合 c 1 v 1 + c 2 v 2 = ( c 1 + 2 c 2 ) v 1 c_1\mathbf{v}_1 + c_2\mathbf{v}_2 = (c_1 + 2c_2)\mathbf{v}_1 c1v1+c2v2=(c1+2c2)v1 都在同一直线上。

机器学习直觉:如果特征矩阵的某些列是线性相关的(如身高和体重高度相关),它们张成的空间维度小于列数,存在特征冗余。


线性相关与线性无关

定义

向量组 { v 1 , ... , v k } \{\mathbf{v}_1, \ldots, \mathbf{v}_k\} {v1,...,vk} 称为线性相关 (Linearly Dependent) ,如果存在不全为零的标量 c 1 , ... , c k c_1, \ldots, c_k c1,...,ck,使得:

c 1 v 1 + ⋯ + c k v k = 0 c_1 \mathbf{v}_1 + \cdots + c_k \mathbf{v}_k = \mathbf{0} c1v1+⋯+ckvk=0

否则称为线性无关 (Linearly Independent) (即只有当 c 1 = ⋯ = c k = 0 c_1 = \cdots = c_k = 0 c1=⋯=ck=0 时等式才成立)。

几何直觉

  • 线性相关:某个向量可以由其他向量线性表出,是"冗余"的
  • 线性无关:每个向量都提供新的方向,无法被其他向量代替

例子

  • v 1 = [ 1 0 ] \mathbf{v}_1 = \begin{bmatrix} 1 \\ 0 \end{bmatrix} v1=[10], v 2 = [ 2 0 ] \mathbf{v}_2 = \begin{bmatrix} 2 \\ 0 \end{bmatrix} v2=[20]:线性相关( v 2 = 2 v 1 \mathbf{v}_2 = 2\mathbf{v}_1 v2=2v1)
  • v 1 = [ 1 0 ] \mathbf{v}_1 = \begin{bmatrix} 1 \\ 0 \end{bmatrix} v1=[10], v 2 = [ 0 1 ] \mathbf{v}_2 = \begin{bmatrix} 0 \\ 1 \end{bmatrix} v2=[01]:线性无关

判定方法

  • 将向量作为列组成矩阵 A = [ v 1 ⋯ v k ] \mathbf{A} = [\mathbf{v}_1 \cdots \mathbf{v}_k] A=[v1⋯vk]
  • 向量组线性无关 ⇔ \Leftrightarrow ⇔ A \mathbf{A} A 的列满秩 ⇔ \Leftrightarrow ⇔ rank ( A ) = k \text{rank}(\mathbf{A}) = k rank(A)=k

基与维度

基 (Basis)

向量空间 V V V 的一组向量 { b 1 , ... , b n } \{\mathbf{b}_1, \ldots, \mathbf{b}_n\} {b1,...,bn} 称为 V V V 的一组,如果:

  1. 它们线性无关
  2. 它们张成整个空间 V V V

性质

  • 空间中的任意向量都可以唯一地表示为基向量的线性组合
  • 同一空间可以有多组不同的基

标准基 : R n \mathbb{R}^n Rn 的标准基是 { e 1 , ... , e n } \{\mathbf{e}_1, \ldots, \mathbf{e}_n\} {e1,...,en},其中 e i \mathbf{e}_i ei 的第 i i i 个分量为1,其余为0。

维度 (Dimension)

向量空间的维度定义为其任意一组基所包含的向量个数(可以证明所有基的向量个数相同)。

记为 dim ⁡ ( V ) \dim(V) dim(V)。

几何直觉

  • 直线是1维空间(需要1个向量作为基)
  • 平面是2维空间(需要2个向量作为基)
  • 普通3D空间是3维空间

意义:维度刻画了空间的"自由度"。在机器学习中,特征空间的维度决定了模型的表达能力和所需的数据量。


秩与零化度定理

矩阵的秩 (Rank)

矩阵 A ∈ R m × n \mathbf{A} \in \mathbb{R}^{m \times n} A∈Rm×n 的定义为其线性无关的列向量的最大个数(等价地,也等于线性无关的行向量的最大个数)。

记为 rank ( A ) \text{rank}(\mathbf{A}) rank(A)。

性质

  • rank ( A ) ≤ min ⁡ ( m , n ) \text{rank}(\mathbf{A}) \leq \min(m, n) rank(A)≤min(m,n)
  • rank ( A ) = rank ( A T ) \text{rank}(\mathbf{A}) = \text{rank}(\mathbf{A}^T) rank(A)=rank(AT)(列秩等于行秩)
  • rank ( A B ) ≤ min ⁡ ( rank ( A ) , rank ( B ) ) \text{rank}(\mathbf{AB}) \leq \min(\text{rank}(\mathbf{A}), \text{rank}(\mathbf{B})) rank(AB)≤min(rank(A),rank(B))
  • 若 A \mathbf{A} A 可逆,则 rank ( A ) = n \text{rank}(\mathbf{A}) = n rank(A)=n(满秩)

几何意义 :秩刻画了线性变换的"输出维度"。 A \mathbf{A} A 的秩等于其列空间的维度。

零空间 (Null Space)

矩阵 A ∈ R m × n \mathbf{A} \in \mathbb{R}^{m \times n} A∈Rm×n 的零空间(或核)定义为:

N ( A ) = { x ∈ R n ∣ A x = 0 } \mathcal{N}(\mathbf{A}) = \{\mathbf{x} \in \mathbb{R}^n \mid \mathbf{A}\mathbf{x} = \mathbf{0}\} N(A)={x∈Rn∣Ax=0}

即所有被 A \mathbf{A} A 映射到零向量的向量的集合。

几何直觉:零空间是被线性变换"压缩"到原点的方向。

例子:对于投影矩阵,零空间就是被投影"消灭"的方向(垂直于投影平面的方向)。

零化度 (Nullity)

零空间的维度称为零化度

nullity ( A ) = dim ⁡ ( N ( A ) ) \text{nullity}(\mathbf{A}) = \dim(\mathcal{N}(\mathbf{A})) nullity(A)=dim(N(A))

秩-零化度定理 (Rank-Nullity Theorem)

这是线性代数的基本定理之一:

rank ( A ) + nullity ( A ) = n \text{rank}(\mathbf{A}) + \text{nullity}(\mathbf{A}) = n rank(A)+nullity(A)=n

其中 A ∈ R m × n \mathbf{A} \in \mathbb{R}^{m \times n} A∈Rm×n。

意义

  • 向量空间被分解为两部分:一部分被变换保留(列空间),另一部分被压缩到零(零空间)
  • 在机器学习中,如果特征矩阵不是列满秩,说明存在冗余特征(零空间非空),可能导致参数不唯一

例子 :对于 3 × 5 3 \times 5 3×5 矩阵 A \mathbf{A} A,若 rank ( A ) = 3 \text{rank}(\mathbf{A}) = 3 rank(A)=3,则 nullity ( A ) = 5 − 3 = 2 \text{nullity}(\mathbf{A}) = 5 - 3 = 2 nullity(A)=5−3=2。这意味着存在一个2维的向量子空间被映射到零。

具体例子:考虑矩阵

A = [ 1 0 1 0 1 1 0 0 0 ] \mathbf{A} = \begin{bmatrix} 1 & 0 & 1 \\ 0 & 1 & 1 \\ 0 & 0 & 0 \end{bmatrix} A= 100010110

  • :前两列线性无关,第三列是前两列之和,故 rank ( A ) = 2 \text{rank}(\mathbf{A}) = 2 rank(A)=2

  • 零空间 :求解 A x = 0 \mathbf{A}\mathbf{x} = \mathbf{0} Ax=0:

    1 0 1 0 1 1 0 0 0 \] \[ x 1 x 2 x 3 \] = 0    ⟹    x 1 = − x 3 ,   x 2 = − x 3 \\begin{bmatrix} 1 \& 0 \& 1 \\\\ 0 \& 1 \& 1 \\\\ 0 \& 0 \& 0 \\end{bmatrix} \\begin{bmatrix} x_1 \\\\ x_2 \\\\ x_3 \\end{bmatrix} = \\mathbf{0} \\implies x_1 = -x_3, \\, x_2 = -x_3 100010110 x1x2x3 =0⟹x1=−x3,x2=−x3 零空间为 N ( A ) = span ( \[ − 1 − 1 1 \] ) \\mathcal{N}(\\mathbf{A}) = \\text{span}\\left(\\begin{bmatrix} -1 \\\\ -1 \\\\ 1 \\end{bmatrix}\\right) N(A)=span −1−11 ,维度为1


四个基本子空间

对于矩阵 A ∈ R m × n \mathbf{A} \in \mathbb{R}^{m \times n} A∈Rm×n,存在四个基本子空间,它们完整刻画了矩阵的结构。

1. 列空间 (Column Space)

C ( A ) = { A x ∣ x ∈ R n } ⊆ R m \mathcal{C}(\mathbf{A}) = \{\mathbf{A}\mathbf{x} \mid \mathbf{x} \in \mathbb{R}^n\} \subseteq \mathbb{R}^m C(A)={Ax∣x∈Rn}⊆Rm

即矩阵所有列向量的张成空间。

  • 维度 : dim ⁡ ( C ( A ) ) = rank ( A ) \dim(\mathcal{C}(\mathbf{A})) = \text{rank}(\mathbf{A}) dim(C(A))=rank(A)
  • 意义 : A x = b \mathbf{A}\mathbf{x} = \mathbf{b} Ax=b 有解 ⇔ \Leftrightarrow ⇔ b ∈ C ( A ) \mathbf{b} \in \mathcal{C}(\mathbf{A}) b∈C(A)
2. 零空间 (Null Space)

N ( A ) = { x ∈ R n ∣ A x = 0 } ⊆ R n \mathcal{N}(\mathbf{A}) = \{\mathbf{x} \in \mathbb{R}^n \mid \mathbf{A}\mathbf{x} = \mathbf{0}\} \subseteq \mathbb{R}^n N(A)={x∈Rn∣Ax=0}⊆Rn

  • 维度 : dim ⁡ ( N ( A ) ) = n − rank ( A ) \dim(\mathcal{N}(\mathbf{A})) = n - \text{rank}(\mathbf{A}) dim(N(A))=n−rank(A)
  • 意义 :齐次方程 A x = 0 \mathbf{A}\mathbf{x} = \mathbf{0} Ax=0 的所有解
3. 行空间 (Row Space)

C ( A T ) = { A T y ∣ y ∈ R m } ⊆ R n \mathcal{C}(\mathbf{A}^T) = \{\mathbf{A}^T\mathbf{y} \mid \mathbf{y} \in \mathbb{R}^m\} \subseteq \mathbb{R}^n C(AT)={ATy∣y∈Rm}⊆Rn

即矩阵所有行向量的张成空间(等于 A T \mathbf{A}^T AT 的列空间)。

  • 维度 : dim ⁡ ( C ( A T ) ) = rank ( A ) \dim(\mathcal{C}(\mathbf{A}^T)) = \text{rank}(\mathbf{A}) dim(C(AT))=rank(A)
4. 左零空间 (Left Null Space)

N ( A T ) = { y ∈ R m ∣ A T y = 0 } ⊆ R m \mathcal{N}(\mathbf{A}^T) = \{\mathbf{y} \in \mathbb{R}^m \mid \mathbf{A}^T\mathbf{y} = \mathbf{0}\} \subseteq \mathbb{R}^m N(AT)={y∈Rm∣ATy=0}⊆Rm

等价于 { y ∈ R m ∣ y T A = 0 T } \{\mathbf{y} \in \mathbb{R}^m \mid \mathbf{y}^T\mathbf{A} = \mathbf{0}^T\} {y∈Rm∣yTA=0T},故称左零空间。

  • 维度 : dim ⁡ ( N ( A T ) ) = m − rank ( A ) \dim(\mathcal{N}(\mathbf{A}^T)) = m - \text{rank}(\mathbf{A}) dim(N(AT))=m−rank(A)
四个子空间的正交关系

这是线性代数的核心结构定理:

  1. 行空间与零空间正交 : C ( A T ) ⊥ N ( A ) \mathcal{C}(\mathbf{A}^T) \perp \mathcal{N}(\mathbf{A}) C(AT)⊥N(A)

    它们分别是 R n \mathbb{R}^n Rn 的两个正交补空间, R n = C ( A T ) ⊕ N ( A ) \mathbb{R}^n = \mathcal{C}(\mathbf{A}^T) \oplus \mathcal{N}(\mathbf{A}) Rn=C(AT)⊕N(A)

  2. 列空间与左零空间正交 : C ( A ) ⊥ N ( A T ) \mathcal{C}(\mathbf{A}) \perp \mathcal{N}(\mathbf{A}^T) C(A)⊥N(AT)

    它们分别是 R m \mathbb{R}^m Rm 的两个正交补空间, R m = C ( A ) ⊕ N ( A T ) \mathbb{R}^m = \mathcal{C}(\mathbf{A}) \oplus \mathcal{N}(\mathbf{A}^T) Rm=C(A)⊕N(AT)

几何直觉

  • 任何向量 x ∈ R n \mathbf{x} \in \mathbb{R}^n x∈Rn 都可以唯一分解为 x = x r + x n \mathbf{x} = \mathbf{x}_r + \mathbf{x}_n x=xr+xn,其中 x r ∈ C ( A T ) \mathbf{x}_r \in \mathcal{C}(\mathbf{A}^T) xr∈C(AT), x n ∈ N ( A ) \mathbf{x}_n \in \mathcal{N}(\mathbf{A}) xn∈N(A)
  • A \mathbf{A} A 只作用于 x r \mathbf{x}_r xr(行空间分量),而将 x n \mathbf{x}_n xn(零空间分量)映射到零

在机器学习中的意义

  • 列空间是所有可能的预测值
  • 零空间对应特征冗余(不影响输出的特征组合)
  • 理解这四个子空间有助于分析模型的可解释性、参数唯一性和数值稳定性

2.3 几何视角:度量与正交

线性代数不仅仅是符号操作,更重要的是几何直觉。本节从度量(距离、角度)和正交(垂直)的角度理解向量和矩阵。

范数:从大小到稀疏性

范数 (Norm) 是将向量映射为非负实数的函数,衡量向量的"大小"。一个函数 ∥ ⋅ ∥ \|\cdot\| ∥⋅∥ 是范数,必须满足:

  1. 非负性: ∥ x ∥ ≥ 0 \|\mathbf{x}\| \geq 0 ∥x∥≥0,且 ∥ x ∥ = 0 ⇔ x = 0 \|\mathbf{x}\| = 0 \Leftrightarrow \mathbf{x} = \mathbf{0} ∥x∥=0⇔x=0
  2. 齐次性: ∥ c x ∥ = ∣ c ∣ ∥ x ∥ \|c\mathbf{x}\| = |c| \|\mathbf{x}\| ∥cx∥=∣c∣∥x∥
  3. 三角不等式: ∥ x + y ∥ ≤ ∥ x ∥ + ∥ y ∥ \|\mathbf{x} + \mathbf{y}\| \leq \|\mathbf{x}\| + \|\mathbf{y}\| ∥x+y∥≤∥x∥+∥y∥
1. L2 范数(欧几里得范数)

∥ x ∥ 2 = x 1 2 + x 2 2 + ⋯ + x n 2 = x T x \|\mathbf{x}\|_2 = \sqrt{x_1^2 + x_2^2 + \cdots + x_n^2} = \sqrt{\mathbf{x}^T\mathbf{x}} ∥x∥2=x12+x22+⋯+xn2 =xTx

几何意义:向量的欧氏长度,从原点到该点的直线距离。

性质

  • 平滑可微(在 x ≠ 0 \mathbf{x} \neq \mathbf{0} x=0 时)
  • 满足柯西-施瓦茨不等式: ∣ x T y ∣ ≤ ∥ x ∥ 2 ∥ y ∥ 2 |\mathbf{x}^T\mathbf{y}| \leq \|\mathbf{x}\|_2 \|\mathbf{y}\|_2 ∣xTy∣≤∥x∥2∥y∥2

应用:最常用的范数,岭回归(L2正则化)通过最小化参数的L2范数防止过拟合。

2. L1 范数(曼哈顿范数)

∥ x ∥ 1 = ∣ x 1 ∣ + ∣ x 2 ∣ + ⋯ + ∣ x n ∣ \|\mathbf{x}\|_1 = |x_1| + |x_2| + \cdots + |x_n| ∥x∥1=∣x1∣+∣x2∣+⋯+∣xn∣

几何意义:各坐标分量绝对值之和,类似于城市街区的曼哈顿距离(只能沿坐标轴方向移动)。

关键性质稀疏诱导性

  • L1范数的等高线在坐标轴上有"尖角"
  • 在优化中,约束或惩罚项使用L1范数时,解倾向于落在坐标轴上(部分分量为零)
  • 这是Lasso回归实现特征选择的数学原理

应用:Lasso回归(L1正则化)用于特征选择,压缩感知。

3. L∞ 范数(最大范数)

∥ x ∥ ∞ = max ⁡ i ∣ x i ∣ \|\mathbf{x}\|_\infty = \max_i |x_i| ∥x∥∞=imax∣xi∣

几何意义:向量中绝对值最大的分量。

应用:鲁棒优化、对抗训练中关注最坏情况。

4. Lp 范数的一般形式

∥ x ∥ p = ( ∑ i = 1 n ∣ x i ∣ p ) 1 / p \|\mathbf{x}\|p = \left(\sum{i=1}^n |x_i|^p\right)^{1/p} ∥x∥p=(i=1∑n∣xi∣p)1/p

当 p → ∞ p \to \infty p→∞ 时, ∥ x ∥ p → ∥ x ∥ ∞ \|\mathbf{x}\|p \to \|\mathbf{x}\|\infty ∥x∥p→∥x∥∞。

Frobenius 范数(矩阵范数)

对于矩阵 A ∈ R m × n \mathbf{A} \in \mathbb{R}^{m \times n} A∈Rm×n:

∥ A ∥ F = ∑ i = 1 m ∑ j = 1 n A i j 2 = tr ( A T A ) \|\mathbf{A}\|F = \sqrt{\sum{i=1}^m \sum_{j=1}^n \mathbf{A}_{ij}^2} = \sqrt{\text{tr}(\mathbf{A}^T\mathbf{A})} ∥A∥F=i=1∑mj=1∑nAij2 =tr(ATA)

相当于将矩阵视为 m n mn mn 维向量的L2范数。

应用:矩阵低秩近似的误差度量(SVD中的Eckart-Young定理)。


内积与角度

内积的几何意义

对于 R n \mathbb{R}^n Rn 中的向量 x , y \mathbf{x}, \mathbf{y} x,y,其内积与角度的关系为:

x T y = ∥ x ∥ 2 ∥ y ∥ 2 cos ⁡ θ \mathbf{x}^T \mathbf{y} = \|\mathbf{x}\|_2 \|\mathbf{y}\|_2 \cos \theta xTy=∥x∥2∥y∥2cosθ

其中 θ \theta θ 是两向量的夹角( 0 ≤ θ ≤ π 0 \leq \theta \leq \pi 0≤θ≤π)。

推论

  • θ = 0 \theta = 0 θ=0(同向): x T y = ∥ x ∥ 2 ∥ y ∥ 2 \mathbf{x}^T \mathbf{y} = \|\mathbf{x}\|_2 \|\mathbf{y}\|_2 xTy=∥x∥2∥y∥2(内积最大)
  • θ = π / 2 \theta = \pi/2 θ=π/2(垂直): x T y = 0 \mathbf{x}^T \mathbf{y} = 0 xTy=0
  • θ = π \theta = \pi θ=π(反向): x T y = − ∥ x ∥ 2 ∥ y ∥ 2 \mathbf{x}^T \mathbf{y} = -\|\mathbf{x}\|_2 \|\mathbf{y}\|_2 xTy=−∥x∥2∥y∥2(内积最小)
余弦相似度

当向量归一化后( ∥ x ∥ 2 = ∥ y ∥ 2 = 1 \|\mathbf{x}\|_2 = \|\mathbf{y}\|_2 = 1 ∥x∥2=∥y∥2=1),内积即为余弦相似度

similarity ( x , y ) = cos ⁡ θ = x T y \text{similarity}(\mathbf{x}, \mathbf{y}) = \cos \theta = \mathbf{x}^T \mathbf{y} similarity(x,y)=cosθ=xTy

应用

  • 文本挖掘中的文档相似度计算
  • 推荐系统中的用户/物品相似度
  • 神经网络中的注意力机制

正交与正交矩阵

正交向量

两个向量 x , y \mathbf{x}, \mathbf{y} x,y 称为正交 (Orthogonal),如果:

x T y = 0 \mathbf{x}^T \mathbf{y} = 0 xTy=0

几何意义:两向量垂直(夹角90度)。

标准正交向量组

向量组 { q 1 , ... , q k } \{\mathbf{q}_1, \ldots, \mathbf{q}_k\} {q1,...,qk} 称为标准正交 (Orthonormal),如果:

q i T q j = { 1 if i = j 0 if i ≠ j \mathbf{q}_i^T \mathbf{q}_j = \begin{cases} 1 & \text{if } i = j \\ 0 & \text{if } i \neq j \end{cases} qiTqj={10if i=jif i=j

即每个向量长度为1,且两两正交。

矩阵形式 :若将标准正交向量组排列为矩阵 Q = [ q 1 ⋯ q k ] \mathbf{Q} = [\mathbf{q}_1 \cdots \mathbf{q}_k] Q=[q1⋯qk],则:

Q T Q = I k \mathbf{Q}^T\mathbf{Q} = \mathbf{I}_k QTQ=Ik

正交矩阵 (Orthogonal Matrix)

方阵 Q ∈ R n × n \mathbf{Q} \in \mathbb{R}^{n \times n} Q∈Rn×n 称为正交矩阵,如果:

Q T Q = Q Q T = I \mathbf{Q}^T\mathbf{Q} = \mathbf{Q}\mathbf{Q}^T = \mathbf{I} QTQ=QQT=I

等价地, Q T = Q − 1 \mathbf{Q}^T = \mathbf{Q}^{-1} QT=Q−1。

性质

  1. Q \mathbf{Q} Q 的列向量构成 R n \mathbb{R}^n Rn 的一组标准正交基
  2. Q \mathbf{Q} Q 的行向量也构成标准正交基
  3. det ⁡ ( Q ) = ± 1 \det(\mathbf{Q}) = \pm 1 det(Q)=±1
  4. 保持长度 : ∥ Q x ∥ 2 = ∥ x ∥ 2 \|\mathbf{Q}\mathbf{x}\|_2 = \|\mathbf{x}\|_2 ∥Qx∥2=∥x∥2
  5. 保持内积 : ( Q x ) T ( Q y ) = x T y (\mathbf{Q}\mathbf{x})^T(\mathbf{Q}\mathbf{y}) = \mathbf{x}^T\mathbf{y} (Qx)T(Qy)=xTy
  6. 保持角度:正交变换不改变向量间的夹角

几何意义 :正交矩阵代表旋转反射变换(或两者的组合)。它们是保持形状和大小、仅改变方向的"刚体变换"。

例子

  • 2D旋转矩阵: Q = [ cos ⁡ θ − sin ⁡ θ sin ⁡ θ cos ⁡ θ ] \mathbf{Q} = \begin{bmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{bmatrix} Q=[cosθsinθ−sinθcosθ]
  • 镜像反射: Q = [ 1 0 0 − 1 ] \mathbf{Q} = \begin{bmatrix} 1 & 0 \\ 0 & -1 \end{bmatrix} Q=[100−1]

在机器学习中的意义

  • SVD和特征值分解中的 U , V , Q \mathbf{U}, \mathbf{V}, \mathbf{Q} U,V,Q 都是正交矩阵
  • 正交变换保持数据的几何结构,不会引入数值误差的放大
  • PCA中的主成分方向构成正交基

正交投影:完整推导

正交投影是线性代数中最重要的几何概念之一,也是线性回归、最小二乘法、PCA等算法的数学基础。

问题设定

给定向量 y ∈ R m \mathbf{y} \in \mathbb{R}^m y∈Rm 和子空间 S ⊆ R m \mathcal{S} \subseteq \mathbb{R}^m S⊆Rm(例如由矩阵 A ∈ R m × n \mathbf{A} \in \mathbb{R}^{m \times n} A∈Rm×n 的列向量张成),求 S \mathcal{S} S 中距离 y \mathbf{y} y 最近的向量 y ^ \hat{\mathbf{y}} y^。

几何直觉

在2D平面上,向量 y \mathbf{y} y 在直线 S \mathcal{S} S 上的投影,就是从 y \mathbf{y} y 的端点向直线作垂线,垂足对应的向量就是投影 y ^ \hat{\mathbf{y}} y^。投影是直线上距离 y \mathbf{y} y 最近的点。

关键观察:误差向量 e = y − y ^ \mathbf{e} = \mathbf{y} - \hat{\mathbf{y}} e=y−y^ 必定垂直于 子空间 S \mathcal{S} S。

数学推导

设子空间 S = C ( A ) \mathcal{S} = \mathcal{C}(\mathbf{A}) S=C(A)( A ∈ R m × n \mathbf{A} \in \mathbb{R}^{m \times n} A∈Rm×n 列满秩),我们寻找 x ∈ R n \mathbf{x} \in \mathbb{R}^n x∈Rn 使得:

y ^ = A x \hat{\mathbf{y}} = \mathbf{A}\mathbf{x} y^=Ax

关键条件 :误差向量 e = y − A x \mathbf{e} = \mathbf{y} - \mathbf{A}\mathbf{x} e=y−Ax 垂直于 C ( A ) \mathcal{C}(\mathbf{A}) C(A) 中的所有向量。

即对于 A \mathbf{A} A 的每一列 a i \mathbf{a}_i ai,都有:

a i T ( y − A x ) = 0 \mathbf{a}_i^T (\mathbf{y} - \mathbf{A}\mathbf{x}) = 0 aiT(y−Ax)=0

写成矩阵形式:

A T ( y − A x ) = 0 \mathbf{A}^T (\mathbf{y} - \mathbf{A}\mathbf{x}) = \mathbf{0} AT(y−Ax)=0

展开得到正规方程 (Normal Equation)

A T A x = A T y \mathbf{A}^T \mathbf{A} \mathbf{x} = \mathbf{A}^T \mathbf{y} ATAx=ATy

当 A \mathbf{A} A 列满秩时, A T A \mathbf{A}^T\mathbf{A} ATA 可逆,解为:

x = ( A T A ) − 1 A T y \mathbf{x} = (\mathbf{A}^T\mathbf{A})^{-1} \mathbf{A}^T \mathbf{y} x=(ATA)−1ATy

投影向量为:

y ^ = A x = A ( A T A ) − 1 A T y \hat{\mathbf{y}} = \mathbf{A}\mathbf{x} = \mathbf{A}(\mathbf{A}^T\mathbf{A})^{-1}\mathbf{A}^T \mathbf{y} y^=Ax=A(ATA)−1ATy

投影矩阵

定义投影矩阵 (Projection Matrix)

P = A ( A T A ) − 1 A T \mathbf{P} = \mathbf{A}(\mathbf{A}^T\mathbf{A})^{-1}\mathbf{A}^T P=A(ATA)−1AT

则投影可以简写为:

y ^ = P y \hat{\mathbf{y}} = \mathbf{P}\mathbf{y} y^=Py

投影矩阵的性质

  1. 对称性 : P T = P \mathbf{P}^T = \mathbf{P} PT=P
  2. 幂等性 : P 2 = P \mathbf{P}^2 = \mathbf{P} P2=P(投影两次等于投影一次)
  3. : rank ( P ) = rank ( A ) = n \text{rank}(\mathbf{P}) = \text{rank}(\mathbf{A}) = n rank(P)=rank(A)=n
  4. 特征值 :只有0和1(维度为 n n n 的特征值1, m − n m-n m−n 个特征值0)
误差向量

误差向量为:

e = y − y ^ = y − P y = ( I − P ) y \mathbf{e} = \mathbf{y} - \hat{\mathbf{y}} = \mathbf{y} - \mathbf{P}\mathbf{y} = (\mathbf{I} - \mathbf{P})\mathbf{y} e=y−y^=y−Py=(I−P)y

I − P \mathbf{I} - \mathbf{P} I−P 是正交补投影矩阵 ,将 y \mathbf{y} y 投影到 C ( A ) \mathcal{C}(\mathbf{A}) C(A) 的正交补空间 N ( A T ) \mathcal{N}(\mathbf{A}^T) N(AT)。

最小二乘解释

最小化误差的平方和:

min ⁡ x ∥ y − A x ∥ 2 2 \min_{\mathbf{x}} \|\mathbf{y} - \mathbf{A}\mathbf{x}\|_2^2 xmin∥y−Ax∥22

对 x \mathbf{x} x 求导并令其为零:

∂ ∂ x ∥ y − A x ∥ 2 2 = − 2 A T ( y − A x ) = 0 \frac{\partial}{\partial \mathbf{x}} \|\mathbf{y} - \mathbf{A}\mathbf{x}\|_2^2 = -2\mathbf{A}^T(\mathbf{y} - \mathbf{A}\mathbf{x}) = \mathbf{0} ∂x∂∥y−Ax∥22=−2AT(y−Ax)=0

得到同样的正规方程 A T A x = A T y \mathbf{A}^T\mathbf{A}\mathbf{x} = \mathbf{A}^T\mathbf{y} ATAx=ATy。

结论:正交投影给出最小二乘问题的解。

在线性回归中的应用

线性回归模型 y = X β + ϵ \mathbf{y} = \mathbf{X}\boldsymbol{\beta} + \boldsymbol{\epsilon} y=Xβ+ϵ 的目标是找到参数 β \boldsymbol{\beta} β 使得预测值 y ^ = X β \hat{\mathbf{y}} = \mathbf{X}\boldsymbol{\beta} y^=Xβ 最接近真实值 y \mathbf{y} y。

这正是 y \mathbf{y} y 在列空间 C ( X ) \mathcal{C}(\mathbf{X}) C(X) 上的正交投影问题,解为:

β ^ = ( X T X ) − 1 X T y \hat{\boldsymbol{\beta}} = (\mathbf{X}^T\mathbf{X})^{-1}\mathbf{X}^T\mathbf{y} β^=(XTX)−1XTy

预测值为:

y ^ = X β ^ = X ( X T X ) − 1 X T y \hat{\mathbf{y}} = \mathbf{X}\hat{\boldsymbol{\beta}} = \mathbf{X}(\mathbf{X}^T\mathbf{X})^{-1}\mathbf{X}^T\mathbf{y} y^=Xβ^=X(XTX)−1XTy

残差 e = y − y ^ \mathbf{e} = \mathbf{y} - \hat{\mathbf{y}} e=y−y^ 垂直于特征空间。

几何图景

  • 特征矩阵 X \mathbf{X} X 的列向量张成一个子空间(特征空间)
  • 真实标签 y \mathbf{y} y 通常不在这个子空间内(否则模型可以完美拟合)
  • 最优预测 y ^ \hat{\mathbf{y}} y^ 是 y \mathbf{y} y 在特征空间上的正交投影
  • 残差向量垂直于特征空间,代表"无法用当前特征解释的部分"
Gram-Schmidt 正交化

给定一组线性无关的向量 { a 1 , ... , a n } \{\mathbf{a}_1, \ldots, \mathbf{a}_n\} {a1,...,an},Gram-Schmidt 算法将其转化为一组标准正交向量 { q 1 , ... , q n } \{\mathbf{q}_1, \ldots, \mathbf{q}_n\} {q1,...,qn}。

算法步骤

  1. 第一个向量标准化
    q 1 = a 1 ∥ a 1 ∥ 2 \mathbf{q}_1 = \frac{\mathbf{a}_1}{\|\mathbf{a}_1\|_2} q1=∥a1∥2a1

  2. 对于第 k k k 个向量 ( k = 2 , ... , n k = 2, \ldots, n k=2,...,n):

    • 正交化 :从 a k \mathbf{a}_k ak 中减去其在已有正交向量上的投影
      v k = a k − ∑ j = 1 k − 1 ( q j T a k ) q j \mathbf{v}_k = \mathbf{a}k - \sum{j=1}^{k-1} (\mathbf{q}_j^T \mathbf{a}_k) \mathbf{q}_j vk=ak−j=1∑k−1(qjTak)qj

    • 标准化
      q k = v k ∥ v k ∥ 2 \mathbf{q}_k = \frac{\mathbf{v}_k}{\|\mathbf{v}_k\|_2} qk=∥vk∥2vk

几何直觉

  • a k \mathbf{a}k ak 在 span ( q 1 , ... , q k − 1 ) \text{span}(\mathbf{q}1, \ldots, \mathbf{q}{k-1}) span(q1,...,qk−1) 上的投影为 ∑ j = 1 k − 1 ( q j T a k ) q j \sum{j=1}^{k-1} (\mathbf{q}_j^T \mathbf{a}_k) \mathbf{q}_j ∑j=1k−1(qjTak)qj
  • v k \mathbf{v}_k vk 是 a k \mathbf{a}_k ak 的"新方向"部分(垂直于已有的正交基)
  • 标准化后得到单位向量 q k \mathbf{q}_k qk

例子 :在 R 2 \mathbb{R}^2 R2 中,给定 a 1 = [ 3 4 ] \mathbf{a}_1 = \begin{bmatrix} 3 \\ 4 \end{bmatrix} a1=[34], a 2 = [ 1 1 ] \mathbf{a}_2 = \begin{bmatrix} 1 \\ 1 \end{bmatrix} a2=[11]

  1. q 1 = 1 5 [ 3 4 ] \mathbf{q}_1 = \frac{1}{5}\begin{bmatrix} 3 \\ 4 \end{bmatrix} q1=51[34]

  2. v 2 = a 2 − ( q 1 T a 2 ) q 1 = [ 1 1 ] − 7 5 ⋅ 1 5 [ 3 4 ] = [ 4 / 25 − 3 / 25 ] \mathbf{v}_2 = \mathbf{a}_2 - (\mathbf{q}_1^T \mathbf{a}_2) \mathbf{q}_1 = \begin{bmatrix} 1 \\ 1 \end{bmatrix} - \frac{7}{5} \cdot \frac{1}{5}\begin{bmatrix} 3 \\ 4 \end{bmatrix} = \begin{bmatrix} 4/25 \\ -3/25 \end{bmatrix} v2=a2−(q1Ta2)q1=[11]−57⋅51[34]=[4/25−3/25]

  3. q 2 = 1 5 [ 4 − 3 ] \mathbf{q}_2 = \frac{1}{5}\begin{bmatrix} 4 \\ -3 \end{bmatrix} q2=51[4−3]

验证: q 1 T q 2 = 0 \mathbf{q}_1^T \mathbf{q}_2 = 0 q1Tq2=0, ∥ q 1 ∥ 2 = ∥ q 2 ∥ 2 = 1 \|\mathbf{q}_1\|_2 = \|\mathbf{q}_2\|_2 = 1 ∥q1∥2=∥q2∥2=1。

数值稳定性

  • 经典Gram-Schmidt算法数值不稳定(舍入误差累积)
  • 修正Gram-Schmidt (MGS) 改变投影顺序,更稳定
  • 实践中更常用 Householder 反射Givens 旋转 进行正交化(QR分解的基础)

应用

  • QR 分解的构造性算法
  • 计算正交基和正交投影
  • 数值线性代数中的预处理
相关推荐
暴躁小师兄数据学院5 小时前
【WEB3.0零基础转行笔记】编程语言篇-第一讲:Go语言基础及环节搭建
笔记·golang·web3·区块链
(; ̄ェ ̄)。15 小时前
机器学习入门(十五)集成学习,Bagging,Boosting,Voting,Stacking,随机森林,Adaboost
人工智能·机器学习·集成学习
春日见15 小时前
如何避免代码冲突,拉取分支
linux·人工智能·算法·机器学习·自动驾驶
Keep_Trying_Go17 小时前
基于GAN的文生图算法详解ControlGAN(Controllable Text-to-Image Generation)
人工智能·python·深度学习·神经网络·机器学习·生成对抗网络·文生图
三水不滴17 小时前
Redis缓存更新策略
数据库·经验分享·redis·笔记·后端·缓存
懒羊羊吃辣条17 小时前
电力负荷预测怎么做才不翻车
人工智能·深度学习·机器学习·时间序列
ziqi52219 小时前
第二十四天笔记
笔记
马猴烧酒.19 小时前
【JAVA数据传输】Java 数据传输与转换详解笔记
java·数据库·笔记·tomcat·mybatis
人工智能培训20 小时前
基于Transformer的人工智能模型搭建与fine-tuning
人工智能·深度学习·机器学习·transformer·知识图谱·数字孪生·大模型幻觉