但是读者们其实会发现,我们拿出的这一组一般化的公式,他的计算过程其实并不简单,尤其是当我们不借助编程工具的时候会更加发现他的繁杂。如何简化这里的计算过程?我们在这一小节里就会专门介绍通过找到一个满足特定要求的矩阵A,来对运算过程进行简化的有效方法,而这里面的核心思路就是通过施密特正交化方法找到投影子空间的一组标准正交基。
通过掌握前面两节所讲述的的内容,我们已经可以利用公式将空间中的任意一个向量向任意一个子空间进行投影,并最终得到他的投影向量p。其中,矩阵A的各列就对应着子空间的一组基向量。
但是,通过上一节的一些实际举例,我们会发现在进行计算的时候,尤其是如果不借助程序工具而是采用手算的方式,就会感觉到这个过程非常冗长、复杂,尤其是在计算这个表达式的过程中,涉及到矩阵乘法和矩阵取逆的操作,使得我们不由得在想:要是计算能够简单一点,那该多好呀!那么,我们究竟应该从哪里入手去简化这个计算过程呢?
第一直觉告诉我们,如果矩阵相乘的结果是一个单位矩阵I那真的就太痛快了,由于单位矩阵I满足等式成立,那么投影向量p的表达式就可以变得特别简单:,是不是突然间感觉到特别清爽,特别友好?
那么,我们基于这个思路接着往下推理。
从运算结果的表达式中我们不难发现,如果想要得到的最终结果,则我们选取的这一组列向量必须满足以下两个条件:
(1)在结果矩阵中,矩阵对角线上的元素必须都为1,即当时,;
(2)在结果矩阵中,矩阵非对角线上的元素必须都为0,即当时,。
我们把话说的更直白一些,就是这一组列向量彼此之间的点积为0,意味着向量之间彼此正交;而向量与自身的点积为1,则意味着每一个向量的模长都为1,这一组列向量均为单位向量。
其实有一个专门的词汇来描述这一种情况:我们称这一组向量是标准正交的。
那么,由这么一组标准正交向量构成各列的矩阵,我们一般用一个专门的字母Q来表示,此时矩阵Q就满足等式关系成立。强调一下,满足这个等式成立的矩阵Q不要求是一个方阵。
不过如果当矩阵Q是一个方阵的时候,那么情况则更为特殊一些,此时我们称方阵Q为正交矩阵,并且方阵Q满足可逆性。这时的方阵Q具备一个有趣的性质,那就是:,即,正交矩阵的逆矩阵等于自身的转置矩阵。当然,大家可千万不要忘了矩阵Q是方阵这个大前提啊。这个等式非常重要,他在后面的章节中将会派上大用场。
正是由于我们采用了标准正交向量来描述投影子空间,因此得到了如此清爽简洁的结果。那么很自然的问题就来了,我们怎样才能找到指定子空间上的这一组标准正交向量呢?
请大家不要着急,通过使用我们接下来要介绍的施密特正交化方法就能很容易的实现这个目标。
我们的思路是:首先从a,b,c三个向量中,通过运算变换得出三个彼此正交的向量,然后再分别将其转化成模长为1的单位向量,由此得到最终的结果:一组标准正交向量。
那么,我首先就从向量a入手处理,向量就设置为与向量a相等,即满足。因此就有:。
再来看看向量,向量要求与向量满足正交关系。这并不难办,我们就以此来处理向量b,利用3.1节的知识我们知道:向量b与其自身在向量上的投影之差,就正交于向量,这里的方法我们很熟悉,直接套用公式即可:
,然后再将向量的模长变为1,即有。
最后我们再来看向量,向量要求同时与向量和向量满足正交关系,那我们就来利用向量c,向量c减去其在向量和张成空间上的投影所得到的结果,就能满足同时正交于向量和。
因此,我们换一种表达方式描述就是:向量c减去其在向量和上的投影之和,就能求得向量:
,再将其变为单位向量,就有: 。
如下图3.5所示,他描述了利用三维空间中的三个线性无关向量求解出三个彼此正交向量的过程,也就是我们讲解的施密特正交化的过程。
图3.5 正交向量的求解过程
最终,如果我们将其扩展到一般化的问题:即求解任意个标准正交向量的计算问题,那么本质上就是一个不断迭代的过程,每一个向量减去其在已经求解出的所有正交向量上的投影,就得到了一个新的正交向量,最终将得到的每一个正交向量除以自己的模长,就得到了一组标准正交向量。
我们直接按照上面的方法,先依次求解出一组正交向量:
(1)直接令向量等于向量a。
(2)向量b减去其在向量上的投影,得到第二个垂直向量。
(3)向量c减去其在向量和向量上的投影,得到第三个垂直向量。
最后,我们将求得的向量,向量和向量标准化,得到一组标准正交的向量,和,显然他们的模长均为1:
在这一章的开头,我们介绍了两个实际的工程问题:一个是如何求取无解方程组的近似解;另一个是如何用直线去拟合空间中的一组不共线的点。这两个问题都有一个共同之处,那就是问题的背景都是在无法求得精确解的条件下去展开阐述的,而最终都是运用最小二乘法解决了实际问题。
在这两个实际问题中,问题都被抽象成了对矩阵乘法Ax=b的分析探讨,该式子无解的本质就是由于在矩阵A的目标空间中,向量b不在矩阵A的列空间上,因此在原空间中找不到对应的解向量x。
由此,我们的处理方法就是在矩阵A的列空间中去寻找与向量b距离最近的向量,从而去近似的求取最接近的解。
这里的核心方法就是让向量b向子空间(这里是矩阵A的列空间)中进行投影。我们已经讲解了任意向量向指定子空间进行投影的原理和方法,推导出了相关的通用公式,并且通过观察公式的结构知道了一个用于简化运算的方法,即:选取一组标准正交向量作为描述这个子空间的一组基。从公式中我们就能很容易的看出,整个运算的过程被大大的简化了。
那么关键问题是如何快速的成功获取任意子空间中的一组标准正交向量?这一小节我们解决了这个问题。我们通过施密特正交化的方法,就能将子空间里的任意一组线性无关的向量转换成一组标准正交向量。
如果您对本书感兴趣,请进入当当网选购!