对于一个正交基,每个向量和其他所有向量垂直,坐标轴就是互相正交的。我们还可以进一步改善:每个向量除以它的长度得到单位向量,这样的话正交基变成了标准正交基:
16、如果
qTiqj={01i≠j,给出正交性i=j,给出归一性
<script type="math/tex; mode=display" id="MathJax-Element-10673">
q_i^Tq_j=
\begin{cases}
0&i\neq j,\text{给出正交性}\1&i=j,\text{给出归一性}
\end{cases}</script>
那么q1,…,qn<script type="math/tex" id="MathJax-Element-10674">q_1,\ldots,q_n</script>就是是标准正交基,由标准正交列组成的矩阵叫做Q<script type="math/tex" id="MathJax-Element-10675">Q</script>。
最重要的例子是标准基,对于x?y<script type="math/tex" id="MathJax-Element-10676">x-y</script>平面,最熟悉的e1=(1,0),e2=(0,1)<script type="math/tex" id="MathJax-Element-10677">e_1=(1,0),e_2=(0,1)</script>水平和竖直方向都是垂直的,Q<script type="math/tex" id="MathJax-Element-10678">Q</script>是2×2<script type="math/tex" id="MathJax-Element-10679">2\times 2</script>的单位矩阵。在n<script type="math/tex" id="MathJax-Element-10680">n</script>为空间里标准基e1,…,en<script type="math/tex" id="MathJax-Element-10681">e_1,\ldots,e_n</script>由Q=I<script type="math/tex" id="MathJax-Element-10682">Q=I</script>的列组成:
e1=?????????100?0?????????,e2=?????????010?0?????????,?,en=?????????000?1?????????.
<script type="math/tex; mode=display" id="MathJax-Element-10683">
e_1=\begin{bmatrix}
1\\0\\0\\\vdots\\0
\end{bmatrix},
e_2=\begin{bmatrix}
0\\1\\0\\\vdots\\0
\end{bmatrix}
,\cdots,
e_n=\begin{bmatrix}
0\\0\\0\\\vdots\\1
\end{bmatrix}.
</script>
这不是唯一的正交基!我们在不改变直角的情况下悬着这些轴,依然是正交基,旋转得到的矩阵我们用Q<script type="math/tex" id="MathJax-Element-10684">Q</script>来表示。
如果我们有一个Rn<script type="math/tex" id="MathJax-Element-10685">R^n</script>的子空间,标准向量ei<script type="math/tex" id="MathJax-Element-10686">e_i</script>可能不在这个子空间,但是子空间肯定有一个正交基,我们可以通过一种简单的方法来构造出来,本质上就是将这些倾斜的轴变成正交的,这就是所谓的格拉姆-施密特正交化(Gram-Schmidt othogonalization)。
接下来,说一些本篇文章的是三个主题:
- 正交矩阵Q<script type="math/tex" id="MathJax-Element-10687">Q</script>的定义和性质。
- Qx=b<script type="math/tex" id="MathJax-Element-10688">Qx=b</script>的解,其中Q<script type="math/tex" id="MathJax-Element-10689">Q</script>可以是n×n<script type="math/tex" id="MathJax-Element-10690">n\times n</script>方阵,也可以是长方形矩阵(最小二乘)。
- 格拉姆-施密特方法的具体步骤以及新的矩阵分解A=QR<script type="math/tex" id="MathJax-Element-10691">A=QR</script>。
正交矩阵
17、如果Q<script type="math/tex" id="MathJax-Element-10210">Q</script>(正方行或长方形)的列是正交的,那么QTQ=I<script type="math/tex" id="MathJax-Element-10211">Q^TQ=I</script>:
??????????qT1qT2?qTn?????????????|q1||q2|?|qn|???=?????10?001?0????00?1?????(1)
<script type="math/tex; mode=display" id="MathJax-Element-10212">\begin{equation}
\begin{bmatrix}
-&q_1^T&-\-&q_2^T&-\&\vdots&\-&q_n^T&-
\end{bmatrix}
\begin{bmatrix}
|&|&&|\q_1&q_2&\cdots&q_n\|&|&&|
\end{bmatrix}
=\begin{bmatrix}
1&0&\cdot&0\0&1&\cdot&0\\cdot&\cdot&\cdot&\cdot\0&0&\cdot&1
\end{bmatrix}\tag1
\end{equation}</script>
正交矩阵就是列是单位正交的方阵,它的转置等于它的逆,即QT=Q?1<script type="math/tex" id="MathJax-Element-10213">Q^T=Q^{-1}</script>。
当QT<script type="math/tex" id="MathJax-Element-10214">Q^T</script>的i<script type="math/tex" id="MathJax-Element-10215">i</script>行乘以Q<script type="math/tex" id="MathJax-Element-10216">Q</script>的j<script type="math/tex" id="MathJax-Element-10217">j</script>列时,结果为零qTiqj=0<script type="math/tex" id="MathJax-Element-10218">q_i^Tq_j=0</script>,而对角线上i=j<script type="math/tex" id="MathJax-Element-10219">i=j</script>,得到qTiqi=1<script type="math/tex" id="MathJax-Element-10220">q_i^Tq_i=1</script>,也就是长度为1的单位矩阵归一化。
注意即便Q<script type="math/tex" id="MathJax-Element-10221">Q</script>是长方形矩阵,QTQ=I<script type="math/tex" id="MathJax-Element-10222">Q^TQ=I</script>依然成立,但是QT<script type="math/tex" id="MathJax-Element-10223">Q^T</script>仅仅是左逆。
例1:
Q=[cosθsinθ?sinθcosθ],QT=Q?1=[cosθ?sinθsinθcosθ]
<script type="math/tex; mode=display" id="MathJax-Element-10224">
Q=\begin{bmatrix}
\cos\theta&-\sin\theta\\sin\theta&\cos\theta
\end{bmatrix},\quad
Q^T=Q^{-1}=
\begin{bmatrix}
\cos\theta&\sin\theta\-\sin\theta&\cos\theta
\end{bmatrix}
</script>
Q<script type="math/tex" id="MathJax-Element-10225">Q</script>将每个向量旋转θ<script type="math/tex" id="MathJax-Element-10226">\theta</script>度,而QT<script type="math/tex" id="MathJax-Element-10227">Q^T</script>旋转?θ<script type="math/tex" id="MathJax-Element-10228">-\theta</script>度,相当于有回到原点了。这些列明显都是正交的,因为sin2θ+cos2θ=1<script type="math/tex" id="MathJax-Element-10229">\sin^2\theta+\cos^2\theta=1</script>。
例2:置换矩阵P<script type="math/tex" id="MathJax-Element-10230">P</script>都是正交矩阵,它的列都是单位向量,而且正交。因为每一列在不同的位置有一个1,它的转置也等于它的逆:
P=???001100010???那么P?1=PT=???001100010???
<script type="math/tex; mode=display" id="MathJax-Element-10231">
P=\begin{bmatrix}
0&1&0\\0&0&1\\1&0&0
\end{bmatrix}\text{那么}
\quad P^{-1}=P^T=\begin{bmatrix}
0&1&0\\0&0&1\\1&0&0
\end{bmatrix}
</script>
反对角线P<script type="math/tex" id="MathJax-Element-10232">P</script>上的元素P13=P22=P31=I<script type="math/tex" id="MathJax-Element-10233">P_{13}=P_{22}=P_{31}=I</script>将x?y?z<script type="math/tex" id="MathJax-Element-10234">x-y-z</script>轴变成了z?y?x<script type="math/tex" id="MathJax-Element-10235">z-y-x</script>轴——也就是右手系统变成了左手系统,所以如我们说每个正交矩阵Q<script type="math/tex" id="MathJax-Element-10236">Q</script>表示一个旋转的话就不是很准确,因为反射也能做到:
P=[0110]
<script type="math/tex; mode=display" id="MathJax-Element-10237">
P=\begin{bmatrix}
0&1\\1&0
\end{bmatrix}
</script>
将点(x,y)<script type="math/tex" id="MathJax-Element-10238">(x,y)</script>反射成(y,x)<script type="math/tex" id="MathJax-Element-10239">(y,x)</script>,它的镜像是45°<script type="math/tex" id="MathJax-Element-10240">45^{\circ}</script>斜线。从几何上来看,正交矩阵Q<script type="math/tex" id="MathJax-Element-10241">Q</script>是旋转矩阵和反射矩阵的乘积。
有一个性质是旋转矩阵和反射共有的,当然也就意味着每个正交矩阵也具有。但投影矩阵没有这个性质,因为它不正交或者说不可逆,投影会使向量的长度变小,而正交矩阵却保持长度不变,这个性质非常重要也非常具有代表性:
18、Q<script type="math/tex" id="MathJax-Element-10242">Q</script>乘以任何向量保持向量长度不变:
∥Qx∥=∥x∥(2)
<script type="math/tex; mode=display" id="MathJax-Element-10243">\begin{equation}
\Vert Qx\Vert=\Vert x\Vert\tag2
\end{equation}</script>
它也保持内积和夹角不变,因为(Qx)T(Qy)=xTQTQy=xTy<script type="math/tex" id="MathJax-Element-10244">(Qx)^T(Qy)=x^TQ^TQy=x^Ty</script>。对于长度而言,直接从QTQ=I<script type="math/tex" id="MathJax-Element-10245">Q^TQ=I</script>就能看出来:
∥Qx∥2=∥x∥2即(Qx)T(Qx)=xTQTQx=xTx(3)
<script type="math/tex; mode=display" id="MathJax-Element-10246">\begin{equation}
\Vert Qx\Vert^2=\Vert x\Vert^2\text{即}\quad
(Qx)^T(Qx)=x^TQ^TQx=x^Tx\tag3
\end{equation}</script>
当空间被旋转或反射时,所有的内积和长度都保持不变。
接下来我们利用性质QT=Q?1<script type="math/tex" id="MathJax-Element-10247">Q^T=Q^{-1}</script>进行计算。如果已知一组基,那么任何向量都可以用基向量来表示,对于一组标准正交基来说这是非常简便的,之后我们会看到傅里叶级数背后实际就是这一想法,所以现在问题变成找基向量的系数:
将b写成一个基向量的组合b=x1q1+x2q2+?+xnqn
<script type="math/tex; mode=display" id="MathJax-Element-10248">
\text{将$b$写成一个基向量的组合}b=x_1q_1+x_2q_2+\cdots+x_nq_n
</script>
在计算x1<script type="math/tex" id="MathJax-Element-10249">x_1</script>时有一个小技巧,方程两边同时乘以qT1<script type="math/tex" id="MathJax-Element-10250">q_1^T</script>,那么左边就变成qT1b<script type="math/tex" id="MathJax-Element-10251">q_1^Tb</script>,右边除了第一项外其余项都消失了(因为qT1qj=0<script type="math/tex" id="MathJax-Element-10252">q_1^Tq_j=0</script>),最后留下:
qT1b=x1qT1q1
<script type="math/tex; mode=display" id="MathJax-Element-10253">
q_1^Tb=x_1q_1^Tq_1
</script>
因为qT1q1=1<script type="math/tex" id="MathJax-Element-10254">q_1^Tq_1=1</script>,所以x1=qT1b<script type="math/tex" id="MathJax-Element-10255">x_1=q_1^Tb</script>,同样的可以得出第二个系数x2=qT2b<script type="math/tex" id="MathJax-Element-10256">x_2=q_2^Tb</script>,得出所有系数后代入b<script type="math/tex" id="MathJax-Element-10257">b</script>的方程的:
(qT1b)q1+(qT2b)q2+?+(qTnb)qn(4)
<script type="math/tex; mode=display" id="MathJax-Element-10258">\begin{equation}
(q_1^Tb)q_1+(q_2^Tb)q_2+\cdots+(q_n^Tb)q_n\tag4
\end{equation}</script>
接下来将标准正交基放到方阵Q<script type="math/tex" id="MathJax-Element-10259">Q</script>中,向量方程x1q1+?+xnqn=b<script type="math/tex" id="MathJax-Element-10260">x_1q_1+\cdots+x_nq_n=b</script>等价于Qx=b<script type="math/tex" id="MathJax-Element-10261">Qx=b</script>,(Q<script type="math/tex" id="MathJax-Element-10262">Q</script>的列乘以x<script type="math/tex" id="MathJax-Element-10263">x</script> 中的元素)它的解是x=Q?1b<script type="math/tex" id="MathJax-Element-10264">x=Q^{-1}b</script>,但是因为Q?1=QT<script type="math/tex" id="MathJax-Element-10265">Q^{-1}=Q^T</script>——正交矩阵的性质——所有解也可以写成x=QTb<script type="math/tex" id="MathJax-Element-10266">x=Q^Tb</script>:
x=QTb=???????qT1?qTn??????????b???=????qT1b?qTnb????(5)
<script type="math/tex; mode=display" id="MathJax-Element-10267">\begin{equation}
x=Q^Tb=\begin{bmatrix}
-&q_1^T&-\-&\vdots&-\-&q_n^T&-
\end{bmatrix}
\begin{bmatrix}
\\b\\ \\end{bmatrix}
=\begin{bmatrix}
q_1^Tb\\\vdots\\q_n^Tb
\end{bmatrix}\tag5
\end{equation}</script>
x<script type="math/tex" id="MathJax-Element-10268">x</script>的元素就是内积qTib<script type="math/tex" id="MathJax-Element-10269">q_i^T b</script>,也就是方程(4)。
矩阵形式也展示了在列向量不是标准正交时发生了什么,我们依然将b<script type="math/tex" id="MathJax-Element-10270">b</script>表示为x1a1+?+xnan<script type="math/tex" id="MathJax-Element-10271">x_1a_1+\cdots+x_n a_n</script>的组合来求解Ax=b<script type="math/tex" id="MathJax-Element-10272">Ax=b</script>,基向量表示成A<script type="math/tex" id="MathJax-Element-10273">A</script>,为了求解,我们需要A?1<script type="math/tex" id="MathJax-Element-10274">A^{-1}</script>,在标准正交时仅仅需要QT<script type="math/tex" id="MathJax-Element-10275">Q^T</script>。
注解1:前面我们将b<script type="math/tex" id="MathJax-Element-10276">b</script>投影到直线上时出现了aTb/aTa<script type="math/tex" id="MathJax-Element-10277">a^Tb/a^Ta</script>,而这里的a<script type="math/tex" id="MathJax-Element-10278">a</script>就是q1<script type="math/tex" id="MathJax-Element-10279">q_1</script>,这是一维的,并且投影是(qT1)q1<script type="math/tex" id="MathJax-Element-10280">(q_1^T)q_1</script>,所以我们可以重新解释公式(4):每个向量b<script type="math/tex" id="MathJax-Element-10281">b</script>是投影到一维直线上的总和。
因为这些投影是正交的,那么可以应用毕达哥拉斯定理,斜边的平方等于各项平方的和:
∥b∥2=(qT1b)2+(qT2b)2+?+(qTnb)2也就是∥QTb∥2(6)
<script type="math/tex; mode=display" id="MathJax-Element-10282">\begin{equation}
\Vert b\Vert^2=(q_1^Tb)^2+(q_2^Tb)^2+\cdots+(q_n^Tb)^2\text{也就是$\Vert Q^Tb\Vert^2$}\tag6
\end{equation}</script>
注解2:因为QT=Q?1<script type="math/tex" id="MathJax-Element-10283">Q^T=Q^{-1}</script>,所以QQT=I<script type="math/tex" id="MathJax-Element-10284">QQ^T=I</script>。当我们计算QQT<script type="math/tex" id="MathJax-Element-10285">QQ^T</script>时,得到的是Q<script type="math/tex" id="MathJax-Element-10286">Q</script>行的内积结果(QTQ<script type="math/tex" id="MathJax-Element-10287">Q^TQ</script>是列的内积)。因为这个结果也是单位矩阵,由此我们得出一个结论:方阵的行是正交的。行的方向和列完全不同,从几何上看不出为何正交,但是他们真的就是正交:
Q=???1/3√1/3√1/3√1/2√0?1/2√1/6√?2/6√1/6√???
<script type="math/tex; mode=display" id="MathJax-Element-10288">
Q=\begin{bmatrix}
1/\sqrt{3}&1/\sqrt{2}&1/\sqrt{6}\1/\sqrt{3}&0&-2/\sqrt{6}\1/\sqrt{3}&-1/\sqrt{2}&1/\sqrt{6}
\end{bmatrix}
</script>
长方形矩阵
这一小节讲一下Ax=b<script type="math/tex" id="MathJax-Element-10581">Ax=b</script>,其中A<script type="math/tex" id="MathJax-Element-10582">A</script>是长方形矩阵。考虑Qx=b<script type="math/tex" id="MathJax-Element-10583">Qx=b</script>,我们现在允许行数大于列数,也就是说Q<script type="math/tex" id="MathJax-Element-10584">Q</script>中有n<script type="math/tex" id="MathJax-Element-10585">n</script>个正交列qi<script type="math/tex" id="MathJax-Element-10586">q_i</script>,而m>n<script type="math/tex" id="MathJax-Element-10587">m>n</script>,此时Q<script type="math/tex" id="MathJax-Element-10588">Q</script>是m×n<script type="math/tex" id="MathJax-Element-10589">m\times n</script>矩阵并且不能精确的求解Qx=b<script type="math/tex" id="MathJax-Element-10590">Qx=b</script>,也就是需要用到最小二乘。
标准正交列一般会让问题简化,在方阵中我们已经看到了效果,现在我们在长方形矩阵使用一下,重点是注意到QQ=I<script type="math/tex" id="MathJax-Element-10591">Q^Q=I</script>,所以QT<script type="math/tex" id="MathJax-Element-10592">Q^T</script>依然是Q<script type="math/tex" id="MathJax-Element-10593">Q</script>的左逆。
对于最小二乘,在Ax=b<script type="math/tex" id="MathJax-Element-10594">Ax=b</script>两边乘以矩阵的转置得到正规方程ATAx^=ATb<script type="math/tex" id="MathJax-Element-10595">A^TA\hat{x}=A^Tb</script>,而这里的正规方程就是QTQ=QTb<script type="math/tex" id="MathJax-Element-10596">Q^TQ=Q^Tb</script>,但是QTQ=I<script type="math/tex" id="MathJax-Element-10597">Q^TQ=I</script>!因此x^=QTb<script type="math/tex" id="MathJax-Element-10598">\hat{x}=Q^Tb</script>,当Q<script type="math/tex" id="MathJax-Element-10599">Q</script>是方阵时x^<script type="math/tex" id="MathJax-Element-10600">\hat{x}</script> 就是精确解,或者Q<script type="math/tex" id="MathJax-Element-10601">Q</script>是长方形矩阵,此时就需要最小二乘了。
19、如果Q<script type="math/tex" id="MathJax-Element-10602">Q</script>的列是标准正交的,那么最小二乘问题就变得容易了:对于大多数b<script type="math/tex" id="MathJax-Element-10603">b</script>,长方形矩阵形式没有解
QxQTQx^x^pp=b=QTb=QTb=Qx^=QQTb对于大多数b没有解正规方程有最佳解x^,其中QTQ=Ix^i就是qTibb的投影是(qT1b)q1+?+(qTnb)qn投影矩阵是P=QQT
<script type="math/tex; mode=display" id="MathJax-Element-10604">
\begin{array}{rll}
Qx&=b&\text{对于大多数$b$没有解}\Q^TQ\hat{x}&=Q^Tb&\text{正规方程有最佳解$\hat{x}$,其中$Q^TQ=I$}\\hat{x}&=Q^Tb&\text{$\hat{x}_i$就是$q_i^Tb$}\p&=Q\hat{x}&\text{$b$的投影是$(q_1^Tb)q_1+\cdots+(q_n^Tb)q_n$}\p&=QQ^Tb&\text{投影矩阵是$P=QQ^T$}
\end{array}
</script>
最后一个方程像p=Ax^,P=A(ATA)?1AT<script type="math/tex" id="MathJax-Element-10605">p=A\hat{x},P=A(A^TA)^{-1}A^T</script>,当列是标准正交时,矩阵ATA<script type="math/tex" id="MathJax-Element-10606">A^TA</script>变成QTQ=I<script type="math/tex" id="MathJax-Element-10607">Q^TQ=I</script>,也就是说当向量标准正交时最小二乘中难计算的部分没有了,在轴上的投影不在耦合了,p<script type="math/tex" id="MathJax-Element-10608">p</script>是各项的和p=(qT1b)q1+?+(qTnb)qn<script type="math/tex" id="MathJax-Element-10609">p=(q_1^Tb)q_1+\cdots+(q_n^Tb)q_n</script>。
我们强调以下,投影不是重新构建b<script type="math/tex" id="MathJax-Element-10610">b</script>,只有在m=n<script type="math/tex" id="MathJax-Element-10611">m=n</script>的方阵情况下才是这样,而对于m>n<script type="math/tex" id="MathJax-Element-10612">m>n</script>的长方形矩阵,他们不是重建,给出的投影p<script type="math/tex" id="MathJax-Element-10613">p</script>已经不是原来的向量b<script type="math/tex" id="MathJax-Element-10614">b</script>。投影矩阵一般是A(ATA)?1AT<script type="math/tex" id="MathJax-Element-10615">A(A^TA)^{-1}A^T</script>,而这里简化为
P=Q(QTQ)?1QT或者P=QQT(7)
<script type="math/tex; mode=display" id="MathJax-Element-10616">\begin{equation}
P=Q(Q^TQ)^{-1}Q^T\text{或者}P=QQ^T\tag7
\end{equation}</script>
注意QTQ<script type="math/tex" id="MathJax-Element-10617">Q^TQ</script>是n×n<script type="math/tex" id="MathJax-Element-10618">n\times n</script>的单位矩阵,而QQT<script type="math/tex" id="MathJax-Element-10619">QQ^T</script>是m×m<script type="math/tex" id="MathJax-Element-10620">m\times m</script>的投影矩阵P<script type="math/tex" id="MathJax-Element-10621">P</script>,它是Q<script type="math/tex" id="MathJax-Element-10622">Q</script>列向量上的单位矩阵,但是QQT<script type="math/tex" id="MathJax-Element-10623">QQ^T</script>的正交补是零矩阵(QT<script type="math/tex" id="MathJax-Element-10624">Q^T</script>的零空间)。
例3:下面的例子比较简单但是非常典型。假设我们将点b=(x,y,z)<script type="math/tex" id="MathJax-Element-10625">b=(x,y,z)</script>投影到x?y<script type="math/tex" id="MathJax-Element-10626">x-y</script>平面上,那么它的投影是p=(x,y,0)<script type="math/tex" id="MathJax-Element-10627">p=(x,y,0)</script>,并且是分别在x<script type="math/tex" id="MathJax-Element-10628">x</script>轴和y<script type="math/tex" id="MathJax-Element-10629">y</script>轴上投影之和:
q1=???100???,(qT1b)q1=???x00???;q2=???010???,(qT2b)q2=???0y0???
<script type="math/tex; mode=display" id="MathJax-Element-10630">
q_1=\begin{bmatrix}
1\\0\\0
\end{bmatrix},
(q_1^Tb)q_1=\begin{bmatrix}
x\\0\\0
\end{bmatrix};
q_2=\begin{bmatrix}
0\\1\\0
\end{bmatrix},
(q_2^Tb)q_2=\begin{bmatrix}
0\\y\\0
\end{bmatrix}
</script>
这个投影矩阵是
P=q1qT1+q2qT2=???100010000???,P???xyz???=???xy0???
<script type="math/tex; mode=display" id="MathJax-Element-10631">
P=q_1q_1^T+q_2q_2^T=
\begin{bmatrix}
1&0&0\\0&1&0\\0&0&0
\end{bmatrix},
P\begin{bmatrix}
x\\y\\z
\end{bmatrix}
=\begin{bmatrix}
x\\y\\0
\end{bmatrix}
</script>
在平面上的投影=在标准正交向量q1,q2<script type="math/tex" id="MathJax-Element-10632">q_1,q_2</script>上投影之和。
例4:当测试时间的平均值是零时,拟合直线得到的是正交列。我们取t1=?3,t2=0,t3=3<script type="math/tex" id="MathJax-Element-10633">t_1=-3,t_2=0,t_3=3</script>,然后拟合y=C+Dt<script type="math/tex" id="MathJax-Element-10634">y=C+Dt</script>得到含有两个未知量的三个方程:
CCC+++Dt1Dt2Dt3===y1y2y3,或者???111?303???[CD]=???y1y2y3???
<script type="math/tex; mode=display" id="MathJax-Element-10635">
\begin{array}{ccccc}
C&+&Dt_1&=&y_1\C&+&Dt_2&=&y_2\C&+&Dt_3&=&y_3
\end{array},\text{或者}
\begin{bmatrix}
1&-3\\1&0\\1&3
\end{bmatrix}
\begin{bmatrix}
C\\D
\end{bmatrix}=
\begin{bmatrix}
y_1\\y_2\\y_3
\end{bmatrix}
</script>
列(1,1,1),(?3,0,?3)<script type="math/tex" id="MathJax-Element-10636">(1,1,1),(-3,0,-3)</script>是正交的,我们可以分别计算他们的投影,分别求出最佳系数C^,D^<script type="math/tex" id="MathJax-Element-10637">\hat{C},\hat{D}</script>:
C^=[111][y1y2y3]T12+12+12,D^=[?303][y1y2y3]T(?3)2+02+32,
<script type="math/tex; mode=display" id="MathJax-Element-10638">
\hat{C}=\frac{\begin{bmatrix}1&1&1\end{bmatrix}\begin{bmatrix}y_1&y_2&y_3\end{bmatrix}^T}{1^2+1^2+1^2},
\hat{D}=\frac{\begin{bmatrix}-3&0&3\end{bmatrix}\begin{bmatrix}y_1&y_2&y_3\end{bmatrix}^T}{(-3)^2+0^2+3^2},
</script>
注意C^=(y1+y2+y3)/3<script type="math/tex" id="MathJax-Element-10639">\hat{C}=(y_1+y_2+y_3)/3</script>是数据的均值,它给出了水平线的最佳拟合,而D^t<script type="math/tex" id="MathJax-Element-10640">\hat{D}t</script>是通过原点直线的最佳拟合。这些列是正交的,所以这两部分的和就是所以直线的最佳拟。因为列不是单位限量,所以C^,D^<script type="math/tex" id="MathJax-Element-10641">\hat{C},\hat{D}</script>都需要除以各自的长度。
正交列的确对求解问题带来许多方便。考虑另一种情况,如果测量时间的平均值不是0,tˉ=(t1+?+tm)/m<script type="math/tex" id="MathJax-Element-10642">\bar{t}=(t_1+\cdots+t_m)/m</script>,那么时间原点就变成了tˉ<script type="math/tex" id="MathJax-Element-10643">\bar{t}</script>,我们不再使用y=C+Dt<script type="math/tex" id="MathJax-Element-10644">y=C+Dt</script>,而是用y=c+d(t?tˉ)<script type="math/tex" id="MathJax-Element-10645">y=c+d(t-\bar{t})</script>,距离说明:
c^=[1?1][y1?ym]T12+12+?+12=y1+?+ymm,d^=[(t1?tˉ)?(tm?tˉ)][y1?ym]T(t1?tˉ)2+?+(tm?tˉ)2=Σ(ti?tˉ)yiΣ(ti?tˉ)2(8)
<script type="math/tex; mode=display" id="MathJax-Element-10646">\begin{align}
&\hat{c}=\frac{\begin{bmatrix}1&\cdots&1\end{bmatrix}\begin{bmatrix}y_1&\cdots&y_m\end{bmatrix}^T}{1^2+1^2+\cdots+1^2}=\frac{y_1+\cdots+y_m}{m},\nonumber\&\hat{d}=\frac{\begin{bmatrix}(t_1-\bar{t})&\cdots&(t_m-\bar{t})\end{bmatrix}\begin{bmatrix}y_1&\cdots&y_m\end{bmatrix}^T}{(t_1-\bar{t})^2+\cdots+(t_m-\bar{t})^2}=\frac{\Sigma(t_i-\bar{t})y_i}{\Sigma(t_i-\bar{t})^2}\tag8
\end{align}</script>
最佳解c^<script type="math/tex" id="MathJax-Element-10647">\hat{c}</script>是均值,同时得到d^<script type="math/tex" id="MathJax-Element-10648">\hat{d}</script>的简化形式。之前ATA<script type="math/tex" id="MathJax-Element-10649">A^TA</script>的反对角线元素是Σti<script type="math/tex" id="MathJax-Element-10650">\Sigma t_i</script>,转变了时间t^<script type="math/tex" id="MathJax-Element-10651">\hat{t}</script>后变成零,而这个转变就是格拉姆-施密特过程。
正交矩阵在数值线性代数中非常重要,因为他们引入了不稳定性。当长度保持不变的时候,可以控制住舍入误差。正交向量已经是非常基本的技术,可能出了消元法它就是第二基本的方法了。并且由它得到的分解A=QR<script type="math/tex" id="MathJax-Element-10652">A=QR</script>和A=LU<script type="math/tex" id="MathJax-Element-10653">A=LU</script>一样出名。
<script type="text/javascript"> $(function () { $(‘pre.prettyprint code‘).each(function () { var lines = $(this).text().split(‘\n‘).length; var $numbering = $(‘