王新利,李雨沛,李海洋
(1 上海理工大學(xué) 理學(xué)院,上海 200093;2 西交利物浦大學(xué) 智能工程學(xué)院,江蘇 蘇州 215000)
近年來,隨著醫(yī)療診斷數(shù)據(jù)增多,檢測(cè)指標(biāo)也隨之增加,如何從大批量的診斷指標(biāo)中篩選出對(duì)診療判斷最為有利的指標(biāo),是機(jī)器學(xué)習(xí)在醫(yī)療領(lǐng)域應(yīng)用中的一個(gè)研究熱點(diǎn)[1]。
現(xiàn)有的研究通常將診斷的指標(biāo)看作特征,患病的程度看作類別,篩選診斷指標(biāo),即選擇對(duì)判斷類別有利的特征,去除與判斷類別無關(guān)的指標(biāo),也就是選擇“好的”特征,去除“壞的”特征。特征選擇主要有3 種常用的方法,分別是包裹法、嵌入法和過濾法。與過濾法相比,包裹法和嵌入法的特征選擇效果更好,但是存在過擬合、計(jì)算復(fù)雜度高和效率低等問題,而過濾法的評(píng)價(jià)準(zhǔn)則簡(jiǎn)單、運(yùn)算效率高,應(yīng)用范圍更廣泛[2]。
過濾法根據(jù)不同的評(píng)價(jià)準(zhǔn)則來選擇最優(yōu)的特征子集,常用的評(píng)價(jià)準(zhǔn)則有距離度量標(biāo)準(zhǔn)、一致性度量標(biāo)準(zhǔn)、依賴性度量標(biāo)準(zhǔn)和信息度量標(biāo)準(zhǔn)等[3]。距離度量標(biāo)準(zhǔn)用幾何距離或者概率距離的大小來度量特征;一致性度量標(biāo)準(zhǔn)根據(jù)不一致樣本數(shù)與總體樣本比率來評(píng)估特征;依賴性度量標(biāo)準(zhǔn)則根據(jù)特征與類別的相關(guān)系數(shù)和特征之間的冗余性來判斷特征;信息度量標(biāo)準(zhǔn)通過熵、互信息以及交互信息等來評(píng)價(jià)特征。相比于其他度量標(biāo)準(zhǔn),信息度量標(biāo)準(zhǔn)可以衡量特征之間、特征與類別之間的非線性關(guān)系,因此信息度量標(biāo)準(zhǔn)作為過濾法的特征選擇準(zhǔn)則被廣泛應(yīng)用[4]。在信息度量標(biāo)準(zhǔn)中,“好的”特征指與某類別互信息大的特征,“壞的”特征指與已選特征的互信息大的特征?;バ畔⒖梢远攘刻卣髋c類別的相關(guān)性或兩個(gè)特征之間的相關(guān)性,互信息越大,則相關(guān)性越大。特別地,兩個(gè)特征之間的“相關(guān)”稱為“冗余”,兩者之間的互信息越大則冗余性越大。
另一方面,交互信息也是信息度量標(biāo)準(zhǔn)中的一個(gè)重要的評(píng)價(jià)指標(biāo)。例如,在異或問題中,兩個(gè)特征分別與類別無關(guān),但是這兩個(gè)特征聯(lián)合起來與類別有強(qiáng)相關(guān)性,說明這兩個(gè)特征有交互性,稱這兩個(gè)特征為交互特征。在許多特征選擇的算法設(shè)計(jì)中,交互信息也越來越被重視。姜文煊等[5]將交互信息加入到基于互信息的評(píng)價(jià)指標(biāo)中,得到一種新的評(píng)價(jià)標(biāo)準(zhǔn),并將其應(yīng)用于地質(zhì)評(píng)價(jià)中,獲得了較高的評(píng)價(jià)準(zhǔn)確率;陳昊楠等[6]根據(jù)交互信息選擇交互特征,根據(jù)條件互信息最大化選擇低冗余的特征,將兩者結(jié)合得到一種新的特征選擇方法,并應(yīng)用于癌癥分類中,有效提高了分類的準(zhǔn)確率;顧翔元等[7]使用對(duì)稱不確定性計(jì)算特征的相關(guān)性,再計(jì)算特征的交互信息來消除冗余特征,在不同的分類器上都獲得了較高的精度。
根據(jù)信息度量標(biāo)準(zhǔn)的過濾法進(jìn)行特征選擇時(shí),互信息特征選擇算法(MIFS)是一種經(jīng)典的算法,其根據(jù)特征與類別之間的互信息來衡量二者的相關(guān),用特征之間的互信息來衡量?jī)蓚€(gè)特征的冗余,通過參數(shù)來調(diào)整去除冗余的大小[8]。MIFS 算法可以有效地選出與類別相關(guān)性大,特征之間冗余性小的特征,但是隨著已選特征數(shù)量增加,冗余信息也會(huì)隨之增多,進(jìn)而增大與相關(guān)信息的差值,導(dǎo)致算法過度重視“冗余”而忽略“相關(guān)”。為解決這個(gè)問題,Kwak等[9]在MIFS 算法的基礎(chǔ)上,增加了一個(gè)系數(shù),用來平衡相關(guān)信息與冗余信息不可比的情況,得到了MIFS-U 算法。MIFS 算法和MIFS-U 算法都含有參數(shù),參數(shù)的不確定性導(dǎo)致了這兩個(gè)算法自適應(yīng)性不強(qiáng)。進(jìn)一步地,Peng 等[10]提出了一種不含參數(shù)的最小冗余最大相關(guān)算法(mRMR),用已選特征子集個(gè)數(shù)的倒數(shù)來代替參數(shù),使算法具有更強(qiáng)的普適性和自適應(yīng)性;ESTéVEZ 等[11]在mRMR 算法的基礎(chǔ)上,將冗余信息的取值范圍控制在0 到1 之間,對(duì)冗余項(xiàng)做歸一化處理,得到了標(biāo)準(zhǔn)化互信息特征選擇方法(NMIFS);Zhang 等[12]提出一種權(quán)重系數(shù)的加權(quán)歸一化信息過濾準(zhǔn)則,進(jìn)一步解決了相關(guān)信息和冗余信息不平衡的問題。
MIFS 算法以及其各種改進(jìn)算法都是圍繞著“度量冗余”做改進(jìn),應(yīng)用于醫(yī)療臨床診斷數(shù)據(jù)分類時(shí),分類效果較好,但是其并未考慮不同診斷指標(biāo)之間的交互性。為進(jìn)一步提高醫(yī)療臨床診斷的分類精度,本文在MIFS 算法的基礎(chǔ)上提出一種基于特征交互的MIFS 算法,應(yīng)用于醫(yī)療臨床診斷數(shù)據(jù)的分類。首先,根據(jù)特征交互信息和冗余信息的關(guān)系,重新定義不含參數(shù)的冗余系數(shù),最大程度保留特征的交互信息,去除冗余信息;其次,用已選特征子集個(gè)數(shù)的倒數(shù)來平衡相關(guān)信息與冗余信息的不可比;最后,與其他7 種基于互信息的特征選擇方法比較,證明該算法精度明顯高于其他方法。
信息論中,通常用信息熵和互信息來度量特征和類別的相關(guān)性、特征之間的冗余性[13]。特征fi的信息熵(Entropy)定義如式(1):
其中,p(fi)表示特征fi的概率密度函數(shù),H(fi)的取值在0~1 之間。
特征fi和fj的聯(lián)合熵(Joint Entropy)和條件熵(Conditional Entropy)定義如式(2)和式(3):
其中,p(fi,fj)表示特征fi和fj的聯(lián)合概率密度函數(shù),p(fi |fj)表示在特征fj的條件下fi的概率密度函數(shù)。
特征f1,…,fn的聯(lián)合熵定義如式(4):
其中,p(f1,f2,…,fn)表示特征f1,…,fn的聯(lián)合概率密度函數(shù)。
特征fi和fj的互信息(Mutual Information,MI)定義如式(5):
互信息可以度量特征與類別或特征之間的相關(guān)性,當(dāng)一個(gè)特征與類別的互信息越大時(shí),這個(gè)特征與類別之間的相關(guān)度越大;當(dāng)兩個(gè)特征之間的互信息越大時(shí),則這兩個(gè)特征的冗余度越大。
熵、互信息之間的關(guān)系如式(6)和式(7):
除了熵和互信息,交互信息也是信息論中重要的度量指標(biāo),交互信息又稱為交互增益(Interaction Gain,IG),指的是三方或者多方的交互作用,通常三方的交互是指特征fi和fj以及類別C之間的交互信息,多方則是多個(gè)特征之間與類別的交互信息。三方交互增益的定義如式(8)[14]:
其中,I(fi;C)表示特征fi和類別C的互信息;I(fj;C)表示特征fj和類別C的互信息;H(fi,fj,C)是特征fi和fj以及類別C的聯(lián)合熵;H(C)是類別C的熵;H(fi)是特征fi的熵;H(fj)是特征fj的熵。
根據(jù)熵與互信息的定義,交互信息的定義還可以用式(9)表示:
其中,I(fi,fj;C)表示特征fi和fj與類別C的聯(lián)合互信息。
當(dāng)IG(fi;fj;C)<0 或者IG(fi;fj;C)=0 時(shí),說明特征fi和fj與類別無關(guān)或者兩者提供了相似信息;當(dāng)IG(fi;fj;C)>0 時(shí),表示特征fi和fj組合提供的信息量大于特征fi和fj分別提供的信息量之和,說明特征fi與fj具有交互性。
下面介紹一些經(jīng)典的基于互信息的特征選擇算法,其中C表示類別,F(xiàn)表示原始特征集,S表示已選特征集,fj∈F表示候選特征,fi∈S表示已選特征。
Battit 等[8]提出了基于互信息的特征選擇算法(Mutual Information Feature Selection,MIFS)。該算法通過最大化特征與類別之間的互信息,最小化特征之間的互信息來選擇特征。MIFS 算法的評(píng)價(jià)準(zhǔn)則如式(10):
其中,I(fj;C)表示候選特征fj與類別C的相關(guān)信息;I(fi;fj)表示已選特征fi與候選特征fj的冗余信息;參數(shù)α表示冗余系數(shù),范圍在0~1 之間,當(dāng)參數(shù)為0 時(shí),算法只計(jì)算相關(guān)信息,完全忽略冗余信息。
MIFS 算法可以有效地選出與類別相關(guān)性大,特征之間冗余性小的特征。但是當(dāng)已選特征的數(shù)量變多時(shí),冗余項(xiàng)相對(duì)于相關(guān)項(xiàng)會(huì)變得很大,這兩項(xiàng)可能不在一個(gè)數(shù)量級(jí)上,導(dǎo)致冗余項(xiàng)占主導(dǎo)地位,相關(guān)項(xiàng)可能被忽略。
為了解決相關(guān)項(xiàng)與冗余項(xiàng)不平衡的問題,Kwak等[9]在冗余項(xiàng)中加入系數(shù)來平衡兩項(xiàng)不可比,提出了一致性分布的互信息特征選擇方法(Mutual Information Feature Selection Under Uniform Information Distribution,MIFS-U),評(píng)價(jià)準(zhǔn)則如式(11):
MIFS-U 算法在一定程度上緩解了相關(guān)項(xiàng)與冗余項(xiàng)的不平衡問題,但是在MIFS 和MIFS-U 算法的評(píng)價(jià)準(zhǔn)則中都有需要調(diào)節(jié)的參數(shù),取值具有一定的隨機(jī)性和主觀性,導(dǎo)致算法的自適應(yīng)性不強(qiáng)。在MIFS 算法的基礎(chǔ)上,Peng 等[10]提出了一種不含參數(shù)的最大相關(guān)最小冗余算法(Minimal Redundancy Maximum Relevance,mRMR),評(píng)價(jià)準(zhǔn)則如式(12)所示:
該方法用已選子集個(gè)數(shù)的倒數(shù)來代替參數(shù)α,不僅解決相關(guān)項(xiàng)與冗余項(xiàng)不平衡的問題,還使算法更具自適應(yīng)性。在算法MIFS、MIFS-U 和mRMR 的評(píng)價(jià)準(zhǔn)則中,都只涉及了特征的相關(guān)信息和冗余信息,特征和類別之間的交互性并未考慮。
Bennasar 等[15]關(guān)注到了交互信息的重要性,提出一種特征交互最大化的特征選擇方法(Feature Interaction Maximization,F(xiàn)IM),其評(píng)價(jià)準(zhǔn)則為式(13):
Salem 等[16]注意到粗糙鄰域集中的特征交互信息,并根據(jù)模糊聯(lián)合互信息最大化的原則來選擇特征,提出了基于模糊聯(lián)合互信息最大化的特征選擇方法(Feature Selection based on Fuzzy Joint Mutual Information Maximization,F(xiàn)JMJM),其評(píng)價(jià)準(zhǔn)則如式(14):
Wan 等[17]提出一種混合式特征選擇方法來盡可能地保留交互特征,去除冗余特征;Gu 等[18]重視三方交互信息在特征選擇中的作用,提出了一種基于等間隔劃分和三方交互信息的特征子集選擇算法來優(yōu)化特征選擇的效果,提高算法精度。雖然這些算法也獲得了較好的特征選擇結(jié)果,但在重視交互的情況下,對(duì)冗余的關(guān)注卻被大大降低。如何同時(shí)關(guān)注特征相關(guān)、冗余和交互,最大程度地保留相關(guān)、交互的特征,去除冗余特征,這是基于互信息的特征選擇算法改進(jìn)的一個(gè)重要的研究?jī)?nèi)容。
MIFS 算法及其改進(jìn)算法采用最大相關(guān)最小冗余評(píng)價(jià)準(zhǔn)則,可以較有效地選出特征子集。兩特征與類別之間的互信息、交互信息、熵的關(guān)系如圖1 所示。圖1 中a部分表示在類別C下,特征fi和fj的互信息I(fi;fj |C),可以用公式(15)表示;b部分表示兩特征與類別之間的交互信息IG(fi;fj;C);c部分表示在特征fj的條件下,特征fi和類別C的互信息I(fi;C |fj);d部分表示在特征fi條件下,特征fj和類別C的互信息I(fj;C |fi)。
圖1 兩特征與類別之間的互信息、交互信息、熵的關(guān)系Fig.1 Relation of mutual information,interactive information and entropy between the two features and categories
圖2 時(shí)特征與類別的關(guān)系Fig.2 Relationship between features and categories when
圖3 特征與類別的關(guān)系Fig.3 Relationship between features and categories when
MIFS 算法在實(shí)現(xiàn)“最小冗余”的目標(biāo)時(shí),同時(shí)產(chǎn)生了“最小交互”。然而,當(dāng)交互信息越大時(shí),特征越應(yīng)該被選入特征子集,因此需要最大程度地保留交互信息,以“最大交互”為目標(biāo)。為了實(shí)現(xiàn)特征和類別的最大相關(guān),同時(shí)盡可能兼顧特征之間的最小冗余和最大交互,本文提出了一種基于特征交互的 MIFS 算 法(Feature Interaction Based MIFS Algorithm,MIFS-FI),評(píng)價(jià)準(zhǔn)則如式(16):
其中,S表示已選特征子集;F表示原始特征集;fi表示已選特征;fj表示候選特征;I(fj;fi)表示特征fi和fj的互信息;I(fj;C)表示特征fj和類別C的互信息;I(fj;fi |C)表示在類別C的條件下,特征fi和fj的互信息;IG(fj;fi;C)表示特征fj和fi以及類別C的三方交互信息。
基于特征交互的MIFS 算法(MIFS-FI)具體流程見表1。
表1 MIFS-FI 算法流程Tab.1 MIFS-FI algorithm flow
本文選取14 個(gè)關(guān)于醫(yī)療診斷的數(shù)據(jù)集來驗(yàn)證本文所提出算法的有效性。除了第7 個(gè)數(shù)據(jù)集均來自Matlab 數(shù)據(jù)庫,其他13 個(gè)實(shí)驗(yàn)數(shù)據(jù)集來自美國加州大學(xué)歐文分校提供的UCI 數(shù)據(jù)庫,14 個(gè)數(shù)據(jù)集的樣本個(gè)數(shù)、特征數(shù)和類別個(gè)數(shù)見表2。
表2 數(shù)據(jù)集的描述Tab.2 Description of the dataset
表2 中的數(shù)據(jù)集,有些存在不同程度的特征值缺失,本文采用均值替代法對(duì)存在缺失值的數(shù)據(jù)集進(jìn)行填補(bǔ)后做歸一化處理,xinew表示xi歸一化之后的樣本,式(17):
其中,xi表示第i個(gè)樣本;xmin表示樣本中的最小值;xmax表示樣本中的最大值。
歸一化數(shù)據(jù)有利于加快模型的收斂速度。
為驗(yàn)證本文提出算法(MIFS-FI)的有效性,與7種基于互信息的特征選擇方法進(jìn)行對(duì)比實(shí)驗(yàn)。這7種方法分別是互信息最大特征選擇算法(Mutual Information Maximum,MIM)、基于互信息的特征選擇算法(Mutual Information Feature Selection,MIFS)、最大相關(guān)最 小冗余算法(Minimal Redundancy Maximum Relevance,mRMR)、條件信息特征提取算法(Conditional Informative Feature Extraction,CIFE)、基于模糊聯(lián)合互信息最大化的特征選擇方法(Feature Selection based on Fuzzy Joint Mutual Information Maximization,F(xiàn)JMJM)、動(dòng)態(tài)變化特征選擇算法(Dynamic Change of Selected Feature,DCSF)和特征交互最大化的特征選擇方法(Feature Interaction Maximization,F(xiàn)IM)。
其中MIM 算法只考慮了特征相關(guān)的算法,MIFS算法、mRMR 算法、CIFE 算法、DCSF 算法考慮了特征的相關(guān)和冗余。另外,MIFS-FI 算法重視了交互信息,需要選取一些關(guān)注了交互信息的算法進(jìn)行對(duì)比實(shí)驗(yàn)。本文選取考慮了特征交互和相關(guān)的FJMJM 算法、FIM 算法進(jìn)行對(duì)比,上述幾種算法的構(gòu)造見表3。
表3 算法構(gòu)造比較Tab.3 Comparison of algorithm construction
由于BP 神經(jīng)網(wǎng)絡(luò)分類精度高,且具有強(qiáng)自適應(yīng)性、非線性映射等優(yōu)點(diǎn),被廣泛應(yīng)用于醫(yī)療診斷分類,因此本文選用BP 神經(jīng)網(wǎng)絡(luò)模型做分類器來檢驗(yàn)選擇特征的質(zhì)量,其評(píng)價(jià)標(biāo)準(zhǔn)為分類準(zhǔn)確率(ACC)、F1指數(shù)和召回率。
實(shí)驗(yàn)中所有特征選擇方法選擇特征數(shù)量不超過總特征的30%,BP 神經(jīng)網(wǎng)絡(luò)的迭代次數(shù)設(shè)置為1 000,學(xué)習(xí)率設(shè)置為0.02,權(quán)值的初始化范圍為-0.5~0.5 之間。根據(jù)之前的研究可知MIFS 算法與MIFS-U 算法中的參數(shù)取值在0.5~1 之間,算法性能最優(yōu),本文將這兩個(gè)算法的參數(shù)取為0.5。MIFSFI 算法與7 種算法在14 個(gè)數(shù)據(jù)集上的分類準(zhǔn)確率如圖4 所示,其中橫坐標(biāo)表示特征選擇的個(gè)數(shù),縱坐標(biāo)表示分類準(zhǔn)確率。由圖4 可知,在14 組數(shù)據(jù)集上,本文提出的MIFS-FI 算法相較于7 種特征選擇算法的分類準(zhǔn)確率一直維持在較高水平。特別地,在D7這個(gè)高維小樣本數(shù)據(jù)集上,MIFS-FI 算法在分類器下的分類準(zhǔn)確率超過大多數(shù)特征選擇算法。
圖4 14 個(gè)數(shù)據(jù)集上不同特征選擇方法準(zhǔn)確率Fig.4 Accuracy of different feature selection methods on 14 datasets
14 個(gè)數(shù)據(jù)集分類的F1指數(shù)和召回率見表4 和表5,可見在大多數(shù)數(shù)據(jù)集上,本文所提出的MIFSFI 算法相較于其他7 種方法的F1指數(shù)和召回率更高。MIFS-FI 算法在14 組數(shù)據(jù)集上F1指數(shù)較MIM算法平均高0.133 2,較MIFS 算法平均高0.120 1,較mRMR 算法平均高0.143 4,較CIFE 算法平均高0.096 4,較FJMJM 算法平均高0.057 1,較FIM 算法平均高0.041 6,較DCSF 算法平均高0.032 1;MIFSFI 算法在14 組數(shù)據(jù)集上召回率較MIM 算法平均高0.113 4,較MIFS 算法平均高0.105 8,較mRMR 算法平均高0.098 9,較CIFE 算法平均高0.071 7,較FJMJM 算法平均高0.046 0,較FIM 算法平均高0.048 3,較DCSF 算法平均高0.031 6。
表4 14 個(gè)數(shù)據(jù)集上的F1 值Tab.4 F1 score on 14 data sets
表5 14 個(gè)數(shù)據(jù)集上的召回率Tab.5 Recall rate on 14 data sets
為了驗(yàn)證所提出算法的有效性,本文做了顯著性檢驗(yàn),結(jié)果見表6,大部分都是接受原假設(shè)。其中原假設(shè)為H0,表示算法結(jié)果與原來類別之間無顯著性差異,p≥0.05 表示接受原假設(shè),p <0.05 表示拒絕原假設(shè)。
表6 算法顯著性檢驗(yàn)結(jié)果Tab.6 Significance test results of the algorithm
本文提出了一種基于特征交互的MIFS 算法,即MIFS-FI 算法,并將其應(yīng)用于醫(yī)療診斷數(shù)據(jù)。MIFS-FI 算法解決了MIFS 算法中冗余項(xiàng)系數(shù)不確定和冗余項(xiàng)與相關(guān)項(xiàng)不可比的問題,并且重視了交互信息在冗余項(xiàng)中的作用,進(jìn)而在實(shí)現(xiàn)最大相關(guān)的同時(shí),也能兼顧最大交互和最小冗余。
實(shí)驗(yàn)結(jié)果來看,在分類準(zhǔn)確率、F1指數(shù)和召回率三方面上,MIFS-FI 算法相比7 種基于互信息的特征選擇方法,整體性能優(yōu)于其他算法。尤其在處理高維小樣本數(shù)據(jù)集時(shí),MIFS-FI 算法的分類準(zhǔn)確率超過大多數(shù)特征選擇算法,且F1指數(shù)和召回率也相對(duì)高于其它特征選擇方法。
MIFS-FI 算法也存在一些缺點(diǎn),當(dāng)交互信息在冗余信息中的占比非常小的極端情況下,會(huì)導(dǎo)致冗余項(xiàng)非常大,冗余項(xiàng)的系數(shù)起不到平衡冗余項(xiàng)和相關(guān)項(xiàng)的作用,可能會(huì)使與類別相關(guān)大且冗余小的特征被剔除。由于醫(yī)療診斷數(shù)據(jù)的診斷指標(biāo)之間存在較大的交互性,因而在使用MIFS-FI 算法進(jìn)行特征選擇時(shí)并沒有出現(xiàn)這種情況。若將此算法應(yīng)用于其他數(shù)據(jù)集上,可能會(huì)存在上述問題。