1. 程式人生 > >演算法篇----典型相關分析(CCA)理論

演算法篇----典型相關分析(CCA)理論

前言

    實際問題中,常常需要研究多個變數之間的相關關係,這個時候,可以試下典型相關分析(Canonical Correlation  Analysis)。這種演算法由H·Hotelling於1936 年提出,在19世紀 70 年代臻於成熟。早期因為需要大量的矩陣計算,所以沒有廣泛應用。現代計算機提高了CCA的地位。

1 CCA概念

    首先,CCA研究的是兩組變數X =(X1,X2,X3,......,Xn)和Y =(Y1,Y2,Y3,......,Ym)之間的相關關係。通常用相關係數衡量,如下公式:

    通過找到任意非零向量α =(α1,α2,α3,......,αn)和β =(β1,β2,β3,......,βm)將兩組變數線性組合,如下:

                                                                    (注:圖中的p、q請自動腦補成n、m,公式都是一樣的)

   這樣,CCA將研究X和Y的相關問題轉變成研究U和V的相關問題,只需找到α和β使得U和V的相關係數最大即可。

順便補幾個公式:

cov是協方差,cov(X,Y) = [var(X)+var(Y)-var(X+Y)]/2

var(variance)是方差,資料是一維時候也寫作D,D(X)=E(X2)-[E(X)]2

E是期望,E(X) = X1*P(X1) + X2*P(X2) + …… + Xn*P(Xn)

參考文獻:http://wenku.baidu.com/link?url=z4tZlPRQOcf4lwUhzBBSwLn7UGQzW6KImBwrhM-cHkh7_e-W_wGj_qXbT71q-WeOz6IKJl0MADBTmN21lbyspEkWvc423jkywC_FGVt4WX