介绍
定义
典型相关分析(Canonical Correlation Analysis)利用综合变量对之间的相关关系来反映两组指标之间的整体相关性的多元统计分析方法。
输入:两个随机变量组
X=(x1,…,xn)
和
Y=(y1,…,ym)
输出:两个向量
a
和
目标:
a′X
和
b′Y
的相关系数
ρ=corr(a′X,b′Y)
最大
起源
1936年由哈罗德·霍特林在《生物统计》期刊上发表的一篇论文《两组变式之间的关系》首次引入。
优点
既考虑
Y
中的每个特征与
缺点
CCA是寻找
应用领域
多元统计分析方法
相关
- Kernel Canonical Correlation Analysis (KCCA)
当X 和 Y 的关系是非线性的时候,我们可以尝试核函数(Kernel)方法 - Generalized Canonical Correlation
不止两个集合X 和 Y ,而是多个集合的关系。 - 主成分分析
- 奇异值分解
- Multilinear subspace learning
- RV coefficient
- Principal angles
- Regularized canonical correlation analysis
- Partial least squares regression
解法
设
$
\rho = \frac{a’ \Sigma {XY} b}{\sqrt{a’ \Sigma {XX} a} \sqrt{b’ \Sigma _{YY} b}}.
$
第一步是定义一个基变更以及
c=Σ1/2XXa,
d=Σ1/2YYb.
因此我们有
$
\rho = \frac{c’ \Sigma {XX} ^{-1/2} \Sigma {XY} \Sigma _{YY} ^{-1/2} d}{\sqrt{c’ c} \sqrt{d’ d}}.
$
根据柯西-施瓦茨不等式,我们有
$
\left(c’ \Sigma {XX} ^{-1/2} \Sigma {XY} \Sigma {YY} ^{-1/2} \right) d \leq \left(c’ \Sigma {XX} ^{-1/2} \Sigma {XY} \Sigma {YY} ^{-1/2} \Sigma {YY} ^{-1/2} \Sigma {YX} \Sigma _{XX} ^{-1/2} c \right)^{1/2} \left(d’ d \right)^{1/2},
$
$
\rho \leq \frac{\left(c’ \Sigma {XX} ^{-1/2} \Sigma {XY} \Sigma {YY} ^{-1} \Sigma {YX} \Sigma _{XX} ^{-1/2} c \right)^{1/2}}{\left(c’ c \right)^{1/2}}.
$
如果向量
d
和
因此解法是:
*
c
是
*
d
是
相反地,也有:
*
d
是
*
c
是
把坐标反过来,我们有
*
a
是
*
b
是
*
a
是
*
b
是
那么相关变量定义为:
U=c′Σ−1/2XXX=a′X
V=d′Σ−1/2YYY=b′Y
实现
Python
- Scikit-Learn
Cross decomposition
http://scikit-learn.org/stable/modules/cross_decomposition.html
- cca_example.py
python
from sklearn.cross_decomposition import CCA
X = [[0., 0., 1.], [1.,0.,0.], [2.,2.,2.], [3.,5.,4.]]
Y = [[0.1, -0.2], [0.9, 1.1], [6.2, 5.9], [11.9, 12.3]]
cca = CCA(n_components=1)
cca.fit(X, Y)
X_c, Y_c = cca.transform(X, Y)
- cca_example.py
Matlab
R
- cancor
http://stat.ethz.ch/R-manual/R-devel/library/stats/html/cancor.html - FactoMineR
http://factominer.free.fr
SAS
- proc cancorr
http://support.sas.com/documentation/cdl/en/statug/63033/HTML/default/viewer.htm#statug_cancorr_sect005.htm
应用
典型相关分析的用途很广。在实际分析问题中,当我们面临两组多变量数据,并希望研究两组变量之间的关系时,就要用到典型相关分析。 例如,为了研究扩张性财政政策实施以后对宏观经济发展的影响,就需要考察有关财政政策的一系列指标如财政支出总额的增长率、财政赤字增长率、国债发行额的增长率、税率降低率等与经济发展的一系列指标如国内生产总值增长率、就业增长率、物价上涨率等两组变量之间的相关程度。
又如,为了研究宏观经济走势与股票市场走势之间的关系,就需要考察各种宏观经济指标如经济增长率、失业率、物价指数、进出口增长率等与各种反映股票市场状况的指标如股票价格指数、股票市场融资金额等两组变量之间的相关关系。再如,工厂要考察所使用的原料的质量对所生产的产品的质量的影响,就需要对所生产产品的各种质量指标与所使用的原料的各种质量指标之间的相关关系进行测度。
又如,在分析评估某种经济投入与产出系统时,研究投入和产出情况之间的联系时,投入情况面可以从人力、物力等多个方面反映,产出情况也可以从产值、利税等方面反映。
再如在分析影响居民消费因素时,我们可以将劳动者报酬、家庭经营收入、转移性收入等变量构成反映居民收入的变量组,而将食品支出、医疗保健支出、交通和通讯支出等变量构成反映居民支出情况的变量组,然后通过研究两变量组之间关系来分析影响居民消费因素情况。
参考
- https://en.wikipedia.org/wiki/Canonical_correlation
- http://baike.baidu.com/view/3307489.htm
- Knapp T R. Canonical correlation analysis: A general parametric significance-testing system[J]. Psychological Bulletin, 1978, 85(2): 410.
- http://www.cnblogs.com/jerrylead/archive/2011/06/20/2085491.html