线性代数基础

Base

对于矩阵 A,对齐做 SVD 分解,即 U Σ V = s v d ( A ) U\Sigma V = svd(A) UΣV=svd(A). 其中 U 为 A A T AA^T AAT的特征向量,V 为 A T A A^TA ATA的特征向量。 Σ \Sigma Σ 的对角元素为降序排序的特征值。显然,U、V矩阵中的列向量相互正交,所以也可以视 V 为svd分解给出了A的列向量空间的正交基,其中最大奇异值(或特征值)对应的特征向量捕捉了数据变化的最大方向。

求满足 Ax=0 的 x

显然该问题等价于 x T A T A x = 0 x^TA^TAx = 0 xTATAx=0.

此问题有非零解 => A不满秩 => 行列式为0 => A T A A^TA ATA 的特征值至少有一个为0.

  • 考虑 A A A的秩的为 k-1, 那么 A T A A^TA ATA 的特征值有一个为0。所以svd分解后V矩阵的最后一列 x ∗ x^* x∗ 就是特征值为 0 所对应的特征向量,即 A T A x ∗ = 0 ∗ x ∗ = 0 A^TA x^* = 0 * x^* = 0 ATAx∗=0∗x∗=0.
    对于超定方程,极有可能不存在解析解,但存在最小二乘解满足 ∥ A x ∥ 2 \Vert Ax \Vert_2 ∥Ax∥2 最小,即最小的特征值所对应的特征向量。常见的这类问题如:已知一些三维空间中大致落在二维平面上的点,用n*3的矩阵P描述,求这个平面的法向量 n。
  • 考虑 A A A的秩的为 k-2,那么那么 A T A A^TA ATA 的特征值有两个为0。
    例如,已知一些落在直线上的三维点,用n*3的矩阵描述这些点,求这条线的方向n。那么显然就是求满足 m a x x ∥ A x ∥ 2 max_x \Vert Ax \Vert_2 maxx∥Ax∥2的最小二乘解,也就是最大的特征值对应的特征向量。另外,两个为0的特征值所对应的特征向量反应了在垂直直线方向的趋势,或者说向量投影到垂直直线方向(法平面)的投影。
    另一个例子:存在一个bearing vector,由于bearing vector的模长固定为1,因此只能在球面上移动,其自由度为2。为了描述bearing vector的误差,所以采用bearing vector在其切平面的投影作为量化方式。那么对 bearing vectord的转置做SVD分解,则两个为0的奇异值对应的特征向量就是切平面的基。

求解Ax = b的x

此问题等价于求 A x − b = 0 Ax - b = 0 Ax−b=0。

  • 当 r a n k ( A ∣ b ) = r a n k ( A ) < k rank(A|b) = rank(A) < k rank(A∣b)=rank(A)<k, 有特解+通解多个解
  • 当 r a n k ( A ∣ b ) = r a n k ( A ) = k rank(A|b) = rank(A) = k rank(A∣b)=rank(A)=k, 有唯一解
  • 当 r a n k ( A ∣ b ) > r a n k ( A ) rank(A|b) > rank(A) rank(A∣b)>rank(A), 无解

求解线性方程组 ( Ax = b ) 的方法有多种,具体选择取决于矩阵 ( A ) 的特性(例如,是否是方阵、是否是稀疏矩阵、是否满秩等)。以下是常见的几种方法:

1. 直接求解法

适用于方阵 ( A ) 为非奇异矩阵的情况(即 ( A ) 可逆)。

1.1 矩阵逆法
  • 如果 ( A ) 是方阵且非奇异(满秩),我们可以通过矩阵的逆求解:
    x = A − 1 b x = A^{-1} b x=A−1b
  • 优点:理论上适用于所有满秩方阵。
  • 缺点:计算逆矩阵代价较高,尤其是对于大规模矩阵,数值不稳定性也可能导致精度问题。
1.2 高斯消去法
  • 高斯消去法是一种通过初等行变换将 ( A ) 化为上三角矩阵,然后使用回代法求解 ( x ) 的方法。
  • 步骤:
    1. 将 ( A ) 化为上三角矩阵(消元过程)。
    2. 从最后一个方程开始回代求解各个未知数。
  • 优点:适合解决大部分线性方程组问题。
  • 缺点:在稀疏矩阵或病态矩阵情况下可能表现不好。
1.3 LU 分解
  • 将 ( A ) 分解为两个矩阵 ( L )(下三角矩阵)和 ( U )(上三角矩阵),使得 ( A = LU )。
  • 分两步解决:
    1. 求解 ( Ly = b )(前向替换)。
    2. 求解 ( Ux = y )(回代)。
  • 优点:可以高效地处理多次相同矩阵 ( A ) 但不同向量 ( b ) 的情况。
  • 缺点:不适合奇异或病态矩阵。

2. 迭代求解法

适合大规模、稀疏矩阵,特别是在矩阵 ( A ) 具有特殊结构(例如稀疏或对称正定)的情况下。

2.1 Jacobi 方法
  • 假设矩阵 ( A ) 可以分解为对角矩阵 ( D ) 和严格三角矩阵 ( L + U ),即 ( A = D + (L + U) )。
  • 通过迭代更新:
    x ( k + 1 ) = D − 1 ( b − ( L + U ) x ( k ) ) x^{(k+1)} = D^{-1}(b - (L+U)x^{(k)}) x(k+1)=D−1(b−(L+U)x(k))
  • 优点:实现简单,适合并行计算。
  • 缺点:收敛速度较慢,且不适用于所有矩阵,尤其是条件数较大的矩阵。
2.2 Gauss-Seidel 方法
  • 类似于 Jacobi 方法,但在每次更新时使用新的值:
    x i ( k + 1 ) = 1 A i i ( b i − ∑ j = 1 i − 1 A i j x j ( k + 1 ) − ∑ j = i + 1 n A i j x j ( k ) ) x_i^{(k+1)} = \frac{1}{A_{ii}} \left( b_i - \sum_{j=1}^{i-1} A_{ij} x_j^{(k+1)} - \sum_{j=i+1}^{n} A_{ij} x_j^{(k)} \right) xi(k+1)=Aii1(bi−j=1∑i−1Aijxj(k+1)−j=i+1∑nAijxj(k))
  • 优点:比 Jacobi 方法收敛快。
  • 缺点:仍可能在某些条件下收敛缓慢。
2.3 共轭梯度法
  • 适用于对称正定矩阵。该方法是一种梯度下降的改进形式,通过寻找共轭方向来加速收敛。
  • 步骤
    1. 初始化 ( x_0 )。
    2. 迭代更新:
      x k + 1 = x k + α k p k x_{k+1} = x_k + \alpha_k p_k xk+1=xk+αkpk
      其中 ( p_k ) 是共轭方向,( \alpha_k ) 是步长。
  • 优点:对大规模、稀疏、对称正定矩阵非常高效。
  • 缺点:只适用于对称正定矩阵,且需要合适的预条件来保证收敛性。

3. 奇异值分解 (SVD)

适用于任意矩阵 ( A ),包括矩阵不满秩或奇异的情况。

  • 奇异值分解将 ( A ) 分解为 ( A = U \Sigma V^T ),其中 ( U ) 和 ( V ) 是正交矩阵,( \Sigma ) 是对角矩阵,包含矩阵的奇异值。
  • 求解过程为:
    x = V Σ − 1 U T b x = V \Sigma^{-1} U^T b x=VΣ−1UTb
  • 优点:SVD 能处理任何矩阵,包括奇异矩阵和非方阵,是最为稳定的求解方法之一。
  • 缺点:计算复杂度高,不适合大规模问题。

4. QR 分解

  • QR 分解将矩阵 ( A ) 分解为正交矩阵 ( Q ) 和上三角矩阵 ( R ),即 ( A = QR )。
  • 求解步骤:
    1. 将方程变为 ( QRx = b )。
    2. 左乘 ( Q^T ),得到 ( Rx = Q^T b )。
    3. 用回代法求解上三角矩阵 ( R ) 的方程。
  • 优点:稳定性好,特别适用于不满秩的矩阵。
  • 缺点:比高斯消去法稍微复杂,计算量略大。

5. 伪逆法(Moore-Penrose 逆)

适用于矩阵 ( A ) 不为方阵或不满秩的情况。

  • 如果 ( A ) 是不方的或者不满秩,我们可以通过伪逆矩阵 ( A^+ ) 求解:
    x = A + b x = A^+ b x=A+b
    其中 ( A^+ ) 是 ( A ) 的 Moore-Penrose 伪逆。
  • 优点:适用于任何矩阵(包括矩阵不满秩、奇异的情况),能找到最小范数解。
  • 缺点:计算伪逆较复杂,尤其是对于大规模矩阵。

总结

  • 对于方阵且 ( A ) 可逆,常用 高斯消去法LU 分解
  • 对于大规模稀疏矩阵或需要迭代求解时,Jacobi 方法Gauss-Seidel 方法共轭梯度法 适用。
  • 对于奇异或不满秩的矩阵,SVD伪逆法 能保证稳定的解。
  • QR 分解高斯消去法 常用于数值稳定性要求较高的情境。
相关推荐
MarkHD4 小时前
第十一天 线性代数基础
线性代数·决策树·机器学习
星沁城8 小时前
240. 搜索二维矩阵 II
java·线性代数·算法·leetcode·矩阵
君臣Andy2 天前
【矩阵的大小和方向的分解】
线性代数·矩阵
勤劳的进取家2 天前
利用矩阵函数的导数公式求解一阶常系数微分方程组的解
线性代数
sz66cm2 天前
数学基础 -- 线性代数之线性无关
人工智能·线性代数·机器学习
herobrineAC3 天前
线代的几何意义(一)——向量,坐标,矩阵
线性代数·矩阵
Ricciflows3 天前
分析学大师Elias M. Stein的分析系列教材
线性代数·数学建模·矩阵·概率论·抽象代数·拓扑学·傅立叶分析
余~185381628003 天前
矩阵NFC碰一碰发视频源码开发技术解析,支持OEM
大数据·人工智能·线性代数·矩阵·音视频
羞儿4 天前
构建旋转变换矩阵对二维到高维空间的线段点进行旋转
图像处理·人工智能·线性代数·矩阵
羊羊20354 天前
线性代数:Matrix2x2和Matrix3x3
线性代数·数学建模·unity3d