机器学习线性代数--(7)逆矩阵、列空间、秩、零空间与非方阵
从几何视角理解线性变换的深层结构在前几讲中我们学会了用矩阵描述线性变换并用行列式测量变换对面积的缩放。现在我们将探索一些更深刻的问题一个变换能否被“撤销”变换后的空间是什么样的哪些向量被压缩到了原点不同维度的空间之间如何变换这些问题将引向线性代数的核心概念——逆矩阵、列空间、秩、零空间以及非方阵。7.1 逆矩阵变换的“撤销”假设有一个线性变换A AA它将空间中的向量v ⃗ \vec{v}v映射到w ⃗ \vec{w}w即w ⃗ A v ⃗ \vec{w} A\vec{v}wAv。如果我们想“撤销”这个变换找到某个变换B BB使得B w ⃗ v ⃗ B\vec{w} \vec{v}Bwv那么B BB就是A AA的逆矩阵记作A − 1 A^{-1}A−1。几何意义逆矩阵对应于原变换的反向操作。例如如果A AA是逆时针旋转90°那么A − 1 A^{-1}A−1就是顺时针旋转90°如果A AA将x方向拉伸2倍那么A − 1 A^{-1}A−1就将x方向压缩为1/2。存在条件行列式不为零逆矩阵存在的前提是变换后空间没有被压缩。如果行列式det ( A ) 0 \det(A) 0det(A)0意味着变换将面积或体积压缩为零即降维了比如平面被压缩成直线。此时无法从输出唯一地找回输入因为多个输入可能映射到同一个输出——变换不可逆。因此矩阵可逆 ⟺ det ( A ) ≠ 0 \text{矩阵可逆} \iff \det(A) \neq 0矩阵可逆⟺det(A)0与线性方程组的关系逆矩阵直接给出线性方程组A x ⃗ v ⃗ A\vec{x} \vec{v}Axv的解x ⃗ A − 1 v ⃗ \vec{x} A^{-1}\vec{v}xA−1v。当A AA可逆时解存在且唯一。二阶逆矩阵公式对于矩阵A [ a c b d ] A\begin{bmatrix}a c \\ b d\end{bmatrix}A[abcd]当其行列式d e t ( A ) ≠ 0 det(A) \neq 0det(A)0时是可逆的则其逆矩阵A − 1 A^{-1}A−1的计算公式为A − 1 1 a d − b c [ d − c − b a ] ⟺ A × A − 1 [ 1 0 0 1 ] A^{-1} \frac{1}{ad-bc} \begin{bmatrix}d -c \\ -b a\end{bmatrix} \iff A\times{A^{-1}}\begin{bmatrix}1 0 \\ 0 1\end{bmatrix}A−1ad−bc1[d−b−ca]⟺A×A−1[1001]口诀主对角线交换副对角线变号再除以行列式7.2 列空间变换后的“像”矩阵的列是变换后的基向量。这些列向量张成的空间就是所有可能输出向量的集合称为列空间或像。几何视角对于一个2 × 2 2\times22×2矩阵如果两列不共线它们张成整个二维平面列空间就是整个R 2 \mathbb{R}^2R2。如果两列共线它们张成一条直线列空间就是这条直线一维。如果两列都是零向量列空间就是原点零维。列空间的意义列空间告诉我们这个变换能将输入空间映射到输出空间的哪些地方它是所有可能的输出向量的集合。例如如果一个变换的列空间是二维平面中的一条直线那么无论输入什么输出都只会落在这条直线上——变换压缩了维度。7.3 秩列空间的维度秩就是列空间的维度。它衡量了变换后空间的“大小”或者说变换保留了多少维度的信息。满秩如果秩等于输入空间的维度例如2 × 2 2\times22×2矩阵秩为2则变换是满射到输出空间的某个子空间且没有压缩维度行列式非零。此时列空间就是整个输出空间如果输出空间维度等于输入维度或一个同维子空间。降秩如果秩小于输入空间的维度则变换压缩了空间信息丢失。例如秩为1时所有输出都落在一条直线上。**秩的直观理解**你可以把秩想象成变换后“有效”的维度数。它等于矩阵线性无关的列数。7.4 零空间核被压缩到原点的向量变换中有些向量可能会被映射到零向量。所有满足A v ⃗ 0 ⃗ A\vec{v} \vec{0}Av0的向量v ⃗ \vec{v}v构成的集合称为零空间或核。几何意义零空间反映了变换的“压缩”程度。如果零空间只包含零向量即只有零向量被映射到零那么变换是单射一对一的没有信息丢失。如果零空间包含非零向量则存在不同的向量被映射到同一个输出变换不可逆。与秩的关系有一个重要的定理秩-零化度定理秩 零空间维度 输入空间维度 \text{秩} \text{零空间维度} \text{输入空间维度}秩零空间维度输入空间维度例如对于一个2 × 2 2\times22×2矩阵如果秩为1那么零空间的维度就是1一条直线上的所有向量都被压缩到原点。例子考虑一个将平面投影到x轴的变换[ 1 0 0 0 ] \begin{bmatrix}10\\00\end{bmatrix}[1000]。它的列空间是x轴秩1零空间是y轴所有形如[ 0 , y ] [0, y][0,y]的向量都被映射到原点。7.5 非方阵不同维度之间的变换到目前为止我们讨论的都是方阵输入和输出维度相同。但线性变换也可以在不同维度的空间之间进行比如从二维到三维或从三维到二维。这些变换由非方阵表示。从二维到三维3 × 2 3\times23×2矩阵一个3 × 2 3\times23×2矩阵有两列因为输入是二维每列是一个三维向量。它的几何意义是将二维平面上的基向量i ^ , j ^ \hat{i}, \hat{j}i^,j^映射到三维空间中的两个向量从而把整个二维平面“嵌入”到三维空间中的一个平面或直线如果两列共线。输出空间是三维但列空间最多是二维因为只有两个基向量。所以列空间是三维空间中的一个过原点的平面或直线。例子[ 1 0 0 1 0 0 ] \begin{bmatrix} 1 0 \\ 0 1 \\ 0 0 \end{bmatrix}100010这个变换将二维平面映射到三维空间的x y xyxy-平面z0即保持前两维不变第三维为0。列空间就是x y xyxy-平面二维秩为2。从三维到二维2 × 3 2\times32×3矩阵一个2 × 3 2\times32×3矩阵有三列输入是三维每列是一个二维向量。它将三维空间中的基向量i ^ , j ^ , k ^ \hat{i}, \hat{j}, \hat{k}i^,j^,k^映射到二维平面上的三个向量。由于输入是三维但输出只有二维所以一定会压缩维度除非三个基向量共面且张成二维空间但无论如何最多输出二维。列空间是二维空间中的一个子空间可能是整个平面、一条直线或原点。例子[ 1 0 0 0 1 0 ] \begin{bmatrix} 1 0 0 \\ 0 1 0 \end{bmatrix}[100100]这个变换将三维向量( x , y , z ) (x,y,z)(x,y,z)映射为( x , y ) (x,y)(x,y)即忽略z坐标。列空间是整个二维平面因为前两列张成整个R 2 \mathbb{R}^2R2秩为2。零空间是z轴所有形如( 0 , 0 , z ) (0,0,z)(0,0,z)的向量被映射到零维度为1。非方阵的秩与零空间对于m × n m\times nm×n矩阵n nn维输入m mm维输出秩 ≤min ( m , n ) \min(m, n)min(m,n)。零空间维度 n − 秩 n - \text{秩}n−秩秩-零化度定理仍然成立。非方阵没有行列式因为行列式只定义于方阵但逆矩阵的概念通常不直接适用除非考虑伪逆。7.6 总结与联系这些概念共同描绘了线性变换的完整画像逆矩阵变换的撤销操作要求行列式非零即满秩方阵。列空间所有可能的输出集合由矩阵的列张成其维度即秩。秩变换后空间的维度衡量信息保留的程度。零空间所有被映射到零的向量反映信息丢失的量秩-零化度定理。非方阵不同维度之间的映射列空间是输出空间中的子空间零空间仍存在。把它们结合起来你可以理解任意线性变换的内部结构变换将输入空间划分为两部分——一部分零空间被压缩到零另一部分行空间未详细讲一一对应地映射到列空间。这正是线性代数基本定理的核心思想。希望这个讲解能帮你建立起这些概念的几何直觉。当你面对一个矩阵时试着想象它的列向量思考它们张成的空间列空间以及哪些向量会被映射到原点零空间——这会让抽象的概念变得鲜活起来。上一章机器学习线性代数–(6)行列式测量变换对空间的缩放