跳转至

线性代数

以下内容为人工智能相关的部分线性代数知识记录

坐标转换公式

\(V\) 是维数为 \(n\) 的线性空间(域为 \(\mathbb{R}\)\(\mathbb{C}\))。

  • 原始基(旧基)记为 \(B=(e_1,\dots,e_n)\),新基记为 \(B'=(e'_1,\dots,e'_n)\)
  • 我们用列向量表示坐标。
  • 定义矩阵 \(S\) 为:把新基的每个向量在旧基下的坐标放成列,
\[ S=\big[[e'_1]_B; [e'_2]_B; \cdots ; [e'_n]_B\big]\in \mathbb{F}^{n \times n}. \]

因此(关键关系)

\[ [v]B = S[v]{B'}\quad\text{对任意 }v\in V. \]

这个 \(S\) 通常称为变换矩阵或基转换矩阵(从 \(B'\)\(B\) 的矩阵)

从而有:

\[ [v]_{B'} = S^{-1}[v]_B. \]

(因此向量坐标是逆变的:基变换矩阵 \(S\) 把新坐标变成旧坐标,而坐标本身从旧变到新需要乘 \(S^{-1}\)。)

高斯消元法

高斯-若尔当消元法,可用于求解线性方程组、求特征值、矩阵求逆,目标是将矩阵化为阶梯形/简化阶梯形

Info

  • 阶梯形(行阶梯形):

    1. 零行在最底部:如果矩阵中有全为零的行(零行),那么它们必须位于矩阵的最下方。
    2. 阶梯状:每一行的主元必须位于上一行主元的右侧。即主元的列索引随着行索引的增加而严格递增。
    3. 主元下方全为零:每个主元正下方的所有元素都必须为零(主元所在列,该主元以下的行元素为零)。

    Warning

    每一行的第一个非零元素称为该行的主元

    在上述定义中,主元并不要求必须是1

  • 简化阶梯形:

    在行阶梯形的四个条件基础上,简化行阶梯形还需满足:

    1. 主元为1:每个主元都必须是 1。

    2. 主元所在列其他元素为零:每个主元所在列的其他所有元素(包括主元的上方和下方)都必须为零。

Note

矩阵的阶梯形不是唯一的,但简化阶梯形是唯一的

初等变换

包含初等行变换初等列变换

  1. 交换变换:交换第 \(i\) 行(列)和第 \(j\) 行(列)(\(R_i \leftrightarrow R_j\)

  2. 倍乘变换:用一个非零常数 \(k\) 乘第 \(i\) 行(列)的所有元素(\(kR_i\)

  3. 倍加变换:将第 \(i\) 行(列)的 \(k\) 倍加到第 \(j\) 行(列)上(\(R_j + kR_i\)

  4. 初等行变换相当于左乘初等矩阵,改变输入空间的基(坐标系)

  5. 初等列变换相当于右乘初等矩阵,改变目标空间的基(坐标系)

Info

设线性映射 \(T: V\to W\),在域 \(V\) 取基 \(\mathcal B\),在陪域/目标 \(W\) 取基 \(\mathcal C\)。令 A 表示在这对基下的矩阵,即对任意 \(x\in V\) 有:

\[ [T(x)]{\mathcal C} \;=\; A\,[x]{\mathcal B} \]

如果把域的基换成 \(\mathcal B'\) (新旧基之间的“新→旧坐标”变换记为 \(P\),满足 \([v]{\mathcal B} = P [v]{\mathcal B'}\)),把陪域的基换成 \(\mathcal C'\) (新→旧坐标变换记作 \(R\),满足 \([w]{\mathcal C} = R [w]{\mathcal C'}\)),则新的矩阵 \(A'\) 满足:

\[ [T(x)]{\mathcal C'} \;=\; A'\,[x]{\mathcal B'}, \text{且} A' \;=\; R^{-1} A\, P \]

这是改变基的标准公式。从它看出:

  • 只改变陪域基(\(\mathcal B\) 不变、\(\mathcal C\) 变):取 \(P=I\),得到 \(A' = R^{-1} A\)。也就是左乘某个可逆矩阵(行变换的形式)。
  • 只改变定义域基(\(\mathcal C\) 不变、\(\mathcal B\) 变):取 \(R=I\),得到 \(A' = A P\)。也就是右乘某个可逆矩阵(列变换的形式)。

因此从代数上直接看到:左乘 ⇔ 改变目标(输出)坐标系;右乘 ⇔ 改变输入(变量)坐标系。

Info

初等矩阵是指通过对单位矩阵进行一次初等行变换或初等列变换所得到的矩阵

初等矩阵是满秩可逆矩阵

Warning

对矩阵进行初等变换后,矩阵的部分性质会发生改变,如:特征值、特征向量,但秩等性质会得到保留

初等行变换和初等列变换不可随意混用:

  • 可以混用:变换矩阵到其等价形式、求秩、做秩分解(在域上等价于把矩阵化成一个主对角为 \(I_r\) 的块)

  • 不能混用:求逆矩阵、求解线性方程组

  • 行秩:矩阵的行向量生成的空间的维数,即矩阵的行空间的维数。

  • 列秩:矩阵的列向量生成的空间的维数,即矩阵的列空间的维数。

  • 矩阵的秩:行秩 = 列秩,记作 \(rank(A)\)\(r(A)\)

Note

对于任何矩阵,其行秩永远等于其列秩

秩的计算

使用高斯消元法,将矩阵通过初等行变换化为阶梯形,阶梯形矩阵中非零行(即不全为0的行)的数量就是原矩阵的秩

满秩

一个矩阵如果是满秩的,那么它的秩等于它的行数和列数中较小的那个数

  • 行满秩:对于 \(m × n\) 矩阵(\(m < n\)),如果秩 \(r = m\)(行数),则称其为行满秩。它意味着所有行向量都是线性无关的。

  • 列满秩:对于 \(m × n\) 矩阵(\(m > n\)),如果秩 \(r = n\)(列数),则称其为列满秩。它意味着所有列向量都是线性无关的。

  • 方阵满秩:对于 \(n × n\) 方阵,如果秩 \(r = n\),则直接称其为满秩矩阵。

满秩方阵的性质

  1. 可逆:存在另一个矩阵 \(A^{-1}\),使得 \(A \times A^{-1} = I\)

  2. 行列式非零:\(det(A) \neq 0\)

  3. 行/列向量线性无关:所有行向量线性无关,所有列向量也线性无关。

  4. 齐次方程只有零解:方程 \(Ax = 0\) 有且仅有唯一解 \(x = 0\)

  5. 非齐次方程总有唯一解:对于任何 \(b\),方程 \(Ax = b\) 至多有一个解(如果有解,则一定是唯一解)。

  6. 其对应的线性变换是双射

行列式

行列式只适用于方阵(即行数和列数相等的矩阵)。对于一个 \(n \times n\) 的矩阵 \(A\),其行列式 记作 \(det(A)\)\(\left|A\right|\)

子式

在行列式(方阵)中任取 \(k\)\(k\) 列,交叉位置形成的 \(k^2\) 个元素形成的 \(k\) 阶行列式

主子式

子式中选取的 \(k\)\(k\) 列的行序号和列序号相同

顺序主子式

\(1\) 开始连续取出 \(k\)\(k\) 列的主子式

可用于证明矩阵的正定性

余子式

针对行列式中的单个元素定义

对于 \(n\) 阶行列式,任取其中一个元素 \(a_{ij}\)(位于第 \(i\) 行第 \(j\) 列),划去第 \(i\) 行和第 \(j\) 列的所有元素,剩余的 \(n-1\)\(n-1\) 列元素按顺序排列,构成的 \(n-1\) 阶行列式即为该元素对应的余子式,记作 \(M_{ij}\)

代数余子式

在余子式的基础上引入“符号因子” \((-1)^{i+j}\)

记作:\(A_{ij} = (-1)^{i+j} · M_{ij}\)

i 和 j 分别为元素 \(a_{ij}\) 的行序号和列序号

行列式的计算

  • Sarrus' Rule (适用于二阶和三阶行列式运算)

  • 对于二阶矩阵:

    \[ A = \begin{pmatrix} a & b \\ c & d \end{pmatrix} \]

    其行列式的计算公式为:

    \[ det(A) = ad - bc \]
  • 对于三阶矩阵:

    \[ A = \begin{pmatrix} a & b & c \\ d & e & f \\ g & h & i \end{pmatrix} \]

    其行列式的计算公式为:

    \[ det(A) = a(ei - fh) - b(di - fg) + c(dh - eg) \]
  • 拉普拉斯展开 (Laplace expansion)

对于 n 阶矩阵,行列式的定义可以通过递归方式给出。选择矩阵的任意一行或一列,然后沿该行或列展开:

\[ \det(A) = \Sigma_{j = 1}^{n} (-1)^{i+j} a_{ij} M_{ij} \]

其中: - \(i\) 是选定的行号(或列号)

  • \(a_{ij}\) 是矩阵中第 \(i\) 行第 \(j\) 列的元素

  • \((-1)^{i+j} M_{ij}\)\(a_{ij}\) 对应的代数余子式

  • 高斯消元法 (化为三角矩阵)

行列式的性质

  1. 行列式等于其转置矩阵的行列式,即 \(\det(A) = \det(A^{T})\)

  2. 交换矩阵的两行(或两列),行列式变号。如:交换行 \(i\)\(j\)\(\det(A)\) 变为 \(-\det(A)\)

  3. 如果行列式中的两行(或两列)完全相同或成比例,行列式为 \(0\)

  4. 行列式对于某一行是线性的

  5. 如果一行乘常数 \(k\),则行列式也乘 \(k\)

  6. 如果一行可以表示为两个向量的和,则行列式可以分解为两个行列式的和

  7. 将一行的倍数加到另一行上,行列式不变

  8. 对于两个同阶方阵 \(A\)\(B\),有 \(\det(AB) = \det(A) \det(B)\)

  9. 矩阵 \(A\) 可逆,当且仅当 \(\det(A) \neq 0\)

  10. 上三角矩阵或下三角矩阵的行列式等于其对角线元素的乘积

逆矩阵

对于一个 \(n \times n\) 的方阵 \(A\),如果存在另一个 \(n \times n\) 的方阵 \(B\),使得 \(AB = BA = I\),其中 \(I_n\)\(n\) 阶单位矩阵,则称矩阵 \(A\) 是可逆的(或称非奇异矩阵),并称 \(B\)\(A\) 的逆矩阵,记为 \(A^{-1}\)

Info

一个 \(n × n\) 的方阵 \(A\) 被称为奇异矩阵,如果它满足以下等价条件中的任意一条:

  • 它不可逆(即不存在一个矩阵 \(B\) 使得 \(AB = BA = I\),其中 \(I\) 是单位矩阵)。

  • 它的行列式为零(\(det(A) = 0\)

  • 它的秩小于 n(\(rank(A) < n\)),这意味着矩阵的行或列向量中存在线性相关性。

  • 齐次方程 \(Ax = 0\) 有非零解(除了 \(x = 0\) 之外还有其他解)。

  • 它的特征值中至少有一个为 \(0\)

非奇异矩阵对应的线形变换是可逆的,也就是说它不会“丢失任何信息”

奇异矩阵对应的线形变换是“降维”的,造成了信息的丢失

矩阵可逆的等价条件

  1. \(A\) 是可逆的。

  2. \(A\) 的行列式 \(det(A) \neq 0\)

  3. \(A\) 的秩 \(rank(A) = n\)(满秩矩阵)。

  4. 齐次方程组 \(Ax = 0\) 只有零解。

  5. 非齐次方程组 \(Ax = b\) 对任意 \(b\) 都有唯一解。

  6. \(A\) 的行(列)向量线性无关。

高斯消元法求逆

  1. 构造增广矩阵:将原矩阵 \(A\) 和单位矩阵 \(I\) 并排放置,形成一个 \(n \times 2n\) 的增广矩阵 \([A | I]\)

  2. 化为简化行阶梯形:对增广矩阵实施一系列初等行变换,目标是将其左半部分(即 \(A\) 的部分)化为简化行阶梯形。

  3. 如果左半部分成功化为了单位矩阵 \(I\),那么右半部分就是 \(A\) 的逆矩阵 \(A^{-1}\)。即增广矩阵最终变为 \([I | A^{-1}]\)

  4. 如果在化简过程中,左半部分的某一行全为0(即无法得到 \(n\) 个主元),则说明矩阵 \(A\) 是奇异的(不可逆),逆矩阵 \(A^{-1}\) 不存在。

Info

初等行变换等价于左乘一个初等矩阵。整个行变换过程可以看作是用一系列初等矩阵 \(E_1, E_2, ..., E_k\) 左乘增广矩阵:\(E_{k} ... E_{2} E_{1} \left[A|I\right] = \left[I|A^{-1}\right]\) 这等价于:\(E_{k} ... E_{2} E_{1}A = I\)\(E_{k} ... E_{2} E_{1}I = A\) 根据逆矩阵定义,\(E_k ... E_2 E_1\) 就是 \(A^{-1}\)

单侧逆、伪逆

Info

将不可逆方阵加 \(\lambda I\) 正则化后进行求逆的方式请参考机器学习课程

单侧逆

分为左逆右逆

对于非方阵,不可能存在双侧逆,但可能存在单侧逆

左逆和右逆不一定同时存在,也不一定唯一

左逆

矩阵 \(L\)\(A\) 的左逆,如果 \(LA = I\)

对于 \(m×n\) 矩阵 \(A\),左逆存在的充要条件是:

  • \(A\) 是列满秩的,即\(rank(A) = n \leq m\)

  • \(A\) 的列向量线性无关

  • \(A\) 的零空间只包含零向量

计算方法:

\[ L = (A^{T}A)^{-1}A^{T} \]
右逆

矩阵 \(R\)\(A\) 的右逆,如果 \(AR = I\)

对于 \(m×n\) 矩阵 \(A\),右逆存在的充要条件是:

  • \(A\) 是行满秩的,即 \(rank(A) = m \leq n\)

  • \(A\) 的行向量线性无关

  • A的值域是整个 \(R^{m}\) 空间

计算方法:

\[ R = A^{T}(AA^{T})^{-1} \]

Moore-Penrose 伪逆

Moore-Penrose 伪逆 \(A^{+}\) 统一了单侧逆的概念:

  • 如果 \(A\) 列满秩:\(A^{+} = (A^{T}A)^{-1}A^{T}\)(左逆)

  • 如果 \(A\) 行满秩:\(A^{+} = A^{T}(AA^{T})^{-1}\)(右逆)

  • 如果 \(A\) 是满秩方阵:\(A^{+} = A^{-1}\)

  • 如果 \(A\) 秩亏缺:\(A^{+}\) 表达式较为复杂,此处省略

正定矩阵

Info

二次型是每一项都是二次的多变量函数,如:

\[ Q(x, y) = ax^{2} + bxy + cy^{2} \]

可以用矩阵和向量的形式表示任何二次型:

\[ Q(\mathbf{x}) = \mathbf{x}^{T}A\mathbf{x} \]

其中 \(\mathbf{x}\) 是一个列向量 \([x_1, x_2, ..., x_n]\), \(A\) 是一个 \(n \times n\) 的对称矩阵

如果一个 \(n×n\) 的实对称矩阵 \(A\),对于所有非零的实向量 \(\mathbf{x}\),其对应的二次型 \(\mathbf{x}^{T}A\mathbf{x}\) 的值都严格大于 \(0\),那么这个矩阵 \(A\) 就被称为正定矩阵,即:

\(A\) 是正定矩阵 \(\leftrightarrow\) 对于所有 \(x \neq 0\), 都有 \(\mathbf{x}^{T}A\mathbf{x}\)

判断矩阵是正定的方法

  1. 主子式判据:

矩阵 \(A\) 是正定的 当且仅当 它的所有顺序主子式均大于 \(0\)

  1. 特征值判据:

矩阵 \(A\) 是正定的 当且仅当 它的所有特征值都大于 \(0\)

正定矩阵的性质

  1. 可逆性:\(A\) 是满秩的,可逆的。

!!! info 证明 \(\det(A) \gt 0\) (即 \(n\) 阶顺序主子式大于 \(0\))

  1. 主对角线为正:\(A\) 的所有主对角线上的元素 \(a_{i, i}\) 都大于 \(0\)

    Info

    \(x\) 为第 \(i\) 个基向量,则 \(x^{T}Ax = a_{i, i} \gt 0\)

  2. 合同性:任何与正定矩阵合同的矩阵也是正定的

    Info

    存在可逆矩阵 \(P\),使得 \(B = P^{T}AP\)

  3. 加法封闭性:两个正定矩阵的和仍是正定矩阵

    Info

    \(x^{T}(A + B)x = x^{T}Ax + x^{T}Bx\)

特征值和特征向量

对于一个 \(n \times n\) 的方阵 \(A\),如果存在一个标量 \(\lambda\) 和一个非零向量 \(\mathbf{v}\),使得:

\[ A\mathbf{v} = \lambda \mathbf{v} \]

那么:

  • \(\lambda\) 称为 \(A\) 的特征值 (eigenvalue)

  • \(\mathbf{v}\) 称为对应于 \(\lambda\) 的特征向量 (eigenvector)

特征向量描述了矩阵 \(A\) 作用下方向不变的向量,而特征值表示缩放因子。

求解特征值和特征向量

  1. 构造特征方程

    \(A \mathbf{v} = \lambda \mathbf{v}\) 可以改写为 \((A - \lambda I) \mathbf{v} = 0\) 为了存在非零解 \(\mathbf{v}\),矩阵 \(A - \lambda I\) 必须是奇异的 (不可逆的),由此,其行列为 \(0\)

    由此得到特征方程/特征多项式

    \[ \det(A - \lambda I) = 0 \]
  2. 求解特征方程即可得到特征值

  3. 求解特征向量 将每个特征值代回特征方程,得到齐次线性方程组

    解空间(零空间)中的非零向量就是对应于 \(λ\) 的特征向量。通常,我们需要找到基础解系,即线性无关的特征向量。

    • 每个特征值至少有一个特征向量(如果特征值是重根,可能对应多个线性无关的特征向量)。

    • 特征向量通常表示为通解形式,并可以缩放(任何非零倍数都是特征向量)。

阅读资料

知乎