張 要,馬盈倉,朱恒東,李 恒,陳 程
(西安工程大學 理學院,西安 710600)
特征選擇作為處理高維數(shù)據(jù)分類的主要方法,在算法學習過程中不僅能夠減少訓練時間,而且能避免維度災難與過擬合等問題[1-3],同時是近年來機器學習領(lǐng)域的研究熱點之一。與單標簽數(shù)據(jù)一樣,多標簽數(shù)據(jù)存在多個特征[4],在分類問題中同樣面臨維度災難問題,但與傳統(tǒng)單標簽特征選擇不同,多標簽特征選擇不僅要考慮樣本與標簽間的關(guān)系,而且要考慮標簽與標簽間的關(guān)系。現(xiàn)有多標簽特征選擇方法大致可分為過濾式、封裝式、嵌入式[5]等3 類,其中嵌入式方法是將特征選擇過程嵌入學習過程中,綜合了過濾式與封裝式的優(yōu)勢。
由于多標簽分類數(shù)據(jù)的連續(xù)性與標簽的離散性,因此一些學者認為多標簽數(shù)據(jù)中,數(shù)據(jù)與標簽的關(guān)系可以用logistic 回歸模型來學習,并通過不同正則項的約束來改進算法的性能,從而進行多標簽特征選擇。文獻[6]提出一種用于多標簽圖像分類的相關(guān)logistic 回歸模型(CorrLog),將傳統(tǒng)的logistic回歸模型擴展到多標簽情況。文獻[7]提出混合整數(shù)優(yōu)化logistic 回歸的特征子集選擇算法,給出一個混合整數(shù)線性優(yōu)化問題,使用標準的整數(shù)優(yōu)化軟件求解,并對logistic 回歸的損失函數(shù)進行分段線性逼近。文獻[8]提出一種基于Lq(0 近年來,流形學習快速發(fā)展,并逐漸滲透到人們生活以及工業(yè)生產(chǎn)等各個領(lǐng)域。為了能夠?qū)W習到數(shù)據(jù)特征的基層流形結(jié)構(gòu),文獻[9-10]提出流形學習方法,發(fā)現(xiàn)在特征選擇的過程中,特征流形結(jié)構(gòu)能夠促使特征選擇學習到更優(yōu)的回歸系數(shù)矩陣。文獻[11]提出一個圖形學習框架來保持數(shù)據(jù)的局部和全局結(jié)構(gòu),該方法利用樣本的自表達性來捕獲全局結(jié)構(gòu),使用自適應鄰域方法來保持局部結(jié)構(gòu)。文獻[12]提出一種新的魯棒圖學習方法,該方法通過自適應地去除原始數(shù)據(jù)中的噪聲和錯誤,從真實的噪聲數(shù)據(jù)中學習出可靠的圖。文獻[13]通過數(shù)據(jù)的自表示性質(zhì)構(gòu)建相似矩陣,并運用流形結(jié)構(gòu)和稀疏正則項來約束相似矩陣,從而構(gòu)建無監(jiān)督特征選擇模型。文獻[14]通過將其定義的代價距離代入現(xiàn)有的特征選擇模型中,并使用流形結(jié)構(gòu)約束得到一個新的代價敏感特征選擇方法。文獻[15]使用logistic回歸模型,并利用標簽流形結(jié)構(gòu)與L1-范數(shù)約束回歸系數(shù)矩陣,構(gòu)造半監(jiān)督多標簽特征選擇模型。可見,流形學習不一定作為正則項來約束回歸系數(shù),標簽流形學習也是一種學習數(shù)據(jù)與標簽間關(guān)系的方法。為找出數(shù)據(jù)與標簽間的關(guān)系,準確去除不相關(guān)的特征和冗余特征,本文融合logistic 回歸模型學習到的系數(shù)矩陣和標簽流形模型學習到的權(quán)重矩陣,基于L2,1-范數(shù)提出一種高效的柔性結(jié)合標簽流形結(jié)構(gòu)與logistic 回歸模型的多標簽特征選擇算法(FSML)。 樣本xi不屬于第j類的后驗概率如下: 其中:wj是系數(shù)矩陣W∈Rd×m的第j列向量。 使用極大似然估計法對系數(shù)矩陣進行估計,則logistic 回歸關(guān)于多標簽數(shù)據(jù)集的似然函數(shù)(聯(lián)合概率分布)如下: 由于求解式(3)較為困難,因此可以將式(3)轉(zhuǎn)化為利用求解logistic 回歸的負對數(shù)似然函數(shù)式(4)的極小值來求解W。 又因為logistic 回歸模型可能會出現(xiàn)過擬合、多重共線性、無限解等不適定問題,所以導致系數(shù)矩陣估計不正確[16]。為了解決這一問題,一種廣泛使用的策略是在式(4)中引入稀疏懲罰項,因此帶有懲罰項的logistic 回歸模型的表達式如下: 其中:β是懲罰因子;R(*)是懲罰函數(shù),表示對*的相應約束懲罰。 近年來,流形學習被廣泛應用于協(xié)同聚類[17]、特征選擇、維數(shù)約簡[18]等任務中。在特征選擇算法中,流形學習通常是被用作正則項來約束回歸系數(shù)矩陣,以便回歸系數(shù)矩陣擬合數(shù)據(jù)特征的基層流形結(jié)構(gòu),但流形學習在特征選擇算法中的使用方式并不局限于此。 在本文研究中,將使用流形學習來擬合數(shù)據(jù)特征的權(quán)重矩陣,為學習得到更好的特征權(quán)重矩陣并更有效地利用標簽信息,進行如下假設(shè): 1)通過學習數(shù)據(jù)間的相似矩陣Z來探究數(shù)據(jù)基層結(jié)構(gòu)。例如,標簽相似矩陣Z可以通過核函數(shù)學習,如式(6)所示: 其中:Zij是Z的第i行、第j列的元素,表示yi和yj之間的相似度。 2)通過學習得到標簽F。因為F需要擬合原始標簽Y的基層結(jié)構(gòu),所以 3)理論上認為:F=XU,其中U∈Rd×m是數(shù)據(jù)特征的權(quán)重矩陣。 根據(jù)以上假設(shè)構(gòu)建標簽流形學習模型,其表達式如下: 同樣地,引入相應的懲罰項,以便在學習過程中約束特征權(quán)重矩陣,使其能夠很好地擬合標簽的基層流形結(jié)構(gòu)。因此,標簽流形學習模型也可寫成以下形式: 通過式(5)和式(8)可以看出,針對特征選擇中的懲罰函數(shù)R(*),具有如下要求: 1)懲罰函數(shù)R(*)能夠約束稀疏矩陣W和權(quán)重矩陣U的稀疏性。 2)懲罰函數(shù)R(*)能夠根據(jù)特性結(jié)合稀疏矩陣W和權(quán)重矩陣U,且能使兩者相互促進,相輔相成。 3)在一般情況下,在特征選擇的過程中要能夠清晰地區(qū)分特征的好壞,通常要求能夠代表特征的矩陣要行內(nèi)穩(wěn)定、行間稀疏。因此,懲罰函數(shù)R(*)也要有這種約束性。 選取L2,1-范數(shù)作為懲罰函數(shù),即R(*)=‖ * ‖2,1,不僅可以滿足要求1和要求3,而且對奇異值比較敏感[19]。 根據(jù)要求2,考慮到稀疏矩陣W和權(quán)重矩陣U較為相似,且都能用于進行特征選擇,初步認為*=W-U,但*=W-U表示兩者幾乎完全相同,而實際上兩者還是有一定的差別,僅基于不同的模型,W與U就會出現(xiàn)差別。引入偏置矩陣1dbT∈Rn×m來使模型變得更為合理,其中,1d∈Rd為使元素全為1 的列向量,b∈Rm為偏置向量。進一步認為*=W+1dbTU,因此R(*)=‖W+1dbT-U‖2,1。 綜上,本文設(shè)計柔性結(jié)合標簽流形結(jié)構(gòu)與logistic 回歸模型的多標簽特征選擇算法FSML,其目標優(yōu)化問題可以改寫如下: 其中:α為標簽流形參數(shù)。 針對L2,1-范數(shù)的求解,根據(jù)文獻[20],當(W+1dbTU)i≠0時,其中i=1,2,…,d。‖W+1dbT-U‖2,1對W或?qū)的求導也可以看作Tr((W+1dbT-U)TH(W+1dbTU))對W或?qū)的求導,其中H∈Rd×d是對角矩陣,H的第i個對角元素如下: 因此,可以利用上述優(yōu)化問題來求出式(9)的近似解,從而將目標函數(shù)轉(zhuǎn)變?nèi)缦拢?/p> 對于該問題,可給定一個H,將W、U與當前的H進行計算,然后根據(jù)當前計算出的W、U對H進行更新。 根據(jù)式(11),當固定H和W時,關(guān)于U和b的目標函數(shù)可改寫如下: 根據(jù)式(11),當固定H和U時,關(guān)于W的目標函數(shù)可改寫如下: 由于式(17)是可微的,因此可以通過Newton-Raphson 算法進行求解,式(17)對W的一階導如下: W更新公式如下: 通過以上問題的優(yōu)化與求解,柔性結(jié)合標簽流形結(jié)構(gòu)與logistic 回歸模型的多標簽特征選擇算法FSML 具體描述如下: 算法1FSML 算法 FSML 算法的目的主要是計算并更新W與U,每次迭代的時間復雜度為O(2d2n),共迭代t次,因此總的時間復雜度為O(2td2n)。由于t值一般不大,因此FSML 算法處理數(shù)據(jù)的運行時間受數(shù)據(jù)維數(shù)d和數(shù)據(jù)集樣本個數(shù)n的影響較大。 FSML 算法的收斂性分析類似于L2,1-范數(shù)的收斂性分析,圖1 給出了參數(shù)α=1、β=1、K=5 時,F(xiàn)SML 算法在生物數(shù)據(jù)集Yeast、文本數(shù)據(jù)集Health和Computers、音樂數(shù)據(jù)集Emotion、圖像數(shù)據(jù)集Scene 等5 個經(jīng)典數(shù)據(jù)集上的收斂性結(jié)果。 圖1 FSML 算法在不同數(shù)據(jù)集上的收斂性結(jié)果Fig.1 Convergence results of FSML algorithm on different datasets 采用5 個經(jīng)典數(shù)據(jù)集進行FSML 算法有效性驗證,并將其與SCLS[21]、MDMR[22]、PMU[23]、FIMF[24]、CMLS[25]算法以及Baseline(選擇所有特征)進行性能比較,同時選擇ML-KNN[26]算法作為代表性的多標簽分類算法進行實驗。 實驗中采用的5 個經(jīng)典數(shù)據(jù)集來自木蘭圖書館(http://mulan.sourceforge.net/datasets.html),具體信息如表1 所示。 表1 數(shù)據(jù)集信息Table 1 Dataset information 實驗操作系統(tǒng)環(huán)境為Microsoft Windows 7,處理器為I ntel?CoreTMi5-4210U CPU@1.70 GHz 2.40 GHz,內(nèi)存為4.00 GB,編程軟件為Matlab R2016a。 實驗參數(shù)設(shè)置如下(設(shè)置1 和設(shè)置2 均為對應算法的默認設(shè)置): 1)在ML-KNN 算法中,設(shè)置平滑參數(shù)S=1,近鄰參數(shù)K=10。 2)在FIMF、MDMR 和PMU 算法中,利用等寬區(qū)間對數(shù)據(jù)集進行離散化處理[27],并且在FIMF 算法中,設(shè)置Q=10、b=2。 3)將所有特征選擇算法(除ML-KNN 算法以外)的最近鄰參數(shù)設(shè)為K=5,最大迭代次數(shù)設(shè)為50。 4)所有算法的正則化參數(shù)通過網(wǎng)格搜索策略進行調(diào)整,搜索范圍設(shè)置為[0.001,0.01,0.1,1,10,100,1 000 ],并將選擇的功能數(shù)量設(shè)置為[10,15,20,25,30,35,40,45,50 ]。 與單標簽學習系統(tǒng)的性能評價不同,多標簽學習系統(tǒng)的評價指標更為復雜。假設(shè)一個測試數(shù)據(jù)集,給定測試樣本di,多標簽分類器預測的二進制標簽向量記為h(di),第l個標簽預測的秩記為ranki(l)。 1)漢明損失(Hamming Loss)。度量的是錯分的標簽比例,即正確標簽沒有被預測以及錯誤標簽被預測的標簽占比。值越小,表現(xiàn)越好。Hamming Loss 計算公式如下: 其中:Δ 表示兩個集合的對稱差,返回只在其中一個集合中出現(xiàn)的那些值;HHammingLoss(D) ∈[0,1]。 2)排名損失(Ranking Loss)。度量的是反序標簽對的占比,即不相關(guān)標簽比相關(guān)標簽的相關(guān)性還要大的情況。值越小,表現(xiàn)越好。Ranking Loss 計算公式如下: 3)1-錯誤率(One-Error)。度量的是預測到的最相關(guān)的標簽不在真實標簽中的樣本占比。值越小,表現(xiàn)越好。One-Error 計算公式如下: 4)覆蓋率(Coverage)。度量的是排序好的標簽列表平均需要移動多少步才能覆蓋真實的相關(guān)標簽集。值越小,表現(xiàn)越好。Coverage 計算公式如下: 其中:CCoverage(D) ∈[0,m-1]。 5)平均精度(Average Precision)。度量的是比特定標簽更相關(guān)的那些標簽的排名占比。值越大,表現(xiàn)越好。平均精度計算公式如下: 本文提出的FSML 算法在5 個經(jīng)典數(shù)據(jù)集上進行實驗,并考慮Hamming Loss、Ranking Loss、One-Error、Coverage、Average Precision 評價指標對FSML 算法與對比算法的性能進行比較。表2~表6 給出了所有特征選擇算法在最優(yōu)參數(shù)時的最優(yōu)結(jié)果,其中,最優(yōu)結(jié)果用粗體標出,次優(yōu)結(jié)果用下劃線標出。從表2~表6 可以看出:大多數(shù)的最優(yōu)結(jié)果出現(xiàn)在FSML 算法上,從而證明FSML 算法的可行性;具體而言,F(xiàn)SML 算法雖然在Scene數(shù)據(jù)集上的所有指標相對于Baseline均略有不足,但在Computers、Health、Scene 數(shù)據(jù)集上的所有指標,以及Yeast數(shù)據(jù)集上的Ranking Loss、One-Error、Coverage、Average Precision 均優(yōu)于對比算法,并且在Emotion、Computers、Health、Yeast 數(shù)據(jù)集上的所有指標甚至優(yōu)于Baseline。 表2 各數(shù)據(jù)集上不同算法的Hamming Loss 數(shù)據(jù)對比Table 2 Data comparison of Hamming Loss among different algorithms on various datasets 表3 各數(shù)據(jù)集上不同算法的Ranking Loss 數(shù)據(jù)對比Table 3 Data comparison of Ranking Loss among different algorithms on various datasets 表4 各數(shù)據(jù)集上不同算法的One-Error 數(shù)據(jù)對比Table 4 Data comparison of One-Error among different algorithms under various datasets 表5 各數(shù)據(jù)集上不同算法的Coverage 數(shù)據(jù)對比Table 5 Data comparison of Coverage among different algorithms on various datasets 表6 各數(shù)據(jù)集上不同算法的Average Precision 數(shù)據(jù)對比Table 6 Data comparison of Average Precision among different algorithms on various datasets 綜上,F(xiàn)SML 算法在各種實驗指標上的性能均明顯優(yōu)于FIMF 算法、PMU 算法、MDMR 算法和SCLS 算法,在Computers、Health、Scene 數(shù)據(jù)集上明顯優(yōu)于CMLS 算法,在Emotion 數(shù)據(jù)集上略優(yōu)于CMLS 算法,并在除Scene 數(shù)據(jù)集以外的其他實驗數(shù)據(jù)集上的指標均優(yōu)于Baseline。 為能更直觀地展示FSML 算法與對比算法以及Baseline 的性能對比,圖2~圖6 給出了所有算法在各種數(shù)據(jù)集上的性能評價指標。從圖2~圖6 可以看出:FSML 算法在Scene 數(shù)據(jù)集上的性能表現(xiàn)雖然略次于Baseline,但在其他數(shù)據(jù)集上的性能表現(xiàn)很好,尤其是在Health 數(shù)據(jù)集上的性能表現(xiàn)最好,明顯優(yōu)于對比算法和Baseline。通過FSML 算法與對比算法的比較結(jié)果可以看出,F(xiàn)SML 算法的實驗結(jié)果通常優(yōu)于對比算法,可見將logistic 回歸模型與流形結(jié)構(gòu)柔性結(jié)合,能更準確地學習到數(shù)據(jù)與標簽間的關(guān)系;通過與Baseline 的比較結(jié)果可以看出,F(xiàn)SML 算法在大多數(shù)數(shù)據(jù)集上的實驗結(jié)果都優(yōu)于Baseline,能夠有效去除不相關(guān)的特征和冗余特征。 圖2 各數(shù)據(jù)集上不同算法的Hamming Loss 曲線對比Fig.2 Curve comparison of Hamming Loss among different algorithms on various datasets 圖3 各數(shù)據(jù)集上不同算法的Ranking Loss 曲線對比Fig.3 Curve comparison of Ranking Loss among different algorithms on various datasets 圖4 各數(shù)據(jù)集上不同算法的One-Error 曲線對比Fig.4 Curve comparison of One-Error among different algorithms on various datasets 圖5 各數(shù)據(jù)集上不同算法的Coverage 曲線對比Fig.5 Curve comparison of Coverage among different algorithms on various datasets 圖6 各數(shù)據(jù)集上不同算法的Average Precision 曲線對比Fig.6 Curve comparison of Average Precision among different algorithms on various datasets 為研究FSML 算法對參數(shù)的敏感程度:一方面,設(shè)置近鄰參數(shù)K=5,通過網(wǎng)格搜索策略來調(diào)整α與β的數(shù)值,探究FSML 算法在取不同參數(shù)時,Average Precision 評價指標的變化情況,如圖7 所示,可以看出在一定范圍內(nèi)Average Precision 評價指標值會隨參數(shù)的變化而變化,并且不同的實驗數(shù)據(jù)對參數(shù)的敏感程度不同,當α<1、β<1 時FSML 算法性能對參數(shù)的變化不是很敏感;另一方面,設(shè)置參數(shù)α=10、β=100,在[5,6,7,8,9,10]內(nèi)調(diào)整近鄰參數(shù)K的值,探究近鄰參數(shù)K的變化對FSML 算法性能的影響,如圖8 所示,可以看出在Yeast、Scene 數(shù)據(jù)集上FSML 算法對近鄰參數(shù)K的變化不太敏感,而在其他數(shù)據(jù)集上則較為敏感,可見FSML 算法對近鄰參數(shù)K的變化是否敏感與數(shù)據(jù)本身的基層結(jié)構(gòu)特征有關(guān)。 圖7 參數(shù)α、β 對FSML 算法的影響Fig.7 Influence of parameters α and β on FSML algorithm 圖8 近鄰參數(shù)K 對FSML 算法的影響Fig.8 Influence of parameter K on FSML algorithm 如圖9 所示,橫坐標軸表示在各評價指標下各多標簽特征選擇算法的排序,從左到右,算法的性能越來越好,同時還給出了Bonferroni-Dunn 測試結(jié)果的平均秩圖,并將無顯著差異(p<0.1)的算法組連接,如果平均排名達到差異的臨界值(Critical Distance),則有顯著差異[28]。在One-Error 指標下,F(xiàn)SML 算法性能明顯優(yōu)于對比算法,并具有顯著性差異;在其他指標下,F(xiàn)SML 算法的性能明顯優(yōu)于SCLS、FIMF、MDMR 和PMU 算法,并具有顯著性差異,雖然與CMLS 算法之間沒有顯著性差異,但FSML 算法的排序始終在第一位。因此,與其他算法相比,F(xiàn)SML 算法具有更好的性能。 圖9 Bonferroni-Dunn 檢驗結(jié)果的平均秩圖Fig.9 Average rank graph of Bonferroni-Dunn test results 本文基于L2,1-范數(shù)將標簽流形結(jié)構(gòu)與logistic 回歸模型柔性結(jié)合,構(gòu)建多標簽特征選擇算法FSML,并在多個經(jīng)典多標簽數(shù)據(jù)集上與現(xiàn)有多標簽特征選擇算法進行性能對比。實驗結(jié)果證明了FSML算法的有效性。但由于近鄰參數(shù)K不能自適應學習,導致同一個K值不一定能夠較好地學習到每個數(shù)據(jù)標簽的基層流形結(jié)構(gòu),從而限制了FSML 算法的應用范圍。下一步將對相似矩陣學習進行研究,使近鄰參數(shù)K能夠?qū)崿F(xiàn)自適應學習,并擴展該自適應學習方法在半監(jiān)督多標簽特征選擇中的應用與研究。1 模型建立
1.1 logistic 回歸模型





1.2 流形學習



1.3 柔性嵌入

2 問題求解
2.1 問題優(yōu)化


2.2 給定H、W 的U 求解

2.3 給定H、U 的W 求解






3 實驗與結(jié)果分析
3.1 數(shù)據(jù)集與實驗設(shè)置

3.2 評價指標





3.3 實驗結(jié)果













4 結(jié)束語