典型相关分析(CCA)

前言:

大部分时候我们都是观察多个X与一个Y之间的相关性(多对一),那如果是多个X与多个Y的相关性该如何分析相关性呢?

你可能会说我把y一个一个拿出来,有多少个y做多少次相关性分析不就行了吗?

答案是:当然不行,这样Y内部的相关性不就被你扼杀在摇篮之中了嘛。

有一种方法可以,它就是典型关联分析(Canonical Correlation Analysis,以下简称CCA),是最常用的挖掘数据关联关系的算法之一。

举个栗子:我们拿到两组数据,第一组是人身高和体重的数据,第二组是对应的跑步能力和跳远能力的数据。那么我们能不能说这两组数据是相关的呢?CCA就可以帮助我们分析这个问题。

一、CCA概述

咱们先回忆一下相关系数:

 它可以很好的帮我们分析一维数据的相关性,但是对于高维数据就不能直接使用了。

咱们开始推广一下:CCA使用的方法是将多维的X和Y都用线性变换为1维的X'和Y'(降维),然后再使用相关系数来看X'和Y'的相关性。

二、CCA的算法思想

用于高维或者多维的数据,我们一般会想到投影追踪法。

上面我们提到CCA是将高维的两组数据分别降维到1维,然后用相关系数分析相关性。但是有一个问题是,降维的标准是如何选择的呢?回想下主成分分析PCA,降维的原则是投影方差最大;再回想下线性判别分析LDA,降维的原则是同类的投影方差小,异类间的投影方差大。对于我们的CCA,它选择的投影标准是降维到1维后,两组数据的相关系数最大。

这样我们的目的就明确了,就是想要使X'和Y'的相关性达到最大。

假设我们的数据集是X和Y,令:

即我们想找到a、b使corr(X',Y')达到最大;

计算其二间的相关系数为:

这里我们可以联想到分式线性规划问题,采用的办法就是令D(X')=D(Y')=1,转化为求解a、b使cov(X',Y')最大;

再引入拉格朗日乘数法(具体推理过程在应用多元统计分析第四版朱建平书上的162页)

注:找到第一对(a1,b1)再继续找第二对的时候,要注意它与第一对之间的信息冗余,最好是找到与之正交的,这样才能保证两组变量内部的相关性没有被破坏。最多可以找到两组维数中的最小值那么多对(a,b)。(与主成分相似)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值