典型相關分析
(一)引入
典型相關分析(Canonical Correlation Analysis)是研究兩組變量之間相關關系的一種多元統計方法。他能夠揭示出兩組變量之間的內在聯系。
我們知道,在一元統計分析中,用相關系數來衡量兩個隨機變量的線性相關關系,用復相關系數研究一個隨機變量與多個隨機變量的線性相關關系。然而,這些方法均無法用於研究兩組變量之間的相關關系,於是提出了CCA。其基本思想和主成分分析非常相似。首先,在每組變量中尋找出變量的線性組合,使得兩組的線性組合之間具有最大的相關系數;然后選取和已經挑選出的這對線性組合不相關的另一對線性組合,並使其相關系數最大,如此下去,直到兩組變量的相關性被提取完畢為止。被選出的線性組合配對稱為典型變量,它們的相關系數稱為典型相關系數。
(二)分析
設有兩組隨機變量$\mathbf{X}=(x_1,x_2,\cdots,x_p)^\prime$和$\mathbf{Y}=(y_1,y_2,\cdots,y_q)^\prime$,不妨設$p\leq q$。設第一組變量均值為$\mathbb{E}\mathbf{X}=\mu_1$,方差為$\mathop{Var}(\mathbf{X})=\mathop{cov}(\mathbf{X},\mathbf{X})=\Sigma_{11}$。第二組變量均值為$\mathbb{E}\mathbf{Y}=\mu_2$,方差為$\mathop{Var}(\mathbf{Y})=\mathop{cov}(\mathbf{Y},\mathbf{Y})=\Sigma_{22}$。第一組與第二組變量的協方差矩陣為$\mathop{cov}(\mathbf{X},\mathbf{Y})=\Sigma_{12}=\Sigma_{21}^\prime$。
分別對兩組變量做線性組合:
\begin{align}U &= a_1x_1+a_2x_2+\cdots+a_px_p=a^\prime\mathbf{X}\label{equ:U}\\ V &= b_1x_1+b_2x_2+\cdots+b_qy_q=b^\prime\mathbf{Y}\label{equ:V}\end{align}
所以$U,V$的方差,協方差,相關系數為:
\begin{align}&\mathop{Var}(U)=a^\prime\mathop{cov}(\mathbf{X},\mathbf{X})a=a^\prime\Sigma_{11}a\label{equ:UVar}\\&\mathop{Var}(V)=b^\prime\mathop{cov}(\mathbf{Y},\mathbf{Y})b=b^\prime\Sigma_{22}b\label{VVar}\\&\mathop{cov}(U,V)=a^\prime\mathop{cov}(\mathbf{X},\mathbf{Y})b=a^\prime\Sigma_{12}b\label{equ:UVcov}\\&\rho=\mathop{corr}(U,V)=\frac{a^\prime\Sigma_{12}b}{\sqrt{a^\prime\Sigma_{11}a}\sqrt{b^\prime\Sigma_{12}b}}\label{equ:rho}\end{align}
其中$U,V$稱為典型變量,它們之間的相關系數$\rho$稱為典型相關系數。
CCA要解決的問題是,在所有線性組合$U$和$V$中選取典型相關系數最大的那對,即選取$a^{(1)},b^{(1)}$使$U_1=(a^{(1)})^\prime\mathbf{X}$與$V_1=(b^{(1)})^\prime\mathbf{Y}$之間的相關系數最大,這里$(U_1,V_1)$稱為第一對典型相關變量;然后在選取$a^{(2)},b^{(2)}$使得$U_1=(a^{(2)})^\prime\mathbf{X},V_2(b^{(2)})^\prime\mathbf{Y}$,在與$U_1,V_1$不相關的情況下,使得$(U_2,V_2)$的相關系數最大,稱為第二對典型相關變量;如此繼續下去,直到所有分別與$(U_1,V_1),(U_2,V_2),\cdots,(U_{p-1},V_{p-1})$都不相關的線性組合$(U_p,V_p)$為止,此時$p$為$\mathbf{X}$與$\mathbf{Y}$之間的協方差矩陣的秩。由上面的分析可得模型:
\begin{equation}\mathop{\max}\quad\rho=\frac{a^\prime\Sigma_{12}b}{\sqrt{a^\prime\Sigma_{11}a}\sqrt{b^\prime\Sigma_{22}b}}\label{model:original}\end{equation}
由於收縮$U$和$V$的值並不會影響$\rho$,故我們可引入限制條件$a^\prime\Sigma_{11}a=1,b^\prime\Sigma_{22}b=1$將模型轉化為:
\begin{align}\mathop{\max}\quad&a^\prime\Sigma_{12}b\nonumber\\\mathop{s.t.}\quad&a^\prime\Sigma_{11}a=1\nonumber\\\quad& b^\prime\Sigma_{22}b=1\label{model:constraint}\end{align}
引入Lagrange乘子:
\begin{equation}L(a,b,\lambda,\nu)=a^\prime\Sigma_{12}b-\frac{\lambda}{2}(a^\prime\Sigma_{11}a-1)-\frac{\nu}{2}(b^\prime\Sigma_{22}b-1)\label{equ:lagrange}\end{equation}
對Lagrange函數\ref{equ:lagrange}求導得:
\begin{equation}\frac{\partial L}{\partial a}=\Sigma_{12}b-\lambda\Sigma_{11}a=0\label{equ:partiala}\end{equation}
\begin{equation}\frac{\partial L}{\partial b}=\Sigma_{21}a-\nu\Sigma_{22}b=0\label{equ:partialb}\end{equation}
將式子\ref{equ:partiala}左乘$a^\prime$,式子\ref{equ:partialb}左乘$b^\prime$得:
\begin{align*}a^\prime\Sigma_{12}b-\lambda a^\prime\Sigma_{11}a &=0\\b^\prime\Sigma_{21}a-\nu b^\prime\Sigma_{22}b &=0\end{align*}
又因為$(a^\prime\Sigma_{12}b)^\prime=b^\prime\Sigma_{21}a\Longrightarrow \lambda a^\prime\Sigma_{11}a=\nu b^\prime\Sigma_{22}b$。由限制條件知:$\lambda=\nu=\rho=a^\prime\Sigma_{12}b$,即$\lambda$的值就是線性組合$U$和$V$的相關系數。我們重新將式子\ref{equ:partiala}和式子\ref{equ:partialb}寫成:
\begin{align}-\lambda\Sigma_{11}a+\Sigma_{12}b&=0\label{equ:partialaNew}\\\Sigma_{21}a-\lambda\Sigma_{22}b&=0\label{equ:partialbNew}\end{align}
然后將式子\ref{equ:partialbNew}左乘$\Sigma_{12}\Sigma_{22}^{-1}$得:
\begin{equation}\Sigma_{12}\Sigma_{22}^{-1}\Sigma_{21}a=\lambda\Sigma_{12}b\label{equ:partialbLeft}\end{equation}
結合式子\ref{equ:partialaNew}得:
\begin{equation}\Sigma_{12}\Sigma_{22}^{-1}\Sigma_{21}a=\lambda^2\Sigma_{11}a\Longrightarrow (\Sigma_{12}\Sigma_{22}^{-1}\Sigma_{21}-\lambda^2\Sigma_{11})a=0\label{equ:3to4}\end{equation}
同理,將式子\ref{equ:partialaNew}左乘$\Sigma_{21}\Sigma_{11}^{-1}$,並將式子\ref{equ:partialbNew}代入式子\ref{equ:partialaNew}得:
\begin{equation}(\Sigma_{21}\Sigma_{11}^{-1}\Sigma_{12}-\lambda^2\Sigma_{22})b=0\label{equ:4to3}\end{equation}
將$\Sigma_{11}^{-1}$左乘式子\ref{equ:3to4},$\Sigma_{22}^{-1}$左乘式子\ref{equ:4to3}得:
\begin{equation}\left\{\begin{array}&(\Sigma_{11}^{-1}\Sigma_{12}\Sigma_{22}^{-1}\Sigma_{21}-\lambda^2)a=0\\(\Sigma_{22}^{-1}\Sigma_{21}\Sigma_{11}^{-1}\Sigma_{12}-\lambda^2)b=0\end{array}\right.\triangleq\left\{\begin{array}&\mathbf{A}a=\lambda^2a\\\mathbf{B}b=\lambda^2b\end{array}\right.\end{equation}
說明:$\lambda^2$既是矩陣$\mathbf{A}$也是矩陣$\mathbf{B}$的特征值,$a$與$b$分別是對應的特征向量。所以我們的問題轉化成求矩陣$\mathbf{A},\mathbf{B}$的最大特征值對應的特征向量,而特征值的平方根$\sqrt{\lambda}$為相關系數,從而求出第一對典型相關變量。
此時,我們可以得到如下的猜想:是否矩陣$\mathbf{A},\mathbf{B}$的所有非零特征值的平方跟都會是其對應的典型相關系數?接下去,我們來證明如下猜想:
設$\lambda^2_1\geq\lambda_2^2\geq\cdots\geq\lambda_p^2>0$為$\mathbf{A},\mathbf{B}$的特征值($p$為矩陣$\Sigma_{12}$的秩),其對應的特征向量為$a^{(1)},a^{(2)},\cdots,a^{(p)}$和$b^{(1)},b^{(2)},\cdots,b^{(p)}$,於是得到$p$對線性組合:
\begin{equation}\begin{array}&U_1=(a^{(1)})^\prime\mathbf{X}&U_2=(a^{(2)})^\prime\mathbf{X}&\cdots&U_p=(a^{(p)})^\prime\mathbf{X}\\V_1=(b^{(1)})^\prime\mathbf{Y}&V_2=(b^{(2)})^\prime\mathbf{Y}&\cdots&V_p=(b^{(p)})^\prime\mathbf{Y}\end{array}\end{equation}
可以證明$(U_1,V_1),(U_2,V_2),\cdots,(U_p,V_p)$就是其前$p$對典型變量,$\lambda_1\geq\lambda_2\geq\cdots\geq\lambda_p$為其典型相關系數。
首先,在求出第一對典型變量的基礎上求第二對典型變量。由上述分析我們可以知道該模型為:
\begin{align}\mathop{\max}&\quad (a^{(2)})^\prime\Sigma_{12}b^{(2)}\nonumber\\\mathop{s.t.}&\quad (a^{(2)})^\prime\Sigma_{11} a^{(2)}=1\nonumber\\&\quad(b^{(2)})^\prime\Sigma_{22}b^{(2)}=1\nonumber\\&\quad(a^{(1)})^\prime\Sigma_{11}a^{(2)}=0\label{con:1}\\&\quad(b^{(1)})^\prime\Sigma_{22}b^{(2)}=0\label{con:2}\end{align}
其中限制\ref{con:1}和\ref{con:2}是由於第二對典型變量必須與第一對典型變量無關。其Lagrange方程以及相應的偏導為:
\begin{align*}L(a^{(1)},b^{(1)},a^{(2)},b^{(2)}) &=(a^{(2)})^\prime\Sigma_{12}b^{(2)}-\frac{\lambda}{2}((a^{(2)})^\prime\Sigma_{11}a^{(2)}-1)-\frac{\nu}{2}((b^{(2)})^\prime\Sigma_{22}b^{(2)}-1)\\&\quad + \gamma (a^{(1)})^\prime\Sigma_{11}a^{(2)}+\beta(b^{(1)})^\prime\Sigma_{22}b^{(2)}\end{align*}
\begin{align}\frac{\partial L}{\partial a^{(2)}} &=\Sigma_{12}b^{(2)}-\lambda\Sigma_{11}a^{(2)}+\gamma\Sigma_{11}a^{(1)}=0\label{partial:a2}\\\frac{\partial L}{\partial b^{(2)}}&=\Sigma_{21}a^{(2)}-\nu\Sigma_{22}b^{(2)}+\beta\Sigma_{22}b^{(1)}=0\label{partial:b2}\\\frac{\partial L}{\partial a1}&=\gamma\Sigma_{11}a^{(2)}=0\label{partial:a1}\\\frac{\partial L}{\partial b^{(1)}}&=\beta\Sigma_{22}b^{(2)}=0\label{partial:b1}\end{align}
將$(a^{(2)})^\prime$左乘式子\ref{partial:a2},$(b^{(2)})^\prime$左乘式子\ref{partial:b2}得:
\begin{align}&(a^{(2)})^\prime\Sigma_{12}b^{(2)}-\lambda(a^{(2)})^\prime\Sigma_{11}a^{(2)}+\gamma (a^{(2)})^\prime\Sigma_{11}a^{(1)}=0\label{partial:a2new}\\&(b^{(2)})^\prime\Sigma_{21}a^{(2)}-\nu(b^{(2)})^\prime\Sigma_{22}b^{(2)}+\beta (b^{(2)})^\prime\Sigma_{22}b^{(1)}=0\label{partial:b2new}\end{align}
將$(a^{(1)})^\prime$左乘式子\ref{partial:a1},$(b^{(2)})^\prime$左乘式子\ref{partial:b1}得:
\begin{align}&(a^{(2)})^\prime\Sigma_{11}a^{(1)}=0\label{partial:a1new}\\&(b^{(2)})^\prime\Sigma_{22}b^{(2)}=0\label{partial:b1new}\end{align}
將式子\ref{partial:a1new}和式子\ref{partial:b1new}代入式子\ref{partial:a2new}和\ref{partial:b2new}得:
\begin{align}&(a^{(2)})^\prime\Sigma_{12}b^{(2)}-\lambda(a^{(2)})^\prime\Sigma_{11}a^{(2)}=0\label{partial:a1a2}\\&(b^{(2)})^\prime\Sigma_{21}a^{(2)}-\nu(b^{(2)})^\prime\Sigma_{22}b^{(2)}=0\label{partial:b1b2}\end{align}
其中式子\ref{partial:a1a2}和式子\ref{partial:b1b2}與式子\ref{equ:partiala}和式子\ref{equ:partialb}有相同的形式,只是$a,b$換成$a^{(2)},b^{(2)}$,故同樣可以得到:
\begin{equation}\left\{\begin{array}&\mathbf{A}a^{(2)}=\lambda^2a^{(2)}\\\mathbf{B}b^{(2)}=\lambda^2b^{(2)}\end{array}\right.\end{equation}
此時$a^{(2)}\neq a,b^{(2)}\neq b$,否則不滿足限制\ref{con:1}和\ref{con:2},所以最大值為第二大特征值。以此類推,我們即可證明上述猜想。
注意:我們在求解上述普通特征值方程$\mathbf{A}a=\lambda^2a$時,由於$\mathbf{A}=\Sigma_{11}^{-1}\Sigma_{12}\Sigma_{22}^{-1}\Sigma_{21}$而求逆過程的計算量大,精度低,故我們可以將其中的對稱矩陣$\Sigma_{11}$進行Cholesky分解,即$\Sigma_{11}=\mathbf{R_1}\mathbf{R_1}^\prime$,其中$\mathbf{R_1}$為下三角矩陣。於是方程可化為對稱矩陣的求特征值問題:$\mathbf{R_1}^{-1}\Sigma_{12}\Sigma_{22}^{-1}\Sigma_{21}(\mathbf{R_1}^{-1})^\prime u_x=\lambda^2 u_x$,其中$u_x=\mathbf{R_1}^\prime a$。