正交矩阵

在矩陣論中，**正交矩陣**（英語：**orthogonal matrix**）是一個方塊矩陣 $Q$ ，其元素為實數，而且行向量與列向量皆為正交的單位向量，使得該矩陣的轉置矩陣為其逆矩陣：

　
: $Q^{T}=Q^{-1}\Leftrightarrow Q^{T}Q=QQ^{T}=I.\,\!$

其中， $I$ 為單位矩陣。正交矩陣的行列式值必定為 $+1$ 或 $-1$ ，因為：

　
: $1=det(I)=det(Q^{T}Q)=det(Q^{T})det(Q)=(det(Q))^{2}\Rightarrow det(Q)=\pm 1$

以下是一些重要的性質：

* 作為一個線性映射（轉換矩陣），正交矩陣保持距離不變，所以它是一個保距映射，具體例子為旋轉與鏡射。
* 行列式值為 +1 的正交矩陣，稱為**特殊正交矩陣**，它是一個旋轉矩陣。
* 行列式值為-1 的正交矩陣，稱為瑕旋轉矩陣。瑕旋轉是旋轉加上鏡射。鏡射也是一種瑕旋轉。
* 所有 $n\times n$ 的正交矩陣對矩陣乘法形成一個群 $O(n)$ ，稱為正交群。亦即，正交矩陣與正交矩陣的乘積也是一個正交矩陣。
* 所有特殊正交矩陣對矩陣乘法形成一個子群 $SO(n)$ ，稱為**特殊正交群**。亦即，旋轉矩陣與旋轉矩陣的乘積也是一個旋轉矩陣。

## 概述

正交矩陣是實數特殊化的么正矩陣，因此總是正規矩陣。儘管我們在這裡只考慮實數矩陣，這個定義可用於其元素來自任何域的矩陣。正交矩陣畢竟是從內積自然引出的，對於複數的矩陣這導致了歸一要求。

要看出與內積的聯繫，考慮在 _n_ 維實數內積空間中的關於正交基寫出的向量 **v**。**v** 的長度的平方是 **v**T**v**。如果矩陣形式為 _Q_**v** 的線性轉換保持了向量長度，則

　
: ${\mathbf {v} }^{T}{\mathbf {v} }=(Q{\mathbf {v} })^{T}(Q{\mathbf {v} })={\mathbf {v} }^{T}Q^{T}Q{\mathbf {v} }$ 。

所以有限維線性等距同構，比如旋轉、反射和它們的組合，都產生正交矩陣。反過來也成立：正交矩陣蘊涵了正交轉換。但是，線性代數包括了在既不是有限維的也不是同樣維度的空間之間的正交轉換，它們沒有等價的正交矩陣。

有多種原由使正交矩陣對理論和實踐是重要的。_n_×_n_ 正交矩陣形成了一個群，即指示為 _O_（_n_）的正交群，它和它的子群廣泛的用在數學和物理科學中。例如，分子的點群是 _O_（3）的子群。因為浮點版本的正交矩陣有有利的性質，它們是字數值線性代數中很多算法比如 QR 分解的關鍵，通過適當的規範化，離散餘弦轉換（用於 MP3 壓縮）可用正交矩陣表示。

## 例子

下面是一些小正交矩陣的例子和可能的解釋。

 * ${\begin{bmatrix}1&0\\0&1\\\end{bmatrix}}$ 恆等轉換。
* ${\begin{bmatrix}0.96&-0.28\\0.28&\;\;\,0.96\\\end{bmatrix}}$ 旋轉 16.26°。
 * ${\begin{bmatrix}1&0\\0&-1\\\end{bmatrix}}$ 針對 _x_ 軸反射。
 * ${\begin{bmatrix}0&-0.80&-0.60\\0.80&-0.36&\;\;\,0.48\\0.60&\;\;\,0.48&-0.64\end{bmatrix}}$ 旋轉反演（rotoinversion）: 軸 (0,-3/5,4/5)，角度 90°。
 * ${\begin{bmatrix}0&0&0&1\\0&0&1&0\\1&0&0&0\\0&1&0&0\end{bmatrix}}$ 置換坐標軸。
 * ${\begin{bmatrix}\cos(\alpha )\cos(\gamma )-\sin(\alpha )\sin(\beta )\sin(\gamma )&-\sin(\alpha )\cos(\beta )&-\cos(\alpha )\sin(\gamma )-\sin(\alpha )\sin(\beta )\cos(\gamma )\\\cos(\alpha )\sin(\beta )\sin(\gamma )+\sin(\alpha )\cos(\gamma )&\cos(\alpha )\cos(\beta )&\cos(\alpha )\sin(\beta )\cos(\gamma )-\sin(\alpha )\sin(\gamma )\\\cos(\beta )\sin(\gamma )&-\sin(\beta )&\cos(\beta )\cos(\gamma )\end{bmatrix}}$

## 基本構造

### 低維度

最簡單的正交矩陣是 1×1 矩陣 [1] 和 [−1]，它們可分別解釋為恆等和實數線針對原點的反射。

如下形式的 2×2 矩陣

　
: ${\begin{bmatrix}p&t\\q&u\end{bmatrix}},$

它的正交性要求滿足三個方程式

　
:

在考慮第一個方程式時，不丟失一般性而設 _p_ = cos θ, _q_= sin θ；因此要麼 _t_ = −_q_, _u_ = _p_ 要麼 _t_ = _q_, _u_ = −_p_。我們可以解釋第一種情況為旋轉 θ（θ = 0 是單位矩陣），第二個解釋為針對在角 θ/2 的直線的反射。

　
: ${\begin{bmatrix}\cos \theta &-\sin \theta \\\sin \theta &\cos \theta \\\end{bmatrix}}$ 旋轉 ${\begin{bmatrix}\cos \theta &\sin \theta \\\sin \theta &-\cos \theta \\\end{bmatrix}}$ 反射

在 45° 的反射對換 _x_ 和 _y_；它是置換矩陣，在每列和每行帶有一個單一的 1（其他都是 0）：

　
: ${\begin{bmatrix}0&1\\1&0\end{bmatrix}}$ 。

單位矩陣也是置換矩陣。

反射是它自己的逆，這蘊涵了反射矩陣是對稱的（等於它的轉置矩陣）也是正交的。兩個旋轉矩陣的積是一個旋轉矩陣，兩個反射矩陣的積也是旋轉矩陣。

### 更高維度

不管維度，總是可能把正交矩陣按純旋轉與否來分類，但是對於 3×3 矩陣和更高維度矩陣要比反射複雜多了。例如，

　
: ${\begin{bmatrix}-1&0&0\\0&-1&0\\0&0&-1\end{bmatrix}}$ 和 ${\begin{bmatrix}0&-1&0\\1&0&0\\0&0&-1\end{bmatrix}}$

表示通過原點的反演和關於 _z_ 軸的旋轉反演（逆時針旋轉 90° 後針對 _x_-_y_ 平面反射，或逆時針旋轉 270° 後對原點反演）。

旋轉也變得更加複雜；它們不再由一個角來刻畫，並可能影響多於一個平面子空間。儘管經常以一個軸和角來描述 3×3 旋轉矩陣，在這個維度旋轉軸的存在是偶然的性質而不適用於其他維度。

但是，我們有了一般適用的基本建造板塊如置換、反射、和旋轉。

### 基本轉換

最基本的置換是換位（transposition），通過交換單位矩陣的兩行得到。任何 _n_×_n_ 置換矩陣都可以構造為最多 _n_−1 次換位的積。構造自非零向量 **v** 的 Householder 反射為

　
: $Q=I-2{{\mathbf {v} }{\mathbf {v} }^{T} \over {\mathbf {v} }^{T}{\mathbf {v} }}$ 。

這裡的分子是對稱矩陣，而分母是 **v** 的平方量的一個數。這是在垂直於 **v** 的超平面上的反射（取負平行於 **v** 任何向量分量）。如果 **v** 是單位向量，則 _Q_ = _I_−2**vv**T 就足夠了。Householder 反射典型的用於同時置零一列的較低部分。任何 _n_×_n_ 正交矩陣都可以構造為最多 _n_ 次這種反射的積。

Givens 旋轉作用於由兩個坐標軸所生成的二維（平面）子空間上，按選定角度旋轉。它典型的用來置零一個單一的次對角線元素（subdiagonal entry）。任何 _n_×_n_ 的旋轉矩陣都可以構造為最多 _n_(_n_−1)/2 次這種旋轉的積。在 3x3 矩陣的情況下，三個這種旋轉就足夠了；並且通過固定這個序列，我們可以用經常叫做歐拉角的三個角來（儘管不唯一）描述所有 3×3 旋轉矩陣。

雅可比旋轉有同 Givens 旋轉一樣的形式，但是被用做相似轉換，選擇來置零 2×2 子矩陣的兩個遠離對角元素（off-diagonal entry）。

## 性質

### 矩陣性質

實數方塊矩陣是正交的，若且唯若它的列形成了帶有普通歐幾里得點積的歐幾里得空間 **R**n 的正交規範基，它為真若且唯若它的行形成 **R**n 的正交規範基。假設帶有正交（非正交規範）列的矩陣叫正交矩陣可能是誘人的，但是這種矩陣沒有特殊價值而沒有特殊名字；他們只是 _M_T_M_ = _D_，_D_ 是對角矩陣。

任何正交矩陣的行列式是 +1 或−1。這可從關於行列式的如下基本事實得出：

　
: $1=\det(I)=\det(Q^{T}Q)=\det(Q^{T})\det(Q)=(\det(Q))^{2}\,\!$ 。

逆敘述不真；有 +1 行列式不保證正交性，即使帶有正交列，可由下列反例證實。

　
: ${\begin{bmatrix}2&0\\0&{\frac {1}{2}}\end{bmatrix}}$

對於置換矩陣，行列式是 +1 還是−1 匹配置換是偶還是奇的標誌，行列式是行的交替函數。

比行列式限制更強的是正交矩陣總可以是在複數上可對角化來展示特徵值的完全的集合，它們全都必須有（複數的模長）絕對值 1。

### 群性質

正交矩陣的逆是正交的，兩個正交矩陣的積是正交的。事實上，所有 _n_×_n_ 正交矩陣的集合滿足群的所有公理。它是 _n_(_n_−1)/2 維的緊緻李群，叫做正交群並指示為 _O_(_n_)｡

行列式為 +1 的正交矩陣形成了路徑連通的子群指標為 2 的 _O_(_n_) 正規子群，叫做旋轉的特殊正交群 _SO_(_n_)。商群 _O_(_n_)/_SO_(_n_) 同構於 _O_(1)，帶有依據行列式選擇 [+1] 或 [−1] 的投影映射。帶有行列式−1 的正交矩陣不包括單位矩陣，所以不形成子群而只是陪集；它也是（分離的）連通的。所以每個正交群被分為兩個部分；因為投影映射分裂，_O_(_n_) 是 _SO_(_n_) 與 _O_(1) 的半直積。用實用術語說，一個相當的陳述是任何正交矩陣可以通過採用一個旋轉矩陣並可能取負它的一列來生成，如我們在 2×2 矩陣中看到的。如果 _n_ 是奇數，則半直積實際上是直積，任何正交矩陣可以通過採用一個旋轉矩陣並可能取負它的所有列來生成。

現在考慮 (_n_+1)×(_n_+1) 右底元素等於 1 的正交矩陣。最後一列（和最後一行）的餘下元素必須是零，而任何兩個這種矩陣的積有同樣的形式。餘下的矩陣是 _n_×_n_ 正交矩陣；因此 _O_(_n_) 是 _O_(_n_+1)（和所有更高維群）的子群。

　
: ${\begin{bmatrix}&&&0\\&O(n)&&\vdots \\&&&0\\0&\cdots &0&1\end{bmatrix}}$

因為 Householder 正交矩陣形式的基本反射可把任何正交矩陣簡約成這種約束形式，一系列的這種反射可以把任何正交矩陣變回單位矩陣；因此正交群是反射群。最後一列可以被固定為任何單位向量，並且每種選擇給出不同的 _O_(_n_) 在 _O_(_n_+1) 中的複本；以這種方式 _O_(_n_+1) 是在單位球 _S_n 與纖維 _O_(_n_) 上的叢。

類似的，_SO_(_n_) 是 _SO_(_n_+1) 的子群；任何特定正交矩陣可以使用類似過程通過 Givens 平面旋轉來生成。叢結構持續：_SO_(_n_)↪ _SO_(_n_+1) → _S_n。一個單一旋轉可以在最後一列的第一行生成一個零，而 _n_−1 次旋轉序列將置零 _n_×_n_ 旋轉矩陣的除了最後一列的最後一行的所有元素。因為平面是固定的，每次旋轉只有一個自由度，就是它的角度。通過歸納，_SO_(_n_) 因此有

　
: $(n-1)+(n-2)+\cdots +1=n(n-1)/2$

自由度，_O_(_n_) 也是。

置換矩陣簡單一些；它們不形成李群，只是一個有限群，_n_! 次對稱群 _S_n。通過同類的討論，_S_n 是 _S_n+1 的子群。偶置換生成行列式 +1 的置換矩陣的子群，_n_!/2 次交錯群。

### 規範形式

更廣泛的說，任何正交矩陣的效果分離到在正交二維空間上的獨立動作。就是說，如果 _Q_ 是狹義正交的，則你可以找到（旋轉）改變基的一個正交矩陣 _P_，把 _Q_ 帶回到分塊對角形式：

　
: $P^{T}QP={\begin{bmatrix}R_{1}&&\\&\ddots &\\&&R_{k}\end{bmatrix}}$ （_n_ 偶數）， $P^{T}QP={\begin{bmatrix}R_{1}&&&\\&\ddots &&\\&&R_{k}&\\&&&1\end{bmatrix}}$ （_n_ 奇數）。

這裡的矩陣 _R_1,...,_R_k 是 2×2 旋轉矩陣，而餘下的元素是零。作為例外，一個旋轉塊可以是對角的，±_I_。因此如果需要的話取負一列，並注意 2×2 反射可對角化為 + 1 和−1，任何正交矩陣可變為如下形式

　
: $P^{T}QP={\begin{bmatrix}{\begin{matrix}R_{1}&&\\&\ddots &\\&&R_{k}\end{matrix}}&0\\0&{\begin{matrix}\pm 1&&\\&\ddots &\\&&\pm 1\end{matrix}}\\\end{bmatrix}}$ ,

矩陣 _R_1,…,_R_k 給出位於複數平面中單位圓上的特徵值的共軛對；所以這個分解複合確定所有帶有絕對值 1 的特徵值。如果 _n_ 是奇數，至少有一個實數特徵值 + 1 或−1；對於 3×3 旋轉，關聯著 + 1 的特徵向量是旋轉軸。

## 數值線性代數

### 優點

數值分析自然的利用了正交矩陣的很多數值線性代數的性質。例如，經常需要計算空間的正交基，或基的正交變更；二者都採用了正交矩陣的形式。有行列式 ±1 和所有模為 1 的特徵值是對數值穩定性非常有利的。一個蘊涵是條件數為 1（這是極小的），所以在乘以正交矩陣的時候錯誤不放大。很多算法為此使用正交矩陣如 Householder 反射和 Givens 旋轉。有幫助的不只是正交矩陣是可逆的，還有它的逆矩陣本質上是免花費的，只需要對換索引（下標）。

置換是很多算法成功的根本，包括有局部定支點（partial pivoting）的運算繁重的高斯消去法（這裡的置換用來定支點）。但是它們很少明顯作為矩陣出現；它們的特殊形式允許更有限的表示，比如 _n_ 個索引的列表。

同樣的，使用 Householder 和 Givens 矩陣的算法典型的使用特殊方法的乘法和存儲。例如，Givens 旋轉只影響它所乘的矩陣的兩行，替代完全的 _n_3 次的矩陣乘法為更有效的 _n_ 次運算。在使用這些反射和旋轉向矩陣介入零的時候，騰出的空間足夠存儲充足的數據來重生成這個轉換。

### 分解

一些重要的矩陣分解（Golub & Van Loan, 1996）涉及到了正交矩陣，包括：

　
: **QR 分解：_M_ = _QR_, _Q_ 正交，_R_ 上三角。**
**奇異值分解：_M_ = _UΣV_T, _U_ 和 _V_ 正交，_Σ_ 非負對角。**
**譜分解：_S_ = _QΛQ_T, _S_ 對稱，_Q_ 正交，_Λ_ 對角。**
**極分解：_M_ = _QS_, _Q_ 正交，_S_ 對稱半正定。**

## 參見

* 正交群
* 坐標旋轉
* 么正矩陣
* 辛矩陣
* 反對稱矩陣

## 參考資料

* Diaconis, Persi; Mehrdad Shahshahani. The subgroup algorithm for generating uniform random variables. Prob. in Eng. and Info. Sci. 1987, **1**: 15–32. ISSN 0269-9648.
* Dubrulle, Augustine A. Frobenius Iteration for the Matrix Polar Decomposition. HP Labs Technical Report HPL-94-117. 1994 [2007-06-23]. （原始內容存檔於 2021-03-21）.
* Golub, Gene H.; Charles F. Van Loan. Matrix Computations 3/e. Baltimore: Johns Hopkins University Press. 1996. ISBN 978-0-8018-5414-9.
* Higham, Nicholas. Computing the Polar Decomposition—with Applications. SIAM J. Sci. Stat. Comput. 1986, **7** (4): 1160–1174 [2007-06-23]. ISSN 0196-5204. （原始內容存檔於 2007-10-07）.
* Higham, Nicholas; Robert Schreiber. Fast polar decomposition of an arbitrary matrix. SIAM J. Sci. Stat. Comput. July 1990, **11** (4): 648–655 [2007-06-23]. ISSN 0196-5204. （原始內容存檔於 2007-09-26）.  [1]
* Stewart, G. W. The Economical Storage of Plane Rotations. Numerische Mathematik. 1976, **25** (2): 137–138. ISSN 0029-599X.
* Stewart, G. W. The Efficient Generation of Random Orthogonal Matrices with an Application to Condition Estimators. SIAM J. Numer. Anal. 1980, **17** (3): 403–409. ISSN 0036-1429.