張 婧,劉 倩
(1.蘭州石化職業(yè)技術大學,蘭州 730070;2.國家電網(wǎng)蘭州供電公司,蘭州 730050)
主成分分析(Principal component analysis,PCA)是特征提取和降維的一種方法,其目的是將一系列具有相關關系的多個指標或影響因子轉(zhuǎn)化為一組新的相互獨立的綜合指標,在轉(zhuǎn)化的同時盡可能多地保留原始變量的信息,以實現(xiàn)對多變量的降維,從而降低問題的復雜度[1]。關于主成分閾值選擇的標準,文獻[2]明確給出了選擇依據(jù),即:“保留特征值大于平均特征值的主成分,對于一個相關矩陣,對應的平均特征值為1”。文獻[3]對核心主成分代表的含義進行了解釋和分析。具體地,文獻[1]選擇95%作為主成分閾值;文獻[4]選擇90%作為閾值;文獻[5]以99%作為閾值;文獻[6]同樣選擇99%作為閾值;文獻[7]中沒有說明具體閾值選擇多少,而是將維度從784維降到441維;文獻[8]分別選擇95%、97%和99%作為閾值,進行了數(shù)字圖像壓縮;而文獻[9]選擇76%的主成分,將原有11維數(shù)據(jù)降至4維;文獻[10]中對于分布魯棒的有條件風險值和風險規(guī)避的生產(chǎn)-運輸問題,提出的PCA僅使用50%的主成分,得到近似解(在1%以內(nèi)),計算時間減少了1~2個數(shù)量級。
綜合以上分析,很多應用以平均特征值作為選擇主成分的標準,但是閾值選擇低于該標準應用結(jié)果是否會降低,并沒有明確的分析。因此本文提出一種PCA閾值選擇差異性的實驗分析方法,并選擇PCA-BP神經(jīng)網(wǎng)絡對手寫體數(shù)字進行分類,研究主成分閾值與分類結(jié)果之間的變化關系。為了使結(jié)果具有可比較性,選擇來自美國國家標準與技術研究所的手寫體數(shù)據(jù)集MNIST作為樣本進行實驗。結(jié)果表明本文得出的閾值選擇差異性分析結(jié)果可以為不同應用中主成分分析閾值的選擇提供依據(jù)。
(1)主成分分析原理
主成分分析就是將原來的p個變量,通過線性組合方式生成p個包含原有變量信息的綜合變量,組合方式表示為
將上述線性組合方式用向量方式重寫為Fj=αj1x1+αj2x2+…+αjp xp,j=1,2,…,p。同時應該具有以下3個條件:
①兩者互不相關,即Cov(Fi,F(xiàn)j)=0。
②F1的Var(F1)最大,F(xiàn)2的Var(F2)次之,以此類推,F(xiàn)p的Var(Fp)最小。
因此,本文將Var(F)最大的稱為第1主成分,即F1;將Var(F)次之的稱為第2主成分,即F2;以此類推,Var(F1)最小的為第p主成分,即Fp。其中aij稱為主成分系數(shù)。
(2)主成分選擇
在主成分分析中可以獲得與原變量維度相同的p綜合變量,且對應的方差依次遞減,相應的所含原變量數(shù)據(jù)的信息也遞減。在實際應用中,如果將這p個主成分全部使用,則達不到降維的效果。而且根據(jù)方差,前面幾個主要的成分基本上包含了絕大多數(shù)原始數(shù)據(jù)信息,因此p個主成分不用全選。主成分的選擇方法是以每個主成分的累計貢獻率作為依據(jù),根據(jù)其大小選擇前k個。其中貢獻率指該主成分的方差占所有主成分方差和的比重,用貢獻率βi來表示,表達式為
貢獻率βi的大小反應了該主成分包含原變量信息的多少,其中選擇多少個主成分一般以平均特征值作為依據(jù)。
(3)主成分分析
對MNIST數(shù)據(jù)集進行主成分分析,根據(jù)單個主成分貢獻率以及累計主成分貢獻率,繪制主成分貢獻率直方圖,如圖1所示。
圖1 主成分貢獻率Fig.1 Contribution rate of principal components
為了直觀感受PCA分析降維以后與原圖的區(qū)別,這里選擇將維度下降到86維、96維、99維的數(shù)據(jù),進行反向還原處理,然后對圖像進行重構(gòu),由于樣本數(shù)量較大,選擇訓練數(shù)據(jù)的前100個樣本進行還原對比,如圖2所示。
圖2 降維后數(shù)據(jù)重構(gòu)對比Fig.2 Comparison of data reconstruction after dimensionality reduction
(1)BP神經(jīng)網(wǎng)絡
BP神經(jīng)網(wǎng)絡有輸入層、隱含層和輸出層3層構(gòu)成,典型的網(wǎng)絡結(jié)構(gòu)如圖3所示[11]。網(wǎng)絡激活函數(shù)選擇Sigmoid函數(shù),通過反向傳播輸出層誤差,調(diào)整權重值與偏置使得代價函數(shù)C=最小。
圖3 神經(jīng)網(wǎng)絡結(jié)構(gòu)Fig.3 Neural network structure
在實際使用過程中,將反向傳播算法與隨機梯度下降等算法進行結(jié)合使用,從而能計算許多訓練樣本所對應的梯度。例如給定一個大小為m的小批量數(shù)據(jù),下面對小批量數(shù)據(jù)應用梯度下降學習算法進行描述:
①輸入訓練樣本的集合。
②對每個訓練樣本x:設置對應的輸入激活ax,1,并執(zhí)行下面的步驟:
前向傳播:對每一層l=2,3,…,L,計算zx,l=wlax,l-1+bl和ax,l=σ(zx,l)。
輸出誤差δx,L:計算誤差向量δx,L=?aCx⊙σ′(zx,L)。
反向傳播誤差:對每一層l=L-1,L-2,…,2(除了輸出層和輸入層),計算δx,l=((wl+1)T·
③梯度下降:對每一個l=L-1,L-2,…,2根據(jù)更新權重和偏置。
(2)分類模型
PCA-BP神經(jīng)網(wǎng)絡分類模型如圖4所示。基于PCA神經(jīng)網(wǎng)絡的分類識別步驟為:
圖4 PCA-BP神經(jīng)網(wǎng)絡分類模型Fig.4 PCA-BP neural network classification model
①獲取數(shù)據(jù)且進行預處理并歸一化。
②進行樣本的主成分分析,對預處理后的樣本集進行主成分分析,選擇特征值大于平均特征值的m個主成分作為新的訓練和測試樣本。
③根據(jù)不同主成分,創(chuàng)建不同結(jié)構(gòu)的神經(jīng)網(wǎng)絡,進行訓練,最后進行測試。
④將第3步的測試結(jié)果與沒有主成分分析的測試結(jié)果進行比較,觀測效果是否降低,訓練效率是否提升。
應用PCA分析,將MNIST數(shù)據(jù)的784維降至10、20、30、40、41、42、43、44、45、46、47、48、49、50、58、86、153和330維,然后分別選擇隱含層神經(jīng)元個數(shù)為30和100,與原784維分類結(jié)果進行比較。由于維數(shù)過多,因此選擇部分對比結(jié)果,結(jié)果如圖5所示,其中第1行為隱含層神經(jīng)元個數(shù)為30的對比結(jié)果,第2行為隱含層神經(jīng)元個數(shù)為100的對比結(jié)果。
圖5 降維后分類結(jié)果對比Fig.5 Comparison of classification results after dimensionality reduction
通過圖5的分析可知,增加隱含層神經(jīng)元個數(shù),對于分類結(jié)果有明顯的提升。而維度從10~330分類結(jié)果明顯是從低到高再到低的一種變化規(guī)律。主成分分析在降維的同時,提高了網(wǎng)絡學習的效率,不同維度學習時間對比如圖6所示。從圖6分析可知,降維大大提高了網(wǎng)絡的學習效率,所用時間與維度的關系近似為線性。
圖6 不同維度學習時間Fig.6 Learning time in different dimensions
為了更好地說明分類準確率、主成分閾值(累計方差貢獻率)和維度之間的關系,分別對隱含層神經(jīng)元個數(shù)為30和100時,每個維度的最高分類準確率和主成分閾值進行仿真,結(jié)果如圖7所示。
圖7 不同維度分類準確率與主成分閾值對比Fig.7 Comparison of classification accuracy and principal component thresholds in different dimensions
通過仿真結(jié)果可以看出方差累計貢獻率與維度之間是正相關的。隨著維度的增加,分類準確率也隨之增加,當維度到50維以后,分類準確率明顯減小。維度最密集區(qū)也是分類準確率最高區(qū)域,對應維度是41~50維之間,對應方差累計貢獻率在79%~81%之間。58、153和330維對應方差累計貢獻率分別為85%、90%、99%。因此,依據(jù)平均特征值作為閾值,保證了原有數(shù)據(jù)信息最大程度不丟失,但不能作為應用的硬性標準。
本文提出一種主成分閾值選擇差異性的實驗分析方法,通過研究得出降維大大提高了網(wǎng)絡的學習效率,所用時間與維度的關系近似為線性。維度與累計方差貢獻率正相關。隨著維度的增加,分類準確率也隨之增加,當?shù)S度增加到50維以后,分類準確率明顯減小。維度最密集區(qū)也是分類準確率最高區(qū)域,對應維度在41~50維之間,對應方差累計貢獻率為79%~81%。因此,平均特征值作為閾值并不能作為其他應用的一個閾值,且主成分的提高并不會使分類準確率提高。但是根據(jù)降維后數(shù)據(jù)重構(gòu)對比圖(圖2)發(fā)現(xiàn),維度在小于86的范圍內(nèi),信息識別難度加大,分析其原因是由于其數(shù)據(jù)主要結(jié)構(gòu)特征在79%~81%范圍形成,隨著結(jié)構(gòu)特征增加反而影響應用結(jié)果。