Canonical Correlation Analysis 算法理解
Canonical Correlation Analysis(典型相关性分析,简称CCA)是最为常用的挖掘数据之间相关性的算法之一。CCA能够将数据形式不同的矩阵映射为向量,从而可以比较他们之间的相关系数,从而判别两组数据之间是否存在相关性。
问题提出与理论背景
为了寻求两个变量之间的关系,通常我们会使用线性回归对样本点进行拟合,从而找到n维向量X和输出结果Y之间的线性关系。那么对于X∈RnX \in R^nX∈Rn,Y∈RmY \in R^mY∈Rm,我们可以建立等式Y=AXY = AXY=AX,如下:
[y1y2...ym]=[w11w12...w1nw21w22...w2n............wm1wm2...wmn][x1x2...xn] \begin{bmatrix} y_1 \\ y_2 \\ ... \\ y_m \end{bmatrix} = \begin{bmatrix} w_{11} & w_{12} & ... & w_{1n} \\ w_{21} & w_{22} & ... & w_{2n} \\ ... & ... & ... & ... \\ w_{m1} & w_{m2} & ... & w_{mn} \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \\ ... \\ x_n \end{bmatrix} ⎣⎢⎢⎡y1y2...ym⎦⎥⎥⎤=⎣⎢⎢⎡w11w21...wm1w12w22...wm2............w1nw2n...wmn⎦⎥⎥⎤⎣