線性代數筆記19——格拉姆-施密特正交化


標准正交矩陣

標准正交向量

  有一堆向量,q1,q2……qn,它們兩兩正交,這意味着這些向量滿足:

  一個向量沒法和自己正交,在i = j時,讓qiTqi = 1,這相當於qi模長等於1:

  向量的轉置乘以自身等於1,意味着這個向量是單位向量,所以我們稱這堆向量q1,q2……qn是標准正交向量。

標准正交矩陣

  現在把這些標准正交向量放入矩陣中:

  QTQ最終得到了一個單位矩陣,但Q本身未必是方陣。Q的列是標准正交的,Q因此被稱為標准正交矩陣;當Q是方陣時,簡稱為正交矩陣,此時說明Q和QT互為逆矩陣:

  下面的Q就是一個正交矩陣:

  可以將Q的三個列看作直角坐標系的三個軸,它們兩兩垂直。

  再舉個例子:

  一個方陣的列是正交的並不意味着方陣是正交矩陣,比如下面這個:

  雖然這個矩陣不是正交矩陣,QTQ的結果卻與單位矩陣神似,我們可以對Q做點處理讓它變成正交矩陣。當Q是正交矩陣時,Q的每一個列的模長都應該是1,因此可以這樣處理:

  這樣就變成正交矩陣了。類似的還有下面這個:

正交矩陣與投影矩陣

  如果Q是標准正交矩陣,那么Q在列空間上的投影矩陣將得到簡化:

  更進一步,如果Q是方陣:

  如果對QQT再次投影(這里並未強調Q是方陣):

  其中:

  在求解Ax = b時,如果A是標准正交矩陣,它的好處就是不需要計算逆矩陣:

  這也意味着x帽的一個分量等於QT一行(或Q的一列的轉置)與b的點積:

  這也是很重要的一個式子:如果已知標准正交基,在第i個基方向上的投影就等於qiTb

格拉姆-施密特正交化

  既然正交化這么好,有沒有什么方法能使矩陣標准正交化呢?當然有,這就是格拉姆-施密特(Gram-Schmidt)正交化。

  假設有兩個線性無關的向量a和b,現在標准正交化這兩個向量,讓它們變成q1和q2。首先保持a不變讓向量A = a,接下來要尋找到另一個向量B,使得A⊥B。p是b在a上的投影,B就相當於b的誤差向量:

  根據上一章的知識,p相當於a放縮了x倍,在一維空間內,x是一個標量:

  這相當於B是b減去b在a上的投影,B是b和A的線性組合。

  最后將A變成指向A方向的單位向量,B變成指向B方向的單位向量:

  這就是格拉姆-施密特正交化方法。

  如果還有一個向量c,由c到q3的轉換:

  代入幾個數值看看:

  驗證:

  這個標准正交矩陣Q是通過下面的原始矩陣得到的:

  A的列空間和B的列空間相同,能夠張成一個二維空間的平面。a和b是A的列空間的一組基,但這組基“不夠好”,我們還想進一步讓這組基的向量兩兩正交,並且都是單位向量,這就得到了q1和q2

格拉姆-施密特表達

  如同A = LU一樣,A可以分解成一個正交矩陣和一個上三角矩陣的乘積,A = QR,這里A是原始矩陣,各列線性無關,Q是標准正交矩陣,R是上三角矩陣。

  假設原始矩陣A有三個列向量:

  按照格拉姆-施密特正交化方法轉換后,得到q1,q2,q3

  q和a本身也是列向量,得出結果並不那么直觀,可以展開表達:

  由於q1Tq2 = 0,q1只是a1的單位化,所以a1T與q2也正交,a1Tq2 = 0;同理,a1Tq3 = 0。q2是a2和q1的線性組合,轉置后,q2T是a2T和q1T的線性組合,這相當於:

  如果t1 = 0,相當於q1和q2是線性相關的,這就不符合標准正交向量的前提,所以一定有t1 ≠ 0:

  a2Tq2和a3Tq3不為0,如果是0,就沒必要正交化了。q3是a3和q1、q2的線性組合,轉置后,q3T是a3T和q1T、q2T的線性組合,這相當於:

示例

  求矩陣A的QR分解。

  


   作者:我是8位的

  出處:http://www.cnblogs.com/bigmonkey

  本文以學習、研究和分享為主,如需轉載,請聯系本人,標明作者和出處,非商業用途! 

  掃描二維碼關注公眾號“我是8位的”


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM