1. 程式人生 > >核典型關聯分析(KCCA)演算法原理

核典型關聯分析(KCCA)演算法原理

Kernel Canonical Correlation Analysis

1、CCA的不足

普通的線性CCA只能探索兩組隨機變數之間的線性關係,而在實際情況中,變數間的關係往往是非線性的,於是非線性的CCA出現了,KCCA就是一種常用的非線性CCA演算法。KCCA是把核函式的思想引入CCA中,思想是把低維的資料對映到高維的特徵空間(核函式空間),並通過核函式方便地在核函式空間進行關聯分析。

2、演算法實現

首先引入一個把資料對映到高維特徵空間的的對映(從m維到n維的對映):

ϕ:x=(x1,...,xm)ϕ(x)=(ϕ1(x),...,ϕn(x)),(m<n)

核Kernel是指一個函式K,對所有的x

,z有:

K(x,z)=ϕ(x),ϕ(z)

設兩組向量的樣本矩陣為:
Xp×N=(X1,...,XN),Yq×N=(Y1,...,YN)

ϕX,ϕY分別表示作用於X,Y上的變換,即:
ϕX(X)=(ϕX(X1),...,ϕX(XN)),ϕY(Y)=(ϕY(Y1),...,ϕY(YN))

變換後的ϕX(X)ϕY(Y)均為n x N維矩陣。之後和線性CCA類似,我們希望找到兩個n維向量wX,wY,使得u=wTXϕX(X)v=wTYϕY(Y)相關係數ρ最大。

XY上定義核矩陣KXKY(N×N)如下:
KX(i,j)=KX(Xi,Xj)=ϕX(Xi)TϕX(Xj)

,KY(i,j)=KY(Yi,Yj)=ϕY(Yi)TϕY(Yj)

該問題可以轉化為一個優化問題:
L(wX,wY,λX,λY)=αTMαλX2αTLαλY2βT

相關推薦

典型關聯分析KCCA演算法原理

Kernel Canonical Correlation Analysis 1、CCA的不足 普通的線性CCA只能探索兩組隨機變數之間的線性關係,而在實際情況中,變數間的關係往往是非線性的,於是非線性的CCA出現了,KCCA就是一種常用的非線性CCA演算

主成分分析pca演算法原理

影象處理中對很多副圖片提取特徵時,由於特徵的維數過高而影響程式的效率,所以用到pca進行特徵降維。 那怎樣才能降低維數呢?它又用到了什麼數學方法呢? 1.協方差矩陣         假設有一個樣本集X,裡面有N個樣本,每個樣本的維度為d。即: 將這些樣本組織成樣本矩陣形

深入學習主成分分析PCA演算法原理及其Python實現

一:引入問題   首先看一個表格,下表是某些學生的語文,數學,物理,化學成績統計:   首先,假設這些科目成績不相關,也就是說某一科目考多少分與其他科目沒有關係,那麼如何判斷三個學生的優秀程度呢?首先我們一眼就能看出來,數學,物理,化學這三門課的成績構成了這組資料的主成分(很顯然,數學作為第一主成分,

關聯分析--Apriori演算法

Apriori演算法 其名字是因為演算法基於先驗知識(prior knowledge).根據前一次找到的頻繁項來生成本次的頻繁項。Apriori是關聯分析中核心的演算法。 Apriori演算法的特點 只能處理分類變數,無法處理數值型變數; 資料儲存可以是交易資料格式(事務表),或者是

關聯分析--FP-Growth演算法

轉自:https://www.cnblogs.com/datahunter/p/3903413.html 關聯分析又稱關聯挖掘,就是在交易資料、關係資料或其他資訊載體中,查詢存在於專案集合或物件集合之間的頻繁模式、關聯、相關性或因果結構。關聯分析的一個典型例子是購物籃分析。通過發現顧客放入購物籃

典型關聯分析Canonical Correlation Analysis

1. 問題       線上性迴歸中,我們使用直線來擬合樣本點,尋找n維特徵向量X和輸出結果(或者叫做label)Y之間的線性關係。其中,。然而當Y也是多維時,或者說Y也有多個特徵時,我們希望分析出X和Y的關係。       當然我們仍然可以使用迴歸的方法來分析,做法如下:

Apriori演算法進行關聯分析2

頻繁項集及關聯規則的應用中,購物、搜尋引擎中的查詢詞等,下面看一個美國國會議員投票的例子。 1. 示例:發現國會投票中的模式 這個例子雖然在資料的獲取過程中有點複雜,但我覺得還是很有必要分析下整個過程。 1. 收集資料:構建美國國會投票記錄的事務資料集

使用Apriori進行關聯分析

不一定 再計算 add 在一起 num create images loaddata scan   大型超市有海量交易數據,我們可以通過聚類算法尋找購買相似物品的人群,從而為特定人群提供更具個性化的服務。但是對於超市來講,更有價值的是如何找出商品的隱藏關聯,從而打包促銷,以

使用Apriori進行關聯分析

lis 過程 pre alt lock 不一定 根據 返回 req   書接上文(使用Apriori進行關聯分析(一)),介紹如何挖掘關聯規則。 發現關聯規則   我們的目標是通過頻繁項集挖掘到隱藏的關聯規則,換句話說就是關聯規則。   所謂關聯規則,指通過某個元素集推導出

全基因組關聯分析GWAS掃不出訊號怎麼辦文獻解讀

假如你的GWAS結果出現如下圖的時候,怎麼辦呢?GWAS沒有如預期般的掃出完美的顯著訊號,也就沒法繼續發揮後續研究的套路了。 最近,nature發表了一篇文獻“Common genetic variants contribute to risk of rare severe neurodevelopme

數值分析 演算法和誤差

寫在前面:最近看的比較多的主要都關於數學方面主要是數學分析,就想寫部落格記錄一下,給自己做個筆記。並想把數學相關方法與智慧計算相關方向一定結合。很多教材基本都使用的Matlab進行程式設計、我這邊主要用C++/java來做(主要是不會Matlab,微笑)也會對相關類進行封裝。

用主成分分析PCA演算法做人臉識別

詳細資料可以參考https://www.cnblogs.com/xingshansi/p/6445625.html一、概念主成分分析(PCA)是一種統計方法。通過正交變換將一組可能存在相關性的變數轉化為一組線性不相關的變數,轉換後的這組變數叫主成分。二、思想PCA的思想是將n

主成分分析pca演算法的實現步驟及程式碼

%%%%%%%%%%%%開啟一個30行8列資料的txt檔案%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% %第一步:輸入樣本矩陣%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% filename='src.txt'; fid=fopen(filename,'

對KLT,主成分分析PCA演算法的理解

1 #include "pcaface.h" 2 #include "ui_pcaface.h" 3 #include <QString> 4 #include <iostream> 5 #include <stdio.h> 6 7 usi

Weka演算法Classifier-tree-J48原始碼分析演算法和基本資料結構

大概一年沒打理部落格了,重新拿起筆不知道該從哪裡寫起,想來想去就從最近手頭用的Weka寫起吧。 Weka為一個Java基礎上的機器學習工具,上手簡單,並提供圖形化介面,提供如分類、聚類、頻繁項挖掘等工具,本篇文章主要寫一下分類器演算法中的J48演算法及其實現。 一、演算

用於降維的線性判別分析LDA演算法

LDA降維演算法分為簡單兩類情況和多類通用情況只有兩類樣本的簡單情況:輸入:兩類樣本特徵目的:將兩類樣本的特徵投影至同類距離小,異類距離大的低維空間上,使得資料量減少的同時不損失分類資訊步驟:1,計算兩類樣本的均值u0和u1,協方差矩陣sigma0,sigma12,假設投影空

R語言--關聯分析問卷調查

在R中用最經典的Apriori關聯演算法對問卷調查結果進行簡單的關聯分析,包括對規則的篩選,輸出以及視覺化。 主流程 主流程包括4個部分,資料介紹,關聯分析主流程程式碼,主流程子程式碼,視覺化。 資料介紹 資料包含360份問卷對14個問題的答案,

HEVC位元速率控制演算法研究與HM相應程式碼分析——演算法及程式碼分析

在前兩篇文章中,首先介紹了HEVC標準和編碼流程,然後介紹了在HEVC中採用的全新的R-λ模型,本文將基於前面的內容和相應程式碼對位元速率控制演算法進行詳細的分析。 下面基於JCTVC-K0103提案詳細介紹一下HEVC中基於R-λ模型的位元速率控制方法。同時基於HM-10

主成分分析PCA演算法以及PCA在人臉識別上的應用及程式碼

        PCA(Principal Component Analysis)是一種常用的資料分析方法,PCA通過線性變換將原始資料變換為一組各維度線性無關的表示,可用於提取資料的主要特徵分量,可用於高維資料的降維。        一般情況下,在資料探勘和機器學習中,資

Python機器學習筆記:線性判別分析LDA演算法

預備知識   首先學習兩個概念:   線性分類:指存在一個線性方程可以把待分類資料分開,或者說用一個超平面能將正負樣本區分開,表示式為y=wx,這裡先說一下超平面,對於二維的情況,可以理解為一條直線,如一次函式。它的分類演算法是基於一個線性的預測函式,決策的邊界是平的,比如直線和平面。一般的方法有感知器,最小