廣義奇異值分解

線性代數中，廣義奇異值分解（GSVD）是基於奇異值（SVD）的兩種不同演算法的統稱。其區別在於，一個是分解兩個矩陣（類似於高階或張量SVD），另一種使用施加於單矩陣SVD奇異向量上的約束。

## 版本1：雙矩陣分解

廣義奇異值分解（GSVD）是對矩陣對的矩陣分解，將奇異值分解推廣到兩個矩陣的情形。它由Van Loan 於1976年提出，後來由Paige與Saunders完善，也就是本節描述的版本。與SVD相對，GSVD可以同時分解具有相同列數的矩陣對。SVD、GSVD及SVD的其他一些推廣被廣泛用於研究線性系統在二次半範數方面的條件調節與正則化。下面設$\mathbb{F} = \mathbb{R}$，或$\mathbb{F} = \mathbb{C}$。

### 定義

$A_1 \in \mathbb{F}^{m_1 \times n}$與$A_2 \in \mathbb{F}^{m_2 \times n}$的廣義奇異值分解為$$\begin{align} A_1 & = U_1\Sigma_1 [ W^* D, 0_D] Q^*, \\ A_2 & = U_2\Sigma_2 [ W^* D, 0_D] Q^*, \end{align}$$，其中

- $U_1 \in \mathbb{F}^{m_1 \times m_1}$為酉矩陣。
- $U_2 \in \mathbb{F}^{m_2 \times m_2}$為酉矩陣。
- $Q \in \mathbb{F}^{n \times n}$為酉矩陣。
- $W \in \mathbb{F}^{k \times k}$為酉矩陣。
- $D \in \mathbb{R}^{k \times k}$對角線元素為正實數，包含$C = \begin{bmatrix} A_1 \\ A_2 \end{bmatrix}$的非零奇異值的降序排列。
- $0_D = 0 \in \mathbb{R}^{k \times (n - k)}$,
- $\Sigma_1 = \lceil I_A, S_1, 0_A \rfloor \in \mathbb{R}^{m_1 \times k}$是非負實數分塊對角陣，其中$S_1 = \lceil \alpha_{r + 1}, \dots, \alpha_{r + s} \rfloor$，其中$1 > \alpha_{r + 1} \ge \cdots \ge \alpha_{r + s} > 0$, $I_A = I_r$，且$0_A = 0 \in \mathbb{R}^{(m_1 - r - s) \times (k - r - s)}$。
- $\Sigma_2 = \lceil 0_B, S_2, I_B \rfloor \in \mathbb{R}^{m_2 \times k}$是非負實數分塊對角陣，其中$S_2 = \lceil \beta_{r + 1}, \dots, \beta_{r + s} \rfloor$，其中$0 < \beta_{r + 1} \le \cdots \le \beta_{r + s} < 1$, $I_B = I_{k - r - s}$，且$0_B = 0 \in \mathbb{R}^{(m_2 - k + r) \times r}$。
- $\Sigma_1^* \Sigma_1 = \lceil\alpha_1^2, \dots, \alpha_k^2\rfloor$,
- $\Sigma_2^* \Sigma_2 = \lceil\beta_1^2, \dots, \beta_k^2\rfloor$,
- $\Sigma_1^* \Sigma_1 + \Sigma_2^* \Sigma_2 = I_k$,
- $k = \textrm{rank}(C)$.

記$\alpha_1 = \cdots = \alpha_r = 1,\ \alpha_{r + s + 1} = \cdots = \alpha_k = 0,\ \beta_1 = \cdots = \beta_r = 0,\ \beta_{r + s + 1} = \cdots = \beta_k = 1$。而$\Sigma_1$是對角陣，$\Sigma_2$不總是對角陣，因為前導矩形零矩陣；相反，$\Sigma_2$是「副對角陣」。

### 變體

GSVD有許多變體，與這樣一個事實有關：$Q^*$總可以左乘$E E^* = I<(E \in \mathbb{F}^{n \times n})$是任意酉矩陣。記

- $$X = ([W^* D, 0_D] Q^*)^*$$
- $X^* = [0, R] \hat{Q}^*$，其中$R \in \mathbb{F}^{k \times k}$是上三角可逆陣；$\hat{Q} \in \mathbb{F}^{n \times n}$是酉矩陣。QR分解總可以得到這樣的矩陣。
- $Y = W^* D$，那麼$Y$可逆。

下面是GSVD的一些變體：

- MATLAB（gsvd）：$$\begin{aligned} A_1 & = U_1 \Sigma_1 X^*, \\ A_2 & = U_2 \Sigma_2 X^*. \end{aligned}$$
- LAPACK（LA_GGSVD）：$$\begin{aligned} A_1 & = U_1 \Sigma_1 [0, R] \hat{Q}^*, \\ A_2 & = U_2 \Sigma_2 [0, R] \hat{Q}^*. \end{aligned}$$
- 簡化：$$\begin{align} A_1 & = U_1\Sigma_1 [ Y, 0_D] Q^*, \\ A_2 & = U_2\Sigma_2 [ Y, 0_D] Q^*. \end{align}$$

### 廣義奇異值

$A_1$與$A_2$的廣義奇異值 是一對$(a, b) \in \mathbb{R}^2$使得

$$\begin{align} \lim_{\delta \to 0} \det(b^2 A_1^* A_1 - a^2 A_2^* A_2 + \delta I_n) / \det(\delta I_{n - k}) & = 0, \\ a^2 + b^2 & = 1, \\ a, b & \geq 0. \end{align}$$我們有

- $$A_i A_j^* = U_i \Sigma_i Y Y^* \Sigma_j^* U_j^*$$
- $$A_i^* A_j = Q \begin{bmatrix} Y^* \Sigma_i^* \Sigma_j Y & 0 \\ 0 & 0 \end{bmatrix} Q^* = Q_1 Y^* \Sigma_i^* \Sigma_j Y Q_1^*$$

根據這些性質，可以證明廣義奇異值正是成對的$(\alpha_i, \beta_i)$。有$$\begin{aligned} & \det(b^2 A_1^* A_1 - a^2 A_2^* A_2 + \delta I_n) \\ = & \det(b^2 A_1^* A_1 - a^2 A_2^* A_2 + \delta Q Q^*) \\ = & \det\left(Q \begin{bmatrix} Y^* (b^2 \Sigma_1^* \Sigma_1 - a^2 \Sigma_2^* \Sigma_2) Y + \delta I_k & 0 \\ 0 & \delta I_{n - k} \end{bmatrix} Q^*\right) \\ = & \det(\delta I_{n - k}) \det(Y^* (b^2 \Sigma_1^* \Sigma_1 - a^2 \Sigma_2^* \Sigma_2) Y + \delta I_k). \end{aligned}$$因此

$$\begin{aligned} {} & \lim_{\delta \to 0} \det(b^2 A_1^* A_1 - a^2 A_2^* A_2 + \delta I_n) / \det(\delta I_{n - k}) \\ = & \lim_{\delta \to 0} \det(Y^* (b^2 \Sigma_1^* \Sigma_1 - a^2 \Sigma_2^* \Sigma_2) Y + \delta I_k) \\ = & \det(Y^* (b^2 \Sigma_1^* \Sigma_1 - a^2 \Sigma_2^* \Sigma_2) Y) \\ = & |\det(Y)|^2 \prod_{i = 1}^k (b^2 \alpha_i^2 - a^2 \beta_i^2). \end{aligned}$$

對某個$i$，當$a = \alpha_i,\ b = \beta_i$時，表達式恰為零。

在中，廣義奇異值被認為是求解$\det(b^2 A_1^* A_1 - a^2 A_2^* A_2) = 0$的奇異值。然而，這隻有當$k = n$時才成立，否則行列式對每對$(a, b) \in \mathbb{R}^2$都將是0；這可通過替換上面的$\delta = 0$得到。

### 廣義逆

對任意可逆陣$E \in \mathbb{F}^{n \times n}$，令$E^+ = E^{-1}$，對任意零矩陣$0 \in \mathbb{F}^{m \times n}$，令$0^+ = 0^*$，對任意分塊對角陣令$\left\lceil E_1, E_2 \right\rfloor^+ = \left\lceil E_1^+, E_2^+ \right\rfloor$。定義$$A_i^+ = Q \begin{bmatrix} Y^{-1} \\ 0 \end{bmatrix} \Sigma_i^+ U_i^*$$可以證明這裡定義的$A_i^+$是$A_i$的廣義逆陣；特別是$A_i$的$\{1, 2, 3\}$逆。由於它一般不滿足$(A_i^+ A_i)^* = A_i^+ A_i$，所以不是摩爾-彭若斯廣義逆；否則可以得出，對任意所選矩陣都有$(AB)^+ = B^+ A^+$，這隻對特定類型的矩陣成立。

設$Q = \begin{bmatrix}Q_1 & Q_2\end{bmatrix}$，其中$Q_1 \in \mathbb{F}^{n \times k},\ Q_2 \in \mathbb{F}^{n \times (n - k)}$。這個廣義逆具有如下性質：

- $$\Sigma_1^+ = \lceil I_A, S_1^{-1}, 0_A^T \rfloor$$
- $$\Sigma_2^+ = \lceil 0^T_B, S_2^{-1}, I_B \rfloor$$
- $$\Sigma_1 \Sigma_1^+ = \lceil I, I, 0 \rfloor$$
- $$\Sigma_2 \Sigma_2^+ = \lceil 0, I, I \rfloor$$
- $$\Sigma_1 \Sigma_2^+ = \lceil 0, S_1 S_2^{-1}, 0 \rfloor$$
- $$\Sigma_1^+ \Sigma_2 = \lceil 0, S_1^{-1} S_2, 0 \rfloor$$
- $$A_i A_j^+ = U_i \Sigma_i \Sigma_j^+ U_j^*$$
- $$A_i^+ A_j = Q \begin{bmatrix} Y^{-1} \Sigma_i^+ \Sigma_j Y & 0 \\ 0 & 0 \end{bmatrix} Q^* = Q_1 Y^{-1} \Sigma_i^+ \Sigma_j Y Q_1^*$$

### 商SVD

'$A_1$與$A_2$的'廣義奇異比是$\sigma_i=\alpha_i \beta_i^+$。由以上性質，$A_1 A_2^+ = U_1 \Sigma_1 \Sigma_2^+ U_2^*$。注意$\Sigma_1 \Sigma_2^+ = \lceil 0, S_1 S_2^{-1}, 0 \rfloor$是對角陣，忽略前導零矩陣，按降序包含著奇異比。若$A_2$可逆，則$\Sigma_1 \Sigma_2^+$沒有前導零，廣義奇異比就是奇異值，$U_1$與$U_2$則是$A_1 A_2^+ = A_1 A_2^{-1}$的奇異向量矩陣。事實上計算$A_1 A_2^{-1}$的SVD是GSVD的動機之一，因為「形成$AB^{-1}$並求SVD，當$B$的方程解條件不佳時，可能產生不必要、較大的數值誤差」。因此有時也被稱為「商GSVD」，雖然這並不是使用GSVD的唯一原因。若$A_2$不可逆，並放寬奇異值降序排列的要求，則$U_1 \Sigma_1 \Sigma_2^+ U_2^*$仍是$A_1 A_2^+$的SVD。或者，把前導零移到後面，也可以找到降序SVD：$U_1 \Sigma_1 \Sigma_2^+ U_2^* = (U_1 P_1) P_1^* \Sigma_1 \Sigma_2^+ P_2 (P_2^* U_2^*)$，其中$P_1$與$P_2$是適當的置換矩陣。由於秩等於非零奇異值的個數，所以$\mathrm{rank}(A_1 A_2^+)=s$。

### 構造

令

- $C = P \lceil D, 0 \rfloor Q^*$為$C = \begin{bmatrix} A_1 \\ A_2 \end{bmatrix}$的SVD，其中$P \in \mathbb{F}^{(m_1 + m_2) \times (m_1 \times m_2)}$是酉矩陣，$Q$與$D$如上所述。
- $P = [P_1, P_2]$，其中$P_1 \in \mathbb{F}^{(m_1 + m_2) \times k}$與$P_2 \in \mathbb{F}^{(m_1 + m_2) \times (n - k)}$。
- $P_1 = \begin{bmatrix} P_{11} \\ P_{21} \end{bmatrix}$，其中$P_{11} \in \mathbb{F}^{m_1 \times k}$與$P_{21} \in \mathbb{F}^{m_2 \times k}$。
- $P_{11} = U_1 \Sigma_1 W^*$通過$P_{11}$的SVD得到，其中$U_1$、$\Sigma_1$與$W$如上所述。
- $P_{21} W = U_2 \Sigma_2$經過類似於QR分解的分解，其中$U_2$與$\Sigma_2$如上所述。

那麼，$$\begin{aligned} C & = P \lceil D, 0 \rfloor Q^* \\ {} & = [P_1 D, 0] Q^* \\ {} & = \begin{bmatrix} U_1 \Sigma_1 W^* D & 0 \\ U_2 \Sigma_2 W^* D & 0 \end{bmatrix} Q^* \\ {} & = \begin{bmatrix} U_1 \Sigma_1 [W^* D, 0] Q^* \\ U_2 \Sigma_2 [W^* D, 0] Q^* \end{bmatrix} . \end{aligned}$$還有$$\begin{bmatrix} U_1^* & 0 \\ 0 & U_2^* \end{bmatrix} P_1 W = \begin{bmatrix} \Sigma_1 \\ \Sigma_2 \end{bmatrix}.$$因此$$\Sigma_1^* \Sigma_1 + \Sigma_2^* \Sigma_2 = \begin{bmatrix} \Sigma_1 \\ \Sigma_2 \end{bmatrix}^* \begin{bmatrix} \Sigma_1 \\ \Sigma_2 \end{bmatrix} = W^* P_1^* \begin{bmatrix} U_1 & 0 \\ 0 & U_2 \end{bmatrix} \begin{bmatrix} U_1^* & 0 \\ 0 & U_2^* \end{bmatrix} P_1 W = I.$$由於$P_1$的列歸一正交，$||P_1||_2 \leq 1$，因此$$||\Sigma_1||_2 = ||U_1^* P_1 W||_2 = ||P_1||_2 \leq 1.$$對每個$x \in \mathbb{R}^k$，有$||x||_2 = 1$，使得$$||P_{21} x||_2^2 \leq ||P_{11} x||_2^2 + ||P_{21} x||_2^2 = ||P_{1} x||_2^2 \leq 1.$$因此$||P_{21}||_2 \leq 1$；$$||\Sigma_2||_2 = || U_2^* P_{21} W ||_2 = ||P_{21}||_2 \leq 1.$$

## 應用

GSVD是一種比較譜分解，已成功應用於信號處理和數據科學，如基因組信號處理。

這些應用啟發了其他幾種比較譜分解，即高階GSVD（HO GSVD）與張量GSVD。

當特徵函數以線性模型（即再生核希爾伯特空間）為參數時，它同樣適於估計線性運算的譜分解。

## 版本2：加權單矩陣分解

廣義奇異值分解（GSVD）的加權情形是一種有約束矩陣分解，約束施加在奇異向量上。這種GSVD是SVD的推廣。給定m×n實或複數矩陣M的SVD分解

$$M = U\Sigma V^* \,$$

其中

$$U^* W_u U = V^* W_v V = I.$$

其中I是單位矩陣；$U$與$V$在約束條件下（$W_u$；$W_v$）是標準正交矩陣。另外，$W_u$、$W_v$是正定矩陣（通常是權的對角矩陣）。這種形式的GSVD是某些演算法的核心，如廣義主成分分析和對應分析。

加權形式的GSVD之所以被稱為加權形式，是因為在正確取權時，可以推出許多演算法（如多維標度與線性判別分析）。

## 閱讀更多

- LAPACK manual