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:
- Gaussian Elimination 高斯消元法:
- Convert to an upper triangular matrix using row operations.
- Keep track of the multipliers used to eliminate elements below the pivot, forming .
- Forming Matrices 形成矩阵:
- : Lower triangular matrix with ones on the diagonal and the multipliers below the diagonal.
- : Upper triangular matrix obtained after Gaussian elimination.
- Gaussian Elimination 高斯消元法:
LU 分解将矩阵 分解为下三角矩阵 和上三角矩阵 的乘积。
- 用途: 解决线性方程组 。
- 要求: 必须是方阵。
- 过程:
- 高斯消元法:
- 使用行运算将 转换为上三角矩阵 。
- 记录用来消去主元下方元素的乘数,形成 。
- 形成矩阵:
- : 对角线为 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 过程
- 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 . 用 构造 ,并使用内积 构造 。
- 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:
- Compute Eigenvalues and Eigenvectors 计算特征值和特征向量:
- Compute and .
- Find the eigenvalues and eigenvectors of these matrices.
- Forming Matrices 形成矩阵:
- : Columns are eigenvectors of .
- : Diagonal matrix with singular values (square roots of eigenvalues).
- : Columns are eigenvectors of .
- Compute Eigenvalues and Eigenvectors 计算特征值和特征向量:
奇异值分解将矩阵 分解为三个矩阵:正交矩阵 、对角矩阵 和正交矩阵 的转置。
- 用途: 主成分分析 (PCA),解决线性方程组和计算广义逆矩阵。
- 要求: 可以是任意 矩阵。
- 过程:
- 计算特征值和特征向量:
- 计算 和 。
- 找到这些矩阵的特征值和特征向量。
- 形成矩阵:
- :列向量是 的特征向量。
- :对角矩阵,其对角线元素为奇异值(特征值的平方根)。
- :列向量是 的特征向量。
- 计算特征值和特征向量:
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:
- Forming 形成 :
- For each diagonal element , compute:
- Forming 形成 :
- For each off-diagonal element , compute:
Cholesky 分解将正定矩阵 分解为下三角矩阵 和其转置的乘积。
- 用途: 解决线性方程组,特别是在优化问题中。
- 要求: 必须是对称且正定的。
- 过程:
- 形成 :
-
对于每个对角元素 ,计算:
-
- 形成 :
\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$ 的矩阵。