邢笑雪,姜 利
(長春大學 電子信息工程學院,長春 130022)
基于PCA與KPCA的基因數據的特征簡約
邢笑雪,姜 利
(長春大學 電子信息工程學院,長春 130022)
采用支持向量機方法(SVM)對上千維的基因表達數據分析時,算法的運行時間比較長。為了解決這種情況,本文采用了基于主成分分析的支持向量機(PCA-SVM)和基于核主成分分析的支持向量機 (KPCA-SVM)兩種算法對數據進行降維和分類,既可以整合基因數據的特征信息又可以縮短計算時間。本文比較了累計貢獻率不同時兩種算法的分類準確率,實驗結果表明,PCA-SVM分類準確率與累計貢獻率二者之間沒有明確規律,KPCA-SVM分類準確率隨累計貢獻率的降低存在降低或者保持不變的趨勢。
特征簡約;PCA-SVM;KPCA-SVM;累計貢獻率
DNA微陣列技術的快速發展和后基因組時代的到來產生了海量復雜的基因表達數據集[1-2]。如何快速分析和處理海量數據,并從中挖掘到有價值的生物學信息已成為當下亟需解決的問題[3]。基因表達數據的樣本數較少,但是特征量卻有成千上萬甚至更多,而且特征量之間存在相互關系,所以在對基因數據進行處理分析時必須進行數據的降維。數據降維即為所謂的特征簡約,也叫特征選擇。通過數據降維可以減小數據之間的冗余,提取有用的特征信息,降低數據處理的難度,得到更好的分類準確率。
設原始樣本的集合為{xi|xi=(xi1,xi2,…,xip)T,i=1,2,…,n},n 是樣本個數,p 是樣本特征個數。主成分分析[4]PCA(Principal Component Analysis)的原理是對原始的 p 個特征(x1j,x2j,…,xnj)T,j=1,2,…,p 去構造 p 個互相獨立的新特征(y1j,y2j,…,ynj)T,j=1,2,…,p。
算法步驟如下:
(2)計算協方差矩陣S的特征值λ1≥λ2≥…≥λp和特征向量u1,u2,…,up。將特征值和特征向量從大到小排列,則新的 p個特征向量為y1,y2,…,yp。新特征向量y1,y2,…,yp稱為樣本的第1,2,…p個主成分。

核主成分分析[4-5]KPCA(Kernel Principal Component Analysis)是首先將輸入的樣本數據通過非線性變換φ映射至一個高維的特征空間F,然后對高維空間中的數據進行主成分分析。


算法步驟如下:
(1)計算矩陣 κ(i,j)=K(xi,xj),i,j=1,2,…,n。
(2)計算矩陣 κ 的特征值 λ1,λ2,…,λm,和特征向量α1,α2,…,αm,將特征值和特征向量從大到小排列λ1≥λ2≥…≥λm,α1,α2,…,αm。
(3)對m個特征向量歸一化,使得‖αi‖2=1/λi。
(4)計算樣本x在特征向量上的m個投影y(k)。

支持向量機[6]SVM(Support Vector Machine)是對給定的樣本集 Z={(xi,yi)|xi∈RN,yi∈{+1,-1},i=1,2,…,m}尋找能夠將xi中樣本正確分類,并且能夠使分類間隔最大的超平面。其中,xi是n維實空間中的向量,yi是xi所屬類的標識。求解最優超平面即為求解公式(3)的二次優化問題:

其中,wTx+w0=0為要求解的超平面,w是超平面的法線方向,w0是超平面的偏移量,C是錯誤懲罰因子,ξi為松弛變量。為了能夠準確分類,采用映射Φ:X→H將X從輸入空間X映射至一個高維的特征空間H。為簡化計算,選擇一個核函數κ(xi,xj)=[φ(xi)φ(xj)]用于特征空間中點積的運算。上述問題的拉格朗日對偶形式為:

判別函數為:

本文選用PCA-SVM和KPCA-SVM兩種算法對Armstrong-2002-v1數據集[7]進行分析。Armstrong-2002-v1數據集包括72個樣本12582種基因。其中包括急性淋巴細胞(ALL)樣本24個,急性髓細胞白血病(AML)樣本48個。對數據進行預處理(去噪、缺失值丟棄)后剩余1081條基因。該數據集在前20個特征下基因表達可視化圖譜如圖1所示。
本文選用基于RBF徑向基核函數的支持向量機,對于懲罰因子和核參數的選擇,采用的方法是基于交叉驗證的網格最優搜索方法[8]。訓練樣本集與測試樣本集的選擇如表1所示,圖2是Armstrong-2002-v1數據集的PCA和KPCA的累計方差貢獻圖。表2是基于網格搜索的Armstrong-2002-v1數據集的CSVM參數設置、運行時間和準確率。

圖1 Armstrong-2002-v1數據集20維基因表達可視化圖譜

表1 訓練樣本集和測試樣本集的選擇

圖2 Armstrong-2002-v1數據集的PCA與KPCA的累計方差貢獻率

表2 基于網格搜索的C-SVM參數設置
從表2可以看出:
(1)基于主成分分析的算法中分類準確率與累計方差貢獻率二者之間并沒有直接關系。基于核主成分分析的算法中不同的累計方差貢獻率卻可以取得相同的分類準確率。
(2)累計方差貢獻率相同時,由于核主成分分析采用的非線性變換,所以在對數據進行特征簡約時可以取得更低的維數和更短的搜索時間。
本文采用了基于網格搜索的PCA-SVM和KPCA-SVM兩種算法對Armstrong-2002-v1數據集進行了分析,實驗結果表明,兩種算法均可以實現數據的特征簡約,在計算時間方面均可以得到較好的效果。在分類準確率方面,當累計貢獻率變化時PCA-SVM算法的分類準確率沒有明顯且明確的規律,但KPCA-SVM算法分類準確率隨累計貢獻率的降低存在降低或者保持不變的趨勢。
[1]王勇.聚類方法在生物數據中的研究與應用-基因表達數據聚類方法研究[D].江蘇:江南大學,2008.
[2]Domany E.Cluster analysis of gene expression data[J].Journal of Statistical Physics,2003,110(3/4/5/6):1117-1139.
[3]Cios K J,Mamitsuka H,Nagashima T,et al.Computational intelligence in solving bioinformatics problems[J].Artificial Intelligence in Medicine,2005,35(1/2):1-8.
[4]張玉.支持向量機在基因表達數據分析中的應用研究[D].長春:吉林大學,2012.
[5]吳曉婷,閆德勤.數據降維方法分析與研究[J].計算機工程及應用,2009,26(8):2832-2835.
[6]丁世飛,齊丙娟,譚紅艷.支持向量機理論與算法綜述[J].電子科技大學學報,2011,40(1):2-8.
[7]趙慧,劉希玉,崔海青.網格聚類算法[J].計算機技術與發展,2010,20(9):83-86.
Characteristics Simplicity of Gene Batum Based on PCA and KPCA
XING Xiao-xue,JIANG Li
(College of Electronic Information Engineering,Changchun University,Changchun 130022,China)
When the support vector machine(SVM)method is applied in the analysis of gene expression datum with thousands of dimensions,the running time of the algorithm is much longer.In order to solve the problem,this paper uses PCA-based SVM algorithm and KPCA-based SVM algorithm to make dimension reduction and classification on the datum,which can not only integrate the characteristic information of gene datum,but also shorten the calculation time.It compares the classification accuracy rate of the two algorithms as the accumulative contribution rate is different,the experimental results show that there is not a fixed law between PCA-SVM classification accuracy rate and accumulative contribution rate,but KPCA-SVM classification accuracy rate will decline or keep unchangeable when cumulative contribution rate declines.
characteristics simplicity;PCA-SVM;KPCA-SVM;cumulative contribution rate
TP391.4
A
1009-3907(2013)12-1525-03
2013-09-26
邢笑雪(1981-),女,山西霍州人,講師,博士研究生,主要從事數字圖像處理方面研究。
book=23,ebook=315
責任編輯:
吳旭云