前言
PREFACE
我们从两个列向量 a1和 a2开始 .设它们各有三个分量,则分别对应了三维空间中的两个点 .为了把它们在图中画出来,还需要一个中心点,即对应于零向量的原点:
零向量 0 =
...
2 3 1
..
I
...
1 4 2
..I
..
I
0 0 0
...
a1 =
, a2 =
,
下图将向量呈现在二维平面上,此外我们也会有利用透视原理进行三维向量的画图练习 .下图标出了 a1、a2、2a1以及向量之和 a1 + a2.
3
1
3
22a1 + a2
...
..I
...
a1 + a2 =
4
a2 =
0
..I
...
0
=
0
..
I
4 6 2
...
..
...I
2
3
1
0
a1 =
上图展示了两类基本操作:向量加法 a1 + a2,以及数 2与向量的乘法 .再将这两种操作结合就产生了“线性组合”2a1 + a2:
线性组合 = ca1 + da2, ∈c, d . R
上述数值 c和 d也可以是负数 .在这种情况下, ca1和 da2将会改变为与 a1和 a2相反的方向:从右指向左 .同样非常重要的是, c和 d可以为分数 .下图是一张包含更多线性组合的示意图 .我们最终想要的是所有的形如 ca1 + da2的向量.
2
a
1
+
a
2
a1 + a2
1
a2
2
.a1 .
.a2
.a1 . a2
全体线性组合ca1 + da2填满了一整个平面——这是一个非常重要的事实.它是三维空间中包含了无限多点的一个平面.将系数 c和 d取更多的值,例如分数和小数,当 c, d取遍 R,ca1 + da2可以填满整个平面.而平面上的任意一点都可以表示为 a1和 a2的线性组合.
现在我们来讨论线性代数中的一个基本概念:矩阵.矩阵 A包含 n个列向量 a1, a2, ··· , an.在下面的示例中,我们给出的矩阵只有两个列向量 a1和 a2,它们是三维空间中的向量,即该矩阵有 3行 2列:
...
..I]
[
3行2列矩阵 21 m =3行 A =a1 a2= 34 n =2列 12
这两列的线性组合生成了三维空间中的一个平面,该平面有一个自然的名称,称为矩阵的列空间.一般地,对于任何矩阵 A,A的列空间由它的列向量的线性组合的全体构成.到目前为止,我们介绍了四个基本概念,均出现在第 1章.
(1)三维空间中的列向量a1和 a2.
(2)三维列向量的线性组合ca1 + da2.
(3)矩阵A包含列向量 a1和 a2.
(4)矩阵的列空间=列向量的线性组合的全体 =一个平面.接下来,在矩阵 A中添加两列新的三维列向量,得到:
2 1 3 0
A = ..I3 4 7 0 ...
1 2 3 .1
线性代数的一个阶段性目标是理解每个矩阵的列空间.我们尝试解释这个例子:
.第 1列和第 2列可生成与之前相同的平面(因为有相同的 a1和 a2);
.第 3列并没有提供新的信息,因为 a3属于上述平面:a3 = a1 + a2;
.第 4列不在平面上:加上 c4a4会提升或降低平面.
前言V
向量.
...
实际上,该矩阵的列空间是整个三维空间,即它包括三维空间中的所有点!从上述讨论可以看到如何逐列地、从左到右地进行操作 每一列可以独立于前几列(称线性无.关),或者也可表示为前几列的线性组合 为了产生三维空间中的每个点,需要三个线性无关的列.矩阵乘积 ACR= 34使用“线性组合”和“线性无关列”这两个词可以很好地描述上述 行列的矩阵 其中,A.31+2.124124第列是一个线性组合:列 列而第 、、列是线性无关的 要用线性无关的第 、、.列线性组合出零向量,唯一的方法是把这三列全用系数零来乘.1至此,第 章的一个关键思想已经呼之欲出 矩阵乘法是记录我们所知信息的完美方式 从 A..的四列中,我们挑选出线性无关列 ,并以它们为列组成一个矩阵 下面等式不难发现:C.aaa,,124以矩阵 的每一列的元素作为组合系数,乘到矩阵 的三个列 上,所得的线性组合,RCaaa,,124..ACR34 7 0 34 001 1 0=== . 3123其中,的第列依赖于其第列和第列,而 的第列显示了是如何依赖的:将矩阵 的ARC..I 矩阵乘法的解释:的第列等于乘以的第列CRjCRj.1.31.4本书的第 节将用两种方式介绍矩阵乘以向量的概念 然后第 节将介绍矩阵乘以矩阵的.概念这是线性代数中关键的操作与运算同样重要的是,看待矩阵乘法的方式不止一种...7正常来说,前言的目的是告诉读者整本书的架构和计划 本书主要分为两部分:前 章涵盖了.810大多数线性代数课程的内容 第章为选学章节,将介绍线性代数在目前比较活跃的学科中的..如前所述,本课程从矩阵 的列向量开始切入 接下来有两个关键步骤:第一步是取出矩阵A.列向量的所有线性组合,从而得到 的列空间;第二步是将矩阵分解为 dfAC+++caaeaa1234乘以,其中矩阵由的一组完整的线性无关列组成RCA.这仅仅是本书的前言,读者可能还没有练习过求解矩阵的列空间(对于 和的练习可能更CR是行空间——矩阵的行向量的线性组合的全体 当我们取出矩阵 个列的所有线性组合,以及 .nm
...
..I
正好是 A对应的列. A等于 C乘以 R:
21 3 0 21 0 10 1 0
..I
12 3 .1 12 .1 00 0 1
...
3
线性无关的第 1列和第 2列相加,即可得到 A的第 3列,即 a3 = a1 + a2 = 7 .
3
..I
应用,例如:深度学习.
0.1四个基本子空间
少).但是它们是本课程正确的“打开方式” .每个矩阵都有四个基本空间 .与 A的列空间并列的
个行的所有线性组合时,这些组合所得向量分别填满了“列空间”与“行空间”.
再加上另外两个子空间,就得到以下的全局示意图 .假设行空间是三维空间中的一个平面,那么在三维图像中有一个特殊的方向,即与行空间(平面)垂直的那个方向 .沿着该方向可画出一条过原点的垂线,这条垂线就是矩阵的零空间 .我们将看到寻找零空间中的向量(垂直于矩阵所有的行),等价于求解 Ax = 0——本课程中最基本的线性方程组 .
如果垂直于矩阵所有行的向量很重要,那么垂直于矩阵所有列的向量没有理由不重要 .图 0.1是矩阵的四个基本子空间的示意图.
整体图景
(m行 n列)
行空间维数为 r
m维空间
AT的零空间维数为 m . r
图 0.1四个基本子空间(关于 m行 n列的矩阵,有 r个线性无关列)
这幅四个子空间的示意图出自第 3章.空间正交的概念会出现在第 4章.而第 7章将介绍如何求出四个子空间的一组特殊“基向量”,那将是线性代数基本定理的最终部分 .所谓线性代数基本定理给出了一个令人惊叹的结论:对于任何矩阵(无论是方形还是一般矩形),其线性无关的列数总是等于其线性无关的行数.
0.2五种矩阵分解
矩阵分解是线性代数的基本思想之一 .矩阵所具有的特殊属性,总是可以通过乘法分解的方式体现出来.这一重要思想将会以直接且有用的方式在之后一章又一章地不断呈现.随着读者学习的深入,从实用性的角度考虑,正交矩阵将越来越重要 .因为正交矩阵的列是相互正交的单位向量,是如此完美!例如:
[]
2行 2列正交矩阵 = cos α . sin α :围绕原点逆时针旋转 α角度sin α cos α
以下五种重要的矩阵分解分别来自第 1、2、4、6、7章:
第 1章 A = CR = R通过对 C中线性无关列的线性组合,重构出 A的全部列向量第 2章 A = LU =下三角矩阵L乘以上三角矩阵U第 4章 A = QR =正交矩阵Q乘以上三角矩阵R
()
第 6章 S = QAQT =(正交矩阵Q)(包含特征值的A) 正交矩阵QT
()
第 7章 A = UEV T =(正交矩阵U)(包含奇异值的E) 正交矩阵V T
前言VII
请读者特别注意最后一种分解——奇异值分解(SVD).它适用于任何矩阵 A,其因子 U和 V的列各自均为相互正交的单位列向量 .并且,乘以 U或 V后,向量的长度保持不变——因此该运算不会产生放缩 .而 Z是一个以“奇异值”(均为正数)为主对角元的矩阵 .对学习了第 6章特征值和特征向量的读者,请务必继续阅读并学习第 7.1节的奇异值.
0.3深度学习
要想理解线性代数的真实意义,必须了解其应用 .当然,线性代数并非万能 .原因是现今应用数学的主导方向都要求系统不能完全是线性的!其中典型的代表是“深度学习” .它是解决“如何从数据中学习(一个基本而重要的科学问题)”的一种极其成功的方法 .在许多情况下,数据以矩阵形式出现 .我们的目标是深入矩阵内部,寻找变量之间的联系 .传统的处理方法是求解矩阵方程或微分方程组,这要求我们知道从输入量到输出量的系统运作规则 .有别于上述传统方法,深度学习成功地构建了一类具有两种输入 x和 v的函数 F (x, v),其中
.向量 v描述了训练数据的特征.
.矩阵 x为这些特征分配权重.
.函数 F (x, v)逼近于训练数据 v的正确输出量.
.当 v变为测试数据时,F (x, v)仍然接近正确的输出.
这一成功部分归结于学习函数 F的形式 .它会涉及大量数据,于是,仅要求 F是线性函数将完全不够.一般,我们首选的 F是分段线性的,从而达成简洁性和通用性的统一.
0.4本书中的应用和网站上的应用
对于学过线性代数课程的读者,我们希望这本书对您仍然有用 .所以有必要介绍线性代数的更多应用 .我们既可以用矩阵来表示数据,又可以用矩阵的运算来操作数据 .希望读者能通过对矩阵的特征值、特征向量、奇异值和奇异向量等内容的学习与理解从而实现“洞察矩阵” .此外,每一类应用中都会有相应的特殊矩阵——以下是四个例子:
.马尔可夫矩阵 M:每一列是一组概率,总和为 1.
.关联矩阵 A:对于一组节点相关的图和网络,矩阵 A描述了节点之间的连接(边).
.变换矩阵 F:傅里叶矩阵揭示了数据中的频率.
.协方差矩阵 C:方差是关于随机变量的关键信息.协方差体现了变量之间的依赖关系.
本书的第 6版包含了上述应用以及其他更多的内容 .对于深度学习中矩阵权重的关键计算,第 9章介绍了优化的思想.这是线性代数与微积分的交汇点:对于多变量函数 F (x),在其最小值点处偏导数均为零,从而得到相关的矩阵方程.
第 5版中的几个章节在本版中删减了,但并不是它们不重要 .这些章节仅仅是放到网站上了 .链接详见本书数字资源。该网站包括新版的几个章节的样本和所有课后习题的参考解答 .下述第 5版中的章节(以及更多部分)从书中转存到线上网站中:
.傅里叶级数
.范数和条件数
.迭代方法与预条件子
.密码学中的线性代数
在课程正式开始之前,这里有一些线性代数相关的小问题:
1.
假设纸上有长度分别为 r, s和 t的三条线段,这些长度需要满足什么条件,才能使其组成一个三角形(在此问题中,三条线的方向可以调整)?
2.假设三条线段
u, v, w的方向是固定且不同的,并且可以将这些线段伸缩为 au, bv, cw,其中 a, b, c可以取任意数.是否总能用这三个向量 au,bv,cw组成一个封闭的三角形?
3.
线性代数不局限于平面!假设在三维空间中有四条不同方向的线段 u, v, w, z,则是否总能选择不为零的数 a, b, c, d,使得 au + bv + cw + dz = 0成立?
感谢 Wellesley出版社的 Ashley C. Fernandes,协助完成了本书的排版、网站的维护,以及向热心读者提供优质教材等工作. Gilbert Strang
