典型相关分析相关资料

典型相关分析相关资料
典型相关分析的基本思想 Canonical Correlation Analysis
CCA典型相关分析
(canonical correlation analysis)利⽤综合变量对之间的相关关系来反映两组指标之间的整体相关性的多元统计分析⽅法。它的基本原理是:为了从总体上把握两组指标之间的相关关系,分别在两组变量中提取有代表性的两个综合变量U1和V1(分别为两个变量组中各变量的线性组合),利⽤这两个综合变量之间的相关关系来反映两组指标之间的整体相关性。
Canonical Correlation Analysis典范相关分析/Canonical Correspondence Analysis典范对应分析
简单相关系数描述两组变量的相关关系的缺点:只是孤⽴考虑单个X与单个Y间的相关,没有考虑X、Y变量组内部各变量间的相关。两组间有许多简单相关系数,使问题显得复杂,难以从整体描述。典型相关是简单相关、多重相关的推⼴。典型相关是研究两组变量之间相关性的⼀种统计分析⽅法。也是⼀种降维技术。
我已故的公爵夫人1936年,Hotelling提出典型相关分析。考虑两组变量的线性组合, 并研究它们之间的相关系数p(u,v).在所有的线性组合中, ⼀对相关系数最⼤的线性组合, ⽤这个组合的单相关系数来表⽰两组变量的相关性,
叫做两组变量的典型相关系数, ⽽这两个线性组合叫做⼀对典型变量。在两组多变量的情形下, 需要⽤若⼲对典型变量才能完全反映出它们之间的相关性。下⼀步, 再在两组变量的与u1,v1不相关的线性组合中, ⼀对相关系数最⼤的线性组合, 它就是第⼆对典型变量, ⽽且p(u2,v2)就是第⼆个典型相关系数。这样下去, 可以得到若⼲对典型变量, 从⽽提取出两组变量间的全部信息。
典型相关分析的实质就是在两组随机变量中选取若⼲个有代表性的综合指标(变量的线性组合), ⽤这些指标的相关关系来表⽰原来的两组变量的相关关系。这在两组变量的相关性分析中, 可以起到合理的简化变量的作⽤; 当典型相关系数⾜够⼤时, 可以像回归分析那样, 由- 组变量的数值预测另⼀组变量的线性组合的数值。
[pdf版本]
1. 问题
在线性回归中,我们使⽤直线来拟合样本点,寻n维特征向量X和输出结果(或者叫做label)Y之间的线性关系。其中,。然⽽当Y也是多维时,或者说Y也有多个特征时,我们希望分析出X和Y的关系。
当然我们仍然可以使⽤回归的⽅法来分析,做法如下:
假设,,那么可以建⽴等式Y=AX如下
其中,形式和线性回归⼀样,需要训练m次得到m个。
这样做的⼀个缺点是,Y中的每个特征都与X的所有特征关联,Y中的特征之间没有什么联系。
我们想换⼀种思路来看这个问题,如果将X和Y都看成整体,考察这两个整体之间的关系。我们将整体表⽰成X和Y各⾃特征间的线性组合,也就是考察和之间的关系。
这样的应⽤其实很多,举个简单的例⼦。我们想考察⼀个⼈解题能⼒X(解题速度,解题正确率)与他/她的阅读能⼒Y(阅读速度,理解程度)之间的关系,那么形式化为:
然后使⽤Pearson相关系数
来度量u和v的关系,我们期望寻求⼀组最优的解a和b,使得Corr(u, v)最⼤,这样得到的a和b就是使得u和v就有最⼤关联的权重。
到这⾥,基本上介绍了典型相关分析的⽬的。
2. CCA表⽰与求解
给定两组向量和(替换之前的x为,y为),维度为,维度为,默认。形式化表⽰如下:
是x的协⽅差矩阵;左上⾓是⾃⼰的协⽅差矩阵;右上⾓是;左下⾓是,也是的转置;右下⾓是的协⽅差矩阵。
与之前⼀样,我们从和的整体⼊⼿,定义
我们可以算出u和v的⽅差和协⽅差:
上⾯的结果其实很好算,推导⼀下第⼀个吧:
最后,我们需要算Corr(u,v)了
我们期望Corr(u,v)越⼤越好,关于Pearson相关系数,《数据挖掘导论》给出了⼀个很好的图来说明:
横轴是u,纵轴是v,这⾥我们期望通过调整a和b使得u和v的关系越像最后⼀个图越好。其实第⼀个图和最后⼀个图有联系的,我们可以调整a和b的符号,使得从第⼀个图变为最后⼀个。
接下来我们求解a和b。
回想在LDA中,也得到了类似Corr(u,v)的公式,我们在求解时固定了分母,来求分⼦(避免a和b同时扩⼤n倍仍然符号解条件的情况出现)。这⾥我们同样这么做。
这个优化问题的条件是:
Maximize
Subject to:
求解⽅法是构造Lagrangian等式,这⾥我简单推导如下:
求导,得
行政处罚法第27条令导数为0后,得到⽅程组:
第⼀个等式左乘,第⼆个左乘,再根据,得到
也就是说求出的即是Corr(u,v),只需最⼤即可。
让我们把上⾯的⽅程组进⼀步简化,并写成矩阵形式,得到
写成矩阵形式
那么上式可以写作:
显然,⼜回到了求特征值的⽼路上了,只要求得的最⼤特征值,那么Corr(u,v)和a和b都可以求出。
在上⾯的推导过程中,我们假设了和均可逆。⼀般情况下都是可逆的,只有存在特征间线性相关时会出现不可逆的情况,在本⽂最后会提到不可逆的处理办法。
再次审视⼀下,如果直接去计算的特征值,复杂度有点⾼。我们将第⼆个式⼦代⼊第⼀个,得
这样先对求特征值和特征向量,然后根据第⼆个式⼦求得b。
待会举个例⼦说明求解过程。
假设按照上述过程,得到了最⼤时的和。那么和称为典型变量(canonical variates),即是u和v的相关系数。
最后,我们得到u和v的等式为:
我们也可以接着去寻第⼆组典型变量对,其最优化条件是
Maximize
Subject to:
其实第⼆组约束条件就是。
计算步骤同第⼀组计算⽅法,只不过是取的第⼆⼤特征值。
宰杀肉畜
得到的和其实也满⾜
总结⼀下,i和j分别表⽰和得到结果srs
3. CCA计算例⼦
我们回到之前的评价⼀个⼈解题和其阅读能⼒的关系的例⼦。假设我们通过对样本计算协⽅差矩阵得到如下结果:
然后求,得
这⾥的A和前⾯的中的A不是⼀回事(这⾥符号有点乱,不好意思)。
然后对A求特征值和特征向量,得到
然后求b,之前我们说的⽅法是根据求b,这⾥,我们也可以采⽤类似求a的⽅法来求b。
回想之前的等式
我们将上⾯的式⼦代⼊下⾯的,得
然后直接对求特征向量即可,注意和的特征值相同,这个可以⾃⼰证明下。
不管使⽤哪种⽅法,
这⾥我们得到a和b的两组向量,到这还没完,我们需要让它们满⾜之前的约束条件
这⾥的应该是我们之前得到的VecA中的列向量的m倍,我们只需要求得m,然后将VecA中的列向量乘以m即可。
这⾥的是VecA的列向量。
因此最后的a和b为:
第⼀组典型变量为
相关系数
第⼆组典型变量为
相关系数
这⾥的(解题速度),(解题正确率),(阅读速度),(阅读理解程度)。他们前⾯的系数意思不是特征对单个u或v的贡献⽐重,⽽是从u和v整体关系看,当两者关系最密切时,特征计算时的权重。
4. Kernel Canonical Correlation Analysis(KCCA)
通常当我们发现特征的线性组合效果不够好或者两组集合关系是⾮线性的时候,我们会尝试核函数⽅法,这⾥我们继续介绍Kernel CCA。在《⽀持向量机-核函数》那⼀篇中,⼤致介绍了⼀下核函数,这⾥再简单提⼀下:
当我们对两个向量作内积的时候
我们可以使⽤,来替代和,⽐如原来的特征向量为,那么
我们可以定义
如果与的构造⼀样,那么
这样,仅通过计算x和y的内积的平⽅就可以达到在⾼维空间(这⾥为)中计算和内积的效果。
由核函数,我们可以得到核矩阵K,其中
即第⾏第列的元素是第个和第个样例在核函数下的内积。
⼀个很好的核函数定义:
其中样例x有n个特征,经过变换后,从n维特征上升到了N维特征,其中每⼀个特征是。
回到CCA,我们在使⽤核函数之前
这⾥假设x和y都是n维的,引⼊核函数后,和变为了N维。
使⽤核函数后,u和v的公式为:
这⾥的c和d都是N维向量。
现在我们有样本,这⾥的表⽰样本x的第i个样例,是n维向量。
根据前⾯说过的相关系数,构造拉格朗⽇公式如下:
其中
然后让L对a求导,令导数等于0,得到(这⼀步我没有验证,待会从宏观上解释⼀下)
同样对b求导,令导数等于0,得到
求出c和d⼲嘛呢?c和d只是的系数⽽已,按照原始的CCA做法去做就⾏了呗,为了再引⼊和?
回答这个问题要从核函数的意义上来说明。核函数初衷是希望在式⼦中有,然后⽤K替换之,根本没有打算去计算出实际的。因此即是按照原始CCA的⽅式计算出了c和d,也是没⽤的,因为根本有没有实际的让我们去做。另⼀个原因是核函数⽐如⾼斯径向基核函数可以上升到⽆限维,N是⽆穷的,因此c和d也是⽆穷维的,根本没办法直接计算出来。我们的思路是在原始的空间中构造出权重和,然后利⽤将和上升到⾼维,他们在⾼维对应的权重就是c和d。
虽然和是在原始空间中(维度为样例个数M),但其作⽤点不是在原始特征上,⽽是原始样例上。看上⾯得出的c和d的公式就知道。通过控制每个⾼维样例的权重,来控制c。
嵌入式实时操作系统ucos-ii好了,接下来我们看看使⽤和后,u和v的变化
表⽰可以将第i个样例上升到的N维向量,意义可以类⽐原始CCA的x。
鉴于这样表⽰接下来会越来越复杂,改⽤矩阵形式表⽰。
简写为
其中X(M×N)为
我们发现
我们可以算出u和v的⽅差和协⽅差(这⾥实际上事先对样本和做了均值归0处理):
这⾥和维度可以不⼀样。
最后,我们得到Corr(u,v)
可以看到,在将和处理成,后,得到的结果和之前形式基本⼀样,只是将替换成了两个K乘积。
因此,得到的结果也是⼀样的,之前是
其中
引⼊核函数后,得到
其中
新余学院学报注意这⾥的两个w有点区别,前⾯的维度和x的特征数相同,维度和y的特征数相同。后⾯的维度和x的样例数相同,维度和y的样例数相同,严格来说“维度=维度”。
5. 其他话题
1、当协⽅差矩阵不可逆时,怎么办?
要进⾏regularization。
⼀种⽅法是将前⾯的KCCA中的拉格朗⽇等式加上⼆次正则化项,即:
这样求导后得到的等式中,等式右边的矩阵⼀定是正定矩阵。
第⼆种⽅法是在Pearson系数的分母上加⼊正则化项,同样结果也⼀定可逆。
2、求Kernel矩阵效率不⾼怎么办?
使⽤Cholesky decomposition压缩法或者部分Gram-Schmidt正交化法,。
3、怎么使⽤CCA⽤来做预测?
4、如果有多个集合怎么办?X、Y、Z…?怎么衡量多个样本集的关系?
这个称为Generalization of the Canonical Correlation。⽅法是使得两两集合的距离差之和最⼩。可以参考⽂献2。
6. 参考⽂献

本文发布于:2024-09-22 19:31:45,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/485490.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:相关   变量   典型   得到   关系   特征   函数
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议