王凱明 魯伊莎 肖玉柱 宋學(xué)力
(長安大學(xué)理學(xué)院 陜西 西安 710064)
隨著智能傳感器技術(shù)和數(shù)據(jù)存儲技術(shù)的不斷進步,高維數(shù)據(jù)的生成數(shù)量和速度呈指數(shù)爆發(fā)式的增長。在數(shù)據(jù)驅(qū)動建模問題中,這些高維數(shù)據(jù)不僅會消耗更多的計算時間,占用更多的存儲資源,甚至?xí)档湍P蛯W(xué)習(xí)的性能,而且還會引發(fā)后續(xù)建模任務(wù)的過擬合現(xiàn)象甚至“維數(shù)災(zāi)難”[1]。為了解決這些問題,同時提升數(shù)據(jù)的可解釋性,需要從高維數(shù)據(jù)中按照某種數(shù)據(jù)挖掘方法或者統(tǒng)計規(guī)則選擇使特定模型目標達到最優(yōu)且維度較低的特征子集,這就是特征選擇問題[2-5]。
稀疏典型相關(guān)分析[6-7](Sparse Canonical Correlation Analysis, SCCA)是一種多元統(tǒng)計方法,其目標是求得一對稀疏的基向量,使得兩模態(tài)數(shù)據(jù)集在這對基向量上的投影之間相關(guān)性最大。然而在一些實際應(yīng)用領(lǐng)域中,隨著信息采集技術(shù)的發(fā)展,在得到某些樣本數(shù)據(jù)集的同時,也易獲得樣本的某種監(jiān)督數(shù)據(jù)或可以看作監(jiān)督數(shù)據(jù)的數(shù)據(jù)。但傳統(tǒng)的SCCA模型是無監(jiān)督的,不能充分利用這些數(shù)據(jù)的監(jiān)督信息,造成信息損失。現(xiàn)有的大多數(shù)有監(jiān)督特征選擇方法一般應(yīng)用類標簽作為監(jiān)督數(shù)據(jù),如Witten等[6]通過引入類標簽提出了一種基于類標簽的稀疏監(jiān)督的典型相關(guān)分析模型。事實上,除了類標簽,還有其他類型的監(jiān)督數(shù)據(jù),如樣本的某種量化結(jié)果數(shù)據(jù)(即樣本某個指標的定量結(jié)果),它也可作為樣本的監(jiān)督數(shù)據(jù)。與類標簽監(jiān)督數(shù)據(jù)相比,樣本的某種量化結(jié)果數(shù)據(jù)的引入有利于模型選擇出與量化結(jié)果相關(guān)的特征子集?;诖?,Witten等[6]通過引入樣本某量化結(jié)果的數(shù)據(jù)作為監(jiān)督數(shù)據(jù)提出了稀疏監(jiān)督的典型相關(guān)分析(Sparse supervised Canonical Correlation Analysis, Sparse sCCA)模型。該模型利用了樣本量化結(jié)果的數(shù)據(jù),但是在求解優(yōu)化問題的過程中為了提高計算效率,克服高維矩陣可能不可逆等缺陷,用對角矩陣甚至是單位矩陣替代目標函數(shù)中典型變量方差的約束條件,使模型的目標從相關(guān)系數(shù)組合簡化為協(xié)方差組合,然而兩兩典型變量的相關(guān)系數(shù)由于方差的差異可能導(dǎo)致目標協(xié)方差在尺度上相差很大。當某對典型變量的協(xié)方差較大時,其相關(guān)性可能會被過度加權(quán)。同時,值得注意的是,這樣的Sparse sCCA模型是通過求解一個約束優(yōu)化問題實現(xiàn)的。眾所周知,待定參數(shù)問題是約束優(yōu)化問題中的公開難題,而k折交叉驗證方法是確定待定參數(shù)現(xiàn)有的常用方法。如果Sparse sCCA模型的最優(yōu)參數(shù)是通過k折交叉驗證方法確定的,這種過度加權(quán)將表現(xiàn)得更明顯。因為k折交叉驗證傾向于分配更大的權(quán)重給協(xié)方差較大的典型相關(guān)變量對,所以當?shù)湫妥兞績蓛筛叨认嚓P(guān)而協(xié)方差較小時,數(shù)據(jù)的特征選擇結(jié)果將產(chǎn)生較大的偏差。究其本質(zhì)原因,這種協(xié)方差尺度的差異是由多模態(tài)數(shù)據(jù)的異質(zhì)性構(gòu)成的,而且數(shù)據(jù)集的異質(zhì)性越大,利用Sparse sCCA模型進行特征選擇時所得結(jié)果的偏差越嚴重。因此,如何減少甚至是消除這種偏差,以較大相關(guān)性實現(xiàn)更優(yōu)的特征選擇具有重要的現(xiàn)實意義。為實現(xiàn)這種更優(yōu)意義下的特征選擇,如何解決優(yōu)化問題的求解難度和待定參數(shù)的不平衡性,是改進Sparse sCCA模型需要解決的關(guān)鍵問題。文獻[8]采用動態(tài)權(quán)重方法來提高最小二乘算法的性能,文獻[9]提出了三模態(tài)數(shù)據(jù)的自適應(yīng)稀疏典型相關(guān)分析模型,受此啟發(fā),本文在Sparse sCCA模型的基礎(chǔ)上,采用自適應(yīng)動態(tài)加權(quán)優(yōu)化,建立自適應(yīng)稀疏監(jiān)督典型相關(guān)分析模型,以實現(xiàn)特征選擇。
本文主要的研究思路包括有:① 引入一組新的自適應(yīng)動態(tài)權(quán)重系數(shù),提出基于自適應(yīng)稀疏監(jiān)督典型相關(guān)分析的特征選擇模型;② 從應(yīng)用的角度而言,本文模型能在最大相關(guān)性目標下更準確地選擇出與樣本某種指標相關(guān)的特征子集,所以適用于具有量化結(jié)果指標的樣本數(shù)據(jù)集,同時對特征查準要求較高的實際問題,如某些腫瘤疾病的特征選擇問題。
設(shè)X∈Rn×p、Y∈Rn×q為同一樣本的兩模態(tài)標準化數(shù)據(jù)集,z∈Rn×1為樣本某種量化結(jié)果,可作為監(jiān)督數(shù)據(jù),n為樣本容量,p、q為樣本的特征維數(shù)。稀疏監(jiān)督典型相關(guān)分析模型如下:
(1)
s.t.uTXTXu≤1,vTYTYv≤1,P1(u)≤c1,P2(v)≤c2
式中:P1(u)和P2(v)是凸的懲罰函數(shù)(如l1懲罰);c1和c2是控制典型向量u=(u1,u2,…,up)T∈Rp和v=(v1,v2,…,vq)T∈Rq稀疏程度的可調(diào)參數(shù)。該模型旨在尋找稀疏的典型向量對(u,v),使數(shù)據(jù)的典型相關(guān)變量(Xu,Yv)具有最大的相關(guān)性。
在求解式(1)時,一般需要求解矩陣XTX,YTY的逆,然而在高維數(shù)據(jù)集中,XTX,YTY常常是奇異的。為了避免這一問題,一般把約束條件uTXTXu≤1、vTYTYv≤1簡化為uTu≤1、vTv≤1[10],這時目標函數(shù)由最大相關(guān)系數(shù)組合犧牲為最大的協(xié)方差組合。對于兩模態(tài)的數(shù)據(jù)集,這樣處理也能產(chǎn)生一個相對較好的結(jié)果,并且減少了計算量,通常認為這種犧牲是可以被接受的。但是稀疏監(jiān)督典型相關(guān)分析模型中引進了樣本某種量化結(jié)果的監(jiān)督數(shù)據(jù),原有的協(xié)方差改進為兩模態(tài)數(shù)據(jù)與監(jiān)督數(shù)據(jù)的兩兩協(xié)方差組合,這樣的處理將造成特征選擇的嚴重偏差。
為了說明典型向量對典型變量的相關(guān)系數(shù)與協(xié)方差比值的影響程度,我們以一組經(jīng)過標準化的樣本數(shù)據(jù)集X∈Rn×p、Y∈Rn×q和樣本的某種量化結(jié)果的監(jiān)督數(shù)據(jù)z∈Rn×1(標準化處理)為例,比較它們的相關(guān)系數(shù)與協(xié)方差比值。為體現(xiàn)一般性,任意給出10組不同的單位典型向量(u,v),以此得到變量對(Xu,Yv)、(Xu,z)、(Yv,z)在10組(u,v)下的相關(guān)系數(shù)與協(xié)方差比值情況(如圖1所示)。
圖1 相關(guān)系數(shù)與協(xié)方差比值對比圖
圖1中,三對典型變量(Xu,Yv)、(Xu,z)、(Yv,z)的相關(guān)系數(shù)與協(xié)方差比值在每組典型向量對(u,v)下差異很大。其中(Xu,Yv)的比值接近1,表明對于兩模態(tài)數(shù)據(jù)集,SCCA模型中以協(xié)方差代替相關(guān)系數(shù)作為優(yōu)化目標具有一定的合理性。然而(Xu,z)、(Yv,z)比值與(Xu,Yv)的比值差異較大,這種差異的大小說明了用最大協(xié)方差代替最大相關(guān)系數(shù)時,協(xié)方差對的固定權(quán)重會導(dǎo)致相關(guān)性占比的分配不公平現(xiàn)象,且這種不公平的嚴重程度依賴于典型變量的相關(guān)系數(shù)與協(xié)方差比值。另一方面,值得注意的是,典型向量對典型變量的相關(guān)系數(shù)與協(xié)方差的比值影響是隨機的,不可預(yù)測的。在實際應(yīng)用中,噪聲的大小,數(shù)據(jù)服從的分布以及數(shù)據(jù)采集設(shè)備的精確度等都有可能影響典型變量相關(guān)系數(shù)與協(xié)方差的比值。因此,固定權(quán)重的Sparse sCCA模型不能解決該不平衡性問題,需要在傳統(tǒng)的Sparse sCCA模型中引入可以減弱這種偏差帶來的不平衡性的自適應(yīng)權(quán)重,動態(tài)調(diào)節(jié)各對典型變量協(xié)方差使其達到最優(yōu)占比。
本節(jié)在Sparse sCCA模型中引入一組自適應(yīng)權(quán)重系數(shù),使其動態(tài)調(diào)整每對典型變量的“最大協(xié)方差”,直至目標函數(shù)無限逼近最大的相關(guān)系數(shù),建立新特征選擇模型如下:
(2)
s.t. ‖u‖2=1,‖v‖2=1,‖u‖1≤c1,‖v‖1≤c2
該模型旨在減少由協(xié)方差組合代替相關(guān)系數(shù)組合所產(chǎn)生的偏差來提高特征選擇的準確率。以下稱之為自適應(yīng)稀疏監(jiān)督典型相關(guān)分析(Adaptive Sparse Supervised Canonical Correlation Analysis, ASSCCA)模型。
為求解方便,將式(2)的約束優(yōu)化問題等價轉(zhuǎn)化為:
λu‖u‖1+λv‖v‖1
(3)
s.t. ‖u‖2=1,‖v‖2=1
式中:λu和λv為大于零的數(shù),分別控制u和v的稀疏程度。
為求解式(3)中的典型向量u、v,使用軟閾值方法。根據(jù)文獻[11],引入如下引理。
引理1考慮以下優(yōu)化問題:
(4)
S(a,Δ)=sgn(a)(|a|-Δ)+=
sgn(a)max(|a|-Δ,0)=
(5)
采用塊坐標下降法[12],結(jié)合引理1,式(3)的求解迭代過程如下:
(1) 固定v,解u。
(6)
(7) (2) 固定u,解v。
(8)
(9)
根據(jù)模型的求解過程,ASSCCA算法流程如算法1所示。
算法1ASSCCA算法
輸入: 標準化之后的數(shù)據(jù)X∈Rn×p,Y∈Rn×q,z∈Rn×1,可調(diào)參數(shù)λ1,λ2
輸出: 典型變量u和v
(1) 初始值t=0,ut∈Rp×1,vt∈Rq×1;
(2)While(算法終止條件不滿足)do
(4) 固定vt,解ut+1;
(5)ut+1←argmaxut+1Γ12XTYvt+Γ13XTz滿足‖ut+1‖2≤1,P1(ut+1)≤λu;
(6) 固定ut+1,解vt+1;
(7)vt+1←argmaxvt+1Γ12YTXut+1+Γ23YTz滿足‖vt+1‖2≤1,P2(vt+1)≤λv;
(8)t=t+1;
(9) end while
(10) 返回典型變量u和v的值
整個算法的關(guān)鍵是如何求解典型向量u和v,對應(yīng)的關(guān)鍵步驟是式(7)和式(9)。此處由ASSCCA算法的步驟(4)、步驟(5)可知,首先固定v來求解u,再用得到的u來求解v(步驟(6)、步驟(7)),反復(fù)迭代直到算法收斂。使算法終止的條件為:
(10)
經(jīng)過多次實驗,此處設(shè)置ξ=10-5最為合適。
為了驗證本文模型算法的可實現(xiàn)性,以及引入自適應(yīng)權(quán)重系數(shù)能否有效地提高特征選擇的準確率,本節(jié)使用一組模擬數(shù)據(jù),針對不同的參數(shù)進行多次實驗,并將實驗結(jié)果與Sparse sCCA模型進行對比。
數(shù)值仿真中X(n×p)和Y(n×q)是來自共同的n個樣本的不同模態(tài)的數(shù)據(jù),z(n×1)為樣本對應(yīng)的某種量化結(jié)果的監(jiān)督數(shù)據(jù),其中n=200是樣本個數(shù),p和q分別為X和Y數(shù)據(jù)的特征維數(shù)。參考文獻[14]中潛變量被用于模擬數(shù)據(jù)集之間相關(guān)性的構(gòu)造方法,模擬數(shù)據(jù)生成過程如下:① 生成兩個服從高斯分布的獨立的潛變量μ1∈R200×1和μ2∈R200×1。② 通過潛變量μ1和μ2、稀疏向量αi∈R1×500,i=1,2,3,4,使X的前200個特征與Y的前200個特征典型相關(guān),而通過潛變量μ1,使X和Y僅有前100個特征與樣本的某種量化結(jié)果z典型相關(guān),第101至200個特征與樣本的某種量化結(jié)果z不存在典型相關(guān)關(guān)系。同時為了檢驗?zāi)P偷聂敯粜?,將高斯噪聲E1、E2、e分別引入到X、Y和z數(shù)據(jù)集中,產(chǎn)生的模擬數(shù)據(jù)如下:
X=μ1α1+μ2α2+E1
Y=μ1α3+μ2α4+E2
z=μ1+e
式中:每一個向量αi(i=1,2,3,4)有100個非零項,且αi非零項~U(0.4,0.6),其中α1和α3的非零項位于前100項,α2和α4的非零項位于第101到第200項,E1∈R200×500、E2∈R200×500和e∈R200×1分別表示X、Y和z的噪聲數(shù)據(jù)集,且都為高斯噪聲。
參數(shù)的選擇與一個優(yōu)秀的模型和有效的算法同樣重要。本文有Λ12、Λ13、Λ23、λ1、λ2共五個參數(shù),其中Λ12、Λ13、Λ23對應(yīng)的值隨著典型變量u和v的變化而變化,所以設(shè)置一組u和v的初值,相應(yīng)Λ12、Λ13、Λ23的初值也隨之確定,并且隨著算法的迭代其值也更新,因此本文只剩參數(shù)λ1和λ2需要調(diào)整。徐宗本等[15]指出可參考解的稀疏程度進行參數(shù)選擇,所以根據(jù)需要保留的特征數(shù)量指導(dǎo)參數(shù)λ1、λ2的選取,避免了盲目選擇參數(shù)的缺陷。實驗采用5折交叉驗證方法來產(chǎn)生所有的最優(yōu)參數(shù)。將所有的樣本隨機平均分為5份,選擇每一份樣本輪流作為測試集,剩余4份作為訓(xùn)練集,用訓(xùn)練集擬合模型,用測試集來驗證模型的偏差,循環(huán)5次,直到5份數(shù)據(jù)全被依次選擇作為測試集為止。在此過程中對每一組給定的參數(shù)進行k(k=5)次實驗,并且在ASSCCA模型達到最大值的情況下,選擇使式(11)取得最小值時的一組參數(shù)作為最優(yōu)參數(shù)。
(11)
式中:corr表示Pearson相關(guān)系數(shù);corrtrain表示訓(xùn)練集上的典型相關(guān)系數(shù);corrtest表示測試集上的典型相關(guān)系數(shù)。
在確定稀疏參數(shù)后,使用穩(wěn)定性選擇方法[16]來選擇穩(wěn)定的特征子集。對整個樣本集重復(fù)執(zhí)行bootstrapping(重采樣方法)200次,從而生成200個新的樣本集。然后在每個新樣本集上執(zhí)行ASSCCA,并獲得200個不同的典型向量。根據(jù)這200個典型向量中候選特征子集出現(xiàn)的頻率高低來使用頻率截斷,選擇頻率高的特征子集作為最終的最優(yōu)子集。
本文用模擬數(shù)據(jù)集進行多次實驗,選擇了一組最優(yōu)的特征子集,并從特征選擇的準確性和所求典型相關(guān)系數(shù)的大小兩個指標來對比本文模型與Sparse sCCA模型的性能。
(1) 模擬數(shù)據(jù)特征選擇的可視化對比如圖2-圖7所示,每幅圖的橫軸代表數(shù)據(jù)集的特征索引,縱軸代表u和v的值,即特征的權(quán)值系數(shù),權(quán)值越大,表示該特征越重要。圖2和圖5分別給出了仿真生成的典型向量u和v的真實值。圖3和圖6分別給出了sparse sCCA特征選擇模型得到的u和v,圖4和圖7分別給出了ASSCCA特征選擇模型得到的u和v。
圖2 典型向量u的真實值
圖3 sparse sCCA模型u的估計值
圖4 ASSCCA模型u的估計值
圖5 典型向量v的真實值
圖6 Sparse sCCA模型v的估計值
圖7 ASSCCA模型v的估計值
從圖3、圖4與圖2的對比中可以清晰地看到固定權(quán)重系數(shù)的Sparse sCCA模型所得到的u選擇出了與樣本某種量化結(jié)果數(shù)據(jù)z相關(guān)的前100個特征,但同時也引入了許多冗余特征,造成了樣本某種量化結(jié)果數(shù)據(jù)z與數(shù)據(jù)集X和Y相關(guān)性的特征子集選擇的偏差;而本文的模型ASSCCA減小了Sparse sCCA模型選擇特征子集時引入的偏差,選擇出了數(shù)據(jù)集X和Y特定于某種量化結(jié)果數(shù)據(jù)z的特征子集,所得的u較準確地反映了某種量化結(jié)果數(shù)據(jù)z與數(shù)據(jù)集X和Y之間相關(guān)性的特征子集,特征選擇更優(yōu),有助于更好地理解和解釋與樣本某種量化結(jié)果數(shù)據(jù)有關(guān)的特征子集所提供的重要信息。對比圖6、圖7與圖5,典型向量v也有類似的實驗結(jié)果。該仿真實驗結(jié)果表明自適應(yīng)權(quán)重的引入對于研究樣本某一量化結(jié)果與數(shù)據(jù)集相關(guān)性的特征選擇問題有很大的優(yōu)勢。
(2) 模擬數(shù)據(jù)的典型變量Xu和Yv真實相關(guān)系數(shù)和Sparse sCCA與ASSCCA模型對應(yīng)的目標函數(shù)滿足最大值時的典型變量Xu和Yv的相關(guān)系數(shù)(見表2)。
表2 Sparse sCCA和ASSCCA模型相關(guān)系數(shù)對比
其中rr表示典型相關(guān)系數(shù)。表2中的數(shù)值表示五折交叉驗證后的相關(guān)系數(shù)平均值±標準差。
從表2中可以看出,與模型Sparse sCCA相比,ASSCCA得到的相關(guān)系數(shù)不僅在訓(xùn)練集上取得最優(yōu),而且在測試集中也取得最優(yōu),并且相應(yīng)的標準差更小,即結(jié)果更穩(wěn)定。這說明ASSCCA模型更魯棒,泛化能力更強(其中粗體的值為最優(yōu))。
綜合以上與Sparse sCCA模型的對比分析,本文的模型不僅充分利用了樣本某種量化結(jié)果的監(jiān)督數(shù)據(jù),而且引入了一組新的自適應(yīng)權(quán)重系數(shù),該系數(shù)不僅有助于重新調(diào)整目標函數(shù)協(xié)方差對的值,使模型減小了用協(xié)方差代替相關(guān)系數(shù)對特征選擇產(chǎn)生的偏差,而且在組合相關(guān)系數(shù)較大的條件下有效提高了特征選擇的準確率。
本文在Sparse sCCA模型的基礎(chǔ)上,引入了一組自適應(yīng)權(quán)重系數(shù),提出了一種新的自適應(yīng)稀疏監(jiān)督典型相關(guān)分析(ASSCCA)的特征選擇模型。在模擬數(shù)據(jù)集上的仿真實驗表明,與其他模型相比,本文的ASSCCA模型以較大的組合相關(guān)性實現(xiàn)了特征選擇,在與監(jiān)督數(shù)據(jù)較高的相關(guān)性意義下提高了特征選擇的準確率。適用于已知某些監(jiān)督數(shù)據(jù)信息的腫瘤疾病等的特征選擇問題。
在未來的研究中,將考慮構(gòu)建一種將數(shù)據(jù)集與其他類型的監(jiān)督數(shù)據(jù)進行聯(lián)合關(guān)聯(lián)、回歸等多任務(wù)統(tǒng)一的模型,使模型既能揭示數(shù)據(jù)集之間的關(guān)聯(lián)性又能實現(xiàn)關(guān)于某種監(jiān)督數(shù)據(jù)的預(yù)測。