精华内容
下载资源
问答
  • R语言典型相关分析
    2021-01-14 10:02:56

    1 关键点:典型相关分析

    典型相关分析是用于分析两组随机变量之间的相关程度的一种统计方法,它能够有效地揭示两组随机变量之间的相互(线性依赖)关系

    例如 研究生入学考试成绩与本科阶段一些主要课程成绩的相关性

    将研究两组变量的相关性问题转化为研究两个变量的相关性问题

    此类相关为典型相关#

    2 分类:

    总体典型相关

    样本典型相关

    3 R语言提供的计算函数:

    典型相关计算

    cancor(x,y,xcenter=TRUE,ycenter=TRUE)

    x,y是相应的数据矩阵 xcenter,ycenter是逻辑变量

    TRUE是将数据中心化 FALSE是不中心化

    4 分析结果含义

    cor是典型相关系数

    xcoef是对应于数据x的系数 又称关于数据x的典型载荷即样本典型变量U系数矩阵A的转置

    xcenter是数据X的中心 即数据X的样本均值

    y是对应于数据x的系数 又称关于数据y的典型载荷即样本典型变量V系数矩阵B的转置

    ycenter是数据Y的中心 即数据Y的样本均值

    5 分析步骤

    (1.)载入原始数据 data.frame

    (2.)原始数据标准化 scale

    (3.)典型相关分析 cancor

    (4.)相关系数显著性检验 corcoef.test.R

    I.典型相关分析的计算

    现对20名中年人测得三个生理指标:体重(X1) 腰围(X2)

    脉搏(X3);三个训练指标:引体向上(Y1) 起座次数(Y2) 跳跃次数(Y3) 试分析这组数据的相关性

    #用数据框的形式输入数据矩阵

    test

    X1=c(191, 193, 189, 211, 176, 169, 154, 193,

    176, 156,

    189, 162, 182, 167, 154, 166, 247, 202, 157, 138),

    X2=c(36, 38, 35, 38, 31, 34, 34, 36, 37,

    33,

    37, 35, 36, 34, 33, 33, 46, 37, 32, 33),

    X3=c(50, 58, 46, 56, 74, 50, 64, 46, 54,

    54,

    52, 62, 56, 60, 56, 52, 50, 62, 52, 68),

    Y1=c( 5, 12, 13, 8, 15, 17,

    14, 6, 4, 15,

    2, 12, 4, 6, 17,

    13, 1, 12, 11, 2),

    Y2=c(162, 101, 155, 101, 200, 120,

    215, 70, 60, 225,

    110, 105, 101, 125, 251, 210, 50, 210, 230,

    110),

    Y3=c(60, 101, 58, 38, 40, 38, 105, 31, 25,

    73,

    60, 37, 42, 40, 250, 115, 50, 120, 80, 43)

    )

    #为了消除数量级的影响 将数据标准化处理 调用scale函数

    test

    #对标准化的数据做典型相关分析

    ca

    #查看分析结果

    ca

    结果说明:

    1) cor给出了典型相关系数;xcoef是对应于数据X的系数,

    即为关于数据X的典型载荷; ycoef为关于数据Y的典型载荷;xcenter与$ycenter是数据X与Y的中心,

    即样本均值;

    2) 对于该问题, 第一对典型变量的表达式为

    U1 = -0.17788841x1 0.36232695x2 - 0.01356309x3

    U2 = -0.43230348x1 0.27085764x2 - 0.05301954x3

    U3 = -0.04381432x1 0.11608883x2 0.24106633x3

    V1 = -0.08018009y1 - 0.24180670y2 0.16435956y3

    V2 = -0.08615561y1 0.02833066y2 0.24367781y3

    V3 = -0.29745900y1 0.28373986y2 - 0.09608099y3

    相应的相关系数为:p(U1,V1)=0.79560815

    ,p(U2,V2)=0.20055604 ,p(U3,V3)=0.07257029

    可以进行典型相关系数的显著性检验, 经检验也只有第一组典型变量.

    下面计算样本数据在典型变量下的得分:

    #计算数据在典型变量下的得分 U=AX V=BY

    U

    V

    #调整图形

    opar

    #画出以相关变量U1、V1和U3、V3为坐标的数据散点图

    plot(U[,1], V[,1], xlab="U1", ylab="V1")

    plot(U[,3], V[,3], xlab="U3", ylab="V3")

    #调整图形

    par(opar)

    由散点图可知

    第一典型相关变量分布在一条直线附近;第三典型相关变量数据很分散。因为第一典型变量其相关系数为0.79560815,接近1,所以在一直线附近;第三典型变量的相关系数是0.07257029,接近于0,所以很分散。

    II.典型相关系数的显著性检验

    作为相关分析的目的

    就是选择多少对典型变量?因此需要做典型相关系数的显著性检验。若认为相关系数k为0 就没有必要考虑第k对典型变量了

    #相关系数检验R程序

    corcoef.test

    #r为相关系数 n为样本个数

    且n>p q

    m

    Q

    for (k in m:1){

    #检验统计量

    lambda

    #检验统计量取对数

    Q[k]

    s

    i

    for (k in 1:m){

    #统计量  Q[k]

    chi

    if (chi>alpha){

    i

    }

    s

    }

    #显示输出结果 选用第几对典型变量

    i

    }

    source("corcoef.test.R")

    #输入相关系数r,样本个数n,两个随机向量的维数p和q,置信水平a(缺省值为0.1)

    corcoef.test(r=ca$cor,n=20,p=3,q=3)

    #程序输出值为典型变量的对数

    最终程序运行结果显示选择第一对典型相关变量。我们只利用第一典型变量分析问题,达到降维的目的。

    write.csv(test,"test_test.csv")

    更多相关内容
  • 按类型分类的数学建模获奖论文,非常有用,可以系统的参考。
  • 典型相关分析matlab源代码,直接运行即可,用于典型变化,图像处理中的多元变化检测等。 典型相关分析matlab源代码,直接运行即可,用于典型变化,图像处理中的多元变化检测等。
  • 提出了一种基于典型相关分析的点云配准算法。对目标点云和待配准点云进行中心化处理, 将其绕坐标原点进行转动, 两组点云满足各维度间相关系数平方值最大; 采用典型相关分析法,对两组转动矩阵进行求解; 使用转动矩阵,...
  • 为在特征融合中综合利用数据的类别信息和数据结构中所蕴含的自然鉴别信息, 提出一种基于局部稀疏表示和线性鉴别分析的典型相关分析算法. 首先利用局部稀疏表示模型, 以较小的计算复杂度获取局部稀疏重构矩阵; 然后在...
  • sas典型相关分析

    2014-12-03 09:17:02
    对于两个变量,是用它们的相关系数来衡量它们之间的线性相关关系的。...对于这类问题的研究引进了典型相关系数的概念,从而找到了揭示两组变量之间线性相关关系的一种统计分析方法——典型相关分析。
  • 然后采用核典型相关分析(kernel canonical correlation analysis,KCCA)来提取独立分量与位置信息之间的典型相关特征;最后结合传统定位算法如加权K近邻法(weighted K nearest neighbors,WKNN)、支持向量机...
  • 典型相关分析 摘要 利用典型相关分析的思想 , 提出了解决了当两组特征矢量构成的 总体协方差矩阵奇异时 , 典型投影矢量集的求解问题 , 使之适合于高 维小样本的情形 , 推广了典型相关分析的适用范围 . 首先 , 探讨了...
  • 张量典型相关分析的多视图降维 Lus等人提出的使用张量典范相关分析的MATLAB多视图降维实现。 在
  • 典型相关分析网络的两视图图像识别
  • 典型相关分析MATLAB实现,注释详细 可以直接调用
  • 射频识别在SSVEP-BCI基于使用MULTISET典型相关分析
  • 基于深度学习及核典型相关分析的多特征融合说话人识别.pdf
  • 我国农民纯收入与消费的聚类与典型相关研究,罗世兴,沙景华,本文以全国31个省市自治区为研究对象,选取了两组12个变量,运用层次聚类分析以及典型相关分析方法,分析了全国各地区农村居民纯�
  • 典型相关分析 基本原理 从字面意义上理解CCA,我们可以知道,简单说来就是对不同变量之间做相关分析。较为专业的说就是,一种度量两组变量之间相关程度的多元统计方法。 关于相似性度量距离问题,在这里有一篇Blog...

    随着对CCA的深入研究,是时候对CCA进行一下总结了。

    本菜鸡主要研究方向为故障诊断,故会带着从应用角度进行理解。


    典型相关分析

    基本原理

    从字面意义上理解CCA,我们可以知道,简单说来就是对不同变量之间做相关分析。较为专业的说就是,一种度量两组变量之间相关程度的多元统计方法

    关于相似性度量距离问题,在这里有一篇Blog可以参考参考。

    首先,从基本的入手。

    当我们需要对两个变量 X , Y X,Y XY进行相关关系分析时,则常常会用到相关系数来反映。学过概率统计的小伙伴应该都知道的吧。还是解释一下。

    相关系数:是一种用以反映变量之间相关关系密切程度的统计指标。相关系数是按积差方法计算,同样以两变量与各自平均值的离差为基础,通过两个离差相乘来反映两变量之间相关程度;着重研究线性的单相关系数。
    R ( X , Y ) = Cov ⁡ ( X , Y ) Var ⁡ [ X ] Var ⁡ [ Y ] R(X, Y)=\frac{\operatorname{Cov}(X, Y)}{\sqrt{\operatorname{Var}[X] \operatorname{Var}[Y]}} R(X,Y)=Var[X]Var[Y] Cov(X,Y)
    其中, C o v ( X , Y ) Cov(X,Y) Cov(X,Y)表示 X , Y X,Y X,Y的协方差矩阵, V a r [ X ] Var[X] Var[X] X X X的方差, V a r [ Y ] Var[Y] Var[Y] Y Y Y的方差.

    复习了一下大学本科概率统计知识,那么,如果我们需要分析的对象是两组或者多组向量,又该怎么做呢?

    CCA的数学表达

    这里举例两组变量 A ( a 1 , a 2 , . . . , a n ) , B ( b 1 , b 2 , . . . , b m ) A(a_1,a_2,...,a_n),B(b_1,b_2,...,b_m) A(a1,a2,...,an),B(b1,b2,...,bm),那么我们的公式会是这样:
    R ( X i , Y j ) = ∑ i = 1 , j = 1 n , m C o v ( X i , Y j ) V a r [ X i ] V a r [ Y j ] R(X_i,Y_j)=\sum_{i=1,j=1}^{n,m} \frac{Cov(X_i,Y_j)}{\sqrt{Var[X_i]Var[Y_j]}} R(Xi,Yj)=i=1,j=1n,mVar[Xi]Var[Yj] Cov(Xi,Yj)
    我们会得到一个这样的矩阵:
    [ R ( X 1 , Y 1 ) . . . R ( X 1 , Y m − 1 ) R ( X 1 , Y m ) R ( X 2 , Y 1 ) . . . R ( X 2 , Y m − 1 ) R ( X 2 , Y m ) . . . . . . . . . . . . R ( X n , Y 1 ) . . . . . . R ( X n , Y m ) ] \begin{bmatrix} R(X_1,Y_1) &... & R(X_1,Y_{m-1}) & R(X_1,Y_m)\\R(X_2,Y_1) & ...& R(X_2,Y_{m-1})& R(X_2,Y_m)\\ ...& ...& ...&... \\ R(X_n,Y_1) & ...& ...&R(X_n,Y_m) \end{bmatrix} R(X1,Y1)R(X2,Y1)...R(Xn,Y1)............R(X1,Ym1)R(X2,Ym1)......R(X1,Ym)R(X2,Ym)...R(Xn,Ym)

    这样的话,我们把每个变量的相关系数都求了出来,不知道会不会和我一样觉得这样很繁琐呢。如果我们能找到两组变量之间的各自的线性组合,那么我们就只分析讨论线性组合之间的相关分析。

    典型相关系数:是先对原来各组变量进行主成分分析,得到新的线性关系的综合指标,再通过综合指标之间的线性相关系数来研究原各组变量间相关关系。

    现在我们利用主成分分析(PCA)的思想,可以把多个变量与多个变量之间的相关转化成两个变量之间的相关。

    先得到两组变量 ( A T , B T ) (A^T,B^T) (AT,BT)的协方差矩阵
    Σ = [ Σ 11   Σ 12 Σ 21   Σ 22 ] \Sigma=\left[\begin{array}{l} \Sigma_{11} \ \Sigma_{12} \\ \Sigma_{21} \ \Sigma_{22} \end{array}\right] Σ=[Σ11 Σ12Σ21 Σ22]
    其中, Σ 11 = C o v ( A ) , Σ 22 = C o v ( B ) , Σ 12 = Σ 12 T = C o v ( A , B ) \Sigma_{11} = Cov(A),\Sigma_{22} = Cov(B),\Sigma_{12}=\Sigma_{12}^T = Cov(A,B) Σ11=Cov(A),Σ22=Cov(B),Σ12=Σ12T=Cov(A,B).

    把上面两组变量 A ( a 1 , a 2 , . . . , a n ) , B ( b 1 , b 2 , . . . , b m ) A(a_1,a_2,...,a_n),B(b_1,b_2,...,b_m) A(a1,a2,...,an),B(b1,b2,...,bm)分别组合成两个变量U、V,则用线性表示
    U = t 1 a 1 + t 2 a 2 + . . . + t n a n , V = h 1 b 1 + h 2 b 2 + . . . + h m b m \begin{matrix} U=t_1a_1+t_2a_2+...+t_na_n,\\ \\V=h_1b_1+h_2b_2+...+h_mb_m \end{matrix} U=t1a1+t2a2+...+tnan,V=h1b1+h2b2+...+hmbm

    然后,找出最大可能的相关系数 t k = ( t 1 , t 2 , . . . , t n ) T , h k = ( h 1 , h 2 , . . . , h m ) T {t_k}=(t_1,t_2,...,t_n)^T,{h_k}=(h_1,h_2,...,h_m)^T tk=(t1,t2,...,tn)T,hk=(h1,h2,...,hm)T,

    使得, R ( U , V ) ⟶ M a x R(U,V)\longrightarrow Max R(U,V)Max,这样,就得到了典型相关系数;而其中的 U , V U,V U,V典型相关变量

    典型相关分析最朴素的思想:首先分别在每组变量中找出第一对典型变量,使其具有最大相关性,然后在每组变量中找出第二对典型变量,使其分别与本组内的第一对典型变量不相关,第二对本身具有次大的相关性。如此下去,直到进行到K步,两组变量的相关系被提取完为止,可以得到K组变量。

    So

    注意:此时的 ( U , V ) (U,V) (U,V)若不能反映两组变量之间的相关关系,我们需要继续构造下一组关系变量来表示,具体可构造 K K K这样的关系

    直到 R ( U , V ) ⟶ M a x R(U,V)\longrightarrow Max R(U,V)Max为止
    U k = t k T A = t 1 k a 1 + t 2 k a 2 + . . . + t n k a n V k = h k T B = h 1 k b 1 + h 2 k b 2 + . . . + h m k b m \begin{matrix} U_k={t_k^T}{A}=t_{1k}a_1+t_{2k}a_2+...+t_{nk}a_n\\ \\ V_k={h_k^T}{B}=h_{1k}b_1+h_{2k}b_2+...+h_{mk}b_m \end{matrix} Uk=tkTA=t1ka1+t2ka2+...+tnkanVk=hkTB=h1kb1+h2kb2+...+hmkbm

    其中,我们需要一个约束条件满足,使得 R ( U , V ) ⟶ M a x R(U,V)\longrightarrow Max R(U,V)Max

    V a r ( U k ) = V a r ( t k T A ) = t k T Σ 11 t k = 1 V a r ( V k ) = V a r ( h k T A ) = h k T Σ 22 h k = 1 C o v ( U k , U i ) = C o v ( U k , V i ) = C o v ( V i , U k ) = C o v ( V k , V i ) = 0 ( 1 < = i < k ) \begin{matrix} Var(U_k)=Var({t_k^T}{A})={t_k^T}\Sigma_{11}t_k=1\\ \\ Var(V_k)=Var({h_k^T}{A})={h_k^T}\Sigma_{22}h_k=1\\ \\ Cov(U_k,U_i)=Cov(U_k,V_i)=Cov(V_i,U_k)=Cov(V_k,V_i)=0(1<=i<k) \end{matrix} Var(Uk)=Var(tkTA)=tkTΣ11tk=1Var(Vk)=Var(hkTA)=hkTΣ22hk=1CovUk,Ui=Cov(Uk,Vi)=Cov(Vi,Uk)=Cov(Vk,Vi)=0(1<=i<k)
    典型相关系数公式 R ( U , V ) R_{(U,V)} R(U,V)
    R ( U , V ) = Cov ⁡ ( U , V ) Var ⁡ [ U ] Var ⁡ [ V ] = C o v ( U , V ) = t k T C o v ( A , B ) h k = t k T Σ 12 h k R_{(U,V)}=\frac{\operatorname{Cov}(U, V)}{\sqrt{\operatorname{Var}[U] \operatorname{Var}[V]}}=Cov(U,V)={t_k}^TCov(A,B)h_k={t_k}^T\Sigma_{12} h_k R(U,V)=Var[U]Var[V] Cov(U,V)=Cov(U,V)=tkTCov(A,B)hk=tkTΣ12hk

    在此约束条件下, t k , h k t_k,h_k tk,hk系数得到最大,则使得 R ( U , V ) R_{(U,V)} R(U,V)最大

    典型相关系数及变量的求法

    下面一起来求 t 1 , h 1 t_1,h_1 t1,h1(这里只例举第一典型相关系数)

    (一起来复习高数–拉格朗日乘数法

    前提条件,我们有个计算公式,约束条件也有了,故这是一个求解条件极值题呀!!!

    列出我们的拉格朗日函数:
    ϕ ( t 1 , h 1 ) = t 1 T Σ 12 h 1 − λ 2 ( t 1 T Σ 11 t 1 − 1 ) − v 2 ( h 1 T Σ 22 h 1 − 1 ) \phi\left(t_{1}, h_{1}\right)=t_{1}^T \Sigma_{12} h_{1}-\frac{\lambda}{2}\left(t_{1}^T \Sigma_{11} t_{1}-1\right)-\frac{v}{2}\left(h_{1}^T \Sigma_{22} h_{1}-1\right) ϕ(t1,h1)=t1TΣ12h12λ(t1TΣ11t11)2v(h1TΣ22h11)
    其中, λ , v \lambda,v λ,v表示拉格朗日乘子参数。

    由上述典型相关系数公式 R ( U , V ) R_{(U,V)} R(U,V)可知,我们只需求其系数 t 1 , h 1 t_1,h_1 t1,h1的最大值,即可

    ϕ ( t 1 , h 1 ) \phi(t_1,h_1) ϕ(t1,h1)做一阶偏导运算:
    { ∂ ϕ ∂ t 1 = ∑ 12 h 1 − λ ∑ 11 t 1 = 0 ∂ ϕ ∂ h 1 = ∑ 21 t 1 − v ∑ 22 h 1 = 0 \left\{\begin{array}{l} \frac{\partial \phi}{\partial t_{1}}=\sum_{12} h_{1}-\lambda \sum_{11} t_{1}=0 \\ \\ \frac{\partial \phi}{\partial h_{1}}=\sum_{21} t_{1}-v \sum_{22} h_{1}=0 \end{array}\right. t1ϕ=12h1λ11t1=0h1ϕ=21t1v22h1=0
    也就是
    { ∑ 12 h 1 − λ ∑ 11 t 1 = 0 ∑ 21 t 1 − v ∑ 22 h 1 = 0 \left\{\begin{array}{l} \sum_{12} h_{1}-\lambda \sum_{11} t_{1}=0 \\ \\ \sum_{21} t_{1}-v \sum_{22} h_{1}=0 \end{array}\right. 12h1λ11t1=021t1v22h1=0
    将上式分别左乘 t 1 , h 1 t_1,h_1 t1,h1得,
    {   t 1 Σ 12 h 1 − λ t 1 Σ 11 t 1 = 0   h 1 Σ 21 t 1 − v h 1 Σ 22 h 1 = 0 \left\{\begin{array}{l} \ t_{1}\Sigma_{12} h_{1}-\lambda t_{1}\Sigma_{11} t_{1}=0 \\ \\ \ h_{1}\Sigma_{21} t_{1}-v h_{1} \Sigma_{22} h_{1}=0 \end{array}\right.  t1Σ12h1λt1Σ11t1=0 h1Σ21t1vh1Σ22h1=0
    由于约束条件可知 V a r ( U 1 ) = V a r ( V 1 ) = 1 Var(U_1)=Var(V_1)=1 Var(U1)=Var(V1)=1,解得,
    {   t 1 Σ 12 h 1 = λ   h 1 Σ 21 t 1 = v \left\{\begin{array}{l} \ t_{1}\Sigma_{12} h_{1}=\lambda \\ \\ \ h_{1}\Sigma_{21} t_{1} =v \end{array}\right.  t1Σ12h1=λ h1Σ21t1=v
    此时,我们来对比一下上面列出的求解 R ( U , V ) R_{(U,V)} R(U,V)公式,有没有,是不是,一模一样,我们的拉格朗日乘子 λ , v = t 1 Σ 12 h 1 = R ( U , V ) \lambda,v=t_{1}\Sigma_{12} h_{1}=R_{(U,V)} λ,v=t1Σ12h1=R(U,V),也就是说, λ , v \lambda,v λ,v即为我们要求解的典型相关系数

    我们由式 { ∑ 12 h 1 − λ ∑ 11 t 1 = 0 ∑ 21 t 1 − v ∑ 22 h 1 = 0 \left\{\begin{array}{l} \sum_{12} h_{1}-\lambda \sum_{11} t_{1}=0 \\ \\ \sum_{21} t_{1}-v \sum_{22} h_{1}=0 \end{array}\right. 12h1λ11t1=021t1v22h1=0,可得
    λ t 1 = Σ 11 − 1 Σ 12 h 1 \lambda t_1 = \Sigma _{11}^{-1}\Sigma_{12} h_{1} λt1=Σ111Σ12h1
    由于 λ = v \lambda=v λ=v,再将此代入 ∑ 21 t 1 − v ∑ 22 h 1 = 0 \sum_{21} t_{1}-v \sum_{22} h_{1}=0 21t1v22h1=0中,可得
    Σ 12 Σ 22 − 1 Σ 21 t 1 − λ 2 Σ 11 t 1 = 0 Σ 11 − 1 Σ 12 Σ 22 − 1 Σ 21 t 1 − λ 2 t 1 = 0 \begin{array}{l} \Sigma_{12} \Sigma_{22}^{-1} \Sigma_{21} t_{1}-\lambda^{2} \Sigma_{11} t_{1}=0 \\ \\ \Sigma_{11}^{-1} \Sigma_{12} \Sigma_{22}^{-1} \Sigma_{21} t_{1}-\lambda^{2} t_{1}=0 \end{array} Σ12Σ221Σ21t1λ2Σ11t1=0Σ111Σ12Σ221Σ21t1λ2t1=0
    上面的式子是不是很熟悉 A X = λ X AX=\lambda X AX=λX,

    Σ 11 − 1 Σ 12 Σ 22 − 1 Σ 21 = A t 1 = X λ = λ 2 \Sigma_{11}^{-1} \Sigma_{12} \Sigma_{22}^{-1} \Sigma_{21} = A \\ t_1=X \\ \lambda=\lambda^2 Σ111Σ12Σ221Σ21=At1=Xλ=λ2
    故, Σ 11 − 1 Σ 12 Σ 22 − 1 Σ 21 \Sigma_{11}^{-1} \Sigma_{12} \Sigma_{22}^{-1} \Sigma_{21} Σ111Σ12Σ221Σ21的特征值为 λ 2 \lambda^2 λ2,特征向量为 t 1 t_1 t1

    到此,我们可求得相应的 t 1 , h 1 t_1,h_1 t1,h1 R ( U , V ) R_{(U,V)} R(U,V)


    典型相关分析应用

    基于 CCA 的故障检测方法

    对于CCA应用在故障检测中,基于 CCA 的故障检测方法可以视为基于 PCA 和基于 PLS 故障检测方法的一种扩展。

    基本思想:是利用典型相关关系构建一个残差发生器, 通过对残差信号的评价做出故障检测的相应决策。该方法中提出了 4 个统计量, 将输入空间分为两个部分, 即与输出空间相关的子空间和与输出空间不相关的子空间;同理,将输出空间分为两个部分, 即与输入空间相关的子空间和与输入空间不相关的子空间。

    u o b s ∈ R l u_{obs}∈R^l uobsl y o b s ∈ R m y_{obs}∈R^m yobsm表示测量的过程输入和输出向量, l l l m m m分别表示相应的数据维数。对两个向量进行去均值, 可得

    u = u o b s − μ u (1) \boldsymbol{u} = \boldsymbol{u}_{\mathrm{obs}}-\boldsymbol{\mu}_{u} \tag{1} u=uobsμu(1)
    y = y o b s − μ y (2) \boldsymbol{y} = \boldsymbol{y}_{\mathrm{obs}}-\boldsymbol{\mu}_{y} \tag{2} y=yobsμy(2)
    式中: μ u μ_u μu μ y μ_y μy分别表示输入变量均值和输出变量均值。假设采样得到 N 个过程数据, 并组成如下输入输出数据集

    U = [ u ( 1 ) , u ( 2 ) , ⋯   , u ( N ) ] ∈ R l × N , Y = [ y ( 1 ) , y ( 2 ) , ⋯   , y ( N ) ] ∈ R m × N \boldsymbol{U}=[\boldsymbol{u}(1), \boldsymbol{u}(2), \cdots, \boldsymbol{u}(N)] \in \mathbf{R}^{l \times N}, \boldsymbol{Y}=[\boldsymbol{y}(1), \boldsymbol{y}(2), \cdots, \boldsymbol{y}(N)] \in \mathbf{R}^{m \times N} U=[u(1),u(2),,u(N)]Rl×N,Y=[y(1),y(2),,y(N)]Rm×N
    式中: u ( i ) , y ( i ) , ( i = 1 , … , N ) u(i), y(i) , (i = 1, …, N) u(i)y(i)(i=1N)是按式(1)(2)中心化后的输入输出向量, 相应的平均值
    μ u ≈ 1 N ∑ i = 1 N u o b s ( i ) , μ y ≈ 1 N ∑ i = 1 N y o b s ( i ) , \boldsymbol{\mu}_{u} \approx \frac{1}{N} \sum_{i=1}^{N} \boldsymbol{u}_{\mathrm{obs}}(i), \boldsymbol{\mu}_{y} \approx \frac{1}{N} \sum_{i=1}^{N} \boldsymbol{y}_{\mathrm{obs}}(i), μuN1i=1Nuobs(i),μyN1i=1Nyobs(i),

    并且, 协方差矩阵 Σ u 、 Σ y Σ_u、 Σ_y ΣuΣy和输入输出的互协方差矩阵 Σ u y Σ_{uy} Σuy分别为:
    Σ u ≈ 1 N − 1 ∑ i = 1 N ( u o b s ( i ) − μ u ) ( u o b s ( i ) − μ u ) T = U U T N − 1 (3) \boldsymbol{\Sigma}_{u} \approx \frac{1}{N-1} \sum_{i=1}^{N}\left(\boldsymbol{u}_{\mathrm{obs}}(i)-\boldsymbol{\mu}_{u}\right)\left(\boldsymbol{u}_{\mathrm{obs}}(i)-\boldsymbol{\mu}_{u}\right)^{\mathrm{T}}=\frac{\boldsymbol{U} \boldsymbol{U}^{\mathrm{T}}}{N-1}\tag{3} ΣuN11i=1N(uobs(i)μu)(uobs(i)μu)T=N1UUT(3)
    Σ y ≈ 1 N − 1 ∑ i = 1 N ( y o b s ( i ) − μ y ) ( y o b s ( i ) − μ y ) T = Y Y T N − 1 (4) \boldsymbol{\Sigma}_{y} \approx \frac{1}{N-1} \sum_{i=1}^{N}\left(\boldsymbol{y}_{\mathrm{obs}}(i)-\boldsymbol{\mu}_{y}\right)\left(\boldsymbol{y}_{\mathrm{obs}}(i)-\boldsymbol{\mu}_{y}\right)^{\mathrm{T}}=\frac{\boldsymbol{Y} \boldsymbol{Y}^{\mathrm{T}}}{N-1}\tag{4} ΣyN11i=1N(yobs(i)μy)(yobs(i)μy)T=N1YYT(4)
    Σ u y ≈ 1 N − 1 ∑ i = 1 N ( u o b s ( i ) − μ u ) ( y o b s ( i ) − μ y ) T = U Y T N − 1 (5) \boldsymbol{\Sigma}_{u y} \approx \frac{1}{N-1} \sum_{i=1}^{N}\left(\boldsymbol{u}_{\mathrm{obs}}(i)-\boldsymbol{\mu}_{u}\right)\left(\boldsymbol{y}_{\mathrm{obs}}(i)-\boldsymbol{\mu}_{y}\right)^{\mathrm{T}}=\frac{\boldsymbol{U} \boldsymbol{Y}^{\mathrm{T}}}{N-1}\tag{5} ΣuyN11i=1N(uobs(i)μu)(yobs(i)μy)T=N1UYT(5)
    结合 CCA 方法, 可得:
    ( U U T N − 1 ) − 1 / 2 ( U Y T N − 1 ) ( Y Y T N − 1 ) − 1 / 2 = Σ u − 1 / 2 Σ u y Σ y − 1 / 2 = Γ s Σ Ψ s T , Σ = [ Λ κ 0 0 0 ] (6) \left(\frac{\boldsymbol{U} \boldsymbol{U}^{\mathrm{T}}}{N-1}\right)^{-1 / 2}\left(\frac{\boldsymbol{U} \boldsymbol{Y}^{\mathrm{T}}}{N-1}\right)\left(\frac{\boldsymbol{Y} \boldsymbol{Y}^{\mathrm{T}}}{N-1}\right)^{-1 / 2}=\boldsymbol{\Sigma}_{u}^{-1 / 2} \boldsymbol{\Sigma}_{u y} \boldsymbol{\Sigma}_{y}^{-1 / 2}=\boldsymbol{\Gamma}_{s} \boldsymbol{\Sigma} \boldsymbol{\Psi}_{s}^{\mathrm{T}}, \boldsymbol{\Sigma}=\left[\begin{array}{ll} \boldsymbol{\Lambda}_{\kappa} & 0 \\ 0 & 0 \end{array}\right]\tag{6} (N1UUT)1/2(N1UYT)(N1YYT)1/2=Σu1/2ΣuyΣy1/2=ΓsΣΨsT,Σ=[Λκ000](6)
    式中: κ 为主元个数, κ ≤ m i n ( l , m ) ; Σ κ = d i a g ( ρ 1 , … , ρ κ ) κ ≤ min(l,m); Σ_κ= diag(ρ1, …, ρκ) κmin(lm);Σκ=diag(ρ1ρκ)为典型相关系数值。
    J s = Σ u − 1 / 2 Γ ( : , 1 : κ ) , L s = Σ y − 1 / 2 Ψ ( : , 1 : κ ) , J r e s = Σ u − 1 / 2 Γ ( : , κ + 1 : l ) , L r e s = Σ y − 1 / 2 Ψ ( : , κ + 1 : m ) \boldsymbol{J}_{s}=\boldsymbol{\Sigma}_{u}^{-1 / 2} \boldsymbol{\Gamma}(:, 1: \kappa), \boldsymbol{L}_{s}=\boldsymbol{\Sigma}_{y}^{-1 / 2} \boldsymbol{\Psi}(:, 1: \kappa), \boldsymbol{J}_{\mathrm{res}}=\boldsymbol{\Sigma}_{u}^{-1 / 2} \boldsymbol{\Gamma}(:, \kappa+1: l), \boldsymbol{L}_{\mathrm{res}}=\boldsymbol{\Sigma}_{y}^{-1 / 2} \boldsymbol{\Psi}(:, \kappa+1: m) Js=Σu1/2Γ(:,1:κ),Ls=Σy1/2Ψ(:,1:κ),Jres=Σu1/2Γ(:,κ+1:l),Lres=Σy1/2Ψ(:,κ+1:m),

    由 CCA 方法可知, J s T u J^T_su JsTu L s T y L^T_sy LsTy具有密切的相关性。

    但是在实际系统中, 测量变量难免受到噪声影响, 两者之间的相关性可表示为:
    L s T y ( k ) = Λ κ T J s T u ( k ) + v s ( k ) (7) \boldsymbol{L}_{s}^{\mathrm{T}} \boldsymbol{y}(k)=\boldsymbol{\Lambda}_{\kappa}^{\mathrm{T}} \boldsymbol{J}_{s}^{\mathrm{T}} \boldsymbol{u}(k)+\boldsymbol{v}_{s}(k)\tag{7} LsTy(k)=ΛκTJsTu(k)+vs(k)(7)
    式中: v s v_s vs为噪声项, 并且与 J s T u J^T_su JsTu弱相关。基于此, 残差向量
    r 1 ( k ) = L s T y ( k ) − Λ κ T J s T u ( k ) (8) \boldsymbol{r}_{1}(k)=\boldsymbol{L}_{s}^{\mathrm{T}} \boldsymbol{y}(k)-\boldsymbol{\Lambda}_{\kappa}^{\mathrm{T}} \boldsymbol{J}_{s}^{\mathrm{T}} \boldsymbol{u}(k)\tag{8} r1(k)=LsTy(k)ΛκTJsTu(k)(8)

    其中的 Λ κ T {\Lambda}_{\kappa}^{\mathrm{T}} ΛκT为系数矩阵,上面介绍了CCA的数学运算,这里应该能理解,只不过多加了一个噪声向量。

    假设输入输出数据服从高斯分布。已知线性变换不改变随机变量的分布, 所以残差信号 r 1 r_1 r1也服
    从高斯分布, 其协方差矩阵:
    Σ r 1 = 1 N − 1 ( L s T Y − Λ κ T J s T U ) ( L s T Y − Λ κ T J s T U ) T = I κ − Λ κ 2 N − 1 (9) \boldsymbol{\Sigma}_{r_1}=\frac{1}{N-1}\left(\boldsymbol{L}_{s}^{\mathrm{T}} \boldsymbol{Y}-\boldsymbol{\Lambda}_{\kappa}^{\mathrm{T}} \boldsymbol{J}_{s}^{\mathrm{T}} \boldsymbol{U}\right)\left(\boldsymbol{L}_{s}^{\mathrm{T}} \boldsymbol{Y}-\boldsymbol{\Lambda}_{\kappa}^{\mathrm{T}} \boldsymbol{J}_{s}^{\mathrm{T}} \boldsymbol{U}\right)^{\mathrm{T}}=\frac{\boldsymbol{I}_{\kappa}-\boldsymbol{\Lambda}_{\kappa}^{2}}{N-1}{ }^{}\tag{9} Σr1=N11(LsTYΛκTJsTU)(LsTYΛκTJsTU)T=N1IκΛκ2(9)
    同理, 还可以得到另一残差向量
    r 2 ( k ) = L s T y ( k ) − Λ κ T J s T u ( k ) (10) \boldsymbol{r}_{2}(k)=\boldsymbol{L}_{s}^{\mathrm{T}} \boldsymbol{y}(k)-\boldsymbol{\Lambda}_{\kappa}^{\mathrm{T}} \boldsymbol{J}_{s}^{\mathrm{T}} \boldsymbol{u}(k)\tag{10} r2(k)=LsTy(k)ΛκTJsTu(k)(10)
    其协方差矩阵
    Σ r 2 = 1 N − 1 ( L s T Y − Λ κ T J s T U ) ( L s T Y − Λ κ T J s T U ) T = I κ − Λ κ 2 N − 1 (11) \boldsymbol{\Sigma}_{r_2}=\frac{1}{N-1}\left(\boldsymbol{L}_{s}^{\mathrm{T}} \boldsymbol{Y}-\boldsymbol{\Lambda}_{\kappa}^{\mathrm{T}} \boldsymbol{J}_{s}^{\mathrm{T}} \boldsymbol{U}\right)\left(\boldsymbol{L}_{s}^{\mathrm{T}} \boldsymbol{Y}-\boldsymbol{\Lambda}_{\kappa}^{\mathrm{T}} \boldsymbol{J}_{s}^{\mathrm{T}} \boldsymbol{U}\right)^{\mathrm{T}}=\frac{\boldsymbol{I}_{\kappa}-\boldsymbol{\Lambda}_{\kappa}^{2}}{N-1}{ }^{}\tag{11} Σr2=N11(LsTYΛκTJsTU)(LsTYΛκTJsTU)T=N1IκΛκ2(11)
    由式(9)(11) 可以看出, 残差 r1和 r2的协方差相同。 对于故障检测, 可构造如下两个统计量:
    T 1 2 ( k ) = ( N − 1 ) r 1 T ( k ) ( I κ − Λ κ 2 ) − 1 r 1 ( k ) (12) T_{1}^{2}(k)=(N-1) \boldsymbol{r}_{1}^{\mathrm{T}}(k)\left(\boldsymbol{I}_{\kappa}-\boldsymbol{\Lambda}_{\kappa}^{2}\right)^{-1} \boldsymbol{r}_{1}(k)\tag{12} T12(k)=(N1)r1T(k)(IκΛκ2)1r1(k)(12)
    T 2 2 ( k ) = ( N − 1 ) r 2 T ( k ) ( I κ − Λ κ 2 ) − 1 r 2 ( k ) (13) T_{2}^{2}(k)=(N-1) \boldsymbol{r}_{2}^{\mathrm{T}}(k)\left(\boldsymbol{I}_{\kappa}-\boldsymbol{\Lambda}_{\kappa}^{2}\right)^{-1} \boldsymbol{r}_{2}(k)\tag{13} T22(k)=(N1)r2T(k)(IκΛκ2)1r2(k)(13)
    注意到统计量 T 1 2 T^2_1 T12用于检测发生在输出子空间且输入相关的那部分故障, 为了检测与输入不相关的那部分故障, 可构造一个统计量
    T 3 2 = y T L r e s L r e s T y (14) T_{3}^{2}=\boldsymbol{y}^{\mathrm{T}} \boldsymbol{L}_{\mathrm{res}} \boldsymbol{L}_{\mathrm{res}}^{\mathrm{T}} \boldsymbol{y}\tag{14} T32=yTLresLresTy(14)
    同理, 为了检测发生在输入空间且与输出不相关的那部分故障, 可构造另一统计量
    T 4 2 = u T L r e s L r e s T u (15) T_{4}^{2}=\boldsymbol{u}^{\mathrm{T}} \boldsymbol{L}_{\mathrm{res}} \boldsymbol{L}_{\mathrm{res}}^{\mathrm{T}} \boldsymbol{u}\tag{15} T42=uTLresLresTu(15)
    由以上分析可知, 通过确定主元个数 κ, 可以得到4 个统计量 T 1 2 T^2_1 T12 T 2 2 T^2_2 T22 T 3 2 T^2_3 T32 T 4 2 T^2_4 T42进行故障检测。

    关于过程故障监控的统计量 T 2 T^2 T2,在深度学习、机器学习、故障诊断领域用的较多,这里可参考 T 2 T^2 T2的相关内容。
    应用部分参考自一篇Paper ⟶ \longrightarrow [1]. CHEN Zhiw en,DING S X,ZHANG Kai,et al.Canonical correlation analysis- based fault detection methods with application to alumina evaporation process[J].Control Engineering Practice,2016,46:51- 58.

    Python代码

    ## 通过sklearn工具包内置的CCA实现
    import numpy as np
    from sklearn.cross_decomposition import CCA
    from icecream import ic   # ic用于显示,类似于print
    
    A = [[3, 4, 5, 6, 7] for i in range(2000)] 
    B = [[8, 9, 10, 11, 12] for i in range(2000)] 
    # 注意在A、B中的数为输入变量及输出变量参数
    
    # 建模
    cca = CCA(n_components=1)  # 若想计算第二主成分对应的相关系数,则令cca = CCA(n_components=2)
    # 训练数据
    cca.fit(X, Y)
    # 降维操作
    X_train_r, Y_train_r = cca.transform(X, Y)
    #输出相关系数
    ic(np.corrcoef(X_train_r[:, 0], Y_train_r[:, 0])[0, 1])  #如果想计算第二主成分对应的相关系数 print(np.corrcoef(X_train_r[:, 1], Y_train_r[:, 1])[0, 1])
    

    另有一个包含可视化CCA的Python代码在 这里

    Matlab代码

    function[ccaEigvector1, ccaEigvector2] = CCA(data1, data2)
    
    
    dataLen1 = size(data1, 2);
    
    dataLen2 = size(data2, 2);
    
     
    
    % Construct the scatter of each view and the scatter between them
    
    data = [data1 data2];
    
    covariance = cov(data);
    
    % Sxx = covariance(1 : dataLen1, 1 : dataLen1) + eye(dataLen1) * 10^(-7);
    
    Sxx = covariance(1 : dataLen1, 1 : dataLen1);
    
    % Syy = covariance(dataLen1 + 1 : size(covariance, 2), dataLen1 + 1 : size(covariance, 2)) ...
    
    % + eye(dataLen2) * 10^(-7);
    
    Syy = covariance(dataLen1 + 1 : size(covariance, 2), dataLen1 + 1 : size(covariance, 2));
    
    Sxy = covariance(1 : dataLen1, dataLen1 + 1 : size(covariance, 2));
    
    % Syx = Sxy';
    
     
    % using SVD to compute the projection
    
    Hx = (Sxx)^(-1/2);
    
    Hy = (Syy)^(-1/2);
     
    
    H = Hx * Sxy * Hy;
    
    [U, D, V] = svd(H, 'econ');
    
    ccaEigvector1 = Hx * U;
    
    ccaEigvector2 = Hy * V;
    
    % make the canonical correlation variable has unit variance
    
    ccaEigvector1 = ccaEigvector1 * diag(diag((eye(size(ccaEigvector1, 2)) ./ sqrt(ccaEigvector1' * Sxx * ccaEigvector1))));
    
    ccaEigvector2 = ccaEigvector2 * diag(diag((eye(size(ccaEigvector2, 2)) ./ sqrt(ccaEigvector2' * Syy * ccaEigvector2))));
    
    end
    

    坚持读Paper,坚持做笔记!!!
    To Be No.1


    过路能❤关注收藏点个赞三连就最好不过了

    ღ( ´・ᴗ・` )


    对自己的爱好保持热情,不要太功利!

    展开全文
  • 典型相关分析研究与应用,李雪,林和平,经典典型相关分析方法在解决时间序列问题时存在不足:不能及时、准确地反映样本数据的时间特征及变化趋势。针对上述问题,本文基
  • 典型相关分析

    2017-08-10 21:01:36
    可以进行典型相关分析,注释很详细,可以直接调用 翻译
  • 中实现典型相关分析 SPSS?11.0 15.1?典型相关分析 15.1.1?方法简介 在相关分析一章中我们主要研究的是两个变量间的相关顶多调整其他因素的作用而已 如果要研究一个变量和一组变量间的相关则可以使用多元线性回归方程...
  • 现有的因果关系发现算法主要基于单个观察变量本身之间的因果关系,无法适用于多组观察变量,为此提出了一种多组典型相关变量的因果关系发现算法。首先,引入多组典型相关变量建立多组典型相关变量的线性非高斯无环...
  • 数学建模——典型相关分析及相关SPSS操作

    万次阅读 多人点赞 2019-10-31 08:44:26
    文章目录一、引述1.概念2.示例说明 一、引述 ...典型相关分析用于研究两组变量(每组变量中都可能有多个指标)之间相关关系的一种多元统计方法。它能够揭示出两组变量之间的内在联系。 2.示例说明 ...

    一、引述

    1.概念

    • 典型相关分析用于研究两组变量每组变量中都可能有多个指标)之间相关关系的一种多元统计方法。它能够揭示出两组变量之间的内在联系。
    • 在一元统计分析中,用相关系数来衡量两个随机变量之间的线性相关关系用复相关系数研究一个随机变量和多个随机变量的线性相关关系。然而,这些统计方法在研究两组变量之间的相关关系时却无能为力。比如要研究生理指标与训练指标的关系居民生活环境与健康状况的关系人口统计变量(户主年龄、家庭年收入、户主受教育程度)与消费变量(每年去餐馆就餐的频率、每年出外看电影的频率)之间是否具有相关关系 ?阅读能力变量(阅读速度、阅读才能)与数学运算能力变量(数学运算速度、数学运算才能)**是否相关?这些多变量间的相关性如何分析?

    2.何为两组变量呢?

    下图是测量的20名学生的生理指标与训练指标。第一组是生理指标变量,有体重、腰围和脉搏;第二组是训练指标变量,有引体向上次数、起坐次数和跳跃次数。要求测量生理指标与训练指标这两组变量之间的关系。
    示例
    在本题中,如果我们直接对这些变量(诸如体重、胸围等变量)的相关性进行两两分析,很难得到题干所要求的测量生理指标与训练指标这两组变量之间的关系。所以,我们引入一种新的分析方法:典型相关分析。

    3. 本文主要内容

    • 本文主要目的在于介绍典型相关分析的基本思想和解题步骤以及讲解如何使用SPSS24.0解决该类数学建模问题。
    • 如果要进行论文写作,我们需要掌握典型相关分析的原理及方法。这一部分,我将在后面的专栏中结合相关获奖论文进行说明。

    二、典型相关分析

    1. 基本思路

    • 在上例中,我们可以采用这样的解决思路:由于两组变量中都含有多个变量指标,每组变量中定然会有代表性的变量。这样,找到代表性的变量,我们便可以把 多个变量与多个变量之间的相关变成两个具有代表性的变量之间的相关
    • 代表性变量:能较为综合、全面的衡量所在组的内在规律。
    • 一组变量最简单的综合形式就是该组变量的线性组合

    2. 基本思想

    典型相关分析由Hotelling提出,其基本思想和主成分分析非常相似

    • 首先在每组变量中找出变量的线性组合,使得两组的线性组合之间具有最大的相关系数
    • 然后选取和最初挑选的这对线性组合不相关的线性组合,使其配对,并选取相关系数最大的一对。
    • 如此继续下去,知道两组变量之间的相关性被提取完毕为止。
    • 被选出的线性组合配对称为典型变量,它们的相关系数称为典型相关系数。典型相关系数度量了这两组变量之间的强度。

    3. 基本思路

    • 一般情况下,假设
      在这里插入图片描述
      是两个相互关联的随机变量,分别在两组变量中选取若干有代表性的综合变量Ui、Vi,使得每一个综合变量是原变量的线性组合,即
      在这里插入图片描述

    • 当然,综合变量的组数是不确定的,如果第一组就能代表原样本数据大部分的信息,那么一组就足够了。如果第一组反映的信息不够,我们就需要找第二组数据。

    • 为了让所找到的第二组数据的信息更加有效,我们需要保证第二组数据和第一组数据不相关,即
      在这里插入图片描述

    • 对于数学的部分,我就不再过多阐述(无力.jpg)。感兴趣的同学可以自行查找资料。上面一点便是我们所要达到的终极目的。

    三、关键步骤(看不懂的话,可以先看四)

    1. 假设我们所研究的两组数据服从联合正态分布
    2. 对这两组变量的相关性进行检验(构造似然比统计量)
      • H0:两组变量的协差阵为0(两组变量无关);H1:两组变量的协差阵不为0(两组变量有关)
      • 用于检验的似然比统计量
        在这里插入图片描述
      • p值小于0.5(0.1)表示在95%(90%)的置信水平下拒绝原假设, 即认为两组变量有关。
    3. 确定典型相关变量的个数(直接看典型相关系数对应的p值即可)
    4. 利用标准化后的典型相关变量分析问题
      为了消除量纲和数量级别的影响,必须对数据先做标准化变换处理,然后再做典型相关分析。
    5. 进行典型载荷分析
    6. 计算前r个典型变量对样本总方差的贡献

    四、使用SPSS进行典型相关分析

    1.导入数据

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    2. 检验数据类型

    在这里插入图片描述
    点击左下角的变量视图
    在这里插入图片描述
    在这里插入图片描述

    3. 对数据进行典型相关分析

    在这里插入图片描述
    在这里插入图片描述
    按照题干要求将变量进行分组(按住ctrl,可以进行多个选中)
    在这里插入图片描述
    之后便得到如下内容:
    在这里插入图片描述

    4.导出分析结果

    在这里插入图片描述
    在这里插入图片描述
    于是我们便在桌面上得到了该文件。
    在这里插入图片描述

    6.修改原文件中表格的名称

    1. 下面是刚打开的原文件表格名称
      在这里插入图片描述
    2. 将文件中的表格进行重新命名,以免在后续的操作造成干扰。
      • 将所有的集合1修改成生理指标,集合2修改成训练指标。
      • 修改表格名称:典型相关性 >>> 典型相关系数
      • 修改表格内容:相关性 >>> 相关系数;显著性 >>> p值
        在这里插入图片描述
        在这里插入图片描述
        在这里插入图片描述
        在这里插入图片描述
        注:以上图片,便是我们在建模中经常使用的表格。

    五、对结果进行分析

    1.分析典型相关系数表

    在这里插入图片描述

    • 该表格的最后一列代表着检验统计量所对应的p值我们需要通过它确定典型相关系数的个数。
    • 我们知道置信水平有三个:90%、95%、99%,其对应的显著性水平分别为 0.1、0.05、0.01.
    • 观察第一行的p值,我们发现 0.05 < 0.064 < 0.1. 因此,我们知道在95%的置信水平下,生理指标与训练指标之间不存在相关性;而在90%的置信水平下,生理指标与训练指标之间存在相关性,且第一对典型变量相关性显著
    • 我们接着观察后面两个p值:0.949和0.775。说明第二对和第三对典型变量相关性不显著。
    • 由此我们可以确定典型相关系数的个数为1,即第一对典型变量的相关系数。

    2. 分析标准化典型相关系数

    • 在该分析中,我们需要写出标准化的典型变量,其个数要根据上一个分析结果所得到的典型相关系数的个数来确定。

    • 在上一个分析结果中我们知道,我们知道我们只需要第一对典型变量的相关系数,因此我们可以将第二、三对的典型变量的相关系数删除。
      在这里插入图片描述
      由此,可得到的标准化的第一对典型变量:
      在这里插入图片描述
      其中, Zi(1)和Zj(2)分别为原始变量Xi和Yj标准化后的结果。

    • 典型变量每个分量前面的系数代表着重要程度,可结合典型相关系数进行分析。

    • 结论

      • 在生理指标中,由于X2(腰围)的绝对值最大,反映生理指标的典型变量主要由腰围决定;
      • 在训练指标中,由于Y2(起坐次数)的绝对值最大,说明训练指标的典型变量主要由起坐次数所决定。
      • 同时,由于两个典型变量中腰围和起坐次数的系数是异号的(腰围为负,起坐次数为正),反映腰围和起坐次数的负相关,即腰围越小则起坐次数越多。这和客观事实是相符的。

    3. 分析典型载荷

    说明:为了节省篇幅,在这里笔者只分析生理指标的典型载荷,读者可以模仿分析训练指标的典型载荷。

    1. 分析典型载荷的目的:进行典型载荷分析有助于更好解释分析已提取的p对典型变量所谓的典型载荷分析是指原始变量与典型变量之间相关性分析
      在这里插入图片描述
    2. 分析结果
      以上结果说明生理指标的第一典型变量与体重的相关系数为-0.621,与腰围的相关系数为-0.925,与脉搏的相关系数为0.333. 从另一方面说明生理指标的第一对典型变量与体重、腰围负相关,而与脉搏正相关。其中与腰围的相关性最强生理指标的第一对典型变量主要反映了体型的胖瘦

    4. 分析已解释的方差比例

    1. 分析目的
      在进行样本典型相关分析时,我们也想了解每组变量提取出的典型变量所能解释的该组样本总方差的比例,从而定量测度典型变量所包含的原始信息量的大小
      在这里插入图片描述
    2. 数据说明(从左到右)
      1. 生理指标被自身的典型变量解释的方差比例;
      2. 生理指标被训练指标的典型变量解释的方差比例;
      3. 训练指标被自身的典型变量解释的方差比例;
      4. 训练指标被生理指标的典型变量解释的方差比例。
    3. 分析结果
    • 生理指标样本方差由自身3个典型变量解释的方差比例分别为:
      • 第一典型变量解释的方差比例:0.451;
      • 第二典型变量解释的方差比例:0.246,
      • 第三典型变量解释的方差比例:0.302;
    • 训练指标样本方差由自身3个典型变量解释的方差比例分别为:
      • 第一典型变量解释的方差比例:0.408;
      • 第二典型变量解释的方差比例:0.434;
      • 第三典型变量解释的方差比例:0.157;

    六、资料链接

    1. 资料内容:health.xlsx
      链接:https://pan.baidu.com/s/1r3JujIEG3PCfc-K5WskAag
      提取码:3exf
    展开全文
  • 典型相关分析 CCA

    千次阅读 2020-12-23 01:21:10
    CCA 于是引入了典型相关分析 (Canonical Correlation Analysis), 用于探索多变量之间的关联关系. 于是这个问题, 就可以初步这样来做. 更正一波,写的有点不对, 不是分别降低到一维度. 而是分别降维后, x 和 y 能进行...

    最近有小伙伴在问我一个数据分析的问题, 做毕设, 实证分析. 不知道改如何处理数据.

    看了下设计的量表大致是这样的, 都是 5级的里克特量表, 大致分为两波, X, Y. 小伙伴认为就只有两个变量, 这是从商业理论上来认识的, 但从数据的角度, 却不是的.

    X: 一共有22个问题, 也就是22个字段; 里面又是有认为分组的, 三两个字段, 又被认定为一个别名.

    Y: 一共有13个问题, 也就是13个字段; 里面有是人为分组, 三两字段啥的, 分为 4组, 分别有别名.

    然后不知道该如何分析?

    问题

    探寻 X 与 Y 的相关关系(线性相关)

    其实探讨的时候, 挺不易的, 就很难知道她到底想要分析什么, 需求是什么, 还以为要做什么回归分析, 什么相关分析, 什么统计描述或其他的, 总之, 沟通过程非常漫长. 最后我放弃了, 还是单纯从这个数据级来分析.

    本质上, 其实宏观来看, 就是 X 和 Y 的相关性如何嘛, 以及如何影响的. 那这不是求一波, 相关系数嘛. 但这里, X, Y 是多个字段, 是多对多 的关系, 就求不来了. 因此需要引进新的方法.

    CCA

    于是引入了典型相关分析 (Canonical Correlation Analysis), 用于探索多变量之间的关联关系.

    于是这个问题, 就可以初步这样来做.

    更正一波,写的有点不对, 不是分别降低到一维度. 而是分别降维后, x 和 y 能进行 配对. 这里 y 有13个嘛, x 有22个, 假设根本不对 y 进行降维, 那最多也只能匹配到 13对. 约束条件就是相关系数最大呀. 这块的数学公式就暂时不写了, 跟 PCA , 因子分析的逻辑是类似的.

    发现了一个神器, 在线SPSS, 叫做 SPSSAU, 付费的, 但功能强大, UI 很有感觉, 重点是完全实现 傻瓜式操作. 虽然我已经不再做这块了, 但还是很怀念 SPSS, 比较是我数据分析之路的启蒙软件. 至少是真正用来做数据分析, 做市场研究的.

    简单, 托拉拽, 一键输出报告, 包含 假设检验. 探寻数据的应用意义, 而不用太多关注底层的数学公式. 虽然数学公式会更加帮助理解数据集, 这是后话. 我觉得这才是数据分析的意义:

    描述性统计分析

    关联性统计分析

    探索性建模分析

    这种基于统计理论的分析框架 + 商业理论, 已早已熟练于心. 虽然现在的不用这类 傻瓜工具了, 现在自己搞编程, 但我感觉企业中的数据分析, 至少我接触的反而更加低级.

    写 sql 查询数据 或 手动下载数据

    筛选字段, 合并表格

    计算业务指标, 几遍的加减乘除, 什么同比环比

    大量的分组聚合, 生成报表, 看板

    真的是, 从技术层面, 毫无难度. 我很多时间都是干这些活, 相比数据分析,我认为的, 我感觉还真不如几年前用 SPSS 的时光. 起码是真的再利用数据的价值来进行市场研究, 市场分析.

    然后会最终得到这样类似的结果 , 和一些假设检验, 因子载荷等的术语, 都蛮简单的. (我没跑, 数据暂不能公开, 找了一张网上的示意图)

    这样 CCP 就完成了, 多自变量 和 多因变量的关联分析了.

    Next - 回归

    继续要探寻, X 和部分 y 的关系. 我的思路, 都既然做相关分析了, 那很自然再拓展到回归分析呀.

    合并 y 为 1 列

    回归分析的 y 是一个字段, 因此, 可以将 量表中的 小 y 组进行, 合并为一列. 这里, 可以加权 或者 直接平均, 自己能解释清楚就行.

    主成分 + 多元回归

    有一个 y, 有很多的 x1, x2, x2... 相关分析, 就是要判断, 这些 x1, x2..与 y 是都是分别有线性相关性的(相关系数高); 而 x1, 与 x2, x3.. 之间呢, 彼此相关系数 要低

    第二步就是要降维. 为啥必须要降维度呢, 就是怕 X 矩阵, 存在共线, 然后就不能 求 逆了呀.

    PCA降维

    至于如何降维, 我感觉我自己都说烂了. 也搞好几年了, 就是让特征重新进行线性组合 (改变数据了哦) 为几个较少得到特征, 然后尽可能保留原来更多的信息 (协方差的范数尽可能大)

    求解模型参数

    方法1 是一步求解, 就用上面的共线图中的矩阵运算即可.

    方法2 是用梯度下降法来做, 我用的多, 但这个小伙伴, 没有学过编程, 就还是给推荐, 撒花是点点点算了.

    小结

    多自变量 和 多因变量 分析可以考虑 典型相关分析 CCA 这种 "降维配对" 的技术

    回归分析必须 3步: 先做相关性分析; 再做降维处理; 再训练模型参数;

    PCA 我感觉非常厉害的. 还有一在线版spssau 的工具体验感很好, 市场研究方面的数据处理, 很适合.

    展开全文
  • 典型相关分析.sas

    2020-09-02 15:35:10
    数学建模分析——SAS程序——典型相关分析问题模板,这里以五年前后各指标相应的数据进行对比,分析得出了相关的结论,用以之后的进一步分析。
  • 联合标签预测与判别投影学习的半监督典型相关分析.pdf
  • 针对尺度不变特征变换(SIFT)描述子仅利用特征点的局部邻域灰度信息而对图像内具有相似灰度分布的特征点易产生误匹配的问题,提出一种基于典型相关分析(CCA)的SIFT误匹配剔除方法。该方法首先利用SIFT算法进行匹配,...
  • 典型相关分析程序

    2015-04-02 16:20:30
    典型相关分析程序!在MATLAB里运行!
  • 人口统计信息和行为问题清单的典型相关分析 人口学信息和行为问题检查表的典型相关分析 JOHN TOULIATOS 和 BYRON W. LINDHOLJI Aubitrn 大学 本研究的目的是对人口信息进行典型相关分析和行为问题检查表 (BPCL),...
  • 典型相关分析(canonical correlation analysis,CCA)

    千次阅读 多人点赞 2020-05-07 10:44:57
    一、什么是典型相关分析 通常情况下,为了研究两组变量 {X=(x1,x2,⋯ ,xp)Y=(y1,y2,⋯ ,yq) \left\{ \begin{array}{l} X=\left( x_1,x_2,\cdots ,x_p \right)\\ \\ Y=\left( y_1,y_2,\cdots ,y_q \right)\\ \...
  • 典型相关分析CCA,matplotlib可视化,供学习可用。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 561,017
精华内容 224,406
关键字:

典型相关