Matlab 导管相关分析
我刚刚开始在Matlab中使用CCA。我有两个维度为Matlab 导管相关分析,matlab,statistics,correlation,Matlab,Statistics,Correlation,我刚刚开始在Matlab中使用CCA。我有两个维度为60x1920和60x1536的向量X和Y,样本数为60,不同向量集中的变量分别为1920和1536。我想知道如何将它们缩减到子空间,然后进行特征匹配 我正在使用这个命令 %% DO CCA [A,B,r,U,V] = canoncorr(X,Y); 我得到的输出是: Name Size Bytes Class Attributes A 1920x58
60x1920
和60x1536
的向量X
和Y
,样本数为60
,不同向量集中的变量分别为1920
和1536
。我想知道如何将它们缩减到子空间,然后进行特征匹配
我正在使用这个命令
%% DO CCA
[A,B,r,U,V] = canoncorr(X,Y);
我得到的输出是:
Name Size Bytes Class Attributes
A 1920x58 890880 double
B 1536x58 712704 double
U 60x58 27840 double
V 60x58 27840 double
r 1x58 464 double
谁能告诉我这些变量是什么意思。我已经看了好几遍文档,仍然不清楚它们。据我所知,CCA发现两个线性投影矩阵Wx
和Wy
,使得X
和Y
在Wx
和Wy
上的投影最大相关
1) 有谁能告诉我下面的矩阵是什么
2) 另外,如何在CCA的学习子空间中找到投影向量
任何帮助都将不胜感激。提前感谢。据我所知,由于
X
和Y
是原始数据矩阵,A
和B
是一组系数,它们执行基础更改,以最大程度地关联原始数据。您的数据在新基中表示为矩阵U
和V
因此,要回答您的问题:
A
和B
,因为它们将X
和Y
转换到新空间中X
和Y
到新空间的结果投影分别为U
和V
。(向量r
表示U
和V
之间的相关矩阵的条目,这是一个对角矩阵。)N
是观察次数:
U = (X-repmat(mean(X),N,1))*A
V = (Y-repmat(mean(Y),N,1))*B
很好地规划了过程,以便您可以看到每个系数在转换过程中的含义。您看过文档了吗?谢谢你的回复。我确实看了文档,但仍然有一些疑问。你能告诉我哪些是投影向量吗?我认为是A和B,CCA子空间上的投影是U和V。我的假设正确吗?谢谢回答。你能再帮我一点吗。我实际上是在设计一个基本的人脸识别程序。在这里,我得到向量X和Y,它们实际上是来自两种不同模式的人脸图像。然后我通过CCA进行子空间学习,将它们转换为一个公共子空间。现在假设我得到一个图像查询,我想标记它。我应该找到与它最相似的类。所以我将使用U或V矩阵中的任何一个来将它们转换成公共子空间。但是我怎么能把它和U和V矩阵比较呢?我不认为CCA真的找到了一个共同的子空间。相反,它可以更方便地找到表示两组数据的两个单独的子空间,从而使两组数据之间的相关性变得更加明显。你可能会发现这个答案很有用:恐怕我没有足够的经验来进一步帮助你。交叉验证是获得统计和机器学习问题帮助的更好论坛。