Friday, February 6, 2015

李尚志 理解矩阵 矢量是什么?满足关于加法和数乘的那八点运算规定的集合的元素都可称为矢量。故,三维笛卡尔坐标系(人类所熟知的)中的矢量,不过是一种特殊的矢量。

博主在主贴中开始提到的问题,即“逆序数”的概念,在下面这个视频里面有一个很好的说明,
http://v.youku.com/v_playlist/f1862776o1p5.html


按照李尚志老师的说法,“(向量)空间为体,矩阵为用”,矩阵的引入,从解方程组的角度,也极其自然。

同济这本书现在好像也不把行列式放在最前头了,但是要说明行列式的逆序数定义法,要从二元,三元行列式入手,而对二元,三元行列式的最直观的理解,其实是从空间解析几何和矢量代数里面来的。

李老师说的很好,矢量是什么?满足关于加法和数乘的那八点运算规定的集合的元素都可称为矢量。故,三维笛卡尔坐标系(人类所熟知的)中的矢量,不过是一种特殊的矢量。

由于线性方程的系数构成行向量,而且也可以进行加法和数乘(三种初等变换是同解变形),故也可称为矢量。

n次多项式的集合同样组成向量空间。

他们之间还可以构成同构。故搞清楚了一个,其他空间也就搞清楚了。

函数也可组成向量空间。如福立叶级数,小波基,其实都可认为是某个线性空间的基。

如此,则向量空间的八条其实就规定了向量。向量是无须作定义的。

同济的书那种写法,如果老师水准不够的话,学生根本不能领会其中精义的。他们原意可能是不想讲的太深,结果却适得其反。

李尚志老师这种讲法,是从线性方程组入手的,从具体的例子出发,各种概念(线性相关,rank),理论(线性空间,变换),算法(高斯消去)的motivation都一清二楚。这其实才真正体现了理论建立的实际过程。才符合人们认知的规律。

李尚志的行列式引入我觉得是最本质的,看了之后,觉得很爽。

我还看了一下MIT Strang的线性代数的Video,如果论到逻辑的清晰性,应该说可能还不如李尚志的讲法。但是两者毫无例外都是从线性方程组开始讲的。

说句题外话,过去数学发展的历史难道不都是如此?都是从具体的问题出发。伟大的问题导致伟大的理论产生。只是由于法国那批布尔巴基的成员倡导公理化之风后,才把教材给弄成了那个样子,真是造孽。



理解矩阵(一)
116557人阅读 评论(175) 收藏 举报
前不久chensh出于不可告人的目的,要充当老师,教别人线性代数。于是我被揪住就线性代数中一些务虚性的问题与他讨论了几次。很明显,chensh觉得,要让自己在讲线性代数的时候不被那位强势的学生认为是神经病,还是比较难的事情。
可怜的chensh,谁让你趟这个地雷阵?!色令智昏啊!
线性代数课程,无论你从行列式入手还是直接从矩阵入手,从一开始就充斥着莫名其妙。比如说,在全国一般工科院系教学中应用最广泛的同济线性代数教材(现在到了第四版),一上来就介绍逆序数这个“前无古人,后无来者”的古怪概念,然后用逆序数给出行列式的一个极不直观的定义,接着是一些简直犯傻的行列式性质和习题——把这行乘一个系数加到另一行上,再把那一列减过来,折腾得那叫一个热闹,可就是压根看不出这个东西有嘛用。大多数像我一样资质平庸的学生到这里就有点犯晕:连这是个什么东西都模模糊糊的,就开始钻火圈表演了,这未免太“无厘头”了吧!于是开始有人逃课,更多的人开始抄作业。这下就中招了,因为其后的发展可以用一句峰回路转来形容,紧跟着这个无厘头的行列式的,是一个同样无厘头但是伟大的无以复加的家伙的出场——矩阵来了!多年之后,我才明白,当老师犯傻似地用中括号把一堆傻了吧叽的数括起来,并且不紧不慢地说:“这个东西叫做矩阵”的时候,我的数学生涯掀开了何等悲壮辛酸、惨绝人寰的一幕!自那以后,在几乎所有跟“学问”二字稍微沾点边的东西里,矩阵这个家伙从不缺席。对于我这个没能一次搞定线性代数的笨蛋来说,矩阵老大的不请自来每每搞得我灰头土脸,头破血流。长期以来,我在阅读中一见矩阵,就如同阿Q见到了假洋鬼子,揉揉额角就绕道走。
事实上,我并不是特例。一般工科学生初学线性代数,通常都会感到困难。这种情形在国内外皆然。瑞典数学家Lars Garding在其名著Encounter with Mathematics中说:“如果不熟悉线性代数的概念,要去学习自然科学,现在看来就和文盲差不多。”,然而“按照现行的国际标准,线性代数是通过公理化来表述的,它是第二代数学模型,...,这就带来了教学上的困难。”事实上,当我们开始学习线性代数的时候,不知不觉就进入了“第二代数学模型”的范畴当中,这意味着数学的表述方式和抽象性有了一次全面的进化,对于从小一直在“第一代数学模型”,即以实用为导向的、具体的数学模型中学习的我们来说,在没有并明确告知的情况下进行如此剧烈的paradigm shift,不感到困难才是奇怪的。
大部分工科学生,往往是在学习了一些后继课程,如数值分析、数学规划、矩阵论之后,才逐渐能够理解和熟练运用线性代数。即便如此,不少人即使能够很熟练地以线性代数为工具进行科研和应用工作,但对于很多这门课程的初学者提出的、看上去是很基础的问题却并不清楚。比如说:
* 矩阵究竟是什么东西?向量可以被认为是具有n个相互独立的性质(维度)的对象的表示,矩阵又是什么呢?我们如果认为矩阵是一组列(行)向量组成的新的复合向量的展开式,那么为什么这种展开式具有如此广泛的应用?特别是,为什么偏偏二维的展开式如此有用?如果矩阵中每一个元素又是一个向量,那么我们再展开一次,变成三维的立方阵,是不是更有用?
* 矩阵的乘法规则究竟为什么这样规定?为什么这样一种怪异的乘法规则却能够在实践中发挥如此巨大的功效?很多看上去似乎是完全不相关的问题,最后竟然都归结到矩阵的乘法,这难道不是很奇妙的事情?难道在矩阵乘法那看上去莫名其妙的规则下面,包含着世界的某些本质规律?如果是的话,这些本质规律是什么?
* 行列式究竟是一个什么东西?为什么会有如此怪异的计算规则?行列式与其对应方阵本质上是什么关系?为什么只有方阵才有对应的行列式,而一般矩阵就没有(不要觉得这个问题很蠢,如果必要,针对m x n矩阵定义行列式不是做不到的,之所以不做,是因为没有这个必要,但是为什么没有这个必要)?而且,行列式的计算规则,看上去跟矩阵的任何计算规则都没有直观的联系,为什么又在很多方面决定了矩阵的性质?难道这一切仅是巧合?
* 矩阵为什么可以分块计算?分块计算这件事情看上去是那么随意,为什么竟是可行的?
* 对于矩阵转置运算AT,有(AB)T = BTAT,对于矩阵求逆运算A-1,有(AB)-1 = B-1A-1。两个看上去完全没有什么关系的运算,为什么有着类似的性质?这仅仅是巧合吗?
* 为什么说P-1AP得到的矩阵与A矩阵“相似”?这里的“相似”是什么意思?
* 特征值和特征向量的本质是什么?它们定义就让人很惊讶,因为Ax =λx,一个诺大的矩阵的效应,竟然不过相当于一个小小的数λ,确实有点奇妙。但何至于用“特征”甚至“本征”来界定?它们刻划的究竟是什么?
这样的一类问题,经常让使用线性代数已经很多年的人都感到为难。就好像大人面对小孩子的刨根问底,最后总会迫不得已地说“就这样吧,到此为止”一样,面对这样的问题,很多老手们最后也只能用:“就是这么规定的,你接受并且记住就好”来搪塞。然而,这样的问题如果不能获得回答,线性代数对于我们来说就是一个粗暴的、不讲道理的、莫名其妙的规则集合,我们会感到,自己并不是在学习一门学问,而是被不由分说地“抛到”一个强制的世界中,只是在考试的皮鞭挥舞之下被迫赶路,全然无法领略其中的美妙、和谐与统一。直到多年以后,我们已经发觉这门学问如此的有用,却仍然会非常迷惑:怎么这么凑巧?
我认为,这是我们的线性代数教学中直觉性丧失的后果。上述这些涉及到“如何能”、“怎么会”的问题,仅仅通过纯粹的数学证明来回答,是不能令提问者满意的。比如,如果你通过一般的证明方法论证了矩阵分块运算确实可行,那么这并不能够让提问者的疑惑得到解决。他们真正的困惑是:矩阵分块运算为什么竟然是可行的?究竟只是凑巧,还是说这是由矩阵这种对象的某种本质所必然决定的?如果是后者,那么矩阵的这些本质是什么?只要对上述那些问题稍加考虑,我们就会发现,所有这些问题都不是单纯依靠数学证明所能够解决的。像我们的教科书那样,凡事用数学证明,最后培养出来的学生,只能熟练地使用工具,却欠缺真正意义上的理解。
自从1930年代法国布尔巴基学派兴起以来,数学的公理化、系统性描述已经获得巨大的成功,这使得我们接受的数学教育在严谨性上大大提高。然而数学公理化的一个备受争议的副作用,就是一般数学教育中直觉性的丧失。数学家们似乎认为直觉性与抽象性是矛盾的,因此毫不犹豫地牺牲掉前者。然而包括我本人在内的很多人都对此表示怀疑,我们不认为直觉性与抽象性一定相互矛盾,特别是在数学教育中和数学教材中,帮助学生建立直觉,有助于它们理解那些抽象的概念,进而理解数学的本质。反之,如果一味注重形式上的严格性,学生就好像被迫进行钻火圈表演的小白鼠一样,变成枯燥的规则的奴隶。
对于线性代数的类似上述所提到的一些直觉性的问题,两年多来我断断续续地反复思考了四、五次,为此阅读了好几本国内外线性代数、数值分析、代数和数学通论性书籍,其中像前苏联的名著《数学:它的内容、方法和意义》、龚昇教授的《线性代数五讲》、前面提到的Encounter with Mathematics(《数学概观》)以及Thomas A. Garrity的《数学拾遗》都给我很大的启发。不过即使如此,我对这个主题的认识也经历了好几次自我否定。比如以前思考的一些结论曾经写在自己的blog里,但是现在看来,这些结论基本上都是错误的。因此打算把自己现在的有关理解比较完整地记录下来,一方面是因为我觉得现在的理解比较成熟了,可以拿出来与别人探讨,向别人请教。另一方面,如果以后再有进一步的认识,把现在的理解给推翻了,那现在写的这个snapshot也是很有意义的。
因为打算写得比较多,所以会分几次慢慢写。也不知道是不是有时间慢慢写完整,会不会中断,写着看吧。
--------------------------------------------------------------------------
今天先谈谈对线形空间和矩阵的几个核心概念的理解。这些东西大部分是凭着自己的理解写出来的,基本上不抄书,可能有错误的地方,希望能够被指出。但我希望做到直觉,也就是说能把数学背后说的实质问题说出来。
首先说说空间(space),这个概念是现代数学的命根子之一,从拓扑空间开始,一步步往上加定义,可以形成很多空间。线形空间其实还是比较初级的,如果在里面定义了范数,就成了赋范线性空间。赋范线性空间满足完备性,就成了巴那赫空间;赋范线性空间中定义角度,就有了内积空间,内积空间再满足完备性,就得到希尔伯特空间。
总之,空间有很多种。你要是去看某种空间的数学定义,大致都是“存在一个集合,在这个集合上定义某某概念,然后满足某些性质”,就可以被称为空间。这未免有点奇怪,为什么要用“空间”来称呼一些这样的集合呢?大家将会看到,其实这是很有道理的。
我们一般人最熟悉的空间,毫无疑问就是我们生活在其中的(按照牛顿的绝对时空观)的三维空间,从数学上说,这是一个三维的欧几里德空间,我们先不管那么多,先看看我们熟悉的这样一个空间有些什么最基本的特点。仔细想想我们就会知道,这个三维的空间:1. 由很多(实际上是无穷多个)位置点组成;2. 这些点之间存在相对的关系;3. 可以在空间中定义长度、角度;4. 这个空间可以容纳运动,这里我们所说的运动是从一个点到另一个点的移动(变换),而不是微积分意义上的“连续”性的运动,
上面的这些性质中,最最关键的是第4条。第1、2条只能说是空间的基础,不算是空间特有的性质,凡是讨论数学问题,都得有一个集合,大多数还得在这个集合上定义一些结构(关系),并不是说有了这些就算是空间。而第3条太特殊,其他的空间不需要具备,更不是关键的性质。只有第4条是空间的本质,也就是说,容纳运动是空间的本质特征。
认识到了这些,我们就可以把我们关于三维空间的认识扩展到其他的空间。事实上,不管是什么空间,都必须容纳和支持在其中发生的符合规则的运动(变换)。你会发现,在某种空间中往往会存在一种相对应的变换,比如拓扑空间中有拓扑变换,线性空间中有线性变换,仿射空间中有仿射变换,其实这些变换都只不过是对应空间中允许的运动形式而已。
因此只要知道,“空间”是容纳运动的一个对象集合,而变换则规定了对应空间的运动。
下面我们来看看线性空间。线性空间的定义任何一本书上都有,但是既然我们承认线性空间是个空间,那么有两个最基本的问题必须首先得到解决,那就是:
1. 空间是一个对象集合,线性空间也是空间,所以也是一个对象集合。那么线性空间是什么样的对象的集合?或者说,线性空间中的对象有什么共同点吗?
2. 线性空间中的运动如何表述的?也就是,线性变换是如何表示的?
我们先来回答第一个问题,回答这个问题的时候其实是不用拐弯抹角的,可以直截了当的给出答案。线性空间中的任何一个对象,通过选取基和坐标的办法,都可以表达为向量的形式。通常的向量空间我就不说了,举两个不那么平凡的例子:
L1. 最高次项不大于n次的多项式的全体构成一个线性空间,也就是说,这个线性空间中的每一个对象是一个多项式。如果我们以x0, x1, ..., xn为基,那么任何一个这样的多项式都可以表达为一组n+1维向量,其中的每一个分量ai其实就是多项式中x(i-1)项的系数。值得说明的是,基的选取有多种办法,只要所选取的那一组基线性无关就可以。这要用到后面提到的概念了,所以这里先不说,提一下而已。
L2. 闭区间[a, b]上的n阶连续可微函数的全体,构成一个线性空间。也就是说,这个线性空间的每一个对象是一个连续函数。对于其中任何一个连续函数,根据魏尔斯特拉斯定理,一定可以找到最高次项不大于n的多项式函数,使之与该连续函数的差为0,也就是说,完全相等。这样就把问题归结为L1了。后面就不用再重复了。
所以说,向量是很厉害的,只要你找到合适的基,用向量可以表示线性空间里任何一个对象。这里头大有文章,因为向量表面上只是一列数,但是其实由于它的有序性,所以除了这些数本身携带的信息之外,还可以在每个数的对应位置上携带信息。为什么在程序设计中数组最简单,却又威力无穷呢?根本原因就在于此。这是另一个问题了,这里就不说了。
下面来回答第二个问题,这个问题的回答会涉及到线性代数的一个最根本的问题。
线性空间中的运动,被称为线性变换。也就是说,你从线性空间中的一个点运动到任意的另外一个点,都可以通过一个线性变化来完成。那么,线性变换如何表示呢?很有意思,在线性空间中,当你选定一组基之后,不仅可以用一个向量来描述空间中的任何一个对象,而且可以用矩阵来描述该空间中的任何一个运动(变换)。而使某个对象发生对应运动的方法,就是用代表那个运动的矩阵,乘以代表那个对象的向量。
简而言之,在线性空间中选定基之后,向量刻画对象,矩阵刻画对象的运动,用矩阵与向量的乘法施加运动。
是的,矩阵的本质是运动的描述。如果以后有人问你矩阵是什么,那么你就可以响亮地告诉他,矩阵的本质是运动的描述。(chensh,说你呢!)
可是多么有意思啊,向量本身不是也可以看成是n x 1矩阵吗?这实在是很奇妙,一个空间中的对象和运动竟然可以用相类同的方式表示。能说这是巧合吗?如果是巧合的话,那可真是幸运的巧合!可以说,线性代数中大多数奇妙的性质,均与这个巧合有直接的关系。
(待续)


理解矩阵(二)
71989人阅读 评论(166) 收藏 举报

接着理解矩阵。
上一篇里说“矩阵是运动的描述”,到现在为止,好像大家都还没什么意见。但是我相信早晚会有数学系出身的网友来拍板转。因为运动这个概念,在数学和物理里是跟微积分联系在一起的。我们学习微积分的时候,总会有人照本宣科地告诉你,初等数学是研究常量的数学,是研究静态的数学,高等数学是变量的数学,是研究运动的数学。大家口口相传,差不多人人都知道这句话。但是真知道这句话说的是什么意思的人,好像也不多。简而言之,在我们人类的经验里,运动是一个连续过程,从A点到B点,就算走得最快的光,也是需要一个时间来逐点地经过AB之间的路径,这就带来了连续性的概念。而连续这个事情,如果不定义极限的概念,根本就解释不了。古希腊人的数学非常强,但就是缺乏极限观念,所以解释不了运动,被芝诺的那些著名悖论(飞箭不动、飞毛腿阿喀琉斯跑不过乌龟等四个悖论)搞得死去活来。因为这篇文章不是讲微积分的,所以我就不多说了。有兴趣的读者可以去看看齐民友教授写的《重温微积分》。我就是读了这本书开头的部分,才明白“高等数学是研究运动的数学”这句话的道理。
不过在我这个《理解矩阵》的文章里,“运动”的概念不是微积分中的连续性的运动,而是瞬间发生的变化。比如这个时刻在A点,经过一个“运动”,一下子就“跃迁”到了B点,其中不需要经过A点与B点之间的任何一个点。这样的“运动”,或者说“跃迁”,是违反我们日常的经验的。不过了解一点量子物理常识的人,就会立刻指出,量子(例如电子)在不同的能量级轨道上跳跃,就是瞬间发生的,具有这样一种跃迁行为。所以说,自然界中并不是没有这种运动现象,只不过宏观上我们观察不到。但是不管怎么说,“运动”这个词用在这里,还是容易产生歧义的,说得更确切些,应该是“跃迁”。因此这句话可以改成:
“矩阵是线性空间里跃迁的描述”。
可是这样说又太物理,也就是说太具体,而不够数学,也就是说不够抽象。因此我们最后换用一个正牌的数学术语——变换,来描述这个事情。这样一说,大家就应该明白了,所谓变换,其实就是空间里从一个点(元素/对象)到另一个点(元素/对象)的跃迁。比如说,拓扑变换,就是在拓扑空间里从一个点到另一个点的跃迁。再比如说,仿射变换,就是在仿射空间里从一个点到另一个点的跃迁。附带说一下,这个仿射空间跟向量空间是亲兄弟。做计算机图形学的朋友都知道,尽管描述一个三维对象只需要三维向量,但所有的计算机图形学变换矩阵都是4 x 4的。说其原因,很多书上都写着“为了使用中方便”,这在我看来简直就是企图蒙混过关。真正的原因,是因为在计算机图形学里应用的图形变换,实际上是在仿射空间而不是向量空间中进行的。想想看,在向量空间里相一个向量平行移动以后仍是相同的那个向量,而现实世界等长的两个平行线段当然不能被认为同一个东西,所以计算机图形学的生存空间实际上是仿射空间。而仿射变换的矩阵表示根本就是4 x 4的。又扯远了,有兴趣的读者可以去看《计算机图形学——几何工具算法详解》。
一旦我们理解了“变换”这个概念,矩阵的定义就变成:
“矩阵是线性空间里的变换的描述。”
到这里为止,我们终于得到了一个看上去比较数学的定义。不过还要多说几句。教材上一般是这么说的,在一个线性空间V里的一个线性变换T,当选定一组基之后,就可以表示为矩阵。因此我们还要说清楚到底什么是线性变换,什么是基,什么叫选定一组基。线性变换的定义是很简单的,设有一种变换T,使得对于线性空间V中间任何两个不相同的对象x和y,以及任意实数a和b,有:
T(ax + by) = aT(x) + bT(y),
那么就称T为线性变换。

定义都是这么写的,但是光看定义还得不到直觉的理解。线性变换究竟是一种什么样的变换?我们刚才说了,变换是从空间的一个点跃迁到另一个点,而线性变换,就是从一个线性空间V的某一个点跃迁到另一个线性空间W的另一个点的运动。这句话里蕴含着一层意思,就是说一个点不仅可以变换到同一个线性空间中的另一个点,而且可以变换到另一个线性空间中的另一个点去。不管你怎么变,只要变换前后都是线性空间中的对象,这个变换就一定是线性变换,也就一定可以用一个非奇异矩阵来描述。而你用一个非奇异矩阵去描述的一个变换,一定是一个线性变换。有的人可能要问,这里为什么要强调非奇异矩阵?所谓非奇异,只对方阵有意义,那么非方阵的情况怎么样?这个说起来就会比较冗长了,最后要把线性变换作为一种映射,并且讨论其映射性质,以及线性变换的核与像等概念才能彻底讲清楚。我觉得这个不算是重点,如果确实有时间的话,以后写一点。以下我们只探讨最常用、最有用的一种变换,就是在同一个线性空间之内的线性变换。也就是说,下面所说的矩阵,不作说明的话,就是方阵,而且是非奇异方阵。学习一门学问,最重要的是把握主干内容,迅速建立对于这门学问的整体概念,不必一开始就考虑所有的细枝末节和特殊情况,自乱阵脚。
接着往下说,什么是基呢?这个问题在后面还要大讲一番,这里只要把基看成是线性空间里的坐标系就可以了。注意是坐标系,不是坐标值,这两者可是一个“对立矛盾统一体”。这样一来,“选定一组基”就是说在线性空间里选定一个坐标系。就这意思。
好,最后我们把矩阵的定义完善如下:
“矩阵是线性空间中的线性变换的一个描述。在一个线性空间中,只要我们选定一组基,那么对于任何一个线性变换,都能够用一个确定的矩阵来加以描述。”
理解这句话的关键,在于把“线性变换”与“线性变换的一个描述”区别开。一个是那个对象,一个是对那个对象的表述。就好像我们熟悉的面向对象编程中,一个对象可以有多个引用,每个引用可以叫不同的名字,但都是指的同一个对象。如果还不形象,那就干脆来个很俗的类比。
比如有一头猪,你打算给它拍照片,只要你给照相机选定了一个镜头位置,那么就可以给这头猪拍一张照片。这个照片可以看成是这头猪的一个描述,但只是一个片面的的描述,因为换一个镜头位置给这头猪拍照,能得到一张不同的照片,也是这头猪的另一个片面的描述。所有这样照出来的照片都是这同一头猪的描述,但是又都不是这头猪本身。
同样的,对于一个线性变换,只要你选定一组基,那么就可以找到一个矩阵来描述这个线性变换。换一组基,就得到一个不同的矩阵。所有这些矩阵都是这同一个线性变换的描述,但又都不是线性变换本身。
但是这样的话,问题就来了如果你给我两张猪的照片,我怎么知道这两张照片上的是同一头猪呢?同样的,你给我两个矩阵,我怎么知道这两个矩阵是描述的同一个线性变换呢?如果是同一个线性变换的不同的矩阵描述,那就是本家兄弟了,见面不认识,岂不成了笑话。
好在,我们可以找到同一个线性变换的矩阵兄弟们的一个性质,那就是:
若矩阵A与B是同一个线性变换的两个不同的描述(之所以会不同,是因为选定了不同的基,也就是选定了不同的坐标系),则一定能找到一个非奇异矩阵P,使得A、B之间满足这样的关系:
A = P-1BP
线性代数稍微熟一点的读者一下就看出来,这就是相似矩阵的定义。没错,所谓相似矩阵,就是同一个线性变换的不同的描述矩阵。按照这个定义,同一头猪的不同角度的照片也可以成为相似照片。俗了一点,不过能让人明白。
而在上面式子里那个矩阵P,其实就是A矩阵所基于的基与B矩阵所基于的基这两组基之间的一个变换关系。关于这个结论,可以用一种非常直觉的方法来证明(而不是一般教科书上那种形式上的证明),如果有时间的话,我以后在blog里补充这个证明。
这个发现太重要了。原来一族相似矩阵都是同一个线性变换的描述啊!难怪这么重要!工科研究生课程中有矩阵论、矩阵分析等课程,其中讲了各种各样的相似变换,比如什么相似标准型,对角化之类的内容,都要求变换以后得到的那个矩阵与先前的那个矩阵式相似的,为什么这么要求?因为只有这样要求,才能保证变换前后的两个矩阵是描述同一个线性变换的。当然,同一个线性变换的不同矩阵描述,从实际运算性质来看并不是不分好环的。有些描述矩阵就比其他的矩阵性质好得多。这很容易理解,同一头猪的照片也有美丑之分嘛。所以矩阵的相似变换可以把一个比较丑的矩阵变成一个比较美的矩阵,而保证这两个矩阵都是描述了同一个线性变换。
这样一来,矩阵作为线性变换描述的一面,基本上说清楚了。但是,事情没有那么简单,或者说,线性代数还有比这更奇妙的性质,那就是,矩阵不仅可以作为线性变换的描述,而且可以作为一组基的描述。而作为变换的矩阵,不但可以把线性空间中的一个点给变换到另一个点去,而且也能够把线性空间中的一个坐标系(基)表换到另一个坐标系(基)去。而且,变换点与变换坐标系,具有异曲同工的效果。线性代数里最有趣的奥妙,就蕴含在其中。理解了这些内容,线性代数里很多定理和规则会变得更加清晰、直觉。
这个留在下一篇再写吧。
因为有别的事情要做,下一篇可能要过几天再写了



理解矩阵(三)
分类: 数学 57821人阅读 评论(122) 收藏 举报
         理解矩阵(一)

        理解矩阵(二)
        这两篇文章发表于去年的4月。在第二部分结束的时候,我说:
      
矩阵不仅可以作为线性变换的描述,而且可以作为一组基的描述。而 作为变换的矩阵,不但可以把线性空间中的一个点给变换到另一个点去,而且也能够把线性空间中的一个坐标系(基)表换到另一个坐标系(基)去。而且,变换点 与变换坐标系,具有异曲同工的效果。线性代数里最有趣的奥妙,就蕴含在其中。理解了这些内容,线性代数里很多定理和规则会变得更加清晰、直觉。
这个留在下一篇再写吧。
因为有别的事情要做,下一篇可能要过几天再写了。 ”
然而这一拖就是一年半。一年半以来,这两篇粗糙放肆的文章被到处转载,以至于在Google的搜索提示中,我的名字跟“矩阵”是一对关联词汇。这对于学生时代数学一直很差的我来说,实在是令人惶恐的事情。数学是何等辉煌精致的学问!代表着人类智慧的最高成就,是人与上帝对话的语言。而我实在连数学的门都还没进去,不要说谈什么理解,就是稍微难一些的题目我也很少能解开。我有什么资格去谈矩阵这样重要的一个数学概念呢?更何况,我的想法直观是直观,未见的是正确的啊,会不会误人子弟呢?因此,算了吧,到此为止吧,我这么想。

        是时不时收到的来信逐渐改变了我的想法。

        一年半以来,我收到过不下一百封直接的来信,要求我把后面的部分写出来。这些来信大部分是国内的网友和学生,也有少数来自正在国外深造的朋友,大部分是鼓励,有的是诚挚的请求,也有少数严厉斥责我不守承诺。不管是何种态度,这都表明他们对我这一点点小小的思考成果的鼓励,特别是对于我这种思维的视角和尝试的鼓励。他们在信中让我知道,尽管我的数学水平不高,但是我这种从普通人(而不是数学家)视角出发,强调对数学概念和规则的直觉理解的思路,对于很多人是有益的。也许这条路子在数学中绝非正道,也不会走得很远,但是无论如何,在一定的阶段,对一部分人来说,较之目前数学教材普遍采用的思路,这种方式可能更容易理解一些。既然是可能对一部分人有帮助的事情,那么我就不应该心存太多杂念,应该不断思考和总结下去。

       所以,下面就是你们来信要求我写出来的东西。

       首先来总结一下前面两部分的一些主要结论:

1. 首先有空间,空间可以容纳对象运动的。一种空间对应一类对象。
2. 有一种空间叫线性空间,线性空间是容纳向量对象运动的。
3. 运动是瞬时的,因此也被称为变换。
4. 矩阵是线性空间中运动(变换)的描述。
5. 矩阵与向量相乘,就是实施运动(变换)的过程。
6. 同一个变换,在不同的坐标系下表现为不同的矩阵,但是它们的本质是一样的,所以本征值相同。

        下面让我们把视力集中到一点以改变我们以往看待矩阵的方式。我们知道,线性空间里的基本对象是向量,而向量是这么表示的:

        [a1, a2, a3, ..., an]

       矩阵呢?矩阵是这么表示的:

        a11, a12, a13, ..., a1n
        a21, a22, a23, ..., a2n
                     ...
        an1, an2, an3, ..., ann

        不用太聪明,我们就能看出来,矩阵是一组向量组成的。特别的,n维线性空间里的方阵是由n个n维向量组成的。我们在这里只讨论这个n阶的、非奇异的方阵,因为理解它就是理解矩阵的关键,它才是一般情况,而其他矩阵都是意外,都是不得不对付的讨厌状况,大可以放在一边。这里多一句嘴,学习东西要抓住主流,不要纠缠于旁支末节。很可惜我们的教材课本大多数都是把主线埋没在细节中的,搞得大家还没明白怎么回事就先被灌晕了。比如数学分析,明明最要紧的观念是说,一个对象可以表达为无穷多个合理选择的对象的线性和,这个概念是贯穿始终的,也是数学分析的精华。但是课本里自始至终不讲这句话,反正就是让你做吉米多维奇,掌握一大堆解偏题的技巧,记住各种特殊情况,两类间断点,怪异的可微和可积条件(谁还记得柯西条件、迪里赫莱条件...?),最后考试一过,一切忘光光。要我说,还不如反复强调这一个事情,把它深深刻在脑子里,别的东西忘了就忘了,真碰到问题了,再查数学手册嘛,何必因小失大呢?

        言归正传。如果一组向量是彼此线性无关的话,那么它们就可以成为度量这个线性空间的一组基,从而事实上成为一个坐标系体系,其中每一个向量都躺在一根坐标轴上,并且成为那根坐标轴上的基本度量单位(长度1)。

        现在到了关键的一步。看上去矩阵就是由一组向量组成的,而且如果矩阵非奇异的话(我说了,只考虑这种情况),那么组成这个矩阵的那一组向量也就是线性无关的了,也就可以成为度量线性空间的一个坐标系。结论:矩阵描述了一个坐标系。

        “慢着!”,你嚷嚷起来了,“你这个骗子!你不是说过,矩阵就是运动吗?怎么这会矩阵又是坐标系了?”

        嗯,所以我说到了关键的一步。我并没有骗人,之所以矩阵又是运动,又是坐标系,那是因为——

        “运动等价于坐标系变换”。

        对不起,这话其实不准确,我只是想让你印象深刻。准确的说法是:

       “对象的变换等价于坐标系的变换”。

       或者:

       “固定坐标系下一个对象的变换等价于固定对象所处的坐标系变换。”

       说白了就是:

        “运动是相对的。”      

        让我们想想,达成同一个变换的结果,比如把点(1, 1)变到点(2, 3)去,你可以有两种做法。第一,坐标系不动,点动,把(1, 1)点挪到(2, 3)去。第二,点不动,变坐标系,让x轴的度量(单位向量)变成原来的1/2,让y轴的度量(单位向量)变成原先的1/3,这样点还是那个点,可是点的坐标就变成(2, 3)了。方式不同,结果一样。

        从第一个方式来看,那就是我在《理解矩阵》1/2中说的,把矩阵看成是运动描述,矩阵与向量相乘就是使向量(点)运动的过程。在这个方式下,

       Ma = b

       的意思是:

       “向量a经过矩阵M所描述的变换,变成了向量b。”

        而从第二个方式来看,矩阵M描述了一个坐标系,姑且也称之为M。那么:

        Ma = b

       的意思是:

        “有一个向量,它在坐标系M的度量下得到的度量结果向量为a,那么它在坐标系I的度量下,这个向量的度量结果是b。”

        这里的I是指单位矩阵,就是主对角线是1,其他为零的矩阵。

        而这两个方式本质上是等价的。

        我希望你务必理解这一点,因为这是本篇的关键。

        正因为是关键,所以我得再解释一下。

        在M为坐标系的意义下,如果把M放在一个向量a的前面,形成Ma的样式,我们可以认为这是对向量a的一个环境声明。它相当于是说:

        “注意了!这里有一个向量,它在坐标系M中度量,得到的度量结果可以表达为a。可是它在别的坐标系里度量的话,就会得到不同的结果。为了明确,我把M放在前面,让你明白,这是该向量在坐标系M中度量的结果。”

       那么我们再看孤零零的向量b:

       b

       多看几遍,你没看出来吗?它其实不是b,它是:

       Ib

       也就是说:“在单位坐标系,也就是我们通常说的直角坐标系I中,有一个向量,度量的结果是b。”

       而  Ma = Ib的意思就是说:

       “在M坐标系里量出来的向量a,跟在I坐标系里量出来的向量b,其实根本就是一个向量啊!”

       这哪里是什么乘法计算,根本就是身份识别嘛。

       从这个意义上我们重新理解一下向量。向量这个东西客观存在,但是要把它表示出来,就要把它放在一个坐标系中去度量它,然后把度量的结果(向量在各个坐标轴上的投影值)按一定顺序列在一起,就成了我们平时所见的向量表示形式。你选择的坐标系(基)不同,得出来的向量的表示就不同。向量还是那个向量,选择的坐标系不同,其表示方式就不同。因此,按道理来说,每写出一个向量的表示,都应该声明一下这个表示是在哪个坐标系中度量出来的。表示的方式,就是 Ma,也就是说,有一个向量,在M矩阵表示的坐标系中度量出来的结果为a。我们平时说一个向量是[2 3 5 7]T,隐含着是说,这个向量在 I 坐标系中的度量结果是[2 3 5 7]T,因此,这个形式反而是一种简化了的特殊情况。

        注意到,M矩阵表示出来的那个坐标系,由一组基组成,而那组基也是由向量组成的,同样存在这组向量是在哪个坐标系下度量而成的问题。也就是说,表述一个矩阵的一般方法,也应该要指明其所处的基准坐标系。所谓M,其实是 IM,也就是说,M中那组基的度量是在 I 坐标系中得出的。从这个视角来看,M×N也不是什么矩阵乘法了,而是声明了一个在M坐标系中量出的另一个坐标系N,其中M本身是在I坐标系中度量出来的。

       回过头来说变换的问题。我刚才说,“固定坐标系下一个对象的变换等价于固定对象所处的坐标系变换”,那个“固定对象”我们找到了,就是那个向量。但是坐标系的变换呢?我怎么没看见?

       请看:

       Ma = Ib

       我现在要变M为I,怎么变?对了,再前面乘以个M-1,也就是M的逆矩阵。换句话说,你不是有一个坐标系M吗,现在我让它乘以个M-1,变成I,这样一来的话,原来M坐标系中的a在I中一量,就得到b了。

       我建议你此时此刻拿起纸笔,画画图,求得对这件事情的理解。比如,你画一个坐标系,x轴上的衡量单位是2,y轴上的衡量单位是3,在这样一个坐标系里,坐标为(1,1)的那一点,实际上就是笛卡尔坐标系里的点(2, 3)。而让它原形毕露的办法,就是把原来那个坐标系:

       2 0
       0 3

       的x方向度量缩小为原来的1/2,而y方向度量缩小为原来的1/3,这样一来坐标系就变成单位坐标系I了。保持点不变,那个向量现在就变成了(2, 3)了。

       怎么能够让“x方向度量缩小为原来的1/2,而y方向度量缩小为原来的1/3”呢?就是让原坐标系:

      2 0
      0 3

       被矩阵:

       1/2   0
         0   1/3

       左乘。而这个矩阵就是原矩阵的逆矩阵。

       下面我们得出一个重要的结论:

        “对坐标系施加变换的方法,就是让表示那个坐标系的矩阵与表示那个变化的矩阵相乘。”

        再一次的,矩阵的乘法变成了运动的施加。只不过,被施加运动的不再是向量,而是另一个坐标系。

        如果你觉得你还搞得清楚,请再想一下刚才已经提到的结论,矩阵MxN,一方面表明坐标系N在运动M下的变换结果,另一方面,把M当成N的前缀,当成N的环境描述,那么就是说,在M坐标系度量下,有另一个坐标系N。这个坐标系N如果放在I坐标系中度量,其结果为坐标系MxN。

        在这里,我实际上已经回答了一般人在学习线性代数是最困惑的一个问题,那就是为什么矩阵的乘法要规定成这样。简单地说,是因为:

        1. 从变换的观点看,对坐标系N施加M变换,就是把组成坐标系N的每一个向量施加M变换。

        2. 从坐标系的观点看,在M坐标系中表现为N的另一个坐标系,这也归结为,对N坐标系基的每一个向量,把它在I坐标系中的坐标找出来,然后汇成一个新的矩阵。

        3. 至于矩阵乘以向量为什么要那样规定,那是因为一个在M中度量为a的向量,如果想要恢复在I中的真像,就必须分别与M中的每一个向量进行內积运算。我把这个结论的推导留给感兴趣的朋友吧。应该说,其实到了这一步,已经很容易了。

        综合以上1/2/3,矩阵的乘法就得那么规定,一切有根有据,绝不是哪个神经病胡思乱想出来的。
 
        我已经无法说得更多了。矩阵又是坐标系,又是变换。到底是坐标系,还是变换,已经说不清楚了,运动与实体在这里统一了,物质与意识的界限已经消失了,一切归于无法言说,无法定义了。道可道,非常道,名可名,非常名。矩阵是在是不可道之道,不可名之名的东西。到了这个时候,我们不得不承认,我们伟大的线性代数课本上说的矩阵定义,是无比正确的:

        “矩阵就是由m行n列数放在一起组成的数学对象。”

        好了,这基本上就是我想说的全部了。还留下一个行列式的问题。矩阵M的行列式实际上是组成M的各个向量按照平行四边形法则搭成一个n维立方体的体积。对于这一点,我只能感叹于其精妙,却无法揭开其中奥秘了。也许我掌握的数学工具不够,我希望有人能够给我们大家讲解其中的道理了。

        我不知道是否讲得足够清楚了,反正这一部分需要您花些功夫去推敲。

        此外,请大家不必等待这个系列的后续部分。以我的工作情况而言,近期内很难保证继续投入脑力到这个领域中,尽管我仍然对此兴致浓厚。不过如果还有(四)的话,可能是一些站在应用层面的考虑,比如对计算机图形学相关算法的理解。但是我不承诺这些讨论近期内会出现了。



      

      

      




     

      



主题推荐
计算机google时代工作语言
猜你在找
我的LaTex 简历未用他人模板
比微软kinect更强的视频跟踪算法--TLD跟踪算法介绍
机器学习machine learning之AdaBoost算法
读《C语言的科学与艺术》
EM算法学习笔记
计算机视觉领域的一些牛人博客超有实力的研究机构等的网站链接---个人整理
初识C++
cs硕士妹子找工作经历阿里人搜等互联网
Visual C++MFC入门教程

查看评论
93楼 rudy_axle 2015-01-17 15:34发表 [回复]
受教了
92楼 tx1026591389twh 2015-01-08 14:56发表 [回复]
大神,敢问一个问题:关于行列式和矩阵,教材上他们都是多元方程组的系数的排列,为什么计算方式与本质差别会那么大?还有齐次线性方程组是从模拟空间出发的解决几何问题的代数手段,非齐次是单纯解方程组,这样理解错误在哪?大一新生,冒犯多包涵~
91楼 anyue417 2014-12-04 01:56发表 [回复]
写得真好,受教受教
90楼 zhao037 2014-11-22 13:36发表 [回复]
真心觉得写出了特色
89楼 徐君 2014-11-16 11:31发表 [回复]
"如果你觉得你还搞得清楚,请再想一下刚才已经提到的结论,矩阵MxN,一方面表明坐标系N在运动M下的变换结果,另一方面,把M当成N的前缀,当成N的环境描述,那么就是说,在M坐标系度量下,有另一个坐标系N。这个坐标系N如果放在I坐标系中度量,其结果为坐标系MxN。"

这里的一些话有些含糊,我觉得是否这样说跟明白一些:

矩阵MxN,一方面表明坐标系N在经历运动M之后的在I坐标系度量下的变换结果。另一方面,矩阵MxN如果放在M坐标系中度量,其结果为坐标系N;矩阵MxN如果放在I坐标系中度量,其结果为坐标系MxN。
88楼 刘香涛 2014-10-30 12:28发表 [回复]
引用“mwxmwx”的评论:已经看过第三次了,太牛了
87楼 Dreadlord1984 2014-09-06 12:04发表 [回复]
真心不错。让我对仿射变换有了比较牢固的认识。
86楼 yishifeiyun 2014-08-03 12:41发表 [回复]
不能赞同太多了~受教了~
85楼 gp8209 2014-07-06 08:43发表 [回复]
不知道说什么好了,我觉得精妙的地方被说出来了,可能没说全,但开了个头,希望自己能多多看到这样的文章~
84楼 hedelai 2014-06-20 11:18发表 [回复]
作为一名工科的研究生,只有相见恨晚的感觉
83楼 Chjxing 2014-06-18 16:48发表 [回复]
感谢博主
82楼 了不空蜗牛 2014-05-23 09:42发表 [回复]
运动等价于矩阵变换
一般刚体运动符合这种情况,非刚体运动不符合这种情况
81楼 mwxmwx 2014-01-16 14:40发表 [回复]
已经看过第三次了,太牛了
80楼 幻影如墨 2014-01-15 02:03发表 [回复]
非常感谢,复习线代的时候看着各种概念凭空出现又凭空消失真的很费解,不能说有茅塞顿开之感但是确实解决了许多困惑。虽然直观的诠释可能不严谨,但是真的看不懂。我想说虽然这种直观的理解可能会对以后更深入的东西造成误解,但是对我们这种徘徊在门外不得而入的人是打开了大门的感觉,也许这是一条小路也许是歧途但是在我面前所看到的是一条 大道,教科书上的是正道,但是就是踏不上去又有何用?
79楼 djsdn 2013-12-24 17:41发表 [回复]
难得的好作品,用浅显的语言说出深奥的内涵,不容易啊。
一门学问或一个原理本该有N种叙述,教科书只是其一种。
本该简明的东西,复杂化地叙述出来,就成难解的天书啦。
数学讲究的是严谨,过于严谨地叙述数学定理,想不成天书都难啊。
期待孟老师有更多的好文章,启蒙一头雾水的探知者,当然还要有闲暇的时间才成,保重身体!
78楼 星夜落尘 2013-12-11 09:59发表 [回复]
赞叹,我就喜欢这种直观的,从最底层开讲的风格。
国内很多教师大多是照本宣科对着教科书读,实在是很无趣,也只是让学生考试通过,至于内在的意义,内在的优美性,现实的应用,学生完全不知道,这样又怎么能学好呢。
恕我无耻的猜测是否有些教师不懂教学,甚至说他们自己也理解的不深,以至于无法高屋建瓴深入浅出的讲解。
77楼 有热心网友 2013-12-01 00:24发表 [回复]
对我的启发很大 但是有一点 所谓矩阵之矩可能只是矩形之矩,虽恰有规矩之意,但不排除是巧合的原因,不过即使是原因这个矩字当真妙不可言。
Re: coblan 2014-09-15 14:04发表 [回复]
回复u013008719:纯粹乱说的,矩阵之所以是矩形的,其根本在于矩阵存在于在线性运算之中。在于“线性”二字,而不是什么规矩。
76楼 BABY 2013-11-27 23:17发表 [回复]
同样也是一口气看完了三篇,觉得表达能力可以。希望那些感觉醍醐灌顶瞬间懂了的同学们真的懂了……
有时候不能追求直观啊,我记得在学高数的时候,当放下了“直观”之后,才度过了一个艰难的瓶颈期。
孟老师显然和我们相同是程序员工科出身,而且应该是搞图形学方向的,这种深入理解的学习态度值得推荐。
75楼 tyityieeff 2013-11-23 14:53发表 [回复]
一下看完了三篇,忍不住叫好啊!!
74楼 zsfcg 2013-11-02 19:49发表 [回复]
您好,能告诉我怎么理解特征向量特征值吗?深切盼望解答......____走在迷雾中的人求解答
Re: eple27 2014-05-09 20:36发表 [回复]
回复zsfcg:特征向量是矩阵描述对象所在空间的基,特征值是矩阵描述对象在其空间的投影
Re: xiangyubobo 2013-11-26 21:46发表 [回复]
回复zsfcg:兄弟你好,我也对特征值和特征向量感到非常迷惑,尤其是看 谱图论 之类的文章的时候更是傻眼儿。不过我还是揣测到一些粗糙的想法,只是我的拙见,您听听就好。
我理解的矩阵更一般的是对事物的描述,比如计算机里用矩阵描述一幅图。特征值之所以叫 特征值 ,因为它是这个矩阵所描述事物的一种特性,不过是用数字表示出来的。而对应的特征向量就是 事物在这个特征(特征值)下的具体描述。
而为什么特征向量会有那麽都个数字,因为每一个数字对应的原矩阵描述的每个行向量。
所以每一个特征值对应一个特征向量,而每个特征向量的每一个维度对应原矩阵的对应行向量在这个特征上的描述。
Re: coblan 2014-09-15 13:57发表 [回复]
回复xiangyubobo:特征值往大的说,只是谱点的一种,往严格意义上说,它们都是定义而已。而为什么会是叫“特征值”,我觉得只是选中了这个名字而已,否则很多东西都可以叫特征值了。“正规”“共轭”“正则”这些名字都很文雅,但是确实令初学者难以理解,如果“共轭”还有道理的化,那么正则和正则就完全可以随便选了,关键在于第一个用的人选了什么名字。如果让我选名字,我倒是觉得“放大值”与“无耦合方向”来替代“特征值”与“特征方向”更能令人明白。
73楼 ajajajajajajajaj 2013-10-22 13:24发表 [回复]
文章真的让我获益匪浅。记得很早以前看过一本叫
上帝掷骰子吗
的物理入门书籍,里边就说了当年经典力学向量子力学转变的天翻地覆中,线性代数的发明和在量子力学中的无穷威力。量子在不连续轨道上的跃迁,的确需要线性代数才可以啊。
72楼 li997685060 2013-09-08 20:04发表 [回复]
屌炸九重天!
71楼 coblan 2013-07-18 15:11发表 [回复]
孟岩老师,您的表达能力很强。不过,如果像您这样来理解矩阵的方式,确实不属于数学的正确理解方式。数学本来就是抽象的学科,目的就是要屏蔽这些具体性。
矩阵是什么?矩阵是一类元素,和我们的1,2,3,数,是一样的东西。只不过矩阵有其运算规则,比如乘法,矩阵还有一些属性,比如方阵的行列式。矩阵M 乘以 V (对向量v的线性运算),其实和2乘以3(每个糖2元,3个糖总共几元)没有什么区别。
任何东西,如果它们的运算符合矩阵的运算规则,那么就可以用矩阵来表示它们。所以有限维空间的线性算子可以用矩阵表示,线性变换可以用方阵表示。而行列式的概念实际上要高级一点,其实行列式就是一个多项式,只不过这个多项式符合反对称性质。什么是反对称,如果你懂张量的化,那就很简单了,如果不知道,我也没有必要解释了。
综上,矩阵,行列式这些东西都是一些有有简单运算规则的数学对象,可以用它们来描述符合其运算规律的其它的现象。
而大多数人,学数学都是反的,老是想从具体的应用来完全理解数学。殊不知这是很被动的。应该先记忆核心的数学性质,然后再看看具体的应用,来熟悉理解数学性质。
Re: 久带 2014-10-26 16:29发表 [回复]
回复coblan:你说的很对,你在担心人们只会从具体的角度看待矩阵。不过我觉得你的这种担心大可不必,因为国内的教材几乎都是从抽象的角度来说矩阵,中国的学生已经接受了太多抽象的概念和知识。国内的学生缺少的是什么,就是这种具体一点的认识。
Re: CIcarus 2014-10-22 15:42发表 [回复]
回复coblan:老师你好,就我这个应用数学系出身,去年大一学完高等代数的小家伙来向您求教,孟严老师的这三篇对矩阵的理解强烈地引起了我的共鸣,可以这么说,我学习高等代数时追求的就是直观的理解矩阵,我毫不客气的说,我的理解绝对是和孟严老师一样的,有些地方我还有更深的见解,有些地方也是对比自己的理解认为孟严老师的理解方式更胜一筹。这种理解模式让我在学习解析几何时更是无所不用其极,我变得爱钻牛角尖,我发誓要把所有的解析几何定理和题目中的变换都在脑海中强行模拟,当然这几乎都是用三维以下的空间来模拟,高次n类推即可,这样真的很费脑子,但是也很有成就感,效果也是明显的,对于解析几何课程我算是我们整个数学系理解最透彻的一个,考试也是99分,当然考的也简单。如此一来,我就养成了喜欢将具体的描述应用到数学分析上去,刚开始还好,到了现在我发现极限也就是解释第二类曲面积分,当然这也是老师教的一种理解方式,我发现对于正真的纯数学问题想用具体来表象实在是太天真了,就像数学分析,常微等已经让我不得不去接受数学的抽象之美,美得让我窒息......所以对于老师你对孟严老师这三篇文章的看法还是表示支持的,但是这种最基本的理解可以帮助一个初学者快速入门,并产生兴趣,这也是极好的。最后还是向老师你请教,对于向数学分析这种没法讨巧,只能刷题的科目,该以一种怎样的态度来对待呢?
Re: coblan 2014-10-22 20:35发表 [回复]
回复CIcarus:学数学当然要记忆具体的事例了,但是一定要告诉自己,那个东西只是辅助。别以为它就是数学。
至于向我“请教”,真不敢当,我水平很差的,甚至不是数学系的。但是如果有人能得到一点好处还是很愿意献丑的。
数学分析的根本就一个:极限。不管是微积分还是幂级数都是极限思想的应用,加减乘除嘛。而要比较全面的理解极限没有学实变函数和拓扑学,几乎是不可能的。你才大一,想理解清楚数学分析还早呢,哪怕是最简单的数学定理也可能会牵涉到后期的课程(比如,有限开覆盖定理有几人初学能懂?傅立叶变换的完备性更是抹杀一大批人,你学了高等代数,我估计你连代数基和schauder基都分不开,以后还有拓扑基,领域基,逐渐的才会体会的什么是基。你说你解析几何学得好,那请问你那一堆数(1,1,1) 与图形的1,1,1点有什么关系?复数与复平面的图形什么关系,复数是解析几何的东西吗?a点引出的一个向量凭什么可以移到b点去?解析函数中的向量是什么东西?为什么它们叠加是四边形法则?)。整个数学就像一个人,每门课程就像一个细胞,每个细胞都包含了整个人的所有信息。所以你要学好某门数学课就要从整个数学的DNA入手。但不是说所有的数学课程都要学,等到学了数学分析,实变函数,复变函数,高等代数,抽象代数,拓扑,微分几何,流形,我想差不多应该能体会到数学思想了。像什么蓝以中,胡适耕,等等这些老师的书不要放过。考试得100分都不能说明问题的,那只是某个时刻做某些固定范围的题的能力。一个人的数学思想是不可能通过考试来评测,开放性的谈话倒是可以,能够长存人脑的是数学思想。
再说一个,微分方程包括常微和偏微,其核心思想是约束两个字。微分方程中,最美妙的是两个地方:1. 常系数的线性常微分算子的特征函数是指数函数。2. 傅立叶变换对各种L2函数可以分解。你是应用数学的,微分方程基本上体会到一个核心和两个美妙就能实用了。
综上:我对你学数学分析的建议就是,继续向后,囫囵吞枣,等眼界开阔了,再返回来深刻理解。到时候就是一片一片的理解了。
Re: zhu_si 2014-04-07 09:32发表 [回复]
回复coblan:这几篇文章挺好理解的,从运动的角度诠释矩阵的概念和运算的基础。我恰恰认为你的看法错误的,数学不是谁创造出来的,人的认识规律是从具体到抽象再应用到具体,而不是谁能先拍脑袋想出一些规则然后居然还能把这些规则应用到无数实际的地方,那数学家就是神了。就像这里一样,从运动的行为理解矩阵,再把矩阵应用到其它类似的地方,不是很和谐吗
Re: coblan 2014-09-15 13:41发表 [回复]
回复zhu_si:君不见,很多人在问矩阵到底是运动,还是坐标变换吗?理解方式都错了,怎么能理解呢?如果用运动或者什么的来辅助理解矩阵是可以的。但是不能认为这样就理解矩阵了。说:抽象来源于具体。总是正确的,但是往往会产生误导。数学有其自己的规律,数学元素都存在于抽象,正因如此才能体现数学的强大。量子力学就是抽象数学算符的应用之一。同样矩阵也是抽象的东西,如果你用具体的比如运动,或者坐标变换来“辅助”理解矩阵,是可以的,但是必须抽象出来,否则你根本就没有进入数学的范畴!你不能总是用1个苹果来理解1吧,OK?
Re: Mr_Mike_Li 2014-10-13 23:32发表 [回复]
回复coblan:从理性上,支持你的看法,如果数学太过具体,则很容易让我们忽视数学在其他方面的表达形式。抽象出事物的本质,然后用数学去描述,这是数学强大的表达能力之所在。
不过,孟岩老师的文章,也很不错,让我们暂时摆脱理性的束缚,感受一下,数学直观的魅力所在。对事物的理解,本身就是仁者见仁智者见智的问题,不存在绝对的对与错。支持多样化的理解!
Re: Mr_Mike_Li 2014-10-13 23:29发表 [回复]
回复coblan:从理性上,支持你的看法,如果数学太过具体,则很容易让我们忽视数学在其他方面的表达形式。抽象出事物的本质,然后用数学去描述,这是数学强大的表达能力之所在。
不过,孟岩老师的文章,也很不错,让我们暂时摆脱理性的束缚,感受一下,数学直观的魅力所在。对事物的理解,本身就是仁者见仁智者见智的问题,不存在绝对的对与错。支持多样化的理解!
70楼 清清子清 2013-05-01 18:17发表 [回复]
好文,有被众多的百度,谷歌出来的文章淹没了的感觉!!
69楼 贱洪 2012-12-06 16:08发表 [回复]
复习数学的时候,看到同济大学 线性代数 课本上的那些实在有些受不鸟。在这里找到以些具体的理解,醍醐灌顶。
68楼 zoo_cool 2012-09-18 12:28发表 [回复]
变换与坐标的关系
恍惚觉得跟“旗未动,风未动,是心动”的方向暗合。
竟然很有禅意。
67楼 voiceofLyra 2012-09-06 03:30发表 [回复]
终于找到原作者了!!
孟老师的文章对我受益匪浅,但我对矩阵乘法那里还有小点疑问,既然用M与a的内积来表述a在I中的位置,而M和a都可以用矩阵来表示,那为什么定义乘法的时候还要一个向量竖着表示,一个向量横着表示,结果我们都要记那奇怪的规则呢?像内积那样的形式弄矩阵才是人的常规思维啊。
希望作者能接着写,从直觉上入手更让我体会到这门学科的发展历程,学起来也更通畅许多
Re: zjm750617105 2014-06-02 16:51发表 [回复]
回复voiceofLyra:不好意思,可能我以前也有您这样的疑问,所以我冒昧以我自己的理解来说一下对此问题的理解,首先指出一点小小的错误,可能是您的笔误:M与a的乘积是表示b在I系中的具体表示。n*n的矩阵中的每一行都表示在n维空间中的一条坐标轴,而向量a为n*1恰好是a中的每一个元素在M坐标系中每一条坐标轴上对应的投影,所以n个元素在n条坐标轴。考研中刚开始第一遍复习线代,描述的不是很准确,但是我暂时是这么理解的,望指正,望见谅
66楼 lwhhubei 2012-08-23 06:59发表 [回复]
非常感谢孟老师的这三篇文章,让我对线性代数有了一个重新的认识,原来数学可以这样形象直观的,有种被救赎的感觉~`哈哈

同时也非常佩服孟老师的研究精神,能把矩阵理解得这样透彻,深入浅出,娓娓道来,引人入胜```再次感谢孟老师

如果能学到您的思维过程就更好了~`
65楼 dsp410327 2012-07-11 00:26发表 [回复]
希望能谢谢计算机视觉与模式识别重点矩阵理解,包括矩阵微积分方面谈谈
64楼 fyswords 2012-07-06 16:49发表 [回复]
这个应该作为线性代数第三或第四周课程的内容,绝对有必要!
63楼 jerrypiaopiao 2012-07-05 17:00发表 [回复]
我是真的不懂数学了,以前所学的数学只是在我现在的生活中也就是算算工资啥的,这种高深的真是不敢想象啊,看了博主这个系列的三篇文章感觉像我这样的平常人对空间的具体认知也就是停留在三维坐标系中,关于加入了时间的四维空间实在是无法想象出有什么想对比较具体的事物来展现了。
62楼 ngoolasi 2012-03-28 22:09发表 [回复]
能不能继续写啊,我很想继续看啊,最好写一下关于伴随举证的你的一些见解 我感觉你的观点很是受用 我受益匪浅啊
61楼 may201498 2011-12-19 01:46发表 [回复]
学习了~
个人感觉,在线性空间的框架下讨论,向量或者是单行的矩阵或者说一个坐标,在描述上是等价的,其几何含义是在线性空间中相对于所设立的原点的一个点,或者一个有向线段,或者说是从原点到这个坐标实施的线性变换,也就是作者所说的“跃迁”“”变换“etc
而矩阵——非奇异方阵,从向量角度看,可以看做有N个N维向量,这些不共线的向量可以描述这个N维空间的所有向量
从坐标角度看,可以看做是N个点坐标,这些坐标是这N个点相对于原点的位置描述,据此可以描述N维空间中其他所有点
从矩阵角度看,这个矩阵表述了一个坐标系的变换,或者是一个基准向量组。
坐标、向量、矩阵,这三个概念,在线性空间中,是表述点集的三种方式,并且可以找到对应关系。
作者还提到了线性空间容纳了一类对象的瞬间运动。里面有个连续性和运动的问题基本上仍然处在芝诺的困境中。
个人认为,用极限的方法是将连续运动静态化,所以导致了只能做瞬间运动而不能做连续运动。但事实上,矩阵变换很难说是连续的还是瞬时的,因为它描述的变换的方式,而没有时间或者确定路径。正如我们所知,有相似矩阵等概念,描述的是同样的变换,也就是说,对矩阵变换来说,你开火箭和走路的变换都可以用不同的矩阵的描述,但是这两个矩阵可能是相似的,那么依然会到达相同的相对位置。如果起点一致,那么终点自然没有差别。后者你看做几个向量的描述,或者坐标系,虽然描述的方式不同,但是存在的绝对位置是相同的,知识对于不同的坐标系后者向量系统的相对位置是不同的。

不知道自己在说什么。。。。凌乱了
60楼 sunqin19900405 2011-12-18 16:30发表 [回复]
看完了受益匪浅,问一下孟老师,第二篇文章中说到的相似矩阵很直观的证明是怎么去证明的
59楼 groovy2007 2011-11-12 21:59发表 [回复]
“运动等价于坐标系变换”。
“对象的变换等价于坐标系的变换”。
“固定坐标系下一个对象的变换等价于固定对象所处的坐标系变换。”
说白了就是:“运动是相对的。”
=============================
这几句话简直就是振聋发聩呀!
58楼 Jacoh 2011-11-05 20:46发表 [回复]
尾数可否理解为事物的属性(状态)、其越多则对事物表述的越清楚
...
57楼 duanjianlun 2011-11-05 10:25发表 [回复]
您的直觉教学,引人入胜,激发学生兴趣,使我们在兴趣的驱动下查找更深的知识。我们的应试教育把学生吓怕了,何来兴趣。谢谢您的 直觉教学。
56楼 abya_buaa 2011-10-25 10:21发表 [回复]
太强大了!!!! 决定打印下来!!!学习矩阵理论的时候经常看一看!!!特别喜欢这种直觉性的东西!!!求续集!!!!!
55楼 huxiongge 2011-10-24 13:15发表 [回复]
强烈要求作者也直觉 一下 概率论与数理统计 这种高级货
54楼 BIMOZHI 2011-10-18 14:31发表 [回复]
能继续该多好啊!我也是学计算机的,老师都说数学很重要,前不久做图像分割用到了矩阵,现在才明白过来。
53楼 大雪压 2011-09-01 22:57发表 [回复]
不错,咱们的学习方式有点类似,我也一直追求数学当然也包括其他自然科学的直觉解释,也就是最原始理解,任何公式都不必记忆,一看就知道是怎么回事。
不过这样一来,导致自己有点跟不上老师,中学时有晚自习一般都思考一个小时便大有收获,大学则完全迷失了方向,因为没有找到思考的场所,四年大学一无所获,如今发誓重学数学高数,线数,随机数学,离散数学,图形学等等,几个月下来每每茅塞顿开,相信一定可以像中学以前乃至小学一年级那样达到第一的水平。甚至于已经准备好了微分几何,射影几何等资料,相信自己的自学能力是顶尖的。
52楼 seekts 2011-08-20 11:57发表 [回复]
终于找到原作者了···
51楼 proer9988 2011-08-16 23:46发表 [回复]
写得太好了,能继续吗?建议研究一下线性代数的几何意义,并写写这方面通俗的文章。
50楼 cjaizss 2011-02-10 09:18发表 [回复]
矩阵就是矩阵,就是一堆东西的组合.你怎么用是你的事情,你拿它来表示什么它就是什么.还什么坐标系就是运动,看着都揪心.
线性代数(高等代数)是高等数学的基础,矩阵是个很不错的工具,仅此而已.学的那么狭隘,真是白学了.
Re: super_chris 2011-09-01 19:21发表 [回复]
回复cjaizss:作者就是帮你这样的人才写的文章啊。。。
Re: coblan 2014-09-15 14:11发表 [回复]
回复super_chris:可惜cjaizss说的才是正确的。你们不是不理解矩阵,而是没有数学的基本思维方式。这么机械的理解矩阵,永远也理解不了,必须要从这个坑里面爬起来。
49楼 feixiangjjg 2011-01-01 19:52发表 [回复]
这句话好!
48楼 feixiangjjg 2011-01-01 19:51发表 [回复]
M×N也不是什么矩阵乘法了,而是声明了一个在M坐标系中量出的另一个坐标系N,其中M本身是在I坐标系中度量出来的。
47楼 gefenpig 2010-12-02 21:34发表 [回复]
先不说对这几篇文章持赞同或反对的意见,光这种思考与记录的精神就已经很让人敬佩。凡是能够引起人们思考激发人们讨论的事情,是有价值的事情,感谢孟岩老师能让一个学经济学也的小孩儿这么兴致盎然的一口气读完三篇《理解矩阵》。
46楼 shenyjz 2010-10-26 16:29发表 [回复]
太牛了。。。看完之后真是茅塞顿开啊。你该多写写此类的文章,太喜欢了
45楼 oktianpeifeng 2010-10-26 01:42发表 [回复]
你好,我在别人QQ空间看到的理解矩阵,在网上找到您了,并注册了csdn,我也是最开始以为学生写的,给我震动很大,因为一个工科生竟然比我这个学数学的理解的思考的深入多了,我想这肯定是一个人才,呵呵。在那篇文章里你说的关于两组不同基下的线性变换的矩阵的关系的直觉证法我没想出来,不过以后就可以方便的阅读您的想法了,相信对我会有很大帮助,相信您的文章![e03]
44楼 changchengdiancang 2010-09-30 16:10发表 [回复]
很有哟几个
43楼 AlexDuke 2010-09-22 21:51发表 [回复]
忍不住说说,我是在校内上看到有人转载您的文章,才来找到你的,才认识了孟老师!(起初我只是以为是一个学生写的分享)

所以不得不来找师祖您,这些语言和文字我是对同龄人表达的,不敬之处希望理解,最后不得不说最后一个问题:

计算机

为什么都是计算机的人来问您?因为这个数学道路的实现,是靠计算机来实现的,计算机实现了什么?我们可以创造世界!

他表达:我们能实现“上帝”(我不是有神论者)的操作,是靠数学的模型,特别是矩阵,第二类数学模型来实现的!这个是“数学”最终表达出来后,对世界新的创造的体现,也是《黑客帝国》(希望您不要带偏见来认识电影)的表达:如果我们能创造一个世界,我们是不是也是被创造的?

这个途径中,我们运用二进制的机器,可以模拟所有的事物,如果能接入我们的大脑,那么,我们可以“认识”的世界就是一个全新的虚拟世界!这个就是计算机的世界,是数学创造的世界!


这一点,在今天的“计算机”行业中表现尤为突出!这也是为什么计算机需要数学的�
42楼 AlexDuke 2010-09-22 21:34发表 [回复]
本人不才,自从高考物理满分后就没有继续学习人类科学的精华和基础:数学,但是,通过低端的医学高等数学,以及医学物理,以及物理化学,无机化学等等,实在是对“第二代数学模型”充满了无限的向往!

在多年之后,看到了这篇文章,重新增加和巩固了对于数学的理解,或许最关键的进步其实是对于它的认识。所以,我想根据我说理解的,有一些根基性质的东西也分享下我的见解。

数学的本质是认识和表达世界(包括一切我们认知的)的工具,为什么指出这点,是你文章中表达的最关键性的问题的方式上有所疑惑,我想分享下我的看法:

如“矩阵的乘法规则究竟为什么这样规定?为什么这样一种怪异的乘法规则却能够在实践中发挥如此巨大的功效?很多看上去似乎是完全不相关的问题,最后竟然都归结到矩阵的乘法,这难道不是很奇妙的事情?难道在矩阵乘法那看上去莫名其妙的规则下面,包含着世界的某些本质规律?如果是的话,这些本质规律是什么?”


这些疑惑的看法其实是我早也有的感慨但是关键的认识。但是�
Re: coblan 2014-09-15 14:15发表 [回复]
回复AlexDuke:矩阵乘法运算的怪异,完全来自于线性运算在定义域空间各维度的耦合造成的。如果没有耦合,那么矩阵就表现为一个数乘的形式,这时叫特征值,这个没有耦合的维度叫特征方向。
41楼 天下第一好大人 2010-09-06 20:34发表 [回复]
[e01]无意中发现这篇文章,很好很生动!
40楼 b081110089 2010-07-25 14:04发表 [回复]
按照本文的理论,把矩阵看作若干个列向量的组合是合理的,因为这些列向量表示一组基。
但aM又是什么意思(a为行向量)?
还有上面理论只是针对方阵的,m*n维的矩阵就不好解释了,因为这个矩阵并不能代表一组基,也就无法表示一个坐标系……
我们不妨从矩阵的角度来解释向量(视为m*1维的矩阵),就像在计算机中,向量和矩阵都是数组一样,不过,矩阵是什么还是说不清……
39楼 匿名用户 2010-04-14 16:13发表 [回复]
哥,能不能接着写啊
38楼 jackshen016 2009-11-19 13:50发表 [回复]
写得很好!更系统的认识可以参考《线性代数及其应用》这本书。书里有更系统的论述,并提供了许多几何上的解释,通俗易懂。
Re: u010613849 2013-05-08 11:36发表 [回复]
回复jackshen016:想问问这本书是哪个作者的
37楼 lisp21 2009-11-15 14:43发表 [回复]
其实孟先生讲的这么多,就是一个中心思想,线性变换在代数上可以用矩阵来表示。衍生下去,就会进入群表示论。

解析几何是在几何中引入了代数,代数意味着,矢量,张量,矩阵,等等数的有序排列结构的引入。

有限维线性代数实际上是n维空间的解析几何。线性代数是平直空间的几何。

微积分的核心思想之一是把不平直的几何局部的看成平直几何。

所以线性代数跟微积分可以说是分工合作的关系。

微分几何发展到黎曼几何,则几何,分析,代数已经成为一体。

20世纪几何学家里面最伟大的可能要算Cartan,陈省身的老师。他把Lie和Klein的思想给具体化了。

相对论是用黎曼几何表达的。不懂几何,就不可能真正理解现代物理。而正如上面提到的,到了黎曼,Cartan的时代,微分几何已经是几何,分析,代数三者密不可分了。所以不懂数学,要真正理解物理可能也是不可能的。


=====

线性代数也可以从子空间的角度去理解。

AX本身也可以理解为对A的各列的一种组合。就像抓中药一样,每种分量抓多少。A的每一列就是一味中药,X的每个元素就是分量的多少。
从中西医结合的角度,所有的中药最后可能都能归结为m种元素(这里说的不一定是化学元素,可能更宏观一点)的组合。

可参考Gilbert Strang的这篇文章。
http://home.eng.iastate.edu/~julied/classes/CE570/Notes/strangpaper.pdf
Re: yj270042103 2011-07-31 07:08发表 [回复]
回复lisp21:你是学数学的么?我也是学完微分几何(我学的是光滑流形导论,准确地说应该算微分几何入门)才开始慢慢理解了本科时候的好多课程。其实现在好多学校都同时开线性代数和解析几何,但大多是分开讲的,所以感觉学完都是些生硬的概念和计算,直观的东西太少了。个人的感觉学点微分几何都整体理解数学大有好处,但是真要学到有点感觉,还是要花时间的。作为数学专业的学了好多年,我个人对数学的理解总觉得还是初级的入门者(可能还算不上),孟老师有这样的理解,足见是下了功夫的。虽然表述的不够专业,但思想还是有的。
36楼 lisp21 2009-11-15 14:11发表 [回复]
孟先生是念工科的?你的文章对许多读者而言应该是非常有启发性的。但是就其认识深度而言,可能仍不本质。

行列式的理论比矩阵更深。可参阅多线性代数方面的书籍。

另外,从模的观点重新认识线性代数,可参考龚升先生的书《线性代数五讲》。

此外,或许孟先生会对F. Klein的Erlangen纲领感兴趣。从你的文章中,发现你对仿射几何,射影几何还不够理解。

我猜孟先生可能是在计算机图形学,图像学的相关学习和项目开发过程中产生的对线性代数的进一步理解的。为什么这么说呢,因为我就是这么过来的。

现在国内把解析几何和线性代数给结合起来讲的做法开始流行了,我想学生有了这个直观背景,应该对线性代数的理解好的多了。
35楼 Jackeeeee 2009-11-08 15:23发表 [回复]
一口气看完了三篇文章,我的感触很深啊,越发现越觉得自己的线性代数完全是白学了!!!孤陋寡闻了,不知道是老师的漏讲还是我的无知!
34楼 oliverdream 2009-10-20 16:06发表 [回复]
受教中....
33楼 dxjdhyj132319 2009-09-26 14:50发表 [回复]
看了一下,很受启发
32楼 chentao317316685 2008-05-07 21:20发表 [回复]
其实数学要求太严密了,反而破坏了创造力
31楼 chentao317316685 2008-05-07 21:14发表 [回复]
以前从来不在网上发表言论的我,今天好兴奋特别注册想说几句,最近一直在学习线性代数,其实知道矩阵啊,行列式都有几何意义的,天天想啊看啊,为什么呢,因为以后想用,工科的线性代数确实不怎么好,一大堆定义就不说什么意思,其他数学书大概也都这样,所以中国绝大部分书差啊!只会行列式矩阵运算,你以后根本不能灵活运用,个人觉得更多的去关注他的物理意义吧,看了上面作者发的文章,真的理解了很多,虽然还是有些糊涂,不过第三篇多看几遍也许就会明白,最近一直想一个问题,比如看见一个矩阵你可以把它想成n唯空间的一个线性变换在一组基下的矩阵,这个线性变换在另外一组基下也有一个矩阵,这两个矩阵相似.所以通过特征值就会找到另外一组基,线性变化在这个基下尽量简化,最简单的可能就是对角矩阵了把.所以一个矩阵就对一个线性变换,可是我在想啊,两个基的过渡矩阵又怎么理解呢?过渡矩阵也是矩阵啊.难道把一组基变到另外一个基吗?头都晕了.慢慢理解吧!也许老师说的把矩阵理解为坐标系后就可以理解过渡矩阵.以后好好看看画画..不过老师说的矩阵的行列式我最近找到一点东些可以理解,在解析几何里面的混合积可以理解三唯行列式,矩阵不是有三行吗?要是建立一个三个坐标的空间坐标系,然后把三唯矩阵每一行理解为坐标系下面的三个点,然后想像从原点到三个点有三个向量,有方向的箭头,那么行列式就是这三个箭头形成的一个体积的体积,因为向量混合积就是体积,所以自然可以把n行的那种想成n唯空间的n个点,也许行列式就是体积吧,有兴趣的朋友我们讨论哈矩阵,共同进步哈,我的qq317316685,我想学好矩阵
30楼 chentao317316685 2008-05-07 20:47发表 [回复]
写得很好!
29楼 wuthering_ware 2008-04-29 21:20发表 [回复]
赞一下myan老师, 我一口气看完了这三篇文章,使我一直对矩阵这个东东有了一点理解, 正好最近写3D的相关程序,帮助很大。
觉得楼上的有些人可能误解myan老师写这个系列文章的本质意图了。 理解数学如果只是大家把前辈大师已经整理好的公式和理论背背或抄抄, 或拿来用用就OK的话,我们无异于行尸走肉而已, 关键还是在于“悟”, 怎么前人就造出一个矩阵出来了? 它仅仅是偶然的发现,还是一个真理? 就像关于物理学中关于光的发现情景(是一个被关在牢房里几十年的人, 因为每天只能从牢房的窗户里看到一丝光线, 突然悟出了: 光线是因为射到人眼中,人才可以见到光, 而不是人眼发射了xx东东而看到光, 具体是谁不记得了?)。
28楼 Android 2008-03-05 16:18发表 [回复]
首先,楼上有些朋友理解能力过弱,你正面想不明白,你反着想也行啊,如果这个象你理解的这么简单,myan吃饱了要写这么多,myan不管怎么说,不会没你聪明吧。所以出言三思,不要妄加评论

矩阵,向量空间这些基础孟老师也讲得这么多了,建议在此基础上能着重讲讲正交,付立页变换这些,真的好想看到这方面的文章。
27楼 xuanyuanhaobo 2008-02-05 13:23发表 [回复]
很高兴看到你承认你的文章是"粗糙放肆".

最好的矩阵概述是那位“东阳”同学老师的回答
矩阵是什么?
1. 矩阵只是一堆数,如果不对这堆数建立一些运算规则。
2. 矩阵是一列向量,如果每一列向量列举了对同一个客观事物的多个方面的观察值。
3. 矩阵是一个图像,它的每一的元素代表相对位置的像素值,
4. 矩阵是一个线形变换,它可以将一些向量变换为另一些向量。
所以要回答“矩阵是什么”,取决于你从什么角度去看它。
[当然东阳同学在转述中用词不是很准确...但是大意还是很清楚了.]

就好像"64"这个数是什么一样,你可以看成十进制的64,也可以看成ASCII的"A",也可以看成IA32的汇编的某个指令,可以看成其他系统的汇编指令.至于是什么,"取决于你从什么角度去看它"...

从应用角度上,矩阵就是工具。
至于是什么样的工具,就要看你的应用了。根据应用,根据矩阵运算规则,建立矩阵。

例如:计算机3D图形学中,建立旋转矩阵时,我们不但要考虑到是要绕哪个轴旋转,还要考虑到是用行向量还是列向量。

要下班了,不多说了......拜个早年。。。。
Re: super_chris 2011-09-01 19:37发表 [回复]
回复xuanyuanhaobo:如果矩阵不是指一个变换的话,那么矩阵的很多运算和数值特性就毫无意义了。
我的意思是你当然可以认为矩阵是一幅图像,但你用一个表示图像的矩阵去左乘一个向量,或者求它的特征值、特征向量、行列式都毫无意义。
26楼 虾说八道 2008-01-10 20:57发表 [回复]
矩阵得到的是一个方向,一个趋势,而不是什么结果
25楼 runningstar 2008-01-10 13:38发表 [回复]
非常好,要转载一下让更多的像我一样大学时候没有开窍的人知道
24楼 mhsy2003 2007-12-23 04:03发表 [回复]
屁..
23楼 ccss01 2007-12-03 00:23发表 [回复]
痛苦的继续=======================早知道就难得写了

再把一元函数当中的导数的概念拉进来。一个一元函数随着自变量简单有序的变化(说白了就是递增或递减)从而函数值产生了变化(即使不变也是一种变化,就跟哲学当中静止也是一种特殊的运动一样)。把前后两个函数值相减再除以自变量的变化量。然后再强调自变量的变化很小(就是去求极限)。就得到函数的导数。
同样,一个变矢(一射多)随着自己的一个自变量变化,也就能n个分量的变化。一求变化率的极限就是n个导函数。所以变矢的导数是矢量。
同样,一个多射一的函数f(Z),设Z是一个n维向量。随着Z的一点小小的变化(即每个每个分量都有小小的变化,即使某些分量没变化也是一种变化,就跟哲学当中静止也是一种特殊的运动一样),函数值也有变化。每个分量的变化量可能不相同。有的大有的小。函数值变化量只有一个。所以,函数值变化量针对每个分量的变化率是不同的。那么函数值针对n个分量的变化率就有n个。所以多元函数的全导数就是梯度。

好了,时间不早了,草草收尾。
欢迎指出谬误。

最后盛赞孟岩兄!
Re: 贱洪 2012-12-06 16:12发表 [回复]
回复ccss01:孟岩老师的理解的确是有一个局限,但这个补充好像更难懂了;还有,如果可以的话,可以补充一下为什么矩阵乘法要规定成那样。。。。
Re: super_chris 2011-09-01 19:32发表 [回复]
回复ccss01:仔细的看完了,很形象,但说实话没看出跟孟岩的原文有啥关系~
Re: coblan 2014-09-15 14:31发表 [回复]
回复super_chris:此人虽然没有孟老师讲得好,但是数学功底肯定比孟老师的好。数学的精髓不在于各种严谨的定理,而是思维方式。只要思维方式对了,自然而然的会对整个数学体系进行自我重构,就像楼上的这位。不管是否严谨甚至是否正确,只要不是孤立的来理解数学,就进入数学的殿堂,这时普通人最难跨过的一道坎。
22楼 ccss01 2007-12-03 00:22发表 [回复]
还不能一次发完??===========继续


然后根据内积的概念就可以定义向量的范数和判别两个向量是否正交。以及向量之间的相关性等等。
把向量的每个分量的数域扩充一下,分量为复数的可以定义复向量。
分量为m维向量的可以定义维矩阵。
向量的分量之间不是1维、2维、3维这么按自然数排布下去的。比如,来个第1.2维、第2.6321维等可以扩充到“分维”,这个按下不表。
向量的分量之间按实数关系排布的,就是一元函数。所以孟岩说过,一般的一元函数都是无穷维的向量。而且这个向量也满足上面3中运算规则。比如两个函数叠加——向量的加法,一个数乘上一个函数——向量的数乘,两个函数在相同的定义域内积分——向量的内积(孟岩所说“一个对象可以表达为无穷多个合理选择的对象的线性和。”可以在这里和下面的卷积处找到印证)。

如果再给向量定义两个运算方法叫做移位和反折。移位,就是柱状图的柱子一起往左或者一起往右移动n个单元格(注意,这里和一元函数那里其实隐含的添加了一个概念,就是柱子们之间现在有序了,不是单纯向量里面的不注重顺序的柱子),那么就可以引申出更丰富的内涵。比如移位空出来的直接填0还是循环移位等等。当然有多种方式就靠我们自己去定义,最后检验一下如果能够“自圆其说”就是好理论。
反折,就是以当中某一个分量的位置为中心。或者以某两个分量之间的位置维中心。一排柱子以这个中心转180度。
有了移位和反折这种运算。那么两个函数就多了一种有用的运算:卷积。信号系统和数字信号处理里面用得很
多。这个按下不表。

如果柱状图的每一个柱子的高度都不是常数,都是变化的,并且都是随着某一个变量变化的,那么可以说整个柱状图都是随着这个变量变化的。那么这个柱状图就不是“常”柱状图,而是“变”柱状图。就是说这个n维的矢量不是“常矢量”,而是“变矢量”,简称“变矢”。说白了就是你给我一个变量,我还你n个函数值。这就打破了课本上之前所学的函数只能是一一映射(一射一)或多射一(多元函数有多个自变量,但每次给定多个变量时,只能得到一个函数值)。从而实现了一射多。你给定一个自变量,我第一个分量是一个值,第二个分量又是一个值,第三个……;说白了一个矢量函数是由n个一射一的函数组成的,它们自变量相同,得到的函数值不一定相同(呵呵,这也能叫一射多)。

演绎一下:如果柱状图的每根柱子都是随着相同的多个自变量变化的。那么就是多射多了。
多元单值函数(多射一),自变量就可以看作是一个向量。这种函数就可以看作是在一个向量空间当中取一个向量来,就映射出一个单纯的数值(数量)。向量空间的内积运算就是一个例子。
多射多的函数,就可以看作是取一个m维向量来,就映射出一个n维向量的值。——这就是向量的“变换”。或者叫做不同的向量空间之间的“映射”。
更进一步,如果这个“变换”是线性变换。
并且给定了定义域(原象空间,也就是取m维向量的地方)和值域(象空间,也就是得到的n维向量所在的集合)的基之后;再说一遍:如果给定了这种线性变换的定义域空间的基和值域空间的基之后,这个变换就可以用一个矩阵来表示。就是孟岩所说的Ma = b。写成Mx = y。x是m维的。y是n维的。


再把一元函数当中的导数的概念拉进来。一个一元函数随着自变量简单有序的变化(说白了就是递增或递减)从而函数值产生了变化(即使不变也
Re: b081110089 2010-07-25 12:56发表 [回复]
回复 ccss01:
柱子、柱子、柱子……用数学语言表达不是更简洁明了吗?[e08]
21楼 ccss01 2007-12-03 00:20发表 [回复]
三篇都看过,这是第一次发表评论。
孟岩关于矩阵、变换、坐标系的阐述,有些地方确实很直观。
不过这种直观有某些局限性。就是说在某一个应用方面这样来理解和思考会很直观。普遍看来一些对概念的理解不具备“普适性”。

不过,课本上的数学用于都很抽象很枯燥,也正是这种抽象的语言,才精准的描述了人类对数学某些局部理解的精微。这些描述的语言可能可以有更完善的改进,就像编写的程序有些地方的语句可以改得更巧妙更坚固一样。孟岩对矩阵理解的这种描述的改进是出于处理计算机图形学当中要用到各种变换而进行深入思考的结果。总的说来有闪光的地方。也有使用起来不是那么灵光的词语。
比如说矩阵就是运动。这样理解相对有些狭隘。
不过总体看来还是瑕不掩瑜的。
数学书上的语言是经过千锤百炼的。也容许我们每个人按自己的理解方式来理解。那么数学书上这种描述就是一个好的语言。它言辞很单调枯燥,可是道理是对的。那么就看你怎样对它加工,使它明确、使它华丽、使它完美。使它更易于理解和使用。这个过程也就是一个人学懂了数学的过程。
综述说完了。
时间有限,说点我的理解作为交流。
向量,不是线代一来就给的是n维的吗?
我们一般可以最多思考出一个3维向量在3维空间里头有多长,指向那个方向。所以n维的一来,头都大了。思考不出来。很抽象。
其实先辈们老聪明了。你n维不是很抽象吗。我不是一下子想象不出来你一个n维向量在n维空间是个什么模样吗?咱直接把每一维的长度挨个儿排成一个柱状图不就可以准确的想象出它的形象了吗。像一根根长短不一的石柱树立在平地上排成一排。第一根石柱高3米,那么这个向量的第1维就是3 。第二根石柱高8米,向量的第2维就是8,以此类推。这样就抓住了n维向量的本质:我可以准确的描述它——n维向量。
好了,两个n维向量就是两幅柱状图。m个n维向量就是m幅柱状图。
当然,课本上空间太小,不适合画很多图。所以就直接写一排数字分别代表每一维柱子的高度。就是我们常看见的:(3 , 8 , 2 , -1 , 5)这种形式。它是一个5维向量,而且用柱状图很容易想出它的形象。
用“柱状图”来思考向量的运算还很方便。
下一步,就是定义向量之间的运算:
两个柱状图
( 3 , 8 , 2 ,-1 , 5 )
( 1 ,-3 , 2 , 4 , 1 )
一上一下每一维都对齐。每个分量分别相加,又得到一个柱状图。
( 4 , 5 , 4 , 3 , 6 )
这叫两个向量的“和”。

两个柱状图
( 3 , 2 , 2 ,-1 , 5 )
( 1 ,-3 , 2 , 4 , 1 )
一上一下每一维都对齐。每个分量分别相乘,又得到一个柱状图。
( 3 ,-6 , 4 ,-4 , 5 )
然后再吧所有分量都叠加起来。得到一个数:2 。这叫两个向量的“内积”。

一个柱状图
( 3 , 1 , 2 ,-1 , 5 )
每一维都乘上相同的一个数 3。又得到一个柱状图。
( 9 , 3 , 6 ,-3 ,15 )
这叫向量的数乘。这个运算在向量空间当中称作外作用,因为在另外一个数域当中取了一个3过来。上面两个运算都是内作用。

然后根据内积的概念就可以定义向量

No comments:

Post a Comment