线性代数的本质笔记

课程来自b站发现的《线性代数的本质》,可以帮助从直觉层面理解线性代数的一些基础概念,以及把一些看似不同的数学概念解释之后,发现其实有内在的关联。

这里只对部分内容做一个记录,完整内容请自行观看视频~

01-向量究竟是什么

数字在线性代数中起到的主要作用就是缩放向量

线性代数仅围绕向量的加法和数乘

线性代数可以:

  • 实现对空间的操纵
  • 解线性方程组

02-线性组合,张成的空间与基

  • 每当用数字描述向量时,它都依赖于我们正在使用的基。

  • 所有可以表示为给定向量线性组合的向量的集合,被称作给定向量张成的空间(span) (下图中a,b在实数范围内变化)
    - 多个向量的线性组合:可以理解为对多个向量进行缩放,最后相加

  • 线性相关:

    有多个向量的时候,可以移除其中一个而不减小张成的空间

  • 线性无关:当所有向量都给张成的空间增添了新的维度

由此,其实可以想明白下面这句话为什么要这么定义:

向量空间的一组基是张成该空间的一个线性无关向量集

03-矩阵与线性变换

  • "变换"其实与"函数"是类似的

  • 线性变换需要遵守的性质:

  1. 直线在变换后仍然保持为直线,不能有所弯曲
  2. 原点必须保持固定

举例:对于白->蓝线,还都是直线,原点也没有变,但就不是线性变换了,因为对于一个对角线而言,在变换后的空间里它不再是直线了。线性变换可以视作"保持网格线平行且等距分布"的变换

  • 如何用数值取描述线性变换?
    实际上相当于只要记录两个基向量 i i i和 j j j变换后的位置

    一个二维变换仅由四个数字就可以完全确定:变换后的 i i i和 j j j的坐标。比如说下图这个2*2的矩阵,如果用它来描述线性变换,第一列就表示变换后的i,第二列就表示变换后的j向量(基向量)。 或者说,变换矩阵的两列其实就是两个基变换之后的位置

    举一个具体的例子:
  • 矩阵与向量相乘,可以理解为,将线性变换作用于两个新的基向量。如下图,结果就是黄色向量。

04-矩阵长发与线性变换复合的联系

  • 矩阵乘法与线性变换复合的联系
  • 两个矩阵相乘的几何意义:对基连续做两次线性变换,注意是从右向左的方向

    这里举例,对于M1,可以知道 j ^ j^{\hat{}} j^移到了[-2,0]的位置,然后再进行M2额计算,可以得到复合矩阵的第二列(j第二次变换后的位置)

05-行列式

先看两个具体的例子:

对于这个矩阵,相当于由原来11的矩形,变成了23=6的矩形,所以可以说这个线性变换将这个面积变为了6倍。

而这种情况下,虽然对空间有挤压,但是面积并未发生变化。

这个线性变换改变面积的比例被称为这个变换的行列式(二维),如果一个二维线性变换的行列式为0,说明这个变换将空间压缩到了更小的维度上(直觉:围成的面积为0,即i与j重合了)。

那当行列式为负数的时候呢?

类似于翻转,改变了空间的定向(对于二维,即i和j左右关系变了),绝对值仍然表示改变的面积比例。

二维行列式中,主对角线和另一条对角线元素的几何含义?
a、d表示平行四边形的底和高,而b、c表示平行四边形在对角方向上拉伸或压缩了多少。

对于三维矩阵,行列式相当于i,j,k基形成的平行六面体的体积 的缩放比例。如果此时行列式为0,那么矩阵的列必然线性相关(举例:因为至少有两个基会共线,这样三个基退化成平面/直线/点的情况,围成的体积为0)。关于定向是否改变:如果从右手系变成了左手系,那么定向发生了改变,变换的行列式为负数。

怎么用一句话解释:

det(M1M2) = det(M1)det(M2)

06-逆矩阵、列空间、秩与零空间

相关具体计算方法:高斯消元法、行阶梯型

将解方程组与几何直观联系起来:
A表示一种线性变化,这个等式表示把向量x经过线性变换后,使得它与v重合。

当A的行列式不为0,此时空间并未被挤压为零面积的区域,此时有且仅有一个向量x经变换后与v重合,此时也会存在A的逆,用A逆乘以v向量即可求解,相当于逆向的变换;

当A的行列式为0时,空间就被挤压了,此时就不再有逆变换了,但仍可以有解。比如,假设A把x的空间压缩成了一条直线,如果v恰好在这条直线的方向上,那么此时解存在。

与秩的关系:秩代表变换后空间的维数

当变换的结果为一条直线时,即结果是1维的,我们称这个变换的秩为1;

如果变换后的某个向量落在2维平面上,称这个变换的秩为2.

所有可能的输出向量A*v构成的集合称为A的列空间

矩阵的列表示基向量变换后的位置,这些变换后的基向量张成的空间就是所有可能的变换结果。

列空间就是矩阵的列所张成的空间。更精确的说,秩就是列空间的维数。秩最大的情况就是与列数相等,成为满秩。

零空间:变换后落在原点的向量的集合,被称为矩阵的零空间或者核kernel

零向量一定会被包含在列空间中,因为线性变换必须保持原点不变。如果是一个满秩变换,唯一能在变换后落在原点的就是零向量本身;如果是一个非满秩矩阵,会将空间压缩到一个更低的维度上,即会有很多向量在变换后成为零向量。

对于线性方程组Ax = v, 如果说v是一个零向量,x就相当于零空间,即这个向量方程所有可能的解。

#06-附注 非仿真 不同维度空间之间的线性变换

满秩:列空间维度和输入空间的维度相等

下图中,列空间其实就是三维空间中的一个二维平面,输入空间的维数就是基向量的个数2

另一个例子如下:从三维空间到二维的变换

07-点积与对偶性

这一节解决两个问题:

  • 点积为什么和顺序无关
  • 为什么点积的运算过程,即对应坐标相乘并将结果相加,和投影有所联系 -> 对偶性(两种事物之间自然而又出乎意料的对应关系)

点积举例

对于两个维数相同的向量,我们可以这样来求得点积结果:

点积的几何解释

这里可以是w的投影长度v的长度,也可以反过来是v的投影长度 w的长度,这里其实体现了点积和顺序无关,为什么呢?

首先,如果v和w向量长度相同,可以利用对称性,如下图,其实是一个镜像的关系,所以变换顺序也没有影响

接着,如果将其中一个向量进行缩放,对称性被破坏了,但向量本身缩放的倍数,其实就恰好等于这个向量的投影所缩放的倍数。倍数关系作为一个常数可被提取出去的,所以顺序不会有影响。

对偶性

为什么n维向量的点积和矩阵向量乘法(投影计算)之间是有联系的?

多维空间到一维空间的线性变换。假设有一个二维向量, v = [ 43 ] T v = [4 3]^T v=[43]T,就需要一个1X2的变换矩阵把它投影到一维上,假设此时这个转换矩阵就是[1, -2], 相当于把i投影到了一维数轴的1上,把j投影到了一维数轴的-2上,那么最终v向量变换后的一维向量就是 -2

对于任一线性变换,输出为1维数轴时,空间中会存在唯一的向量v与之相关。应用变换和与向量v做点积是一样的。
一个向量的对偶是由它定义的线性变换
一个多维空间到一维空间的线性变换 的对偶是 多维空间中的某个特定向量

08-01 叉积的标准介绍

两个向量的叉积表示的是这两个向量围成的平行四边形的面积。如果v在w的右侧,此时面积值为正,而如果v在w的左侧,面积值为负(右手定则大拇指朝内为负/ 以基向量i和j的定向为基础)。也就是说,顺序对叉积会有影响。

如果不想去判断方向,只想进行数值计算,那么也可以用行列式来求值,见05-行列式

以上两种不算是严格的叉积。真正的叉积是通过两个三维向量生成一个新的三维向量。如下所示,垂直于平行四边形的会有两个向量,使用右手定则确定。

08-02 以线性变换的眼光看叉积

为什么两个向量的叉积要写成 i j k的形式呢?

为什么这里面积就是行列式,基向量可以作为矩阵元(第一列的元素是i.j.k)?

对偶性的思想: 对于一个(多维)空间到数轴的线性变换时,都和那个空间中的唯一一个向量对应。即:应用线性变换和与这个向量点乘等价。

数值上说,是因为这类线性变换可以用一个只有一行的矩阵描述(相当于一个1*n维度的变换矩阵),而它的每一列给出了变换后基向量的位置。(例子如下,i变换后到2,j变换后到1)

对于二维空间,如上一节中的有下图中的对偶关系。

对于三维空间, 类似的,我们的计划是:

  1. 定义一个从三维空间到数轴的特定线性变换,且这个变换是根据向量v和w来定的。
  2. 找到这个变换的对偶向量
  3. 发现这个对偶向量就是v叉乘w

上面就是一个函数,这个3*3 矩阵可以理解为,第一列是一个任意可变向量,行列式的值就是由这三列的向量组成的平行六面体的体积。这个函数的重要性质是,它是线性的。由于它是线性的,就可以用矩阵乘法来描述这个函数,由于这个函数是从三维空间到一维空间,所以就会有一个1*3的变换矩阵;然后再利用对偶性,这个 1*3 的变换矩阵就可以立起来变成一个3*1的特定向量,并且可以将整个变换看作与这个特定向量(下图中的p向量)的点积。

  • 从数值计算的角度看:p的坐标值就是右侧括号里的三组结果

对于下图,把i,j,k放入矩阵第一列进行计算,得到的系数和前面的p的系数是相同的。在矩阵中插入i,j,k是为了提醒应该把这些系数解读为一个向量的坐标。

什么样的向量p,可以满足如下性质,使得它与向量x的点乘可以等于由向量x,v,w组成的平行六面体的有向体积?

  • 从几何角度,右边的行列式可以理解为以vw构成的平行四边形为底,向量x在垂直v和w方向上的分量作为高的体积值。而对于左侧,引申一下点乘的投影含义,向量p必然与v和w垂直,并且长度和这两个向量张成的平行四边形的面积相同。

09 基变换

对于空间中的同一个向量,如果选取的基向量不同,那么我们用于表示的数值就会不同。

对于基向量的转换,会有点别扭:蓝色是当前的坐标系下的向量,如果要把这个向量用其他系表示,那么前面的矩阵的是 "从当前基到其他系的基的变换"的逆矩阵

反之,

如何转化一个矩阵:最右的向量是用Jenifer的语言描述的,将她的向量转换到我们的系下后(基变换矩阵),再旋转90度,再转回Jenifer的系。这样得到的就是她的坐标系下,向左旋转90度后的结果。而不能直接用她的坐标乘以表示90度旋转的矩阵。

引申一下, A − 1 M A A^{-1}MA A−1MA这种形式都暗含一种数学上的转移作用,中间矩阵代表所见的变换,外侧表示视角的转换,最后表示的就是从其他视角看到的变换结果。

10 特征向量与特征值

如果对空间中的基向量做线性变换,在这个空间中如果有某个变量只进行了原方向上的缩放,那么这个向量就是特征向量,而这个特定方向上缩放的倍数就是特征值。

下图中,绿色是变换成原来3倍的i向量,大红色是变换后的j向量。绿线和黄线是变换后方向不变的向量,即特征向量,每个特征向量所缩放的倍数就是特征值。

假设有一个特征值为-0.5的特征向量,那么就意味着这个向量被反向且被压缩为原来的一半

变换后:重点在于仍在张成的直线上,没有旋转

对于一个三维空间内的旋转,如果可以找到这个旋转的特征向量,也就是留在它张成的空间里的向量,那么它其实就是旋转轴。把一个三维旋转看成绕某个轴旋转一定角度,比考虑相应的3*3矩阵更加直观。注意:这种情况下,旋转矩阵的特征值要为1,因为不会进行任何缩放。

求解特征值,其实就是去找非零解时,会导致降维的矩阵(A- λ \lambda λI),即det(A- λ \lambda λI) = 0.

二维线性变换不一定有特征向量,比如旋转90度,每个向量都旋转了且离开了其张成的空间。

  • 举例一,此时求出来特征值没有实数解,就代表没有特征向量。

  • 举例二,对于剪切变换:只有唯一的特征值,也只有在原来的i方向上的量可以一直不变

    不过注意:有可能出现只有一个特征值,但是特征向量不在一条直线上的情况,如下图,把基向量都扩大两倍,特征值是2,但每一个向量都是特征向量。

特征基

如果基向量恰好是特征向量,会发生什么?如下图的二维情况,此时的变换矩阵就会是一个对角阵,每一列就是基,对角元素就是对应的特征值。

好处:对于对角矩阵,如果要连续计算n次变换,其实也就是用对角元素的幂运算求解即可,不会很复杂。但是当一个矩阵不是对角时,可以变换成对角矩阵,然后求幂运算后再转化回原来的坐标系,计算上会更方便。

实际练习:

11 - 抽象向量空间

行列式和特征向量与所选坐标系无关

本节讨论函数和向量之间的若干联系。

函数与向量的对应关系:在相乘和相加上是类似的;对一个函数求导数,其实就相当于一种变换,算子和变换类似。

一个函数的线性变换是什么意思?线性要求可加性和成比例性。

为什么求导是线性运算,下图举例,求导运算可以满足可加性和成比例性。

一个线性变换可以通过它对基向量的作用来完全描述,这使得矩阵向量乘法成为可能。下面来用矩阵来描述求导。

对于空间中的无穷多个多项式进行求导,一个多项式其实就是一个线性组合的表示

基向量/基函数:x的不同次幂

相关推荐
车轮滚滚__13 分钟前
uniapp对接unipush 1.0 ios/android
笔记
云边有个稻草人3 小时前
【优选算法】—复写零(双指针算法)
笔记·算法·双指针算法
冷眼看人间恩怨11 小时前
【Qt笔记】QDockWidget控件详解
c++·笔记·qt·qdockwidget
大山同学12 小时前
第三章线性判别函数(二)
线性代数·算法·机器学习
云云32113 小时前
搭建云手机平台的技术要求?
服务器·线性代数·安全·智能手机·矩阵
云云32113 小时前
云手机有哪些用途?云手机选择推荐
服务器·线性代数·安全·智能手机·矩阵
十年一梦实验室13 小时前
【C++】sophus : sim_details.hpp 实现了矩阵函数 W、其导数,以及其逆 (十七)
开发语言·c++·线性代数·矩阵
阿正的梦工坊13 小时前
范德蒙矩阵(Vandermonde 矩阵)简介:意义、用途及编程应用
线性代数·矩阵
Hejjon17 小时前
SpringBoot 整合 SQLite 数据库
笔记
西洼工作室19 小时前
【java 正则表达式 笔记】
java·笔记·正则表达式