正定矩陣的性質與判別方法

本文的閱讀等級:中級

在“特殊矩陣 (6):正定矩陣”,我們曾經介紹實對稱正定矩陣並解釋其幾何意義,本文將深入研究正定矩陣的一些性質 (必要條件) 與判別方法 (充分條件)。以下討論將我們習慣的實矩陣延伸至複矩陣,對複矩陣不熟悉的讀者,請先參閱“從實數系到複數系”。令 A=[a_{ij}] 為一個 n\times n 階共軛對稱矩陣,或稱 Hermitian 矩陣。如果所有的非零向量 \mathbf{x}\in\mathbb{C}^n 滿足

\mathbf{x}^{\ast}A\mathbf{x}>0

我們稱 A 是正定 (positive definite) 矩陣;如果僅滿足

\mathbf{x}^{\ast}A\mathbf{x}\ge 0

則稱 A 為半正定 (positive semidefinite) 矩陣。事實上,在複正定與半正定矩陣的定義中,A 是 Hermitian 矩陣的假設是多餘的。若對於任一 \mathbf{x}\in\mathbb{C}^n\mathbf{x}^{\ast}A\mathbf{x} 是實數,則 A 必為 Hermitian 矩陣 (見“特殊矩陣 (9):Hermitian 矩陣”)。但如果 A 是實矩陣,縱使對於每一個非零向量 \mathbf{x}\in\mathbb{R}^n 都有 \mathbf{x}^TA\mathbf{x}>0,仍不能保證 A 是對稱矩陣。例如,A=\left[\!\!\begin{array}{rc}  1&1\\  -1&1  \end{array}\!\!\right] 不是對稱矩陣,特徵值為 1\pm i,但每一個非零實向量 \mathbf{x}=\begin{bmatrix}  x_1\\  x_2  \end{bmatrix} 皆使 \mathbf{x}^TA\mathbf{x}=x_1^2+x_2^2>0

 
我們先引進討論需要的概念與符號。令 S\{1,2,\ldots,n\} 的子集合,S^{c} 表示 S 的補集合,\vert S\vert 表示集合 S 的元素數,稱為基數 (cardinal number)。對於所有的 i\in S^{c},將 n\times n 階矩陣 A 的第 i 列 (row) 與第 i 行 (column) 同時刪除,可得到一個 \vert S\vert\times\vert S\vert 階主子陣 (principal submatrix),以 A_S 表示。例如,

A=\left[\!\!\begin{array}{rrrr}    5&-1&3&-1\\    -1&2&-2&-1\\    3&-2&3&1\\    -1&-1&1&6    \end{array}\!\!\right]

下面是幾個主子陣的例子:

A_{\{1,3,4\}}=\left[\!\!\begin{array}{rcr}    5&3&-1\\    3&3&1\\    -1&1&6    \end{array}\!\!\right],~ A_{\{2,4\}}=\left[\!\!\begin{array}{rr}    2&-1\\    -1&6    \end{array}\!\!\right],~ A_{\{3\}}=\begin{bmatrix}    3    \end{bmatrix}

 
性質一:正定矩陣的每一個主子陣都是正定的。

類似主子陣 A_S 的符號表示,對於 \mathbf{x}\in\mathbb{C}^n,我們定義 \mathbf{x}_S 為刪除了 S 的補集合元素後得到的向量,顯然 \mathbf{x}_S\vert S\vert 維向量。對於任何 k\in S^{c},令 \mathbf{x} 的第 k 個元為零,就有

\mathbf{x}_S^{\ast}A_S\mathbf{x}_S=\mathbf{x}^{\ast}A\mathbf{x}>0

由於 \mathbf{x}_S\neq\mathbf{0} 是任意的,這指出 A_S 是正定矩陣。上例中,A 與其主子陣 A_S 都是正定矩陣,判定方法將於稍後介紹。

 
由性質一立刻得到正定矩陣的主對角元都是正數,原因是每個主對角元 a_{ii} 都對應一個主子陣 A_{\{i\}}=[a_{ii}]>0i=1,2,\ldots,n

 
性質二:正定矩陣的特徵值皆為正數。

\lambda 為正定矩陣 A 的一個特徵值,\mathbf{x} 為對應的特徵向量,\mathbf{x}\neq\mathbf{0},則

\mathbf{x}^{\ast}A\mathbf{x}=\mathbf{x}^{\ast}\lambda\mathbf{x}=\lambda\mathbf{x}^{\ast}\mathbf{x}

所以,\lambda=(\mathbf{x}^{\ast}A\mathbf{x})/\mathbf{x}^{\ast}\mathbf{x},分子與分母都是正數,故 \lambda>0

 
由性質二並利用矩陣特徵值、行列式與跡數 (trace) 性質,不難證明以下結果。設 \lambda_i>0i=1,2,\ldots,n,為正定矩陣 A 的特徵值,A 是可逆的,A^{-1}A^k 也是正定矩陣,且

\det A=\lambda_1\lambda_2\cdots\lambda_n>0

\mathrm{trace}A=\lambda_1+\lambda_2+\cdots+\lambda_n>0

從性質一還可推論出每個主子陣 A_S 都享有相同性質:A_S 是可逆的,A_S^{-1}A_S^k 也是正定矩陣,\mathrm{det}A_S>0,且 \mathrm{trace}A_S>0

 
性質三:正定矩陣的軸 (pivot) 都是正數。

考慮 S=\{1,2,\ldots,k\},將 A_SA_k 表示,A_k 保留 n\times n 階矩陣 A 的前 k 列與前 k 行所形成的 k\times k 階領先主子陣 (leading principal submatrix)。上例中,

A_1=\begin{bmatrix}    5    \end{bmatrix},~ A_2=\left[\!\!\begin{array}{rr}    5&-1\\    -1&2    \end{array}\!\!\right],~ A_3=\left[\!\!\begin{array}{rrr}    5&-1&3\\    -1&2&-2\\    3&-2&3    \end{array}\!\!\right],~ A_4=A

性質一告訴我們所有的領先主子陣 A_k 都是正定矩陣,由性質二的必然結果可知 \mathrm{det}A_k>0,利用這個事實可推論出性質三。

 
性質三牽涉了軸,顯然與執行高斯消去法產生的 LU 分解有關 (見“LU 分解”)。若矩陣 A 可以分解為

A=LDU

其中 L=[l_{ij}] 是下三角矩陣,l_{jj}=1U=[u_{ij}] 是上三角矩陣,u_{jj}=1D=\mathrm{diag}(d_1,d_2,\ldots,d_n) 是對角矩陣,主對角非零元 d_j 稱為軸。將 LDU=A 以分塊矩陣表示為

\begin{bmatrix}    L_i&0\\    B&C    \end{bmatrix}\begin{bmatrix}    D_i&0\\    0&E    \end{bmatrix}\begin{bmatrix}    U_i&F\\    0&G    \end{bmatrix}=\begin{bmatrix}    L_iD_iU_i&L_iD_iF\\    BD_iU_i&BD_iF+CEG    \end{bmatrix}=A

對於任意 i=1,2,\ldots,n,順序主子陣可表示為 A_i=L_iD_iU_i,也就是說,我們可以單獨對 A_i 執行高斯消去法,其結果即為 A_i 的 LU 分解。

 
計算 A_i 的行列式:

\det A_i=(\det L_i)(\det D_i)(\det U_i)=\det D_i=d_1d_2\cdots d_i

因此 d_1=\mathrm{det}A_1,且若 \mathrm{det}A_{i-1}\neq 0

d_i=\displaystyle\frac{\det A_i}{\det A_{i-1}}

既然正定矩陣 A 的順序主子陣滿足 \mathrm{det}A_i>0,必定有 d_i>0i=1,2,\ldots,n。反向陳述也為真,若 A 的軸全為正數,則所有順序主子陣行列式也都為正數。這個結果也說明底下的事實:如果 A 的所有領先主子陣 A_1,A_2,\ldots,A_n 都是可逆的,在不使用列交換的限制下,高斯消去法總能夠得到 A=LDU 分解式。

 
性質四:正定矩陣 A 可表示為 A=B^{\ast}BB 是一個可逆矩陣。

Hermitian 矩陣是可么正對角化 (unitarily diagonalizable),亦即 A=U\Lambda U^{\ast},其中 \Lambda=\mathrm{diag}(\lambda_1,\ldots,\lambda_n)U 是么正矩陣,U^{\ast}U=I,參見“特殊矩陣 (3):么正矩陣(酉矩陣)”。由性質二,所有 \lambda_i>0,故對於 k=1,2,\ldotsA 的正定 k 次根,A^{1/k},滿足 (A^{1/k})^{k}=A。因為正實根 \lambda_i^{1/k} 定義良好,A^{1/k} 是唯一的,A^{1/k}=U\Lambda^{1/k}U^{\ast},其中 \Lambda^{1/k}=\mathrm{diag}(\lambda_1^{1/k},\ldots,\lambda_n^{1/k})。令 B=A^{1/2},亦即 A 正定平方根,則

\begin{aligned}  B^{\ast}B&=(U\Lambda^{1/2}U^{\ast})^{\ast}(U\Lambda^{1/2}U^{\ast})\\  &=U\Lambda^{1/2}U^{\ast}U\Lambda^{1/2}U^{\ast}\\  &=U\Lambda U^{\ast}=A.\end{aligned}

另一種方式是設 B=\Lambda^{1/2}U^{\ast},因為

\begin{aligned}  A&=U\Lambda U^{\ast}=(U\Lambda^{1/2})(\Lambda^{1/2}U^{\ast})\\  &=(\Lambda^{1/2}U^{\ast})^{\ast}(\Lambda^{1/2}U^{\ast})=B^{\ast}B.\end{aligned}

 
目前已知存在幾種簡易有效的判別正定矩陣方式,分別建立於上述正定矩陣性質之上。

 
判別法一:若 n\times n 階 Hermitian 矩陣 A 的特徵值皆為正數,則 A 是正定矩陣。

這是性質二的反向陳述。Hermitian 矩陣可么正對角化為 A=U\Lambda U^{\ast},對於任意非零向量 \mathbf{x}\in\mathbb{C}^n,就有

\begin{aligned}  \mathbf{x}^{\ast}A\mathbf{x}&=\mathbf{x}^{\ast}U\Lambda U^{\ast}\mathbf{x}=\mathbf{y}^{\ast}\Lambda\mathbf{y}\\  &=\displaystyle\sum_{i=1}^n\lambda_i\bar{y}_iy_i=\sum_{i=1}^n\lambda_i\vert y_i\vert^2>0,\end{aligned}

上式中,我們令 \mathbf{y}=U^{\ast}\mathbf{x},不等式成立的原因是所有 \lambda_i>0,且 y_i 不全為零。

 
上例 A 有特徵值 0.0131.4996.6137.875,判別法一推論 A 是正定矩陣。判別法一必須解出所有的特徵值,故不適用於手算大尺寸矩陣,下面我們介紹利用高斯消去法來判別正定矩陣的方法。

 
判別法二:若 n\times n 階 Hermitian 矩陣 A 的軸皆為正數,則 A 是正定矩陣。

這是性質三的反向陳述。若 A 的所有軸皆為正數,d_i>0i=1,2,\ldots,n,由性質三的推論結果得知 A 必可分解為 A=LDU,又因為 A^{\ast}=A,故

A^{\ast}=U^{\ast}D^{\ast}L^{\ast}=U^{\ast}DL^{\ast}=LDU=A

比較 LU 形式,得到 U=L^{\ast},因此 A=LDL^{\ast}。對任意非零 \mathbf{x},就有

\mathbf{x}^{\ast}A\mathbf{x}=\mathbf{x}^{\ast}LDL^{\ast}\mathbf{x}=(L^{\ast}\mathbf{x})^{\ast}D(L^{\ast}\mathbf{x})>0

上式不等式成立的原因與判別法一使用的理由相同。

 
上例 A=LDL^{\ast} 分解如下:

L=\begin{bmatrix}    1 & 0 & 0 & 0\\    -0.2 & 1 & 0 & 0\\    0.6 & -0.778 & 1 & 0\\    -0.2 & -0.667 & 6 & 1    \end{bmatrix},~ D=\begin{bmatrix}    5 & 0 & 0 & 0\\    0 & 1.8 & 0 & 0\\    0 & 0 & 0.111 & 0\\    0 & 0 & 0 & 1    \end{bmatrix}

所以,d_1=5d_2=1.8d_3=0.111d_4=1,由判別法二得知 A 是正定矩陣。繼續使用性質三得到的結論,也就有判別法三。

 
判別法三:若 n\times n 階 Hermitian 矩陣 A 的領先主子陣的行列式皆為正數,則 A 是正定矩陣。

上例中,領先子主陣行列式為 \mathrm{det}A_1=5\mathrm{det}A_2=9\mathrm{det}A_3=1\mathrm{det}A_4=1,由判別法三亦可得知 A 是正定矩陣。

 
判別法四:若 n\times n 階 Hermitian 矩陣 A 可表示為 A=B^{\ast}BB 是一個可逆矩陣,則 A 是正定矩陣。

判別法四是性質四的反向陳述。原因很簡單,因為 B 是可逆矩陣,對於非零向量 \mathbf{x},必定有\mathbf{y}=B\mathbf{x}\neq\mathbf{0},因此

\mathbf{x}^{\ast}A\mathbf{x}=\mathbf{x}^{\ast}B^{\ast}B\mathbf{x}=\mathbf{y}^{\ast}\mathbf{y}>0

 
最後我們補充性質四與判別法四的必然結果。若 A 是一個 n\times n 階正定矩陣,則 A 可表示為 A=LL^{\ast}L=[l_{ij}] 是可逆下三角矩陣,所有 l_{jj}>0,相反陳述同樣為真。此分解式稱為 Cholesky 分解 (見“Cholesky 分解”),正定矩陣的 Cholesky 分解是唯一的,詳細證明推導請見“每週問題 November 9, 2009”。

 
參考來源:
[1] C. R. Johnson, Positive definite matrices, American Mathematical Monthly, Vol. 77, 1970, pp 259-264.
[2] G. Strang, Linear Algebra and its Applications, 3rd ed., 1986, pp 330-334.

相關閱讀:
Advertisements
本篇發表於 線性代數專欄, 二次型 並標籤為 , , , , , , , , 。將永久鏈結加入書籤。

11 則回應給 正定矩陣的性質與判別方法

  1. 雲耕子 說道:

    周老師您好,抱歉,有點小疑惑請教您;性質二提到正定矩陣的特徵值皆為正數,然而前提談到的A矩陣同為正定,但卻具特徵值1+-i ?? 難道是指特徵值即便不是正數(>0),也可能會是正定嗎@@

  2. 小欧 說道:

    您好,周老师,网站现在所有的数学公式都不能显示,可以更新一下公式吗?哭。。。

  3. David 說道:

    105台聯(c)
    (a) A real matrix may be positive definite with being symmetric with respect to the real Euclidean inner product

    這樣選項 公布解答是對的
    但以定義來說 如果A 為實矩陣 若為正定 他一定要是對稱矩陣
    已公布的解答來說會不會違反了定義

    若B為實矩陣 將B化成二次式 但B不是對稱矩陣 這樣我們也可以說 B為正定矩陣嗎?

    • David 說道:

      若B為實矩陣 將B化成二次式>0 但B不是對稱矩陣 這樣我們也可以說 B為正定矩陣嗎?

      • ccjou 說道:

        你看一下本文第一段的最後兩句話。

        • David 說道:

          其實我糾結的是定義的問題
          您在課堂上有說
          二次式為正 矩陣便為正定矩陣 但為了使用方便 將矩陣化為實對稱
          而上課講義內容 在定義正定之前 已經假定A為實對稱矩陣

          在有些線代書上 在正定這個名詞 在實數域下 已經將矩陣對稱 變成正定的充要條件

          所以正定的定義是否可以說

          任意的n階方陣 化為二次式 在X不為0的前題下 二次式為正 方陣為正定矩陣
          依此定義 B為正定 且105台聯這題目的解答 我就可理解了

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s