Featured image of post 线性代数基本概念

线性代数基本概念

对线性代数的复习笔记

前言

🚧🚧🚧

本笔记主要参考了3b1b的线性代数的本质,以及漫士沉思录的线性代数系列。本文尚未完成,还在施工中…🫠

🚧🚧🚧

基本概念

向量

向量是线性代数中最基本的概念。一个向量在不同人的眼中,可以有许多种理解。对于物理学家,向量就是既有大小又有方向的量,不在乎起点;对于计算机科学家,向量就是一个数列,储存着一定顺序的数字。对于数学家,向量可以更加抽象,只要满足“线性”性质,就可以是向量。

向量的线性性质

对于向量来说,拥有以下两种运算,便具有线性

  1. 数乘。向量整体乘以 $k$,就是每个分量都乘以 $k$。乘了数之后,该向量仍然具有意义。
  2. 相加。两个向量相加,就是每个分量分别相加。新的向量仍具有意义。

向量最基本的几何含义,表示从原点开始,指向坐标系中某一点的有向线段。该向量可以数乘 $k$,代表该向量在经过原点的一条直线上运动。两个向量相加,符合平行四边形法则,且可以先沿着 $x$ 轴移动一段距离,再沿着 $y$ 轴移动一段距离,符合定义。

从这个角度上来说,物体的位移、速度,显然可以加倍,也可以相加,所以是向量。电路当中的多个支路电流组成向量,可以数乘——代表状态翻倍;也可以相加,代表电路在不同激励下的响应。类似地,化学方程组中元素的个数,也可以看做向量。

线性组合

“线性代数”中,“线性”显然是一个重要的因素。线性组合的概念,也与向量的线性性质关系紧密。已知有两个向量 $\vec{x}$ 和 $\vec{y}$,此时, $$ a\vec{x}+b\vec{y} $$ 就是两个向量的线性组合,其中 $a$ 与 $b$ 为任意实数。

张成的空间

拥有了 $n$ 个向量之后,便可以考虑这 $n$ 个向量之间的线性组合。随意变化每个向量前面的系数,就可以得到一大堆向量。为了方便想象,默认这些向量的起点都是原点,可以用向量的终点来表示一个向量。此时,线性组合产生的所有向量,可以看成一个空间,也称为由 $n$ 个向量张成的线性空间

例如,对于零向量,张成的空间就是原点。对于一个非零向量,张成的空间是过原点的一条直线。对于两个不共线的向量,张成的空间就是一个过原点的平面。

线性相关与基底

线性相关

理解了张成的空间后,便可以考虑一些独特的情况。例如,明明有两个二维向量,但是它们共线,于是最终张成的空间只是一条直线。这时候,可以认为有一个向量是多余的,因为一条直线最少只需要一个向量就可以张成。该多余的向量也可以由另一个向量线性组合得出,因为都在同一个直线上。

接着,考虑三维中的情况。如果有三个共平面的向量,那么只能张成一个过原点的平面。此时,任意一个向量显然可以通过另外两个向量线性表示,因为该向量处在另外两个向量张成的空间上。

更一般地,只要存在某一个向量可以被其他向量线性组合得出,那么这些向量就是线性相关的

线性无关

显然,线性无关是线性相关的对立面。如果每一个向量都不能被其他向量线性组合得出,那么,这些向量就是线性无关的。更严谨地说,就是不存在一组不全为 0的 $k_1,k_2,\ldots,k_n$,使得 $$ k_1\vec{x_1}+k_2\vec{x_2}+\ldots+k_n\vec{x_n}=0 $$ 这里,之所以要强调不全为 0,就是因为如果系数全为 0,显然等式恒成立。因此要排除这种情况。

基底

对于一个线性空间,总可以用一些向量张成。此时,如果这些向量线性相关,那么可以去掉一个向量;如果还线性相关,可以继续删去向量,直到这些向量是线性无关的。此时,我们便找到了张成这个空间所需的最少向量,这些向量可以成为该空间的基底,这些向量的个数就是空间的维数

线性变换与矩阵

线性变换

线性变换,又可以叫线性映射,可以看成一个函数。它的输入是一个向量,输出也是一个向量。那么,区别于其他函数,线性变换有什么特点呢?答案也是线性: $$ f(k\vec{x})=kf(\vec{x}) $$ $$ f(\vec{x}+\vec{y})=f(\vec{x})+f(\vec{y}) $$ 先来考虑一些几何直观。经过线性变换之后,某个向量如果是其他向量的线性组合,那么,变换后的该向量也是变换后其他向量的线性组合,系数不变。以二维平面为例,可以理解为变换后坐标网格仍然平行分布且等距,同时原点不动

线性变换在理工科中普遍存在,拥有广泛的应用空间。例如,对于鸡兔同笼问题,将数头数脚的过程看成变换,输入为鸡和兔数量组成的向量,输出为头和脚数量组成的向量。如果输入的动物数量翻倍,显然头和脚的数量也翻倍。对于两个笼子,可以分别根据鸡兔数量算出头和脚,再相加;也可以看成一个笼子,直接数出鸡兔的数量,得到头和脚的数量。因此,该变换满足线性性质。所以,是一个线性变换。

同样,对于化学方程式配平,将输入看成各个化学物质前的系数,输出为元素左边总量减去右边总量。根据元素守恒,输出应该是零向量。显然,将输入翻倍,也就是把化学方程式两边乘以一个系数,仍然成立。将两个化学方程式相加,也就是对应系数相加后,输出可以是分别作用的相加,也可以看成一个式子的结果。因此,该变换满足线性性质。

矩阵的由来

既然我们涉及到了线性变换,那么,如何用定量的方式来表示一个线性变换呢?答案是利用线性变换的性质:某个向量如果是其他向量的线性组合,那么,变换后的该向量也是变换后其他向量的线性组合,系数不变

特别地,变换前的向量使用基向量线性组合表示,那么变换后的向量也可以用变换后的基向量表示。因此,只要记录变换后的基向量在哪里,就可以完全描述线性变换。

在二维空间中,假设变换后的 $\vec{i}$ 变为 $$ \begin{bmatrix}a \\ c \end{bmatrix} $$ 变换后的 $\vec{j}$ 变为变为 $$ \begin{bmatrix} b\\ d \end{bmatrix} $$那么,将这两个向量按列拼起来,就可以得到 2 乘 2 的矩阵 $$ \begin{bmatrix} a& b\\ c& d \end{bmatrix} $$ 这就是矩阵的由来。

矩阵的含义

正如前面所说,矩阵表示线性变换,因此有 $$ \begin{bmatrix} a& b\\ c& d\\ \end{bmatrix} \begin{bmatrix} x\\ y\\ \end{bmatrix} =x \begin{bmatrix} a\\ c\\ \end{bmatrix} +y\begin{bmatrix} b\\ d\\ \end{bmatrix} $$ 这代表原先空间中某一向量 (x, y),变换过后的坐标,可以通过 x 数乘变换后的 $\vec{i}$ 加上 y 乘以变换后的 $\vec{j}$ 得到。因此,可以得到矩阵乘以向量的计算公式。不难看出,这也可以推广到 3 维空间或者更高维的情况。

矩阵乘以矩阵

矩阵乘以矩阵代表什么呢?我们可以这样想:首先考虑变换前的某一向量。经过第一次变换,向量移动到了某个新的位置。再经过第二次变换,向量到达了第二个位置。此时,因为变换是线性的,所以两次变换后,网格仍然平行且等距,原点不变,这表示可以用一个线性变换等效两次线性变换。这也就是矩阵的乘法由来: $$ M_2M_1=M $$ 注意,因为矩阵和函数一样,放在输入量的左侧,因此该式子表示先进行 $M_1$ 变换,再进行 $M_2$ 变换。

矩阵乘以矩阵如何计算呢?还是从线性变换的角度来考虑。原先的 $\vec{i}$ 经过第一次变换,变成了 $M_1$ 的第一列。这个向量再经过第二次变换,通过矩阵和向量的乘法,就可以得到 $\vec{i}$ 经过两次变换的最终位置,也就是 $M$ 的第一列。同理,可以计算出 $M$ 的第二列。这也很容易推广到高维矩阵的情况。

直观理解的优点

考虑这样一个问题: $$ M_2M_1?M_1M_2 $$ 这个等式成立吗?从数值的角度,不方便理解。但是从几何的角度,这很直观。考虑逆时针旋转 90 °的变换,以及将 $\vec{j}$ 移动到 (1,1)的剪切变换。如果先转 90°,再剪切,那么此时 $\vec{i}$ 会移动到 (1,1)。如果先剪切,再转 90°,那么 $\vec{i}$ 是 (0,1)。显然,这两种情况下, $\vec{i}$ 变换后的坐标不一样,所以不相等。

再比如: $$ (AB)C=A(BC) $$ 这个式子要怎么证明呢?数值上看上去比较复杂,但是如何从几何的角度,这相当显然。因为先 $C$,再经历 $AB$ 等效的线性变换,与先经历 $BC$ 的等效变换,再经历 $A$ 的线性变换,显然是相等的。

列空间和秩

列空间

一个矩阵可以看成是许多个列拼起来得到的。这时候,我们考虑每一个列中的向量,它们张成的空间是什么呢?事实上,这些列向量也就是变换后的基底,因此,这些列向量的线性组合,就是经过矩阵的线性变换之后,所得到的新的空间。

对于不同的矩阵,它的列空间不一样。对于这些不同的列空间,最重要的区别就是维度。例如,对于这个矩阵 $$\begin{bmatrix} 1& 4\\ 2& 8\\ \end{bmatrix} $$ 显然,它的第一列和第二列线性相关,因此,它的列空间是一条直线,维度为 1。此时,为了衡量列空间的维度,我们称这个矩阵的秩为 1。

事实上,在严格的线性代数教材中,会证明一个矩阵的各行组成的向量组的秩和各列向量组成的向量组的秩是一样的。

满秩

如果一个矩阵的秩就等于该矩阵的维度,就表示该经历该线性变换后,维度没有发生变化。这时候,可以称该矩阵满秩。

线性方程组

线性方程组的表示

如果说为什么线性代数能够在这么多理工科中拥有广泛的应用,最基本的,就是因为线性代数可以方便地求解多元一次方程组,并且采用一种简单、一致的方法求解。

$$ \begin{cases} ax+by=e\\ cx+dy=f \end{cases}\Leftrightarrow \begin{bmatrix} a& b\\ c& d\\ \end{bmatrix} \begin{bmatrix} x\\ y\\ \end{bmatrix} = \begin{bmatrix} e\\ f\\ \end{bmatrix} $$ 如公式,二元一次方程组可以表示为一个二维向量乘以 2 x 2 矩阵,得到了新的二维向量。从线性变换的角度,已知某个向量变换后的位置,需要求出变换之前所在的位置。

满秩线性方程组的解法

如果这个变换之后的维度与变换之前的维度相同(也就满秩),并且矩阵是方阵,那么问题相对简单。此时,只需要找到该变换的逆变换,将逆变换作用到变换后的向量,就可以得到变换前向量的位置。这就好像是倒放一样,从后面的向量反向推出之前的向量。使用公式来表示,也就是 $$ x=A^{-1}b $$

逆矩阵的计算原理

经过一次变换,再经过一次逆变换,相当于没有变换,也就是基底的位置没有移动。这可以便是为单位矩阵 $I$,其主对角元都为 1,其他都为 0。则对于满足上述条件的矩阵,有 $$ A^{-1}A=I $$ 通过这个式子,如果想要计算 $A$ 的逆矩阵,有一个方法:通过高斯消元法,想办法将 $A$ 变为 $I$,同时,在 $A$ 矩阵右侧并上单位矩阵 $I$,每一次高斯消元法时,同时对一整行处理。这样,当你把 $A$ 变为 $I$ 时,可以看成给 $A$ 做了一次线性变换,这个变换就是 $A$ 的逆。同时,这个变换也记录在了原先 $A$ 右侧的单位矩阵上,通过变换,它变成了 $A^{-1}$。

零空间

上述讨论的,都是不改变空间维数的变换。如果空间维数改变,就不能通过上述方法求解了。这时候应该怎么办呢?

首先考虑较为简单的情况:一个线性变换将二维平面压成了一维直线。这种维度上的缺失意味着什么呢?这意味着原先肯定有多个点,在变换后被压成了同一个点。否则,不可能让维度发生变化。

这同时意味着该矩阵的秩为 1,不满秩。因此,肯定存在某一个列向量线性组合为 0。 $$ k_1\vec{x_1}+k_2\vec{x_2}=0 $$ 同时,该线性组合的系数也可以任意变化,因为等式右侧为 0,两边可以任意乘以系数。那么,考虑如果画出 $$ \begin{bmatrix} k_1\\ k_2 \end{bmatrix}​ $$ 那么,会组成一条直线。这条直线上每一个向量,经过线性变换,都会到达原点。因此,称这条直线为矩阵的零空间。

更一般地,如果有一个三阶矩阵秩为 2,就代表将三维空间压缩成二维平面。此时,零空间也是过原点的一条直线。如果有一个三阶矩阵秩为 1,就代表将三维空间压缩成一条一维直线,这时候,零空间是经过原点的一个平面。

可以发现,矩阵的秩加上零空间的维度,总等于矩阵本身的列数。或者说,矩阵的列空间的秩加上零空间的秩,等于列数。这是线性代数基本定理。

齐次线性方程组的解法

如果线性方程组的常数项为 0,就是齐次的情况。这时候,求线性方程组的解,就是寻找矩阵的零空间。这可以通过高斯消元法化简,进而表示出零空间的基底,从而写出零空间的表达式。

非齐次线性方程组的解法

对于非齐次线性方程组,首先需要经历齐次线性方程组同样的求解步骤,先求解出零空间。然后,通过代入值,可以找到一组特解。

此时,非齐次特解加上齐次通解,因为线性的性质,所以总满足原等式。所以,非齐次线性方程组的解也就是非齐次特解加上齐次通解。

行列式

行列式的由来

很多国内教材第一章就讲行列式,然而,我却选择在此处才讲到行列式。因为只有通过线性变换的视角,行列式才更有意义。

对于不同的线性变换,有的线性变换是扩张性的,将网格向外拉伸;有的线性变换是收缩性的,将网格向内挤压。应该如何描述这两者情况的不同呢?基于线性性质,可以考虑某一块面积在变换前后的大小之比。如果变换后面积变大,那么是扩张性的;如果面积变小,那么是收缩性的。

对于不同的网格区域,因为是线性变换,所以可以知道,这些区域面积变化的比例是一样的。就算对于一个不规则区域,也可以利用微积分的思想,将其分为许多不同的小块,每个小块的面积变化比例相同。

行列式的性质

行列式有几个基本的性质: 1. $$ \det(\vec{u},\vec{v})=\det(\vec{u}+k\vec{v},\vec{v}) $$ 在几何上,这代表平行四边形的一边可以在其直线上移动,不改变面积的大小。又称为平移不变形。 2. $$ \det(\vec{u_1}+k\vec{u_2},\vec{v})=\det(\vec{u},\vec{v})+k\det(\vec{u_2},\vec{v}) $$ 这表示的是行列式的线性性质。可以将其中一个向量分成多个向量的和,再分别计算这些向量和另一个向量的行列式,最后相加。 3. $$ \begin{vmatrix}1&0\\0&1\end{vmatrix}=1​ $$ 这也是二维面积的最初定义。对于更高维的情况,也就是单位矩阵的行列式为 1。

行列式的计算

通过以上三条性质,可以证明 $$ \begin{bmatrix}a&b\\c&d\end{bmatrix}​=ad-bc $$ 这也就是二维行列式的计算公式。对于三维行列式,可以通过行列式的性质,化简为多个二维行列式。这又被成为行列式的展开。

🚧🚧🚧

施工中,未完待续…😶‍🌫️

🚧🚧🚧

使用 Hugo 构建
主题 StackJimmy 设计