矩阵的除法
矩阵运算中没有直接的 “除法”概念(因矩阵乘法不满足交换律,无法像数的除法那样简单定义),但可通过逆矩阵(可逆方阵)或伪逆矩阵(非方阵 / 奇异矩阵),将 “除法” 转化为乘以逆矩阵 / 伪逆矩阵的操作。
一、方阵的 “除法”:逆矩阵(仅适用于可逆方阵)
对于 n 阶方阵 A,若存在方阵 \(A^{-1}\) 满足 \(AA^{-1} = A^{-1}A = I\)(I 为单位矩阵),则 \(A^{-1}\) 是 A 的逆矩阵(此时 A 称为 “可逆矩阵” 或 “非奇异矩阵”,需满足 \(\det(A) \neq 0\)、秩为 n)。
此时,“矩阵除法” 通过乘以逆矩阵实现:
- 右除:若要计算 “A 除 B”(即 \(B \div A\)),等价于 \(B \times A^{-1}\),MATLAB 中用
B / A
表示。 - 左除:若要计算 “A 被 B 除”(即 \(A \div B\)),等价于 \(A \times B^{-1}\),MATLAB 中用 B
\ A
表示。
示例(可逆方阵)
已知 \(A = \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix}\),\(B = \begin{pmatrix} 5 & 6 \\ 7 & 8 \end{pmatrix}\),求 “右除 \(B / A\)” 和 “左除 \(A \setminus B\)”。
先求 A 的逆矩阵 \(A^{-1}\):行列式 \(\det(A) = 1 \times 4 - 2 \times 3 = -2 \neq 0\),故 A 可逆。伴随矩阵 \(\text{adj}(A) = \begin{pmatrix} 4 & -2 \\ -3 & 1 \end{pmatrix}\),因此:\(A^{-1} = \frac{1}{\det(A)} \text{adj}(A) = \begin{pmatrix} -2 & 1 \\ 1.5 & -0.5 \end{pmatrix}\)
右除 \(B / A\)(即 \(B \times A^{-1}\)):\(B \times A^{-1} = \begin{pmatrix} 5 & 6 \\ 7 & 8 \end{pmatrix} \begin{pmatrix} -2 & 1 \\ 1.5 & -0.5 \end{pmatrix} = \begin{pmatrix} 1 & 2 \\ 1 & 3 \end{pmatrix}\)
左除 \(A \setminus B\)(即 \(A^{-1} \times B\)):\(A^{-1} \times B = \begin{pmatrix} -2 & 1 \\ 1.5 & -0.5 \end{pmatrix} \begin{pmatrix} 5 & 6 \\ 7 & 8 \end{pmatrix} = \begin{pmatrix} -3 & -4 \\ 4 & 5 \end{pmatrix}\)
二、非方阵 / 奇异矩阵的 “除法”:伪逆矩阵(广义逆)
若矩阵 A 是非方阵(行数≠列数),或奇异方阵(行列式 \(\det(A) = 0\),不可逆),则需用伪逆矩阵(Moore-Penrose 逆 \(A^+\))实现 “除法”。
伪逆满足 “Moore-Penrose 条件”(从投影、正交等角度定义的最优性),且能解决 “超定方程组”(方程数 > 未知数)的最小二乘解(使误差 \(\|AX - B\|_2\) 最小)。
计算与应用(以非方阵为例)
设 \(A = \begin{pmatrix} 1 & 2 \\ 3 & 4 \\ 5 & 6 \end{pmatrix}\)(3 行 2 列,列满秩),\(B = \begin{pmatrix} 7 \\ 8 \\ 9 \end{pmatrix}\)(3 行 1 列),求 “\(A \setminus B\)”(即解 \(AX = B\) 的最小二乘解)。
伪逆的计算:对列满秩矩阵,伪逆公式为 \(A^+ = (A^T A)^{-1} A^T\)。计算 \(A^T A = \begin{pmatrix} 1 & 3 & 5 \\ 2 & 4 & 6 \end{pmatrix} \begin{pmatrix} 1 & 2 \\ 3 & 4 \\ 5 & 6 \end{pmatrix} = \begin{pmatrix} 35 & 44 \\ 44 & 56 \end{pmatrix}\),再求其逆:\((A^T A)^{-1} = \frac{1}{35 \times 56 - 44^2} \begin{pmatrix} 56 & -44 \\ -44 & 35 \end{pmatrix} = \frac{1}{28} \begin{pmatrix} 56 & -44 \\ -44 & 35 \end{pmatrix}\)因此:\(A^+ = (A^T A)^{-1} A^T \approx \begin{pmatrix} -0.2857 & 0.0714 & 0.4286 \\ 0.2143 & 0.1429 & 0.0714 \end{pmatrix}\)
最小二乘解(即 “右除” 结果):\(X = A^+ B \approx \begin{pmatrix} 1.2857 \\ 0.7143 \end{pmatrix}\)该解使 \(\|AX - B\|_2\) 最小(误差平方和最小)。
三、MATLAB 中的矩阵 “除法” 操作
- 逆矩阵:用
inv(A)
计算方阵的逆(要求 A 可逆)。 - 左除:
A \ B
→ 等价于 \(A^{-1}B\)(可逆时)或伪逆下的最小二乘解(非可逆 / 非方阵时)。 - 右除:
B / A
→ 等价于 \(B A^{-1}\)(可逆时)。 - 伪逆:用
pinv(A)
计算任意矩阵的伪逆。
总结
矩阵 “除法” 的核心是用 “逆矩阵 / 伪逆矩阵” 替代数的 “倒数”,将除法转化为乘法:
- 可逆方阵:通过逆矩阵实现 “左除” 或 “右除”(因矩阵乘法不交换,左 / 右除结果不同)。
- 非方阵 / 奇异矩阵:通过伪逆矩阵实现 “广义除法”,得到最小二乘意义下的最优解。