本發(fā)明涉及涉及計(jì)算機(jī)人工智能領(lǐng)域,具體涉及一種基于多目標(biāo)優(yōu)化的高維數(shù)據(jù)半監(jiān)督集成分類方法。
背景技術(shù):
有標(biāo)簽的數(shù)據(jù)的獲得因?yàn)樾枰馁M(fèi)大量的人力和物力,但是無(wú)標(biāo)簽的數(shù)據(jù)往往比較容易被收集到。舉個(gè)例子,在文本挖掘中存在大量的無(wú)標(biāo)記的網(wǎng)頁(yè)信息,如果通過(guò)人工來(lái)一個(gè)個(gè)對(duì)網(wǎng)頁(yè)信息作出標(biāo)記則花費(fèi)的時(shí)間和其他支出是難以想象的。由于有監(jiān)督的學(xué)習(xí)若在在訓(xùn)練樣本數(shù)量不足的時(shí)候訓(xùn)練出的學(xué)習(xí)模型分類效果會(huì)比較差,而為了解決這種問(wèn)題,越來(lái)越多的研究者將其注意力放到了怎么利用無(wú)標(biāo)簽和有標(biāo)簽數(shù)據(jù)的半監(jiān)督分類領(lǐng)域中,比如在視頻標(biāo)注、圖像標(biāo)注、自然語(yǔ)言處理、蛋白質(zhì)功能預(yù)測(cè)、文本分類、基因信息處理等等的應(yīng)用。
但是單一的半監(jiān)督分類方法卻普遍存在對(duì)參數(shù)值敏感以及由于受到無(wú)標(biāo)簽數(shù)據(jù)限制而使得學(xué)習(xí)器功能泛化能力不夠好這兩個(gè)問(wèn)題。近年來(lái),為了解決單一半監(jiān)督分類方法帶來(lái)的問(wèn)題,Yu等人提出了基于隨機(jī)子空間下利用屬性采樣來(lái)學(xué)習(xí)高維數(shù)據(jù),并且在圖像處理方面得到了比較好的應(yīng)用。Li等人提出了基于協(xié)同訓(xùn)練理論以及隨機(jī)森林算法的協(xié)同森林算法。
目前的半監(jiān)督分類集成也有其局限性。
第一,大多數(shù)分類集成框架并不能很好的處理高位數(shù)據(jù)集。第二,傳統(tǒng)的半監(jiān)督分類集成都是考慮如何將無(wú)標(biāo)簽數(shù)據(jù)進(jìn)行標(biāo)簽處理并以此只是利用置信度較高的數(shù)據(jù)來(lái)進(jìn)行訓(xùn)練。第三,一些使用隨機(jī)子空間的方法僅僅只是將屬性進(jìn)行簡(jiǎn)單的采樣,并沒(méi)有對(duì)每一個(gè)子空間進(jìn)行優(yōu)化和選擇。第四,在集成學(xué)習(xí)方法中最后一般要對(duì)每個(gè)子空間的結(jié)果進(jìn)行結(jié)合來(lái)得到最終結(jié)果,但是現(xiàn)如今的方法僅僅是進(jìn)行簡(jiǎn)單的投票方法,并不能對(duì)每個(gè)被選擇出來(lái)的子空間在分類過(guò)程做出相應(yīng)的評(píng)價(jià)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是為了解決現(xiàn)有技術(shù)中的上述缺陷,提供一種基于多目標(biāo)優(yōu)化的高維數(shù)據(jù)半監(jiān)督集成分類方法。
本發(fā)明的目的可以通過(guò)采取如下技術(shù)方案達(dá)到:
一種基于多目標(biāo)優(yōu)化的高維數(shù)據(jù)半監(jiān)督集成分類方法,所述方法包括下列步驟:
S1、輸入訓(xùn)練數(shù)據(jù)集,將一個(gè)待分類處理的高維數(shù)據(jù)集X,行向量對(duì)應(yīng)樣本維,列向量對(duì)應(yīng)屬性維,然后利用訓(xùn)練數(shù)據(jù)的類標(biāo)簽來(lái)將數(shù)據(jù)劃分為無(wú)標(biāo)簽數(shù)據(jù)和有標(biāo)簽數(shù)據(jù);
S2、對(duì)輸入的上述訓(xùn)練數(shù)據(jù)集進(jìn)行數(shù)據(jù)歸一化,獲取第d列數(shù)據(jù)相對(duì)應(yīng)的最大值W(d)max和最小值W(d)min,將第d列數(shù)據(jù)根據(jù)如下的公式進(jìn)行轉(zhuǎn)換:
其中,為第d列第i個(gè)數(shù)據(jù),為更新之后的數(shù)據(jù),n為數(shù)據(jù)集中樣本總的數(shù)量,D為數(shù)據(jù)集對(duì)應(yīng)的維度數(shù),i∈{1,2,.....,n},d∈{1,2,.....,D};
S3、產(chǎn)生隨機(jī)子空間集合;
S31、獲取高維數(shù)據(jù)集的屬性維度數(shù),產(chǎn)生子空間的屬性維度數(shù);
S32、對(duì)原始數(shù)據(jù)集包括無(wú)標(biāo)簽和有標(biāo)簽數(shù)據(jù)重復(fù)隨機(jī)采取屬性列;
S33、重復(fù)步驟S31和步驟S32,直到產(chǎn)生S個(gè)隨機(jī)子空間;
S4、多目標(biāo)優(yōu)化選取子空間集合;
S41、將每個(gè)子空間的數(shù)據(jù)進(jìn)行三個(gè)目標(biāo)函數(shù)的計(jì)算,得到相對(duì)應(yīng)目標(biāo)函數(shù)的值;
S42、根據(jù)每個(gè)子空間的多目標(biāo)優(yōu)化函數(shù)的值確定其初始的優(yōu)先排序rank,找出非支配子空間集合P,即目標(biāo)函數(shù)都優(yōu)于其他子空間;
S43、將非支配子空間集合P根據(jù)standard DE計(jì)算方式再初始化含有P/2個(gè)子空間的子空間集合Q;
S44、通過(guò)基于Jaccard系數(shù)的近鄰函數(shù)來(lái)求解P中分別與Q在特征上的相似性和差異性;
S45、將步驟S44得到函數(shù)用于模糊成員函數(shù)中來(lái)得到P中各自子空間的在Q中各自k個(gè)近鄰子空間;
S46、將步驟S45得到的相鄰子空間通過(guò)聚集成員函數(shù)來(lái)隨機(jī)得到P中各自子空間的最近鄰的子空間;
S47、將P中各自子空間與相對(duì)應(yīng)的最近鄰子空間通過(guò)線性聚合函數(shù)得到一個(gè)新對(duì)應(yīng)集合W;
S48、通過(guò)快速非支配算法計(jì)算步驟S47中P與Q以及W中相對(duì)應(yīng)的子空間,得到最優(yōu)的子空間,更新P中的子空間;
S49、通過(guò)特征間交叉變換操作和變異變換操作產(chǎn)生新的子空間集合Pt,得到新的子空間集合P=P∪Pt;
S410、對(duì)特征集合P進(jìn)行非支配排序算法操作,通過(guò)排擠和精英保留策略選出S個(gè)子空間,組成新的特征集合P;
S411、對(duì)步驟S41到步驟S410進(jìn)行t次循環(huán)迭代;
S5、尋找特征子空間中最優(yōu)半監(jiān)督分類器;
S51、對(duì)步驟S4得到的子空間集合進(jìn)行屬性采樣處理;
S52、輸入樣本采樣操作的次數(shù)n;
S53、對(duì)步驟S51得到的屬性維采樣后的數(shù)據(jù)集根據(jù)樣本是否有標(biāo)簽分別進(jìn)行采樣操作,設(shè)置采樣率,其中有標(biāo)簽樣本中沒(méi)有被采集到的樣本作為測(cè)試樣本X_test,被選擇到的有標(biāo)簽樣本和無(wú)標(biāo)簽樣本為訓(xùn)練樣本X_train;
S54、用X_train對(duì)LapRLS分類器進(jìn)行訓(xùn)練并對(duì)X_test進(jìn)行測(cè)試,得到準(zhǔn)確率;
S55、返回步驟S53,直到采樣的次數(shù)達(dá)到n;
S56、對(duì)n個(gè)在屬性和樣本采樣下訓(xùn)練好的LapRLS分類器根據(jù)其分類準(zhǔn)確率進(jìn)行排序,選擇準(zhǔn)確率最高的作為該子空間的最優(yōu)分類器;
S57、對(duì)每個(gè)子空間分別執(zhí)行步驟S51到步驟56,直到結(jié)束;
S6、對(duì)測(cè)試樣本進(jìn)行分類;
S61、輸入測(cè)試樣本集T;
S62、取出一個(gè)測(cè)試樣本T進(jìn)行分類;
S63、將測(cè)試樣本T按各自子空間的屬性采樣維進(jìn)行采樣得到各個(gè)子空間適配的樣本;
S64、使用每個(gè)子空間的最優(yōu)分類器對(duì)相對(duì)應(yīng)的樣本進(jìn)行分類,每個(gè)子空間得到相對(duì)應(yīng)的結(jié)果;
S65、綜合每個(gè)子空間得到的分類結(jié)果,將被預(yù)測(cè)最多的分類結(jié)果作為最終分類結(jié)果;
S66、循環(huán)步驟S62到步驟S65,將測(cè)試樣本集T中的樣本都進(jìn)行分類預(yù)測(cè)結(jié)果集Lt;
S7、計(jì)算分類準(zhǔn)確率;
S71、輸入測(cè)試樣本集的標(biāo)簽集L;
S72、對(duì)比L與Lt,計(jì)算得到分類準(zhǔn)確率。
進(jìn)一步地,所述步驟S31、獲取高維數(shù)據(jù)集的屬性維度數(shù),產(chǎn)生子空間的屬性維度數(shù)具體為:
獲取高維數(shù)據(jù)集的屬性總維度數(shù)為D,產(chǎn)生子空間初始的屬性維度數(shù)為
所述步驟S32、對(duì)原始數(shù)據(jù)集包括無(wú)標(biāo)簽和有標(biāo)簽數(shù)據(jù)重復(fù)隨機(jī)采取屬性列具體為:
構(gòu)造一個(gè)[0,…,D]的特征標(biāo)識(shí)數(shù)組,然后隨機(jī)在特征標(biāo)識(shí)數(shù)組中隨機(jī)挑選d個(gè)屬性。
進(jìn)一步地,所述步驟S41中三個(gè)目標(biāo)函數(shù)分別為f1(R),f2(R),f3(R),其中,f1(R)代表特征與類別的相關(guān)性,f2(R)代表特征之間的冗余性,f3(R)代表數(shù)據(jù)集間的結(jié)構(gòu)誤差,所述步驟S41具體過(guò)程如下:
整體的多目標(biāo)優(yōu)化函數(shù)為:
其中,R為子空間的特征集合,
目標(biāo)函數(shù)f1(R)為
其中(xi,xj)∈ΩML為屬于相同類別的樣本對(duì),(xi,xj)∈ΩCL為屬于不同類別的樣本對(duì),r為R特征集合中對(duì)應(yīng)的第r個(gè)特征,fri代表樣本i的第r個(gè)特征相對(duì)應(yīng)的數(shù)據(jù)集,d為子空間中特征集合的數(shù)量;
目標(biāo)函數(shù)
其中,
p(fr,fc)是皮爾遜相關(guān)系數(shù),其中和是對(duì)應(yīng)的fr和fc相對(duì)應(yīng)的特征數(shù)據(jù)矩陣的平均值,然后通過(guò)互信息即I(fr,fc)來(lái)衡量?jī)蓚€(gè)特征之間的相似性,所以f2(R)求解的是子空間中各個(gè)特征之間相似性的平均值;
目標(biāo)函數(shù)f3(R)為
其中
fiR是在子空間R下相對(duì)應(yīng)的特征樣本矩陣,通過(guò)求解樣本與樣本之間的KNN矩陣來(lái)確定兩個(gè)樣本之間的關(guān)系,運(yùn)用有標(biāo)簽樣本的信息來(lái)構(gòu)造樣本關(guān)系矩陣W。
進(jìn)一步地,所述步驟S42具體過(guò)程為:
將求出的子空間的多目標(biāo)優(yōu)化函數(shù)值進(jìn)行非支配排序,即尋找子空間的Pareto解,這是一個(gè)循環(huán)的適應(yīng)值分級(jí)過(guò)程,即先找出子空間集合中的非支配解集,記為第一層非支配層F,將其所有的子空間賦予非支配序irank=1,其中irank是個(gè)體i的非支配序值,并從子空間集合中除去,然后繼續(xù)找出余下子空間中的非支配解集,記為第二非支配層F2,子空間被賦予非支配序irank=2,依照這樣的循環(huán),直到整個(gè)子空間集合被分層,并且同一分層內(nèi)的個(gè)體具有相同的非支配序irank。
進(jìn)一步地,所述步驟S48具體過(guò)程為:
子空間集合P中各個(gè)子空間之間的關(guān)系主要是先產(chǎn)生大小為子空間集合P一半的新子空間集合Q,其中Q是通過(guò)如下公式產(chǎn)生:
Qi=Pi1+δ(Pi2-Pi3)
其中i是Q中第i個(gè)子空間,并且i∈[0,|P|/2],i1,i2,i3∈[0,|P|],Pi2-Pi3代表Pi2與Pi3兩個(gè)子空間中不同時(shí)存在的特征,δ∈(0,1),代表只取Pi2與Pi3得特征差集的一部分,Pi1+δ(Pi2-Pi3)代表取特征集合的交集;
在得到新子空間集合Q之后,求解子空間P中每個(gè)子空間與Q中的子空間之間的關(guān)系是否存在近鄰關(guān)系,通過(guò)下列公式來(lái)得到:
其中,χ(Pi,Qi′)為來(lái)處理僅包含非對(duì)稱的二元屬性的對(duì)象的Jaccard系數(shù),即將選中的特征標(biāo)為1,沒(méi)選中的特征標(biāo)為0,進(jìn)行兩個(gè)特征集的對(duì)比來(lái)得到相似系數(shù),選將計(jì)算得到的Jaccard系數(shù)進(jìn)行轉(zhuǎn)置,上述公式中k為Pi的k個(gè)近鄰值;
隨后計(jì)算k個(gè)近鄰值得總值,即
根據(jù)CM來(lái)計(jì)算第i'個(gè)子空間的間隔值域,即MIi'=[CMi'-1,CMi']
其中,CMi'=CMi'-1+m(Pi,Qi')
CM0=0
通過(guò)產(chǎn)生一個(gè)在[0,CM]之間的值來(lái)確定Pi相對(duì)應(yīng)的近鄰子空間;
依據(jù)每個(gè)子空間Pi對(duì)應(yīng)的近鄰子空間Qi來(lái)線性并差集產(chǎn)生一個(gè)結(jié)合出來(lái)的子空間Wi,隨后對(duì)這三個(gè)子空間進(jìn)行目標(biāo)值的對(duì)比來(lái)得到最優(yōu)的子空間,以此來(lái)成為新的Pi,相對(duì)應(yīng)的公式如下:
Wi=Pd+α|τ|(Pd-Pnd);
其中|τ|是通過(guò)高斯分布隨機(jī)得到的系數(shù),即
其中t為迭代循環(huán)到達(dá)的次數(shù),T總的迭代循環(huán)的次數(shù)。
進(jìn)一步地,所述步驟S410具體過(guò)程為:
通過(guò)特征的交叉變換操作以及變異操作來(lái)產(chǎn)生新的子空間集合Pt來(lái)增加子空間的多樣性,而交叉變換操作和變異操作是通過(guò)一個(gè)隨機(jī)值來(lái)確定的,首先假設(shè)舊的兩個(gè)子空間為:
通過(guò)特征的交叉變換操作會(huì)產(chǎn)生新的兩個(gè)子空間為:
r1和r2是兩個(gè)交叉變換的點(diǎn),有r1<r2,r1∈{1,...,m'},r2∈{1,...,n'},m'和n'可不相同,因?yàn)殡S著子空間的變化,兩者由初始的相等會(huì)慢慢變成不等;
而通過(guò)變異操作得到的新的子空間為:
其中,r3是一個(gè)變異點(diǎn),r3∈{1,...,m'};
經(jīng)過(guò)交叉變換操作和變異操作之后產(chǎn)生新的子空間集合P=P∪Pt,
最后,再對(duì)特征子空間集合進(jìn)行非支配排序操作,并通過(guò)排擠和精英保留策略來(lái)選出被優(yōu)化過(guò)的只含有S個(gè)子空間的新的子空間集合P。
進(jìn)一步地,所述步驟S53具體過(guò)程為:
首先根據(jù)各個(gè)子空間進(jìn)行相對(duì)應(yīng)的特征采樣,然后將其分為有標(biāo)簽的樣本和無(wú)標(biāo)簽的樣本,并且輸入樣本采樣操作的次數(shù)n,其中屬性采樣得到樣本的函數(shù)為X′i=XPi,
X′i是第i個(gè)子空間得到的樣本,X是輸入的高維數(shù)據(jù)集矩陣,Pi第i個(gè)子空間的D×D的特征標(biāo)識(shí)對(duì)角矩陣,對(duì)角線上0表示該特征沒(méi)被選中,1代表該特征被選中;
接著根據(jù)得到的屬性維采樣后的數(shù)據(jù)集根據(jù)樣本是否有標(biāo)簽分別進(jìn)行樣本維的采樣操作,設(shè)置采樣率,其中有標(biāo)簽樣本中沒(méi)有被采集到的樣本作為測(cè)試樣本X_test,被選擇到的有標(biāo)簽樣本和無(wú)標(biāo)簽樣本為訓(xùn)練樣本X_train。
進(jìn)一步地,所述步驟S54具體過(guò)程為:
用X_train對(duì)LapRLS半監(jiān)督分類器進(jìn)行訓(xùn)練,LapRLS的目標(biāo)函數(shù)為:
f(x)=WTx+b
其中Zij代表假設(shè)yi是xi標(biāo)簽,并且c是類別的數(shù)量,對(duì)于多類別的情況,可以把yi用向量表示,即Xj是屬于第j的類的子集,用Z=[Z1,Z2,...,Zn]表示一個(gè)c×n的標(biāo)簽矩陣,Zi是向量xi的標(biāo)簽,其中,對(duì)于一個(gè)未標(biāo)記樣本xj,所有的Zj元素都是零,W∈Rm×c,b∈Rc并且f(x)∈Rc,最后訓(xùn)練得到參數(shù)W和參數(shù)b,ψ(xi,Zi,fi)≥0是預(yù)先定義的損耗函數(shù)并且fi代表著f(xi),第二個(gè)變量是為了減小樣本間局部流形結(jié)構(gòu)的差異,最后一個(gè)變量用來(lái)控制f(xi)的復(fù)雜度并且避免過(guò)度擬合,α和β是平衡為和的標(biāo)量系數(shù),目標(biāo)是使H(W,b)最??;
對(duì)用訓(xùn)練得到的分類器對(duì)X_test進(jìn)行測(cè)試,即對(duì)于一個(gè)測(cè)試樣本xi,其被預(yù)測(cè)到的標(biāo)簽是:
接著計(jì)算X_test被預(yù)測(cè)準(zhǔn)確的樣本的數(shù)量,得到的分類準(zhǔn)確率作為該次樣本采樣后分類器的表現(xiàn)。
進(jìn)一步地,所述步驟S64具體過(guò)程為:
對(duì)每個(gè)樣本根據(jù)子空間的屬性采樣進(jìn)行相對(duì)應(yīng)的操作,然后利用子空間的最優(yōu)分類器進(jìn)行分類,得到各個(gè)子空間的分類結(jié)果,最后,對(duì)每一個(gè)測(cè)試樣本數(shù)據(jù),通過(guò)學(xué)習(xí)器投票法整合每一個(gè)子空間的預(yù)測(cè)結(jié)果lb(rb)來(lái)得到最終預(yù)測(cè)結(jié)果lB,循環(huán)所有測(cè)試樣本之后得到測(cè)試樣本經(jīng)過(guò)半監(jiān)督分類器分類后的樣本標(biāo)簽集Lt,其中,最終預(yù)測(cè)結(jié)果lB的計(jì)算公式如下:
進(jìn)一步地,所述步驟S72具體過(guò)程為:
根據(jù)輸入測(cè)試樣本集的標(biāo)簽集L,對(duì)比L與Lt,計(jì)算出最后的分類準(zhǔn)確率,即其中TP是分類準(zhǔn)確的樣本數(shù),F(xiàn)P是分類錯(cuò)誤的樣本數(shù)。
與傳統(tǒng)的半監(jiān)督集成分類算法相比,本發(fā)明技術(shù)有如下創(chuàng)新點(diǎn):
第一,不僅僅通過(guò)采樣隨機(jī)子空間的方法來(lái)使得發(fā)明能更好的處理高位數(shù)據(jù)集并提高了子空間的多樣性,還考慮了子空間中特征對(duì)分類效果的好壞,運(yùn)用了多目標(biāo)的方法來(lái)求解最優(yōu)的子空間集合;
第二,傳統(tǒng)的不管是分類還是半監(jiān)督分類集成算法中很少能考慮子空間之間的關(guān)系,但是本發(fā)明中充分考慮子空間之間的關(guān)系,使得整體的框架能更好的集合起來(lái),增加算法的穩(wěn)定性;
第三,本發(fā)明充分利用了無(wú)標(biāo)簽數(shù)據(jù)在流型理論上的應(yīng)用,并很好的將有標(biāo)簽數(shù)據(jù)利用到優(yōu)化子空間分類器中,通過(guò)采樣的方法來(lái)優(yōu)化子空間的分類器;
第四,利用分別采樣無(wú)標(biāo)簽和有標(biāo)簽數(shù)據(jù)來(lái)得到最優(yōu)化分類器,通過(guò)在樣本上的采樣來(lái)提高框架整體的泛化能力。
附圖說(shuō)明
圖1是本發(fā)明公開(kāi)的基于多目標(biāo)優(yōu)化的高維數(shù)據(jù)半監(jiān)督集成分類方法的流程圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
實(shí)施例
附圖1是本發(fā)明公開(kāi)的基于多目標(biāo)優(yōu)化的高維數(shù)據(jù)半監(jiān)督集成分類方法的流程圖,下面結(jié)合附圖1對(duì)本發(fā)明的步驟做進(jìn)一步描述。
步驟S1、輸入訓(xùn)練數(shù)據(jù)集;
輸入一個(gè)待分類處理的高維數(shù)據(jù)集X,行向量對(duì)應(yīng)樣本維,列向量對(duì)應(yīng)屬性維,然后訓(xùn)練數(shù)據(jù)的類標(biāo)簽來(lái)將數(shù)據(jù)劃分為占比為90%的無(wú)標(biāo)簽數(shù)據(jù)和占比為10%的有標(biāo)簽數(shù)據(jù)。
步驟S2、數(shù)據(jù)歸一化;
對(duì)輸入的上述訓(xùn)練數(shù)據(jù)集進(jìn)行數(shù)據(jù)歸一化,具體過(guò)程如下:
獲取第d列數(shù)據(jù)相對(duì)應(yīng)的最大值W(d)max和最小值W(d)min,將第d列數(shù)據(jù)根據(jù)如下的公式進(jìn)行轉(zhuǎn)換:
其中,為第d列第i個(gè)數(shù)據(jù),為更新之后的數(shù)據(jù),n為數(shù)據(jù)集中樣本總的數(shù)量,D為數(shù)據(jù)集對(duì)應(yīng)的維度數(shù),i∈{1,2,.....,n},d∈{1,2,.....,D}。
步驟S3、產(chǎn)生隨機(jī)子空間集合;
S31、獲取高維數(shù)據(jù)集的屬性維度數(shù),產(chǎn)生子空間的屬性維度數(shù);
在具體的實(shí)施方式中,該步驟如下:
獲取高維數(shù)據(jù)集的屬性總維度數(shù)為D,產(chǎn)生子空間初始的屬性維度數(shù)為
S32、對(duì)原始數(shù)據(jù)集包括無(wú)標(biāo)簽和有標(biāo)簽數(shù)據(jù)隨機(jī)采取屬性列,可重復(fù)采取;
在具體的實(shí)施方式中,該步驟如下:
構(gòu)造一個(gè)[0,…,D]的特征標(biāo)識(shí)數(shù)組,然后隨機(jī)在特征標(biāo)識(shí)數(shù)組中隨機(jī)挑選d個(gè)屬性;
S33、重復(fù)步驟S31和步驟S32,直到產(chǎn)生S個(gè)隨機(jī)子空間;
步驟S4、多目標(biāo)優(yōu)化選取子空間集合;
S41、將每個(gè)子空間的數(shù)據(jù)進(jìn)行三個(gè)目標(biāo)函數(shù)的計(jì)算,得到相對(duì)應(yīng)目標(biāo)函數(shù)的值;
S42、根據(jù)每個(gè)子空間的多目標(biāo)優(yōu)化函數(shù)的值確定其初始的優(yōu)先排序rank,找出非支配子空間集合P,即目標(biāo)函數(shù)都優(yōu)于其他子空間;
S43、將非支配子空間集合P根據(jù)standard DE計(jì)算方式再初始化含有P/2個(gè)子空間的子空間集合Q;
S44、通過(guò)基于Jaccard系數(shù)的近鄰函數(shù)來(lái)求解P中分別與Q在特征上的相似性和差異性;
S45、將步驟S44得到函數(shù)用于模糊成員函數(shù)中來(lái)得到P中各自子空間的在Q中各自k個(gè)近鄰子空間;
S46、將步驟S45得到的相鄰子空間通過(guò)聚集成員函數(shù)來(lái)隨機(jī)得到P中各自子空間的最近鄰的子空間;
S47、將P中各自子空間與相對(duì)應(yīng)的最近鄰子空間通過(guò)線性聚合函數(shù)得到一個(gè)新對(duì)應(yīng)集合W;
S48、通過(guò)快速非支配算法計(jì)算步驟S47中P與Q以及W中相對(duì)應(yīng)的子空間,得到最優(yōu)的子空間,更新P中的子空間;
S49、通過(guò)特征間交叉變換操作和變異變換操作產(chǎn)生新的子空間集合Pt,得到新的子空間集合P=P∪Pt;
S410、對(duì)特征集合P進(jìn)行非支配排序算法操作,通過(guò)排擠和精英保留策略選出S個(gè)子空間,組成新的特征集合P;
S411、對(duì)步驟S41到步驟S410進(jìn)行t次循環(huán)迭代。
在具體實(shí)施方式中,首先,將步驟S3得到的子空間集合作為優(yōu)化初始值,然后計(jì)算每個(gè)子空間相對(duì)應(yīng)的目標(biāo)函數(shù)的值,其中,涉及的三個(gè)目標(biāo)函數(shù)為特征與類別的相關(guān)性,特征之間的冗余性,數(shù)據(jù)集間的結(jié)構(gòu)誤差。特征與類別的相關(guān)性通過(guò)計(jì)算相對(duì)應(yīng)子空間特征構(gòu)造出來(lái)的樣本在相同類之間的關(guān)系以及不同類之間的關(guān)系,所以計(jì)算這一目標(biāo)函數(shù)需要先計(jì)算出該高維數(shù)據(jù)集中的同類樣本對(duì)和異類樣本對(duì),隨后計(jì)算出該子空間特征與類別相關(guān)性的大小。特征之間的冗余性是通過(guò)計(jì)算特征之間的皮爾遜系數(shù)以此來(lái)確定互信息來(lái)得到子空間特征冗余性的大小。數(shù)據(jù)集間(樣本間)的結(jié)構(gòu)誤差指的是子空間在相對(duì)應(yīng)特征選擇后之間的差異性。
整體的多目標(biāo)優(yōu)化函數(shù)為:
其中,R為子空間的特征集合,f1(R),f2(R),f3(R)分別為三個(gè)子目標(biāo)函數(shù)。
目標(biāo)函數(shù)f1(R)為
其中(xi,xj)∈ΩML為屬于相同類別的樣本對(duì),(xi,xj)∈ΩCL為屬于不同類別的樣本對(duì),r為R特征集合中對(duì)應(yīng)的第r個(gè)特征,fri代表樣本i的第r個(gè)特征相對(duì)應(yīng)的數(shù)據(jù)集,d為子空間中特征集合的數(shù)量。
目標(biāo)函數(shù)f2(R)為
其中,
p(fr,fc)是皮爾遜相關(guān)系數(shù),其中和是對(duì)應(yīng)的fr和fc相對(duì)應(yīng)的特征數(shù)據(jù)矩陣的平均值。然后通過(guò)互信息即I(fr,fc)來(lái)衡量?jī)蓚€(gè)特征之間的相似性。所以f2(R)求解的是子空間中各個(gè)特征之間相似性的平均值,該值越小越好。
目標(biāo)函數(shù)f3(R)為
其中
fiR是在子空間R下相對(duì)應(yīng)的特征樣本矩陣,f3(R)這個(gè)目標(biāo)函數(shù)主要考慮的是在不同特征組合的情況下,如果兩個(gè)樣本點(diǎn)之間在原始特征下是相近的,那么好的特征組合應(yīng)該在相應(yīng)選擇之后也要使得這兩個(gè)樣本之間是近。而保留原始特征下樣本之間的關(guān)系是通過(guò)W矩陣的,即通過(guò)求解樣本與樣本之間的KNN矩陣來(lái)確定兩個(gè)樣本之間的關(guān)系,當(dāng)然這個(gè)過(guò)程也會(huì)運(yùn)用到有標(biāo)簽樣本的信息來(lái)構(gòu)造這個(gè)樣本關(guān)系矩陣W。
將求出的子空間的多目標(biāo)優(yōu)化函數(shù)值進(jìn)行非支配排序,即尋找子空間的Pareto解。這是一個(gè)循環(huán)的適應(yīng)值分級(jí)過(guò)程,即先找出子空間集合中的非支配解集,記為第一層非支配層F,將其所有的子空間賦予非支配序irank=1(其中irank是個(gè)體i的非支配序值),并從子空間集合中除去,然后繼續(xù)找出余下子空間中的非支配解集,記為第二非支配層F2,子空間被賦予非支配序irank=2,依照這樣的循環(huán),直到整個(gè)子空間集合被分層,并且同一分層內(nèi)的個(gè)體具有相同的非支配序irank。
考慮子空間集合P中各個(gè)子空間之間的關(guān)系主要是先產(chǎn)生大小為子空間集合P一半的新子空間集合Q,其中Q是通過(guò)如下公式產(chǎn)生:
Qi=Pi1+δ(Pi2-Pi3)
其中i是Q中第i個(gè)子空間,并且i∈[0,|P|/2],i1,i2,i3∈[0,|P|],但三個(gè)隨機(jī)數(shù)并不相同。Pi2-Pi3代表Pi2與Pi3兩個(gè)子空間中不同時(shí)存在的特征,δ∈(0,1),代表只取Pi2與Pi3得特征差集的一部分,Pi1+δ(Pi2-Pi3)代表取特征集合的交集。
在得到新子空間集合Q之后,求解子空間P中每個(gè)子空間與Q中的子空間之間的關(guān)系是否存在近鄰關(guān)系,通過(guò)下列公式來(lái)得到:
其中χ(Pi,Qi′)為來(lái)處理僅包含非對(duì)稱的二元屬性的對(duì)象的Jaccard系數(shù),即將選中的特征標(biāo)為1,沒(méi)選中的特征標(biāo)為0進(jìn)行兩個(gè)特征集的對(duì)比來(lái)得到相似系數(shù),其中一般的Jaccard系數(shù)越大代表越相關(guān),反之越不相關(guān),但為了配合m(Pi,Qi'),選將計(jì)算得到的Jaccard系數(shù)進(jìn)行轉(zhuǎn)置來(lái)得到系數(shù)越大越不相關(guān)的效果。公式中k為Pi的k個(gè)近鄰值,在發(fā)明中取k=2,是模糊指數(shù),在發(fā)明中取q=2。
隨后計(jì)算k個(gè)近鄰值得總值,即
根據(jù)CM來(lái)計(jì)算第i'個(gè)子空間的間隔值域,即MIi'=[CMi'-1,CMi'];
其中,CMi'=CMi'-1+m(Pi,Qi')
CM0=0
通過(guò)產(chǎn)生一個(gè)在[0,CM]之間的值來(lái)確定Pi相對(duì)應(yīng)的近鄰子空間,本發(fā)明是從k=2個(gè)子空間中挑選一個(gè)。
依據(jù)每個(gè)子空間Pi對(duì)應(yīng)的近鄰子空間Qi來(lái)線性并差集產(chǎn)生一個(gè)結(jié)合出來(lái)的子空間Wi,隨后對(duì)這三個(gè)子空間進(jìn)行目標(biāo)值的對(duì)比來(lái)得到最優(yōu)的子空間,以此來(lái)成為新的Pi。相對(duì)應(yīng)的公式如下:
Wi=Pd+α|τ|(Pd-Pnd);
其中|τ|是通過(guò)高斯分布隨機(jī)得到的系數(shù),即
在本發(fā)明中,μ1=0,γ1=4,γ2=2,t為迭代循環(huán)到達(dá)的次數(shù),T總的迭代循環(huán)的次數(shù),所以隨著t的遞增可以控制η1的值也相對(duì)應(yīng)地遞減。
在分析以及得到新的子空間P集合后,通過(guò)特征的交叉變換操作以及變異操作來(lái)產(chǎn)生新的子空間集合Pt來(lái)增加子空間的多樣性。而交叉變換操作和變異操作是通過(guò)一個(gè)隨機(jī)值來(lái)確定的。
首先假設(shè)舊的兩個(gè)子空間為
通過(guò)特征的交叉變換操作會(huì)產(chǎn)生新的兩個(gè)子空間為
r1和r2是兩個(gè)交叉變換的點(diǎn),有r1<r2,r1∈{1,...,m'},r2∈{1,...,n'},m'和n'可不相同,因?yàn)殡S著子空間的變化,兩者由初始的相等會(huì)慢慢變成不等。
而通過(guò)變異操作得到的新的子空間為
r3是一個(gè)變異點(diǎn),有r3∈{1,...,m'}。
經(jīng)過(guò)交叉變換操作和變異操作之后產(chǎn)生新的子空間集合P=P∪Pt。
最后,再對(duì)特征子空間集合進(jìn)行非支配排序操作,并通過(guò)排擠和精英保留策略來(lái)選出被優(yōu)化過(guò)的只含有S個(gè)子空間的新的子空間集合P。
對(duì)以上操作進(jìn)行T次迭代直到結(jié)束,得到最終的子空間集合Pend。
步驟S5、尋找特征子空間中最優(yōu)半監(jiān)督分類器;
S51、對(duì)步驟S4得到的子空間集合進(jìn)行屬性采樣處理;
S52、輸入樣本采樣操作的次數(shù)n;
S53、對(duì)步驟S51得到的屬性維采樣后的數(shù)據(jù)集根據(jù)樣本是否有標(biāo)簽分別進(jìn)行采樣操作,設(shè)置采樣率為0.7,其中有標(biāo)簽樣本中沒(méi)有被采集到的樣本作為測(cè)試樣本X_test,被選擇到的有標(biāo)簽樣本和無(wú)標(biāo)簽樣本為訓(xùn)練樣本X_train;
S54、用X_train對(duì)LapRLS分類器進(jìn)行訓(xùn)練并對(duì)X_test進(jìn)行測(cè)試,得到準(zhǔn)確率;
S55、返回步驟S53,直到采樣的次數(shù)達(dá)到n;
S56、對(duì)n個(gè)在屬性和樣本采樣下訓(xùn)練好的LapRLS分類器根據(jù)其分類準(zhǔn)確率進(jìn)行排序,選擇準(zhǔn)確率最高的作為該子空間的最優(yōu)分類器;
S57、對(duì)每個(gè)子空間分別執(zhí)行步驟S51到步驟56,直到結(jié)束。
在具體實(shí)施方式中,將步驟S4中的子空間集合對(duì)樣本根據(jù)各個(gè)子空間進(jìn)行相對(duì)應(yīng)的特征采樣,然后將其分為有標(biāo)簽的樣本和無(wú)標(biāo)簽的樣本,并且輸入樣本采樣操作的次數(shù)n。其中屬性采樣得到樣本的函數(shù)為
X'i=XPi
X′i是第i個(gè)子空間得到的樣本,X是輸入的高維數(shù)據(jù)集矩陣,Pi第i個(gè)子空間的D×D的特征標(biāo)識(shí)對(duì)角矩陣,對(duì)角線上0表示該特征沒(méi)被選中,1代表該特征被選中。
然后根據(jù)得到的屬性維采樣后的數(shù)據(jù)集根據(jù)樣本是否有標(biāo)簽分別進(jìn)行樣本維的采樣操作,設(shè)置采樣率為0.7,其中有標(biāo)簽樣本中沒(méi)有被采集到的樣本作為測(cè)試樣本X_test,被選擇到的有標(biāo)簽樣本和無(wú)標(biāo)簽樣本為訓(xùn)練樣本X_train。
用X_train對(duì)LapRLS半監(jiān)督分類器進(jìn)行訓(xùn)練,LapRLS的目標(biāo)函數(shù)為
f(x)=WTx+b
其中Zij代表假設(shè)yi是xi標(biāo)簽,并且c是類別的數(shù)量。對(duì)于多類別的情況,可以把yi用向量表示,即Xj是屬于第j的類的子集,用Z=[Z1,Z2,...,Zn]表示一個(gè)c×n的標(biāo)簽矩陣;Zi是向量xi的標(biāo)簽。其中,對(duì)于一個(gè)未標(biāo)記樣本xj,所有的Zj元素都是零。W∈Rm×c,b∈Rc并且f(x)∈Rc,最后訓(xùn)練得到參數(shù)W和參數(shù)b,ψ(xi,Zi,fi)≥0是預(yù)先定義的損耗函數(shù)并且fi代表著f(xi)。第二個(gè)變量是為了減小樣本間局部流形結(jié)構(gòu)的差異。最后一個(gè)變量用來(lái)控制f(xi)的復(fù)雜度并且避免過(guò)度擬合。α和β是平衡為和的標(biāo)量系數(shù)。我們的目標(biāo)是使H(W,b)最小。
對(duì)用訓(xùn)練得到的分類器對(duì)X_test進(jìn)行測(cè)試,即對(duì)于一個(gè)測(cè)試樣本xi,它被預(yù)測(cè)到的標(biāo)簽將會(huì)是:
緊接著計(jì)算X_test被預(yù)測(cè)準(zhǔn)確的樣本的數(shù)量,得到的分類準(zhǔn)確率作為該次樣本采樣后分類器的表現(xiàn)。
最后對(duì)該子空間進(jìn)行n次樣本采樣來(lái)得到分類準(zhǔn)確率最好的一次采樣,作為該子空間最后分類的分類器,如上所述,計(jì)算所有子空間的最優(yōu)分類器,這個(gè)步驟可以通過(guò)多線程并發(fā)來(lái)計(jì)算。
步驟S6、對(duì)測(cè)試樣本進(jìn)行分類;
S61、輸入測(cè)試樣本集T;
S62、取出一個(gè)測(cè)試樣本T進(jìn)行分類;
S63、將T按各自子空間的屬性采樣維進(jìn)行采樣得到各個(gè)子空間適配的樣本;
S64、使用每個(gè)子空間的最優(yōu)分類器對(duì)相對(duì)應(yīng)的樣本進(jìn)行分類,每個(gè)子空間得到相對(duì)應(yīng)的結(jié)果;
S65、綜合每個(gè)子空間得到的分類結(jié)果,將被預(yù)測(cè)最多的分類結(jié)果作為最終分類結(jié)果;
S66、循環(huán)步驟S62到步驟S65,將測(cè)試樣本集T中的樣本都進(jìn)行分類預(yù)測(cè)結(jié)果集Lt。
在具體實(shí)施方式中,對(duì)一開(kāi)始劃分出來(lái)沒(méi)被訓(xùn)練的樣本進(jìn)行測(cè)試,對(duì)每個(gè)樣本根據(jù)子空間的屬性采樣進(jìn)行相對(duì)應(yīng)的操作,然后利用子空間的最優(yōu)分類器進(jìn)行分類,得到各個(gè)子空間的分類結(jié)果,最后,對(duì)每一個(gè)測(cè)試樣本數(shù)據(jù),通過(guò)學(xué)習(xí)器“投票法”整合每一個(gè)子空間的預(yù)測(cè)結(jié)果lb(rb)來(lái)得到最終預(yù)測(cè)結(jié)果lB,循環(huán)所有測(cè)試樣本之后得到測(cè)試樣本經(jīng)過(guò)半監(jiān)督分類器分類后的樣本標(biāo)簽集Lt。其中,最終預(yù)測(cè)結(jié)果lB的計(jì)算公式如下:
步驟S7、計(jì)算得到分類準(zhǔn)確率;
S71、輸入測(cè)試樣本集的標(biāo)簽集L;
S72、對(duì)比L與Lt,計(jì)算出最后的分類準(zhǔn)確率。
在具體實(shí)施方式中,輸入測(cè)試樣本集的標(biāo)簽集L,對(duì)比L與Lt,計(jì)算出最后的分類準(zhǔn)確率,即
其中TP是分類準(zhǔn)確的樣本數(shù),F(xiàn)P是分類錯(cuò)誤的樣本數(shù),由于使用的高位數(shù)據(jù)集不存在不平衡數(shù)據(jù)集,所以只采用了分類準(zhǔn)確率來(lái)評(píng)判我們的發(fā)明的效果。
上述實(shí)施例為本發(fā)明較佳的實(shí)施方式,但本發(fā)明的實(shí)施方式并不受上述實(shí)施例的限制,其他的任何未背離本發(fā)明的精神實(shí)質(zhì)與原理下所作的改變、修飾、替代、組合、簡(jiǎn)化,均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護(hù)范圍之內(nèi)。