【一些评论】

三篇都看过,这是第一次发表评论。

孟岩关于矩阵、变换、坐标系的阐述,有些地方确实很直观。

不过这种直观有某些局限性。就是说在某一个应用方面这样来理解和思考会很直观。普遍看来一些对概念的理解不具备“普适性”。

不过,课本上的数学用于都很抽象很枯燥,也正是这种抽象的语言,才精准的描述了人类对数学某些局部理解的精微。这些描述的语言可能可以有更完善的改进,就像编写的程序有些地方的语句可以改得更巧妙更坚固一样。孟岩对矩阵理解的这种描述的改进是出于处理计算机图形学当中要用到各种变换而进行深入思考的结果。总的说来有闪光的地方。也有使用起来不是那么灵光的词语。

比如说矩阵就是运动。这样理解相对有些狭隘。

不过总体看来还是瑕不掩瑜的。

数学书上的语言是经过千锤百炼的。也容许我们每个人按自己的理解方式来理解。那么数学书上这种描述就是一个好的语言。它言辞很单调枯燥,可是道理是对的。那么就看你怎样对它加工,使它明确、使它华丽、使它完美。使它更易于理解和使用。这个过程也就是一个人学懂了数学的过程。

综述说完了。

时间有限,说点我的理解作为交流。

向量,不是线代一来就给的是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过来。上面两个运算都是内作用。

然后根据内积的概念就可以定义向量的范数和判别两个向量是否正交。以及向量之间的相关性等等。

把向量的每个分量的数域扩充一下,分量为复数的可以定义复向量。

分量为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维的。

再把一元函数当中的导数的概念拉进来。一个一元函数随着自变量简单有序的变化(说白了就是递增或递减)从而函数值产生了变化(即使不变也再把一元函数当中的导数的概念拉进来。一个一元函数随着自变量简单有序的变化(说白了就是递增或递减)从而函数值产生了变化(即使不变也是一种变化,就跟哲学当中静止也是一种特殊的运动一样)。把前后两个函数值相减再除以自变量的变化量。然后再强调自变量的变化很小(就是去求极限)。就得到函数的导数。

同样,一个变矢(一射多)随着自己的一个自变量变化,也就能n个分量的变化。一求变化率的极限就是n个导函数。所以变矢的导数是矢量。

同样,一个多射一的函数f(Z),设Z是一个n维向量。随着Z的一点小小的变化(即每个每个分量都有小小的变化,即使某些分量没变化也是一种变化,就跟哲学当中静止也是一种特殊的运动一样),函数值也有变化。每个分量的变化量可能不相同。有的大有的小。函数值变化量只有一个。所以,函数值变化量针对每个分量的变化率是不同的。那么函数值针对n个分量的变化率就有n个。所以多元函数的全导数就是梯度。

好了,时间不早了,草草收尾。

欢迎指出谬误。

最后盛赞孟岩兄!

[ccss01 发表于2007-12-03]

---------------------------------------------------

很高兴看到你承认你的文章是"粗糙放肆".

最好的矩阵概述是那位“东阳”同学老师的回答

矩阵是什么?

1. 矩阵只是一堆数,如果不对这堆数建立一些运算规则。

2. 矩阵是一列向量,如果每一列向量列举了对同一个客观事物的多个方面的观察值。

3. 矩阵是一个图像,它的每一的元素代表相对位置的像素值,

4. 矩阵是一个线形变换,它可以将一些向量变换为另一些向量。

所以要回答“矩阵是什么”,取决于你从什么角度去看它。

[当然东阳同学在转述中用词不是很准确...但是大意还是很清楚了.]

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

从应用角度上,矩阵就是工具。

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

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

要下班了,不多说了......拜个早年。。。。

[xuanyuanhaobo 发表于2008-02-05 ]

1. 以前从来不在网上发表言论的我,今天好兴奋特别注册想说几句,最近一直在学习线性代数,其实知道矩阵啊,行列式都有几何意义的,天天想啊看啊,为什么呢,因为以后想用,工科的线性代数确实不怎么好,一大堆定义就不说什么意思,其他数学书大概也都这样,所以中国绝大部分书差啊!只会行列式矩阵运算,你以后根本不能灵活运用,个人觉得更多的去关注他的物理意义吧,看了上面作者发的文章,真的理解了很多,虽然还是有些糊涂,不过第三篇多看几遍也许就会明白,最近一直想一个问题,比如看见一个矩阵你可以把它想成n唯空间的一个线性变换在一组基下的矩阵,这个线性变换在另外一组基下也有一个矩阵,这两个矩阵相似.所以通过特征值就会找到另外一组基,线性变化在这个基下尽量简化,最简单的可能就是对角矩阵了把.所以一个矩阵就对一个线性变换,可是我在想啊,两个基的过渡矩阵又怎么理解呢?过渡矩阵也是矩阵啊.难道把一组基变到另外一个基吗?头都晕了.慢慢理解吧!也许老师说的把矩阵理解为坐标系后就可以理解过渡矩阵.以后好好看看画画..不过老师说的矩阵的行列式我最近找到一点东些可以理解,在解析几何里面的混合积可以理解三唯行列式,矩阵不是有三行吗?要是建立一个三个坐标的空间坐标系,然后把三唯矩阵每一行理解为坐标系下面的三个点,然后想像从原点到三个点有三个向量,有方向的箭头,那么行列式就是这三个箭头形成的一个体积的体积,因为向量混合积就是体积,所以自然可以把n行的那种想成n唯空间的n个点,也许行列式就是体积吧,有兴趣的朋友我们讨论哈矩阵,共同进步哈,我的qq317316685,我想学好矩阵

2. 在这个《理解矩阵》的系列里,我试图用一种新的“启发式”的方法来讨论数学,这种方法不是一开始就要说绝对正确的话,不是以不犯错误为目的,而是以有益于读者理解为目的,为了直觉性,我不惜一开始犯一些错误,比如给出一些数学概念的不那么严格、但是容易理解的定义,然后在后面的过程中不断地修正这个定义,最后到达“正确”。你会看到,我在《理解矩阵(二)》中已经修正了矩阵的意义。还没有完,在第三部分中我会再次修正其意义,以后可能还要再修正一次,才会达到让任何人跳不出错的地步。我当然可以一开始就给出一个绝对正确的定义,抄书就是了,最容易不过。但是直觉性就不存在了,读者也就理解不了了。

同样的,空间的定义也会在后面的系列中修正。事实上,把空间定义为容纳运动的容器肯定是不严谨的,你说的度量空间不能容纳运动,我还能找到一些不能容纳运动的空间,比如概率论里有样本空间,也不能容纳运动。但是没关系,现在先这样说,对于习惯了三维空间的普通读者来说容易理解,以后再进一步抽象,人家也就跟得上了。如果一上来就拿非常抽象的概念说事,你有信心读者能明白么

?读者不明白,就不愿意看,不愿意想,你写得再伟光正,又有什么用呢?

当然,我应该在整个系列开始的时候说明这一点,免得别人看了一半就以为明白了,把半成品当成宝。这是我的疏忽,感谢你指出。

“启发式”的方法来讨论数学 精彩

3. 我觉得研究生期间有两门数学课是必须要学的(必修的数值分析和概率论与数理统计之外):一门是泛函分析,另外一门是矩阵论。

矩阵论的重要性工作时间长了就能慢慢体会到,但是大家一般对泛函分析不太了解,所以也就很难认识到其重要性了。事实上,泛函分析虽然很抽象,很难直接应用到工作当中去,但是可以帮助我们对很多问题有一个更本质的认识。举两个例子:说到采样,大家的第一反应肯定是一个词“2倍”(采样定理)。学得比较扎实的,可能还会把为什么是2倍解释清楚。但我对采样的理解是:采样实际上是在进行正交分解,采样值不过是在一组正交基下分解的系数。如果原信号属于该组正交基所张成的线性子空间,那么该信号就能无失真的恢复(满足采样定理)。学过信号处理的朋友,你知道这组正交基是什么吗?:)第二个例子是关于为什么傅里叶变换在线性系统理论中如此重要?答案可能五花八门,但我认为我的理解是比较深入的:原因是傅里叶基是所有线性时不变算子的特征向量(和本文联系起来了)。这句话解释起来比较费工夫,但是傅里叶变换能和特征向量联系起来,大家一定感觉很有趣吧。

4. (1)关于这里把向量说成“点”

我不明白你这里说的“向量和点的概念不同”是什么意思,概念当然是不同的,但是在向量空间中存在一一对应关系,而在我这篇文章的上下文中好像是可以混为一谈的。而且,我在这里说的一个点,其实是抽象的点,或者说是一个对象,一个向量对象。我们说在概率论的样本空间中的一个基本事件也是一个点,所以这里所说的“点”是一个抽象概念。

不过还是感谢你指出,这属于我叙述中的不严格。有必要的话以后修改。

至于你说计算机图形学使用射影变换,有道理,我对于计算机图形学不了解,只是看了一些相关的数学基础,犯错误是难免的。我看的那本教材是讲CAD的,仿射变换就够了。你说要用射影变换,当然是对的,在产生有景深的、有透视效果的真实感图形,就要用到射影变换。不过,如果再往上说的话,如果要产生哈哈镜效果,还需要使用拓扑变换。所以...

(2)关于相似与相抵的问题

你肯定是对矩阵轮比较熟,所以一上来就使一个杀招。[1, 0; 0, 1]是一个单位矩阵,只跟自己相似。矩阵相似的问题还是有一点内容的,我的观点是不要在建立概念阶段带出那么多细节来干扰思路,等到概念建立起来之后(哪怕一开始建立的是不那严谨的概念)再修正。

我希望彻底回答你这个问题,但还是不太有把握,其实这已经触及到了我对这个课题的认识边缘了,所以如果你有更深入的研究,希望指教。

回答上面的问题:

(3) vector = point 1 - point 2 是有方向的, 而点是孤立。 点p和向量 v 对应是建立在: v = p - origin, 但是不能说 v 就是 p。 这一点是严格的。 当然你在文中 只是想阐述一些概念,可以不用这么严格。

(4) 对于线性空间基的变换,你的理解是错误的。该变换不涉及相似。你可以参考线性代数书。

你对空间变换,矩阵变换的开始抽象理解很好,但是还是需要静下心来理解里面的数学内涵。 对你开始研究图形学会很有帮助。

5. 关于哲学,我觉得爱因斯坦总结的再透彻也没有了:

Philosophy is like a mother who gave birth to and endowed all the other sciences. Therefore one should not scorn her in her nakedness and poverty, but should hope; rather, that part of her Don Quixote ideal will live on in her children so that they do not sink into philistinism.

理解矩阵 的一些评论相关推荐

  1. 如何理解矩阵特征值?

    李浩 ,FPA蓝色 / EE. 知乎用户.Tavion Fu.雄哼哼 等人赞同 补充:答主现在用到的多数是对称矩阵或酉矩阵的情况,有思维定势了,写了半天才发现主要讲的是对称矩阵,这答案就当科普用了.特 ...

  2. 线性代数:如何最通俗地理解矩阵的「秩」?

    小时候老师总告诉我们「要有n个方程才能确定地解出n个未知数」--这句话其实是不严格的,如果你想确定地解出n个未知数,只有n个方程是不够的,这n方程还必须都是「干货」才行.从这个角度,初学者可以更好地理 ...

  3. 理解矩阵,矩阵背后的现实意义

    https://blog.csdn.net/ecidevilin/article/details/79065949 原文链接(排版稍作调整)  http://www.360doc.com/conten ...

  4. 理解矩阵背后的现实意义

    线性代数课程,无论你从行列式入手还是直接从矩阵入手,从一开始就充斥着莫名其妙.比如说,在全国一般工科院系教学中应用最广泛的同济线性代数教材(现在到了第四版),一上来就介绍逆序数这个"前无古人 ...

  5. 【转载】理解矩阵(一)

    原文:理解矩阵(一) 前不久chensh出于不可告人的目的,要充当老师,教别人线性代数.于是我被揪住就线性代数中一些务虚性的问题与他讨论了几次.很明显,chensh觉得,要让自己在讲线性代数的时候不被 ...

  6. 理解矩阵,矩阵背后的现实意义 [转]

    这是很早以前已经看过的,最近无意中又把保存的文章翻出来时,想起很多朋友问过矩阵,虽对矩阵似懂非懂,但却很想弄懂它,希望这几篇文章能帮你一下,故转之:   线性代数课程,无论你从行列式入手还是直接从矩阵 ...

  7. 将矩阵转为一行_理解矩阵乘法

    理解矩阵乘法 考研需要考一门课<线性代数>,这门课其实是教矩阵. 刚学的时候,还蛮简单的,矩阵加法就是相同位置的数字加一下. 矩阵乘法也类似,矩阵乘以一个常数,就是所有位置都乘以这个数. ...

  8. (转自孟岩的CSDN)理解矩阵

    理解矩阵(一) 前不久chensh出于不可告人的目的,要充当老师,教别人线性代数.于是我被揪住就线性代数中一些务虚性的问题与他讨论了几次.很明显,chensh觉得,要让自己在讲线性代数的时候不被那位强 ...

  9. 《新理解矩阵1》:矩阵是什么?

    原文链接:http://spaces.ac.cn/index.php/archives/1765/ 前边我承诺过会写一些关于自己对矩阵的理解.其实孟岩在<理解矩阵>这三篇文章中,已经用一种 ...

最新文章

  1. 旷视AI「炼丹房」Brain++ 再升级!首席科学家孙剑发AI「灵魂」三问
  2. 在Foreda8上安装libaio-0.3.105-2.i386.rpm
  3. what do eco consulting do
  4. linux循环条件,shell脚本编写 之 条件选择,条件判断,循环语句
  5. 编程类-----matlab基础语法复习(1)
  6. 【CCF】201703-1分蛋糕
  7. 2011年倒数第三天,下雪,第一次写博客
  8. 面试—每日一题(7)
  9. 零基础适合学python吗-学Python需要什么基础知识?零基础可以学Python吗?
  10. Codeforces Round #553 (Div. 2) 题解
  11. Spring 缓存大法
  12. 怎么用ps做一个黑底白字_ps怎么把白底黑字变成黑底白字
  13. Qt5.12 使用FFmpeg实时解码播放H264/H265摄像头记录(直传数据法)
  14. 【计算机科学】【2020.05】基于深度学习的计算蛋白质结构预测
  15. deepin 安装git
  16. 宏基Acer4710系列宝石本白屏闪屏等屏幕疑难杂症
  17. HashMap源码分析(深入理解HashMap)
  18. echarts饼图pie中间显示总数
  19. idea 项目添加图片或更换图片 引用后没反应(清缓存)
  20. 电脑录音效果不佳的问题解决

热门文章

  1. 【笔记】基于轻量和积网络及无人机遥感图像的大豆田杂草识别
  2. excel大数据重采样批量操作(每两列中插入新一列,新一列为左右两列的平均值)
  3. 吴恩达《构建机器学习项目》精炼笔记(1)-- 机器学习策略(上)
  4. 怎么检测mysql卸载完全_怎么检查mysql有没有删干净
  5. PL/0语言编译程序分析
  6. 拔掉 MacBookPro,用 8GB 树莓派4 工作一天,体验原来是这样的
  7. D进制的A+B (20)
  8. flex项目,file not found错误解决
  9. Hi3516A开发--USB PCB 设计建议
  10. 内核中的kmalloc函数详解