陳 濤
(深圳職業(yè)技術(shù)學(xué)院 教育技術(shù)與信息中心,廣東 深圳518055)
多示例學(xué)習(xí)是T.G.Dietterich 等人[1]在1997年研究藥物活性分子預(yù)測(cè)中提出的概念.它是通過(guò)對(duì)一組由多個(gè)示例組成的包訓(xùn)練,預(yù)測(cè)未知包標(biāo)簽的學(xué)習(xí)方法,被認(rèn)為是一種新的機(jī)器學(xué)習(xí)框架,能被應(yīng)用于解決預(yù)測(cè)藥物活性分子、文本分類(lèi)、圖像檢索和分類(lèi)等問(wèn)題.
與有監(jiān)督學(xué)習(xí)方法不同,多示例學(xué)習(xí)是對(duì)由多個(gè)示例組成的包進(jìn)行學(xué)習(xí)和預(yù)測(cè).包有標(biāo)簽但沒(méi)有特征,示例有特征沒(méi)有標(biāo)簽,包中的多個(gè)示例共享一個(gè)包的標(biāo)簽.多示例學(xué)習(xí)框架中,訓(xùn)練集由一組具有標(biāo)簽的包組成,每個(gè)包中含有若干個(gè)沒(méi)有標(biāo)簽的示例.若1 個(gè)包中至少有1 個(gè)正示例,則該包被標(biāo)記為正包;若1 個(gè)包中所有示例都為負(fù)示例,則該包才被標(biāo)記為負(fù)包.通過(guò)對(duì)訓(xùn)練包的學(xué)習(xí),希望學(xué)習(xí)系統(tǒng)能夠?qū)π掳鼧?biāo)簽進(jìn)行正確預(yù)測(cè)[2].
近年來(lái),有學(xué)者提出將示例特征空間變換為包特征空間[3,4],將多示例學(xué)習(xí)轉(zhuǎn)換為有監(jiān)督學(xué)習(xí),如DD-SVM[5]、MILES[6]等算法.在集成學(xué)習(xí)算法上,蘇艷等[7]在2012年提出一種基于動(dòng)態(tài)隨機(jī)特征子空間的半監(jiān)督集成學(xué)習(xí)方法,應(yīng)用到情感分類(lèi).王嬌等[8]提出將隨機(jī)子空間方法應(yīng)用到半監(jiān)督協(xié)同訓(xùn)練學(xué)習(xí).余國(guó)先等[9]將隨機(jī)子空間方法應(yīng)用到基于圖的半監(jiān)督學(xué)習(xí)分類(lèi),在人臉識(shí)別數(shù)據(jù)集上取得了較好的分類(lèi)精度.
由于變換空間后的包特征維度較高,易帶來(lái)兩個(gè)問(wèn)題:一是樣本數(shù)量小,特征維度高,使得分類(lèi)器的泛化性能受到影響;二是在高維空間上的距離度量難以反映出樣本之間的近鄰結(jié)構(gòu)信息,從而導(dǎo)致分類(lèi)器的分類(lèi)性能下降.針對(duì)這兩個(gè)問(wèn)題,本文利用集成學(xué)習(xí)方法,通過(guò)多個(gè)弱分類(lèi)器集成,來(lái)解決數(shù)據(jù)特征的高維問(wèn)題以提高分類(lèi)精度.
一組有l(wèi)個(gè)已標(biāo)簽的多示例數(shù)據(jù)集L={<B1,y1>,<B2,y2>,...,<Bl,yl>},u個(gè)未標(biāo)簽的數(shù)據(jù)集U={Bl+1,Bl+2,...,Bl+u},Bi= {Bi1,Bi2,...,Bini},Bij∈Rd,i=1,...,n,j= 1,...,ni,ni為包Bi中的示例個(gè)數(shù),d為示例的特征維數(shù),yk∈{1 ,...,c},k=1,...,l,c為類(lèi)別數(shù),l+u=n.包Bi由多個(gè)示例Bij組成.包有標(biāo)簽沒(méi)有特征;示例具有特征沒(méi)有標(biāo)簽,包中的多個(gè)示例共享一個(gè)包的標(biāo)簽.目標(biāo)是在訓(xùn)練集L上學(xué)習(xí)一個(gè)分類(lèi)函數(shù))(xf,使得 )(xf能正確預(yù)測(cè)未標(biāo)簽包U的分類(lèi).
可以將多示例學(xué)習(xí)轉(zhuǎn)化為有監(jiān)督學(xué)習(xí),就需要先構(gòu)造出一個(gè)包特征.一些文獻(xiàn)提出了不同的包特征生成方法,這里,我們采用MILES 算法[6].其它包特征方法也適用MSEMIL 算法.
將一個(gè)包Bi向訓(xùn)練集L中的所有示例(m個(gè))映射,得到一個(gè)m維特征,映射公式為:
其中,Bij是包Bi的1 個(gè)示例.通過(guò)向所有示例投影映射,包中的多個(gè)示例特征融合為1 個(gè)新的包特征,每1 維代表包與1 個(gè)示例之間的相似度.2σ為1 個(gè)控制相似度取值大小的參數(shù),這里取包Bi中所有示例與xk之間的歐氏距離均值.
將L+U中的每個(gè)包向L中的所有示例進(jìn)行逐一投影映射,得到一個(gè)新的樣本集合X:
式(3)矩陣,列向量為一個(gè)包特征,列向量上的每一維是包與一個(gè)示例的相似度.由于包是向每一個(gè)示例進(jìn)行的投影映射,這樣生成的包特征能夠不失真的反映包與示例間的關(guān)系.但是,會(huì)產(chǎn)生出2 個(gè)問(wèn)題:1)例如MUSK2 數(shù)據(jù)集有6598 個(gè)示例,這樣,示例數(shù)較大,會(huì)產(chǎn)生高維特征問(wèn)題;2)樣本數(shù)較大而維度較小,會(huì)產(chǎn)生過(guò)擬合問(wèn)題.有必要對(duì)這些大量冗余或不相關(guān)屬性,先采取特征選擇或者約減.本文采用構(gòu)造樣本子集和隨機(jī)選取特征子集的集成學(xué)習(xí)方法來(lái)處理這兩個(gè)問(wèn)題.
1.2.1 Bagging 法選取訓(xùn)練樣本子集,與測(cè)試集組合形成Ts個(gè)樣本子集
多次Bagging 法,能得到多個(gè)訓(xùn)練樣本子集.經(jīng)過(guò)公式(1)后,得到訓(xùn)練樣本集合X= {X1,X2,...,Xl}.對(duì)訓(xùn)練樣本集合進(jìn)行Ts次Bagging 法,能得到Ts個(gè)訓(xùn)練樣本子集Si(i∈ 1,...,Ts).Si能被表示為:
得出Ts個(gè)訓(xùn)練樣本子集 {S1,S2,...,STs}后,將它們分別與測(cè)試集組合,形成新的Ts個(gè)樣本子集{W1,W2,...,WTs}.
1.2.2 隨機(jī)選取特征子集
經(jīng)過(guò)公式(1)映射函數(shù)后,得到的包特征是一個(gè)m維特征向量.即:有m維特征,F(xiàn)= {f1,f2,...,fm},fi是包中的一維特征.隨機(jī)選取特征子集方法,是在m維特征中隨機(jī)選取出d維,作為一個(gè)特征子集;接著重新在m維中隨機(jī)選取出d維特征;直至選取出Tf個(gè)特征子集為止.一個(gè)特征子集能表示為:
其中,f kj∈F(為特征集F中的一個(gè)特征,F(xiàn)j?F為特征集F的一個(gè)子集,維度d<m,Tf為隨機(jī)特征子空間的個(gè)數(shù).
1.2.3 將Ts個(gè)樣本子集Wi向Tf個(gè)特征子集Fj上投影,得到T個(gè)子空間
將1 個(gè)樣本Xi向特征子集Fk={f1k,f2k,...,fdk}投影,記為是指在原始特征為m維的Xi∈Rn×m上,選取出特征子集Fk上有的特征,去掉Fk子集上沒(méi)有的特征,形成新的d維特征的
令1 個(gè)樣本Xi向Tf個(gè)特征子集投票,能構(gòu)造出Tf個(gè)新的樣本,有:
那么,一個(gè)樣本子集Wi,向Tf個(gè)特征子集的投影矩陣為:
將(7)投影矩陣的列向量看作一個(gè)子空間Rij,在每個(gè)子空間上訓(xùn)練一個(gè)分類(lèi)器,那么樣本子集Wi就有Tf個(gè)子空間,需要訓(xùn)練Tf個(gè)子分類(lèi)器.
總共能得到T=Ts×Tf個(gè)子空間.在每個(gè)子空間Rij(i∈1..Ts,j∈1..Tf)上訓(xùn)練1 個(gè)子分類(lèi)器Cij(Rij),對(duì)測(cè)試集的分類(lèi)結(jié)果為多個(gè)子分類(lèi)器的集成投票.
選用基于圖的半監(jiān)督學(xué)習(xí)分類(lèi)器LGC 作為子分類(lèi)器[9].LGC 方法是一個(gè)直推分類(lèi)器,先需要構(gòu)造出1 個(gè)圖,將多示例學(xué)習(xí)中的每個(gè)包作為圖中的1 個(gè)結(jié)點(diǎn),結(jié)點(diǎn)之間采用邊權(quán)重連接.權(quán)重矩陣W能被表示為:
LGC 方法構(gòu)造優(yōu)化函數(shù):
初始化y∈Rn×c向量,如果有已標(biāo)記樣本xi屬于j類(lèi) (xi∈cj),則yij=1,行向量yi的其余列被置為0;未標(biāo)記樣本xk的行向量yk的所有列被置為0;f0=y.
計(jì)算出來(lái)的f∈Rn×c,是一個(gè)n×c矩陣,每一行向量fi代表樣本xi的分類(lèi)結(jié)果,fij代表xi屬于類(lèi)別jc的概率.如果需要判定樣本ix的分類(lèi)類(lèi)別,可以有:
這里,采用最大投票判別法集成子分類(lèi)結(jié)果.把各個(gè)子分類(lèi)器的輸出看作同等重要,選取少數(shù)服從多數(shù)的分類(lèi)結(jié)果作為最后輸出.它被表示為:
昨晚妻子已向他提及這家新開(kāi)的影樓。天下所有妻子都如她一般多疑嗎?還是他過(guò)于敏感?妻子問(wèn)他,那家高美影樓的老板娘,你認(rèn)識(shí)吧?
R為子分類(lèi)器的個(gè)數(shù).
選取兩組實(shí)驗(yàn).第1 組為MSEMIL 算法在Corel圖像庫(kù)上進(jìn)行分類(lèi),并與其它MIL 或MIL 集成學(xué)習(xí)算法作分類(lèi)精度比較;第2 組為子空間參數(shù)對(duì)MSEMIL 算法分類(lèi)精度影響.參數(shù)σ取各子空間上樣本兩兩之間的歐氏距離均值,k近鄰大小取5,參數(shù)α取值為0.2.取10 次隨機(jī)實(shí)驗(yàn)結(jié)果的平均值.
實(shí)驗(yàn)1:MSEMIL 算法的分類(lèi)精度
通過(guò)在Corel 圖像集上的分類(lèi)實(shí)驗(yàn),來(lái)驗(yàn)證MSEMIL 算法的有效性.參與對(duì)比的6 個(gè)算法[5,6]有:MILES、DD-SVM、EM-DD 等3 個(gè)MIL 算法,和EMDD-bagging、MILES-LGC-bagging、MILESLGC-RS 等3 個(gè)MIL 集成學(xué)習(xí)算法.在Corel 2000數(shù)據(jù)集上的分類(lèi)是一個(gè)多分類(lèi)問(wèn)題.MSEMIL、MILES-LGC-bagging、MILES-LGC-RS 等3 個(gè)算法采用半監(jiān)督學(xué)習(xí)分類(lèi)器作為基礎(chǔ),能夠直接分類(lèi)多類(lèi)別問(wèn)題.EM-DD-bagging 等其它4 個(gè)算法采用“一類(lèi)反對(duì)余下類(lèi)”的方法區(qū)分多類(lèi)別,需要訓(xùn)練c個(gè)分類(lèi)器,選取輸出最大值的那個(gè)分類(lèi)器作為圖像的標(biāo)簽.實(shí)驗(yàn)中,參數(shù)Ts取值15,Tf取值55,d取值120 時(shí),獲得了實(shí)驗(yàn)的最好性能.
第1 組實(shí)驗(yàn):在Corel 2000 數(shù)據(jù)集上的分類(lèi)精度比較
選取Corel 2000 圖像庫(kù)作為圖像分類(lèi)實(shí)驗(yàn)的數(shù)據(jù)集.有20 類(lèi)圖像,每類(lèi)有100 幅圖像,共2000 幅圖像.采用DD-SVM[5]圖像分割方法,每個(gè)圖像被分割成5-10 個(gè)區(qū)域,每個(gè)區(qū)域用一個(gè)9維的特征表示.
為了考察未標(biāo)簽圖像數(shù)對(duì)算法性能的影響,分別取100,間隔100,直到1000 幅訓(xùn)練集圖像、未標(biāo)簽圖像(測(cè)試集)數(shù)取時(shí),執(zhí)行實(shí)驗(yàn).MSEMIL 等7 個(gè)算法的分類(lèi)精度如圖1所示.
第2 組實(shí)驗(yàn):子空間參數(shù)對(duì)MSEMIL 的分類(lèi)精度影響
子空間參數(shù)有子空間的特征維數(shù)d和子空間個(gè)數(shù)T.其中,子空間個(gè)數(shù)受兩個(gè)參數(shù)影響T=Ts×Tf,一個(gè)是樣本子集個(gè)數(shù)Ts,一個(gè)是特征子集個(gè)數(shù)Tf.
圖1 在Corel 2000 圖像庫(kù)上的分類(lèi)精度
實(shí)驗(yàn)1:子空間的特征維數(shù)d對(duì)分類(lèi)精度的影響
MSMIL 算法對(duì)子空間的特征維數(shù)d依賴(lài)較大,將d從50 增加到200,間隔10.Ts取15,Tf取50.圖7顯示了不同維數(shù)d時(shí)的分類(lèi)精度變化:
從圖2可以看出,子空間特征維數(shù)d取50-120時(shí),分類(lèi)精度逐漸提高,到120 時(shí),達(dá)到最高的分類(lèi)精度86.8%.繼續(xù)增大維數(shù)d,分類(lèi)精度不增反減.分析其原因,當(dāng)d取較小的值時(shí),子空間特征維數(shù)太小,子分類(lèi)器得到的數(shù)據(jù)信息較少,不利于訓(xùn)練分類(lèi)器;當(dāng)d取過(guò)大的值時(shí),一是削弱了子空間之間的差異性,另一個(gè)是高維特征不利于LGC分類(lèi)器上的圖的構(gòu)建.
實(shí)驗(yàn)2:特征子集個(gè)數(shù)Tf對(duì)分類(lèi)精度的影響
考察特征子集個(gè)數(shù)Tf,取Tf從10 增加到70.Ts取15,d取120.圖3給出了不同的特征子集個(gè)數(shù)Tf的分類(lèi)精度變化:
由圖3可以看出,特征子集個(gè)數(shù)Tf從10 增加到55 的過(guò)程中,分類(lèi)精度穩(wěn)步上升;從55 增加80 的過(guò)程中,分類(lèi)精度變化不大.在特征子集維數(shù)d取120 的情況下,55 個(gè)子分類(lèi)器的集成,已經(jīng)能達(dá)到較好的精度,此時(shí)再增加特征子集個(gè)數(shù)Tf(等同于增加子分類(lèi)器個(gè)數(shù)),也難以對(duì)分類(lèi)精度有所提升.
圖2 不同子空間特征維數(shù)d 時(shí)分類(lèi)精度
圖3 不同特征子集個(gè)數(shù)Tf 時(shí)分類(lèi)精度
實(shí)驗(yàn)3:樣本子集個(gè)數(shù)Ts對(duì)分類(lèi)精度的影響
將樣本子集個(gè)數(shù)Ts從1 增加到20.Tf取55,d取120.圖4給出了不同的樣本子集個(gè)數(shù)Ts的分類(lèi)精度變化:
從圖4可以看出,通過(guò)bagging 法構(gòu)建多個(gè)樣本子集,增加了子分類(lèi)器之間的差異性,能夠提高M(jìn)SEMIL 的分類(lèi)精度.當(dāng)Ts取13 時(shí),達(dá)到了最好的分類(lèi)精度.但是,之后再增加樣本子集,并不能給MSEMIL 帶來(lái)分類(lèi)精度的繼續(xù)提升.
圖4 不同樣本子集個(gè)數(shù)Ts 時(shí)分類(lèi)精度
本文提出的基于多個(gè)子空間集成的多示例學(xué)習(xí)算法(MSEMIL),通過(guò)變換示例特征空間為包生成一個(gè)包特征,將多示例學(xué)習(xí)轉(zhuǎn)換為有監(jiān)督學(xué)習(xí).利用集成學(xué)習(xí)來(lái)處理包特征的高維問(wèn)題,融合bagging 法構(gòu)造樣本子集和概率選取特征子集,集成多個(gè)子空間上構(gòu)造分類(lèi)器的差異性.用半監(jiān)督學(xué)習(xí)分類(lèi)器作為基礎(chǔ)分類(lèi)器,利用未標(biāo)簽數(shù)據(jù)來(lái)參與學(xué)習(xí),提高算法的分類(lèi)精度.在Corel 數(shù)據(jù)集上的實(shí)驗(yàn)表明,MSEMIL 具有分類(lèi)精度高的特點(diǎn).