• 线性代数学习笔记4-1:线性方程组的数学和几何意义、零空间/解空间/核


    线性代数的视角看线性方程组

    求解方程 A x ⃗ = v ⃗ \mathbf A\vec x=\vec v Ax =v 首先说明系数矩阵的行数和列数的意义

    • 对于系数矩阵 A \mathbf A A,其行数代表方程个数,列数代表未知量个数
    • 对于系数矩阵 A \mathbf A A,矩阵对应线性变换
      矩阵行数代表变换后的基向量、 x ⃗ \vec x x v ⃗ \vec v v 等向量的坐标分量数,也就是这些向量所处空间的维度;
      (上面说过,若有 r o w row row行,则列空间必为 R r o w \mathbf R^{row} Rrow的子空间,因为 r o w row row个分量最多只能描述 r o w row row维空间中的向量)
    • 列数代表列向量/变换后的基向量个数(然而这些基向量可能是线性相关的)

    下面进一步展开说明,并从线性代数的视角看线性方程组

    线性方程组的几何意义

    A x ⃗ = v ⃗ \mathbf A\vec x=\vec v Ax =v 的几何意义是,已知一个线性变换 A \mathbf A A,我们要寻找一个向量 x ⃗ \vec x x ,使之在变换后与向量 v ⃗ \vec v v 重合
    或者说,在 A \mathbf A A的列空间(线性变换后的新的向量空间)中,寻找合适的”坐标“,对应于向量 v ⃗ \vec v v

    方程有解的条件:
    总体原则是,如果位于矩阵 A \mathbf A A的列空间内,那么方程就有解;否则无解;

    • 线性变换不压缩空间时,即矩阵满秩,即 d e t ( A ) ≠ 0 det(\mathbf A)\neq 0 det(A)=0,方程组存在唯一解(因为线性变换在同一维度下进行,变换前后的向量一一对应,确定变换后的向量 v ⃗ \vec v v ,也就确定变换前的向量 x ⃗ \vec x x

    具体如何求解
    d e t ( A ) ≠ 0 det(\mathbf A)\neq 0 det(A)=0时逆矩阵 A − 1 \mathbf A^{-1} A1存在
    方程两边同乘 A − 1 \mathbf A^{-1} A1即可求解方程: x ⃗ = A − 1 v ⃗ \vec x=\mathbf A^{-1}\vec v x =A1v
    其几何意义是,从 v ⃗ \vec v v 开始“”倒带“,进行逆变换并跟踪 v ⃗ \vec v v 的动向,最终可以得到初始的 x ⃗ \vec x x

    • 线性变换会压缩空间时(如:平面变为线),即矩阵不满秩,即 d e t ( A ) = 0 det(\mathbf A)=0 det(A)=0,方程不一定有解
      如果向量 v ⃗ \vec v v 恰好处于被压缩后的空间(列空间)内,解存在;否则无解
      在这里插入图片描述

    之前通过逆矩阵 A − 1 \mathbf A^{-1} A1求解方程;
    而在这种情况下,不存在逆矩阵 A − 1 \mathbf A^{-1} A1
    其几何意义是,不存在逆变换能将一条线”解压缩“为一个平面(这样必将出现单个输入对应多个输出,这不符合函数映射的定义)

    线性方程组的数学意义

    另一种思路是,从方程组入手看问题:

    A x ⃗ = v ⃗ \mathbf A\vec x=\vec v Ax =v 相当于用向量 x ⃗ \vec x x 提供的系数对矩阵 A \mathbf A A的列向量做线性组合

    方程有解的条件:

    • 一旦列向量的线性组合能够充满整个 R r o w \mathbf R^{row} Rrow空间,一定有解(其中 r o w row row就是系数矩阵的行数,它表示了上面讨论的所有向量的坐标分量数,也就是向量 x ⃗ \vec x x v ⃗ \vec v v 所存在的空间的维度)
    • 而一旦列向量的线性组合不能够充满整个 R r o w \mathbf R^{row} Rrow空间,不一定有解,具体取决于列向量的线性组合(列空间)是否能得到我们所需的那个向量 v ⃗ \vec v v

    总之:对于 A x ⃗ = v ⃗ \mathbf A\vec x=\vec v Ax =v 当向量 v ⃗ \vec v v 位于矩阵 A \mathbf A A的列空间内,方程有解;否则方程无解。

    矩阵的零空间/解空间/核

    对于方程 A x ⃗ = v ⃗ \mathbf A\vec x=\vec v Ax =v ,列空间关注系数矩阵 A \mathbf A A,而零空间关注解向量 x ⃗ \vec x x

    矩阵的零空间(Null Space)/核(Kernal)

    1. 经过线性变换后,将会落在原点/零向量的向量的集合
    2. 方程 A x ⃗ = 0 ⃗ \mathbf A\vec x=\vec 0 Ax =0 所有解向量 x ⃗ \vec x x 构成的集合
    3. 零空间也叫解空间,即齐次线性方程组所有解向量构成的集合

    ps. 与之前同理,如果向量 x ⃗ \vec x x n n n个分量,那么零空间一定是 R n \mathbf R^n Rn的子空间

    零空间和线性无关性、秩结合在一起考虑:
    矩阵的零空间只有0点(方程 A x = 0 \mathbf A \boldsymbol x=\boldsymbol 0 Ax=0有唯一零解,没有非零解)    ⟺    \iff 矩阵列满秩(线性变换没有压缩空间)    ⟺    \iff 所有列向量线性无关
    后面将会看到,方程消元后,给出了列相关性/秩/零空间(基础解系)等所有信息

    零空间几何意义:考虑3x3矩阵,线性变换后空间维度被压缩的情况

    • 矩阵满秩,不管变换如何,原点仍落在原点(线性变换保证原点位置不变),零空间为一个点
      (零空间也是线性空间,零空间必然包含零向量 0 ⃗ \vec 0 0
    • 矩阵秩为2,则有一条线上的向量将被压缩到零向量位置,与之重叠,则零空间为一条线
    • 矩阵秩为1,则有一个平面上的向量将被压缩到零向量位置,与之重叠,则零空间为一个平面

    另外,从零空间的思路出发,对于 v ⃗ \vec v v 不是零向量的一般情况,我们也更能理解为什么有时方程的解不唯一:空间被压缩时,大量的高维度的向量被压缩到低维度空间中的同一个向量 v ⃗ \vec v v 的位置,它们有可能是一条线/一个平面…

    当然,和零空间不同,此时所有的解向量 x ⃗ \vec x x 的集合就一定不是一个向量空间,原因很简单:这些解中一定不包含零向量 0 ⃗ \vec 0 0 ,也就是说,此时的解的集合是不经过原点的直线/平面
    这也是为什么解空间(这个向量空间)仅仅是指齐次线性方程组所有解向量构成的集合,而非齐次线性方程组的解的集合,不能称为”“

    总结

    • 每个齐次线性方程组都对应一个线性变换 A x ⃗ = v ⃗ \mathbf A\vec x=\vec v Ax =v
    • d e t ( A ) ≠ 0 det(\mathbf A)\neq 0 det(A)=0时,这个变换不会压缩空间,则解为 x ⃗ = A − 1 v ⃗ \vec x=\mathbf A^{-1}\vec v x =A1v
    • d e t ( A ) = 0 det(\mathbf A)= 0 det(A)=0时,这个变换会压缩空间,不一定有解;
      具体的,仅当 v ⃗ \vec v v 位于矩阵 A \mathbf A A的列空间内( v ⃗ \vec v v 是在同维度/同二维平面or一维直线内的可能的输出),解存在
    • v ⃗ \vec v v 是零向量,零空间给出方程所有可能的解
      从零空间的思路出发,我们也更能理解为什么有时方程的解不唯一
  • 相关阅读:
    【重装系统的血泪史
    Q_ENUM Q_ENUMS Q_ENUM_NS Q_FLAG Q_FLAGS Q_FLAG_NS
    【算法思考】端到端实例分割模型 SOLO
    docker logs 命令
    原码、反码、补码(8位二进制数)
    利用Python制作全网通用的点赞器,绝绝子!
    Windows ssh免密访问Linux服务器
    SVM支持向量机
    怎么用docker将项目打包成镜像并导出给别人适用 (dockerfile)
    基于UDP协议的网络服务器的模拟实现
  • 原文地址:https://blog.csdn.net/Insomnia_X/article/details/125485883