cca中的特征值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cca中的特征值相关的知识,希望对你有一定的参考价值。
典型相关(CCA)手册1.典型相关分析(CCA)介绍典型相关分析(CCA)是研究两组多维变量之间的线性关系的一种统计方法。它寻找两个线性组合,使得两组多维变量通过此线性组合后,其相关最大。CCA可以定义为如下问题:有两组多维变量和。分别寻找向量和,使得和在向量和上的投影和之间的相关值最大。也就是使得下式中的最大:约束条件为.典型相关分析是主成分分析和因子分析的进一步发展, 是研究两组变量间的相互依赖关系, 把两组变量之间的相互关系变为研究两个新的变量之间的相关, 而且又不抛弃原来变量的信息, 这两个新的变量分别由第一组变量和第二组变量的线性组合构成, 并且两组变量的个数可以是不同的, 两组变量所代表的内容也可以是不同的。因此, 典型相关分析在实际问题中应用是十分广泛的。典型性相关分析与简单相关分析相比, 简单相关分析有时可能受某些因素的影响, 反映的是表面的而非本质的联系, 甚至有时是假象。所以, 典型性相关分析在相关分析中有其独特的作用。CCA在数据统计和信息挖掘方面有广泛应用[1-2]。CCA的介绍可以参阅basic文件夹中的文献。2. CCA计算步骤通过拉格朗日方法,构建如下拉格朗日算子:通过对Wx和Wy的求导可以得到:(1)(2)等式一两边乘以Wx,等式2两边乘以Wy,通过约束条件,可以解得.继续求解可以得到:其中X的自相关矩阵Cxx,Y的自相关矩阵Cyy,以及X和Y的互相关矩阵Cxy。至此,CCA问题求解可以转化为如下特征值分解问题,可以通过特征值分解取得Wx和Wy。3. CCA方法matlab实现在matlab中函数canoncorr 被用于实现CCA分析。该函数的表达形式为:[A,B,r,U,V] = canoncorr(X,Y)输入X,Y 为待分析的两组数据。它们具有相同的长度(行),但是特征维数(列)可以不同。令X的特征维数为m,Y的特征维数为n。输出: r为一组相关值,其长度为min(m,n). A大小为m×min(m,n),其每一列为一组与X对应的权重系数。B大小为n×min(m,n),其每一列为一组与Y对应的权重系数。U和V为典型变量。U的每一列为数据X加权后的结果。V的每一列为数据Y加权后的结果。4.VC实现目前CCA方法的VC实现采用Matcom工具。MATCOM是MathWorks公司开发的为MATLAB中的M文件进行高效解释和调试的集成开发环境。Matcom可以把M文件编译成C++代码。因此使用十分方便。Matcom提供一种矩阵类Mm,该矩阵类封装了许多矩阵的基本操作,使用十分方便。Code文件夹中,包含了原始M文件,和编译后的.CPP,.H文件,以及使用所需的库文件。并附带一个使用例子程序。5 仿真分析%% 产生矩阵X,Y,0-s5为一系列源信号。N=100;s0=4*cos(2*pi*(0:N-1)*0.05)';s1=randn(100,1);s2=randn(100,1);s3=s0+randn(100,1);s4=randn(100,1);s5=randn(100,1);S=[s0,s1,s2,s3,s4,s5];% X,Y为源信号通过不同的线性组合C1,C2而得到的观测信号C1=randn(size(S,2),3);C2=randn(size(S,2),2);X=S*C1;Y=S*C2;% X,Y都由相同的源信号通过线性组合而成,因此他们之间在某些坐标系下是十分相关的。[A,B,r,U,V] = canoncorr(X,Y);% 通过典型相关分析,可以分别求得权重A,B.使得U,V之间的相关最大。figure;for ii=1:3subplot(3,3,(ii-1)*3+1);plot(X(:,ii));endfor ii=1:2subplot(3,3,(ii-1)*3+1+1);plot(Y(:,ii));
endfor ii=1:size(U,2)subplot(3,3,(ii-1)*3+3);plot(U(:,ii));end6. CCA方法在脑电处理中的应用Application文件夹中有两篇论文,分别介绍了CCA方法在脑电处理中的两种应用。第一篇为CCA方法在SSVEP-based BCI中的应用。第二篇为CCA方法被用于EEG成分分离。具体应用方法请参阅文献。7. CCA方法扩展1. Kernel Canonical Correlation Analysis(kCCA) [],[]为了提取两组变量之间的非线性关系,kCCA被提出来,该方法和SVM类似,具体算法和应用请才考文献。kCCA文件夹中有关于kCCA的介绍。2. Generalized canonical correlations analysis(CANCOR)为了解决超过两组变量之间的相关问题,提出了CANCOR方法。具体参阅文件夹CANCOR中的文献.参考文献[1] M. Borga, O. Friman, P. Lundberg, and H. Knutsson. A canonical correlation approach to exploratory data analysis in fMRI. In Proceedings of the ISMRM Annual Meeting, Honolulu, Hawaii, May 2002.[2] M. Borga and H. Knutsson. A canonical correlation approach to blind source separation. Tech-nical Report LiU-IMT-EX-0062, Department of Biomedical Engineering, Linkping Univer-sity, 2001.
¥
5.9
百度文库VIP限时优惠现在开通,立享6亿+VIP内容
立即获取
CCA导读
典型相关(CCA)手册
1.典型相关分析(CCA)介绍
典型相关分析(CCA)是研究两组多维变量之间的线性关系的一种统计方法。它寻找两个线性组合,使得两组多维变量通过此线性组合后,其相关最大。CCA可以定义为如下问题:有两组多维变量和。分别寻找向量和,使得和在向量和上的投影和之间的相关值最大。也就是使得下式中的最大:

约束条件为.
第 1 页
典型相关分析是主成分分析和因子分析的进一步发展, 是研究两组变量间的相互依赖关系, 把两组变量之间的相互关系变为研究两个新的变量之间的相关, 而且又不抛弃原来变量的信息, 这两个新的变量分别由第一组变量和第二组变量的线性组合构成, 并且两组变量的个数可以是不同的, 两组变量所代表的内容也可以是不同的。因此, 典型相关分析在实际问题中应用是十分广泛的。典型性相关分析与简单相关分析相比, 简单相关分析有时可能受某些因素的影响, 反映的是表面的而非本质的联系, 甚至有时是假象。所以, 典型性相关分析在相关分析中有其独特的作用。CCA在数据统计和信息挖掘方面有广泛应用[1-2]。CCA的介绍可以参阅basic文件夹中的文献。
第 2 页
2. CCA计算步骤
通过拉格朗日方法,构建如下拉格朗日算子:
通过对Wx和Wy的求导可以得到:
(1)
(2)
等式一两边乘以Wx,等式2两边乘以Wy,通过约束条件,可以解得.继续求解可以得到:
其中X的自相关矩阵Cxx,Y的自相关矩阵Cyy,以及X和Y的互相关矩阵Cxy。
第 3 页
至此,CCA问题求解可以转化为如下特征值分解问题,可以通过特征值分解取得Wx和Wy。
3. CCA方法matlab实现
在matlab中函数canoncorr 被用于实现CCA分析。该函数的表达形式为:
[A,B,r,U,V] = canoncorr(X,Y)
输入X,Y 为待分析的两组数据。它们具有相同的长度(行),但是特征维数(列)可以不同。令X的特征维数为m,Y的特征维数为n。
输出: r为一组相关值,其长度为min(m,n). A大小为m×min(m,n),其每一列为一组与X对应的权重系数。B大小为n×min(m,n),其每一列为一组与Y对应的权重系数。U和V为典型变量。U的每一列为数据X加权后的结果。V的每一列为数据Y加权后的结果。 参考技术A (Canonical Correlation Analysis,简称CCA)是最常用的挖掘数据关联关系的算法之一。CCA使用的方法是将多维的X和Y都用线性变换为1维的X'和Y',然后再使用相关系数来看X'和Y'的相关性。将数据从多维变到1位,也可以理解为CCA是在进行降维,将高维数据降到1维,然后再用相关系数进行相关性的分析。
以上是关于cca中的特征值的主要内容,如果未能解决你的问题,请参考以下文章
特征重要性特征集成+FeatureUnion特征选择变换器+ColumnTransformer标签特征变换+TransformedTargetRegressor特征质量自动学习数据中的特征