典型关联分析(CCA)原理总结

  典型关联分析(Canonical Correlation Analysis,以下简称CCA)是最常用的挖掘数据关联关系的算法之一。比如我们拿到两组数据,第一组是人身高和体重的数据,第二组是对应的跑步能力和跳远能力的数据。那么我们能不能说这两组数据是相关的呢?CCA可以帮助我们分析这个问题。

1. CCA概述

    在数理统计里面,我们都知道相关系数这个概念。假设有两组一维的数据集X和Y,则相关系数ρρ的定义为:

    其中cov(X,Y)cov(X,Y)是X和Y的协方差,而D(X),D(Y)D(X),D(Y)分别是X和Y的方差。相关系数ρρ的取值为[-1,1], ρρ的绝对值越接近于1,则X和Y的线性相关性越高。越接近于0,则X和Y的线性相关性越低。

    虽然相关系数可以很好的帮我们分析一维数据的相关性,但是对于高维数据就不能直接使用了。拿上面我们提到的,如果X是包括人身高和体重两个维度的数据,而Y是包括跑步能力和跳远能力两个维度的数据,就不能直接使用相关系数的方法。那我们能不能变通一下呢?CCA给了我们变通的方法。

    CCA使用的方法是将多维的X和Y都用线性变换为1维的X'和Y',然后再使用相关系数来看X'和Y'的相关性。将数据从多维变到1位,也可以理解为CCA是在进行降维,将高维数据降到1维,然后再用相关系数进行相关性的分析。下面我们看看CCA的算法思想。

2. CCA的算法思想

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

    现在我们具体来讨论下CCA的算法思想。假设我们的数据集是X和Y,X为n1×mn1×m的样本矩阵。Y为n2×mn2×m的样本矩阵.其中m为样本个数,而n1,n2n1,n2分别为X和Y的特征维度。

    对于X矩阵,我们将其投影到1维,或者说进行线性表示,对应的投影向量或者说线性系数向量为aa, 对于Y矩阵,我们将其投影到1维,或者说进行线性表示,对应的投影向量或者说线性系数向量为bb, 这样X ,Y投影后得到的一维向量分别为X',Y'。我们有

     也就是说,我们的CCA算法的目标最终转化为一个凸优化过程,只要我们求出了这个优化目标的最大值,就是我们前面提到的多维X和Y的相关性度量,而对应的a,ba,b则为降维时的投影向量,或者说线性系数。

    这个函数优化一般有两种方法,第一种是奇异值分解SVD,第二种是特征分解,两者得到的结果一样,下面我们分别讲解。

3. CCA算法的SVD求解

    对于上面的优化目标,我们可以做一次矩阵标准化,就可以用SVD来求解了。

    

4. CCA算法的特征分解求解  

    特征分解方式就比较传统了,利用拉格朗日函数,优化目标转化为最大化下式:

5. CCA算法流程

    这里我们对CCA的算法流程做一个总结,以SVD方法为准。

  

    可见算法流程并不复杂,但是要理解这个算法需要了解一些背景知识。

6. CCA算法小结

    CCA算法广泛的应用于数据相关度的分析,同时还是偏最小二乘法的基础。但是由于它依赖于数据的线性表示,当我们的数据无法线性表示时,CCA就无法使用,此时我们可以利用核函数的思想,将数据映射到高维后,再利用CCA的思想降维到1维,求对应的相关系数和线性关系,这个算法一般称为KCCA。

    此外,我们在算法里只找了相关度最大的奇异值或者特征值,作为数据的相关系数,实际上我们也可以像PCA一样找出第二大奇异值,第三大奇异值,。。。得到第二相关系数和第三相关系数。然后对数据做进一步的相关性分析。但是一般的应用来说,找出第一相关系数就可以了。

    

       

(欢迎转载,转载请注明出处。欢迎沟通交流: liujianping-ok@163.com)  

  • 5
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值