说到矩阵,我们可能会立刻想到线性代数。 线性代数,不仅是大学理工科本科生的必修课,也是工作中十分有用的理论工具。 例如在机器学习、图像处理、机器人导航、自动控制等领域,线性代数都有着十分广泛的应用。理解并学会运用它,是十分划算的。 但是,线性代数并不友好。 对于很多初学者而言,虽然期末考试可以考个八九十分,但在整个学期的学习过程中,往往从第一节课开始,从头到尾,自始至终,心中都充斥着几个字,那就是,
很多概念,好像都是无中生有地出现在课本上,前不着村后不着店,让人感觉非常虚无缥缈。虽然我们憋屈地通过死记硬背,解决了作业和考试的问题,但实际上,对于知识本身来说,我们往往跟没学差不多,考后一个月内,立即忘得一干二净。 那么,问题究竟出在哪?为什么线性代数如此难以理解? 好,为了理清思路,我们先来研究一个问题。 在研究这个问题之前,我们先来介绍一下,
比如, 这就是一个两行三列的矩阵,记作2×3的矩阵。 当然,也有三行两列的矩阵,比如: 这里,矩阵中的元素都是实数,因此称为实矩阵。当然,也可以填入复数,那就是复矩阵。 为了方便,我们往往将一个矩阵用大写字母来表示,比如: 这就是教科书上的矩阵了。 那么现在,我有一个很自然的疑问,就是,
有人说,老王,你是不是来捣乱的?这有啥可研究的? 矩阵为啥是方的,那当然是因为数学界把它定义成方的啊! 所谓定义,就是“规定”,
比如,
表示五个三相加。 这个“叉”的含义,就是定义出来的,你完全可以把3×5定义成5个3相减。但是,这种定义方式就不是数学界所使用的了。 好,既然这个矩阵,它是被定义成方形的,那么,请问,
比如,三角形: 有人说,因为矩形好看。 我认为三角形也挺好看啊。 有人说老王你不要纠缠这种问题好不好,你到底是来干什么的? 事实上,不是我无聊啊,而是,我翻开书,大脑中第一个问题就是这个问题! 你说,矩阵定义成这个东西,那么,你这本书起码要给点说法不是? 否则,当然会让人产生莫名其妙,无中生有的空虚感。 好,有人说,我想起来了。 之所以矩阵被定义成矩形,是因为,矩阵是用来表示方程组的,
比如, 这是一个二元一次方程组,而在消元的过程中,x和y实际上并没有发生任何变化,因此我们可以直接将x和y的系数拿出来,组成一个“数组”,即: 增广矩阵 这,叫作方程组的“增广矩阵”。 所以,很多人就认为,
有这种理解是很正常的,因为几乎所有教科书第一章第二章都在折腾方程组嘛,所以,很多人在学习矩阵的时候,就是用这条思路学下去的。 但是,如果你一旦陷入这套原理,那么你会发现,整个学习过程,都将是十分难受,十分便秘的,很多概念完全无法理解。 我随便举几个例子。 比如,
说,有两个矩阵,A和B,如果你找得到另外一个矩阵P,使得这仨哥们满足: 那么,我们就说,A和B相似。 (P-1指的是P的逆,反正也是个矩阵,这个以后再说) 注意,这个相似的英文就是similar,就是长得像的意思。 好,如果我们陷入矩阵就是方程组的思维,那么,矩阵相似,应该是两个方程组相似了? 方程哪有相似的说法呢??? 真是一头雾水,莫名其妙。 又比如,还有一套著名的概念:
也就是说,矩阵它有特征,而且有几个数字,可以代表矩阵的特征。 难道方程组还有特征? 是不是又觉得很莫名其妙。 这样的例子简直是多如牛毛,不胜枚举。 那问题到底出在哪? 实际上,这个问题,跟我们教科书有一定的关系;跟我们的课堂,也有一定的关系。 我不知道是不是很多老师觉得我刚才问的那几个问题太简单了,不屑于在课堂上讲。但实际上,我觉得,解答这些问题是非常重要的。 就是,
那么,为什么矩阵有这么多相关概念,却又难得理解呢?
首先,
而是,
矩阵的定义,无需引入方程组。你让矩阵的这些数字代表什么,它就可以代表什么。 比如,我统计每天上午和下午的工作时间,连续统计了三天,分别是,
那么,我们可以将这些数据,表达成一个矩阵, 然后我可以对这些数据进行各种计算和处理,比如,我需要计算平均值,或最大值,等等。 也就是说,
那么,有人说,
这就是问题的要害。 事实上,所有的问题,根本在于,我们很多人在学习的过程当中,
而且更要命的是,这两个顺序,正好是个反的。 什么意思呢? 首先,历史上,矩阵这个东西是怎么发展出来的? 我们刚才已经讲了,就是人们在研究方程组的时候,把它的系数,提取出来,解方程。用系数的阵列来解方程,最早在公元1世纪的《九章算术》中就有了。 然后,我们就来研究这堆矩形的数字的阵列,发现,其实可以单独搞成一门学问,于是就给它起了个名字,叫“矩阵(matrix)”。 Matrix这个词是1850年才出现的。 因此,矩阵的历史发展顺序是,
而现代线性代数理论的逻辑顺序是什么呢? 是,
什么是矩阵呢,矩阵就是一堆数字的阵列: 这个A,就是一个矩阵。除此之外,再无其它的意思,和方程组没半毛钱的关系。 那么有人说,既然这样,那么这矩阵在理论上,怎么又跟方程组扯上关系了呢? 那是因为,
矩阵,
等等。 但是注意,定义这么多运算,也不需要引入方程组这玩意,而只需要在矩阵的定义基础上,再定义矩阵的运算法则。(关于矩阵的计算,专栏有详细介绍) 然后,对于一个方程组, 我们可以利用该方程组的系数,创造出三个矩阵: 然后,利用矩阵的乘法法则,将该方程组表示为: 这样,矩阵和方程组在教科书中就扯上关系了。 但是,我们一定要非常明白,在线性代数课本中,
这就是为什么,很多人无法理解线性代数的原因。因为很多人,包括我刚上课时,总是在想,这相似矩阵和方程组到底有啥关系呢? 实际上,相似是另一套理论体系中的东西,铺垫相当多,不是一两句话可以说清的。关于这个,我们在专栏的视频中详细介绍。 可见,我们不理解很多东西的原因,并不是我们的智商问题,而是一些稀烂的教科书,让我们一开始就掉进坑里,再也爬不出来,直至怀疑人生。 |
|