Matrix Decompositions 矩阵分解

Why Decompose a Matrix? 为什么要对矩阵做分解?

Matrix decomposition is essential in various mathematical and computational applications. It simplifies matrix operations, aids in solving linear systems, eigenvalue problems, and facilitates numerical stability and efficiency. By decomposing a matrix, complex problems become more manageable, enabling efficient computations and deeper insights into the linear transformations represented by the matrix.

矩阵分解在各种数学和计算应用中至关重要。它简化了矩阵运算,有助于解决线性方程组、特征值问题,并提高数值稳定性和效率。通过对矩阵进行分解,复杂问题变得更加易于处理,从而实现高效计算并深入理解矩阵所代表的线性变换。

Types of Matrix Decompositions 矩阵分解的种类

1. LU Decomposition LU 分解

LU decomposition factorizes a matrix into a product of a lower triangular matrix and an upper triangular matrix .

  • Usage: Solving linear systems .
  • Requirements: must be a square matrix.
  • Procedure:
    1. Gaussian Elimination 高斯消元法:
      • Convert to an upper triangular matrix using row operations.
      • Keep track of the multipliers used to eliminate elements below the pivot, forming .
    2. Forming Matrices 形成矩阵:
      • : Lower triangular matrix with ones on the diagonal and the multipliers below the diagonal.
      • : Upper triangular matrix obtained after Gaussian elimination.

LU 分解将矩阵 分解为下三角矩阵 和上三角矩阵 的乘积。

  • 用途: 解决线性方程组
  • 要求: 必须是方阵。
  • 过程:
    1. 高斯消元法:
      • 使用行运算将 转换为上三角矩阵
      • 记录用来消去主元下方元素的乘数,形成
    2. 形成矩阵:
      • : 对角线为 1 且对角线下方为消去乘数的下三角矩阵。
      • : 经过高斯消元法得到的上三角矩阵。

2. QR Decomposition QR 分解

QR decomposition expresses a matrix as a product of an orthogonal matrix and an upper triangular matrix .

QR 分解将矩阵 表示为正交矩阵 和上三角矩阵 的乘积。

Usage 用途

  • Solving linear least squares problems.
  • 解决线性最小二乘问题。

Requirements 要求

  • can be any matrix.
  • 可以是任意 矩阵。

Procedure 过程

  1. Gram-Schmidt Orthogonalization 格拉姆-施密特正交化
    • Step 1: Start with the columns of , denoted as . 从 的列 开始。

    • Step 2: Form orthogonal vectors using: 使用公式形成正交向量

  • Step 3: Normalize to get : 将 归一化得到
  • Step 4: Construct with as columns and using the inner products . 用 构造 ,并使用内积 构造
  1. Householder Transformations Householder 变换
    • Step 1: Use reflections to zero out below-diagonal entries. 使用反射将对角线下方元素归零。

    • Step 2: Form as a product of Householder matrices. 将 表示为 Householder 矩阵的乘积。

3. Singular Value Decomposition (SVD) 奇异值分解 (SVD)

SVD decomposes a matrix into three matrices: an orthogonal matrix , a diagonal matrix , and the transpose of an orthogonal matrix .

  • Usage: Principal Component Analysis (PCA), solving linear systems, and pseudoinverse computation.
  • Requirements: can be any matrix.
  • Procedure:
    1. Compute Eigenvalues and Eigenvectors 计算特征值和特征向量:
      • Compute and .
      • Find the eigenvalues and eigenvectors of these matrices.
    2. Forming Matrices 形成矩阵:
      • : Columns are eigenvectors of .
      • : Diagonal matrix with singular values (square roots of eigenvalues).
      • : Columns are eigenvectors of .

奇异值分解将矩阵 分解为三个矩阵:正交矩阵 、对角矩阵 和正交矩阵 的转置。

  • 用途: 主成分分析 (PCA),解决线性方程组和计算广义逆矩阵。
  • 要求: 可以是任意 矩阵。
  • 过程:
    1. 计算特征值和特征向量:
      • 计算
      • 找到这些矩阵的特征值和特征向量。
    2. 形成矩阵:
      • :列向量是 的特征向量。
      • :对角矩阵,其对角线元素为奇异值(特征值的平方根)。
      • :列向量是 的特征向量。

4. Cholesky Decomposition Cholesky 分解

Cholesky decomposition factorizes a positive definite matrix into the product of a lower triangular matrix and its transpose.

  • Usage: Solving linear systems, especially in optimization problems.
  • Requirements: must be symmetric and positive definite.
  • Procedure:
    1. Forming 形成 :
      • For each diagonal element , compute:
  • For each off-diagonal element , compute:

Cholesky 分解将正定矩阵 分解为下三角矩阵 和其转置的乘积。

  • 用途: 解决线性方程组,特别是在优化问题中。
  • 要求: 必须是对称且正定的。
  • 过程:
    1. 形成 :
      • 对于每个对角元素 ,计算:

- 对于每个非对角元素 $\mathbf{A}_{ij}$,计算:
   \mathbf{L}_{ij} = \frac{1}{\mathbf{L}_{jj}} \left(\mathbf{A}_{ij} - \sum_{k=1}^{j-1} \mathbf{L}_{ik} \mathbf{L}_{jk}\right) \quad \text{当} \; i > j
   
### 5. Eigenvalue Decomposition 特征值分解 Eigenvalue decomposition expresses a matrix $\mathbf{A}$ in terms of its eigenvalues and eigenvectors.

\mathbf{A} = \mathbf{V} \mathbf{\Lambda} \mathbf{V}^{-1}

- **Usage:** Analyzing linear transformations, stability analysis. - **Requirements:** $\mathbf{A}$ must be a square matrix with linearly independent eigenvectors. - **Procedure:** 1. **Find Eigenvalues and Eigenvectors 找到特征值和特征向量:** - Solve the characteristic equation $\det(\mathbf{A} - \lambda \mathbf{I}) = 0$ to find eigenvalues $\lambda_i$. - Solve $(\mathbf{A} - \lambda_i \mathbf{I}) \mathbf{v}_i = 0$ to find eigenvectors $\mathbf{v}_i$. 2. **Forming Matrices 形成矩阵:** - $\mathbf{\Lambda}$: Diagonal matrix with eigenvalues $\lambda_i$. - $\mathbf{V}$: Matrix with eigenvectors $\mathbf{v}_i$ as columns. 特征值分解将矩阵 $\mathbf{A}$ 表示为其特征值和特征向量的形式。

\mathbf{A} = \mathbf{V} \mathbf{\Lambda} \mathbf{V}^{-1}

- **用途:** 分析线性变换、稳定性分析。 - **要求:** $\mathbf{A}$ 必须是具有线性无关特征向量的方阵。 - **过程:** 1. **找到特征值和特征向量:** - 通过求解特征方程 $\det(\mathbf{A} - \lambda \mathbf{I}) = 0$ 找到特征值 $\lambda_i$。 - 通过求解 $(\mathbf{A} - \lambda_i \mathbf{I}) \mathbf{v}_i = 0$ 找到特征向量 $\mathbf{v}_i$。 2. **形成矩阵:** - $\mathbf{\Lambda}$: 对角矩阵,其对角线元素为特征值 $\lambda_i$。 - $\mathbf{V}$: 列向量是特征向量 $\mathbf{v}_i$ 的矩阵。