典型相關分析(CCA)附算法應用及程序_第1頁
典型相關分析(CCA)附算法應用及程序_第2頁
典型相關分析(CCA)附算法應用及程序_第3頁
典型相關分析(CCA)附算法應用及程序_第4頁
典型相關分析(CCA)附算法應用及程序_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、典型相關分析摘要利用典型相關分析的思想, 提出了解決了當兩組特征矢量構成的總體協(xié)方差矩陣奇異時, 典型投影矢量集的求解問題, 使之適合于高維小樣本的情形, 推廣了典型相關分析的適用范圍 . 首先 , 探討了將典型分析用于模式識別的理論構架, 給出了其合理的描述. 即先抽取同一模式的兩組特征矢量 , 建立描述兩組特征矢量之間相關性的判據(jù)準則函數(shù) , 然后依此準則求取兩組典型投影矢量集, 通過給定的特征融合策略抽取組合的典型相關特征并用于分類. 最后 , 從理論上進一步剖析了該方法之所以能有效地用于識別的內在本質.該方法巧妙地將兩組特征矢量之間的相關性特征作為有效判別信息, 既達到了信息融合之目的

2、 , 又消除了特征之間的信息冗余, 為兩組特征融合用于分類識別提出了新的思路.一、典型相關分析發(fā)展的背景隨著計算機技術的發(fā)展,信息融合技術已成為一種新興的數(shù)據(jù)處 理技術,并已取得了可喜的進展.信息融合的3個層次像素級、特征級、 決策級。特征融合,對同一模式所抽取的不同特征矢量總是反映模式的不 同特征的有效鑒別信息,抽取同一模式的兩組特征矢量,這在一定程 度上消除了由于主客觀因素帶來的冗余信息,對分類識別無疑具有重要的意義典型相關分析(CanoniealComponentAnalysis:CCA)是一種處理 兩組隨機變量之間相互關系的統(tǒng)計方法。它的意義在于 :用典型相關 變量之間的關系來刻畫原來

3、兩組變量之間的關系 !實現(xiàn)數(shù)據(jù)的融合和 降維!降低計算復雜程度。二、典型相關分析的基本思像CCA勺目的是尋找兩組投影方向,使兩個隨機向量投影后的相關 性達到最大。具體講,設有兩組零均值隨機變量x=(c1,c2,cpT和 y =(di,d2,.dqTccAt先要找到一又t投影方向口 1和p 1 ,使得投影vi = PTy和ui =aTx之間具有最大的相關性,u 1和V1為第一對典型變量;同 理,尋找第二對投影方向62和匡,得到第二對典型變量U2和v2 , 使其與第一對典型變量不相關,且u 2和V 2之間又具有最大相關性。 這樣下去,直到x與y的典型變量提取完畢為止。從而 x與y之間的 相關性分析

4、,只需通過分析少數(shù)幾對典型變量的關系即可達到目的。三、CCA法詳解*+口2工工+沏加TR尸仇州+慶y?+十%卻Je «lxr 叫EpT孫%ft1 £ I xy 1 r£" xr 1 a,RTe號JRSwB考慮到:的極值只與口和P的方向有關,而與它們的大小無關,為了得到唯一解不失一般性,加入限制條件:PsSyy問題變?yōu)樵诩s束條件式下,求使準則函數(shù)式取最大值的典型投影 矢量對和0求解上述優(yōu)化問題,可定義拉格朗日函數(shù):(5)1=/|1-/(/59-1)一,(35點一1)a %S»,B =0(6)分別對"和p求導數(shù),并令為零,得到:也不二(8

5、)BS產(chǎn)翼=入2曠£號B =入2,再對上式兩端分別左乘 一和PT得:1 =九2記為:入 I = (P§w/)T =(10)(11)(12)對H進行奇異值分解:分別將二xT2X征分量:it <7-ib« 一 *3 XXs入冏得=11 "2 xx1 "2 yyUiVia:x 與 PTx ,(<x;x. a1.v. , air )T = (Bfy.時y,黑門丁xF*Wx嗎(13)HHTuiHTHvi2Ui=2ViPTx ,已段看做是變換后的特(叫,區(qū)2,,0td)TX =收工出,西.3n)Ty =印:y.Wx0投影后的組合特征用于分類,其

6、中變換矩陣為:(14)(15)(16)匕 0I I 0%J四、典型相關分析應用實例欲研究兒童形態(tài)與肺通氣功能的關系, 測得某小學40名812歲 健康兒童(身高X1,體重X2,胸圍X3)與肺通氣功能(肺活量 Y1, 靜息通氣Y2和每分鐘最大通氣量 Y3),分析兒童形態(tài)和肺通氣指標 的相關性,確定典型變量的對數(shù)。X1 =140.6,135.7,140.2,152.1,132.2,147.1,147.5,130.6,154.9,142.4,136.5,162,148.9,136.3,159.5,165.9,134.5,152.5,138.2,144.2;x2 =43.7,39.5,48,52,36,

7、45,47,38,48,42,38,58,42,33,49,55,41,53,35.5,42;x3 =77,63,75,88,62,78,76,61,87,74,69,95,80,68,87,93,61,83,66,76;y1 =2.6,2,2.6,2.8,2.1,2.8,3.1,2,2.9,2.33,1.98,3.29,2.7,2.4,2.98,3.1,2.25,2.96, 2.13,2.52;y2 =7,7,6.1,10.1,7.4,9.25,8.78,5.31,10.6,11.1,7.77,3.35,10.1,7.8,11.77,13.14, 8.75,6.6,6.62,5.59;y3

8、=108,91,101,112,97,92,95,77,80,76,49,58,82,76,88,110,75,71,105,82;(1)仿真結果分析結:(實驗平臺:Matlab2014 ,程序見附錄)R1=0.9282R2=0.5302R3=0.0081R1=0.9282R2=0.5302R3=0.0081(2) 結果分析:三幅分別對應不同特征值所對應的兒童形態(tài)與肺通氣功能的關系,顯然, 第一幅圖的線性關系最好, 即兒童形態(tài)與肺通氣功能的相關性最大,變化趨勢一致,進行特征融合以達到降維的目的。六、心得體會通過本次大作業(yè), 對小樣的典型相關分析查閱了很多文獻, 對文獻的閱讀的辨別能力有了很大提

9、升, 抓住文獻中的重點要點, 進行深一步的理解;其次在程序的編寫中,CCA勺編寫從原理到算法解析再到算法的邏輯結構,一步步的將CCA勺思想理解透徹并體現(xiàn)在MATLAB勺程序中,在程序編寫的過程中也遇到了很多挫折和編譯失敗的困惑,但是通過網(wǎng)上查閱和向教員請教以及同學的詢問, 一一得到解決, 最終完成了本次大作業(yè)的撰寫, 其中也收獲到了很多東西, 學到了很多,希望以后能扎實學習,更進一步。附錄:clear allclcx1=140.6,135.7,140.2,152.1,132.2,147.1,147.5,130.6,154.9,142.4,136.5 ,162,148.9,136.3,159.5

10、,165.9,134.5,152.5,138.2,144.2;x2=43.7,39.5,48,52,36,45,47,38,48,42,38,58,42,33,49,55,41,53,35.5,42 ;x3=77,63,75,88,62,78,76,61,87,74,69,95,80,68,87,93,61,83,66,76;y1=2.6,2,2.6,2.8,2.1,2.8,3.1,2,2.9,2.33,1.98,3.29,2.7,2.4,2.98,3.1,2 .25,2.96,2.13,2.52;y2=7,7,6.1,10.1,7.4,9.25,8.78,5.31,10.6,11.1,7.7

11、7,3.35,10.1,7.8,11.7 7,13.14,8.75,6.6,6.62,5.59;y3=108,91,101,112,97,92,95,77,80,76,49,58,82,76,88,110,75,71,105,82 ;mx1=sum(x1)/20;mx2=sum(x2)/20;mx3=sum(x3)/20;my1=sum(y1)/20;my2=sum(y2)/20;my3=sum(y3)/20;d=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1;x1=x1-mx1.*d;x2=x2-mx2.*d;x3=x3-mx3.*d;y1=y1-my1.*d

12、;y2=y2-my2.*d;y3=y3-my3.*d;%b=imread('1.jpg');%a=imread('2.jpg');%c=rgb2gray(a);%d=rgb2gray(b);%c=double(imresize(c,128,128);%d=double(imresize(d,128,128);%zushu = size(X,1);A=x1',x2',x3'B=y1',y2',y3'Wx, Wy, r,n,m = CCA_algorithm(A,B);%CCA_zq.(Z,zushu,2)Z=WxY=

13、WyU1=Wx(:,1);U2=Wx(:,2);U3=Wx(:,3);V1=Wy(:,1);V2=Wy(:,2);V3=Wy(:,3);figure(1);plot(U1,V1, '*' );figure(2);plot(U2,V2,'r*');figure(3);plot(U2,V2,'gA')%CCA函數(shù)調用:function U,V,nmuta,nmutatwo,U_replace,V_replace=CCA_algorithm(X,Y)%計算典型相關分析的程序n=size(X,1);p=size(X,2);q=size(Y,2);X=X-

14、repmat(mean(X,1),n,1);Y=Y-repmat(mean(Y,1),n,1);Z=X Y;Covz=cov(Z);S11=Covz(1:p,1:p);S22=Covz(p+1:end,p+1:end);S12=Covz(1:p,p+1:end);%S21=Covz(p+1:end,1:p);S21=S12'k=1;Ip=eye(p);Iq=eye(q);if rank(S11)=pS11=S11+k*Ip;endif rank(S22)=qS22=S22+k*Iq;end%避免出現(xiàn)復數(shù),不使用S11A(-1/2)K=S11A(-1/2)*S12*S22A(-1/2);

15、d=rank(K);U1,S1,V1=svd(K,0);U2=U1(:,1:d);V2=V1(:,1:d);A=S11A(-1/2)*U2;B=S22A(-1/2)*V2;%A=S11A(1/2)U2;%B=S22A(1/2)V2;U=X*A;V=Y*B;nmuta=diag(S1);nmuta=nmuta(1:d);%使用下面的效果是一樣的M1=inv(S11)*S12*inv(S22)*S21;M2=inv(S22)*S21*inv(S11)*S12;V1,D1=eig(M1);V2,D2=eig(M2);%歸一化gu1=V1'*S11*V1;gu1=1./sqrt(diag(gu1);gu1=repmat(gu1',p,1);a=V1.*gu1;gu2=V2'*S22*V2;gu2=1./sqrt(diag(gu2);gu2=repmat(gu2',q,1);b=V2.*gu2;d1=s

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論