馮照石 范祺
摘 要:針對(duì)樸素貝葉斯算法在處理不平衡數(shù)據(jù)時(shí)準(zhǔn)確率不高的問題,提出類權(quán)重和屬性值權(quán)重相結(jié)合的雙重加權(quán)樸素貝葉斯算法.雙重加權(quán)可降低算法的屬性獨(dú)立假設(shè)對(duì)分類結(jié)果的影響,提升少數(shù)類對(duì)分類過程的作用.乳腺癌患者復(fù)發(fā)率預(yù)測結(jié)果表明,雙重加權(quán)樸素貝葉斯算法相對(duì)于傳統(tǒng)的樸素貝葉斯算法、屬性值加權(quán)的樸素貝葉斯、K最近鄰分類算法、支持向量機(jī)分類算法、隨機(jī)森林算法,準(zhǔn)確率上分別從0.72,0.79,0.77,0.80,0.81提升至0.84,精確率和召回率均有不同程度的提升.
關(guān)鍵詞:算法改進(jìn);數(shù)據(jù)不平衡;雙重加權(quán);乳腺癌復(fù)發(fā)
[中圖分類號(hào)]O171?? [文獻(xiàn)標(biāo)志碼]A
Double Weighted Naive Bayes Algorithm for PredictingRecurrence Rate of Breast Cancer
FENG Zhaoshi,F(xiàn)AN Qi*
(School of Computer Science and Technology,Huaibei Normal University,Huaibei 235000,China)
Abstract:Aiming at the problem of low accuracy of Naive Bayes algorithm in dealing with unbalanced data,a double weighted Naive Bayes algorithm is proposed,which combines class weight and attribute value weight.The double weighting reduces the influence of attribute independence hypothesis on classification results and improves the effect of a few classes on classification process.The experimental results show that compared with the traditional Naive Bayes algorithm,Naive Bayes algorithm with weighted attribute values,K nearest neighbor classification algorithm,Support Vector Machine classification algorithm and Random Forest algorithm,the accuracy of the double weighted Naive Bayes algorithm is increased from 0.72,0.79,0.77,0.80 and 0.81 to 0.84 respectively,and the accuracy and recall rate are also improved to varying degrees.
Key words:improved algorithm;unbalanced data;double weighting;recurrence of breast cancer
樸素貝葉斯算法是分類算法中的經(jīng)典算法之一,分類算法簡單且十分高效.算法本身是基于獨(dú)立性假設(shè)條件,且在面對(duì)不平衡數(shù)據(jù)時(shí)分類結(jié)果往往有所降低,故人們?cè)谔岣邩闼刎惾~斯的分類性問題上做了廣泛的研究和改進(jìn).鄧維斌[1]等提出了一種基于粗糙集的屬性加權(quán)方法.Hall[2]提出了一種基于決策樹的屬性加權(quán)方法.Chao Qun[3]等將一些關(guān)于樸素葉斯的工作應(yīng)用到VDM的重量訓(xùn)練實(shí)例中,分配根據(jù)估計(jì)的條件概率與真正的條件概率的區(qū)別,對(duì)體重進(jìn)行反復(fù)調(diào)整.Jiang[4]等提出根據(jù)不同類中屬性分配特定權(quán)重的細(xì)粒度加權(quán)方法,使模型在分類性能上具有一定優(yōu)勢.
腫瘤陽性預(yù)測問題中,數(shù)據(jù)具有嚴(yán)重的不平衡性,如何提高分類結(jié)果的準(zhǔn)確性成為數(shù)據(jù)挖掘中的重要研究方向,具有重要的研究意義.[5]由于樸素貝葉斯模型基于假設(shè)各特征條件相互獨(dú)立,且每個(gè)特征項(xiàng)的權(quán)重相同,并不適合現(xiàn)實(shí)情況,預(yù)測結(jié)果可能會(huì)出現(xiàn)誤差.許多專家學(xué)者為了讓樸素貝葉斯的分類結(jié)果更加準(zhǔn)確做了大量的研究和實(shí)驗(yàn),以期提高樸素貝葉斯算法的分類性能和準(zhǔn)確性.本文提出一種將屬性值加權(quán)和類權(quán)值相結(jié)合的雙重加權(quán)樸素貝葉斯算法,通過建立復(fù)發(fā)預(yù)測模型,提供較為準(zhǔn)確的個(gè)體化預(yù)測結(jié)果,為臨床醫(yī)生的輔助治療提供參考.筆者使用該方法對(duì)乳腺癌復(fù)發(fā)率進(jìn)行預(yù)測的結(jié)果表明,雙重加權(quán)樸素貝葉斯算法表現(xiàn)出更好的分類性能,對(duì)乳腺癌患者復(fù)發(fā)率預(yù)測更加準(zhǔn)確.
1 樸素貝葉斯分類算法
樸素貝葉斯模型是基于假設(shè)各特征條件相互獨(dú)立,以貝葉斯算法為基礎(chǔ)的一種簡單、穩(wěn)定、易實(shí)現(xiàn)和有著較好分類效率的分類算法.[1]樸素貝葉斯分類的定義為:
(1)設(shè)x={c1,c2,c3,…,cn}是一個(gè)待分類的項(xiàng),而每一個(gè)c為x的一個(gè)特征屬性.
(2)有類別集合x={c1,c2,c3,…,cn}.
(3)已經(jīng)知道分類項(xiàng)的集,統(tǒng)計(jì)各類別下的各個(gè)特征屬性的條件概率.即:
(4)假設(shè)每個(gè)特征屬性之間是相互獨(dú)立的,由貝葉斯定理可以推導(dǎo)出:
因?yàn)榉帜笧槌?shù),故只要把分子最大化即可.又因?yàn)槊總€(gè)特征屬性之間是相互獨(dú)立的,所以有:
2 雙重加權(quán)樸素貝葉斯算法
2.1 屬性值加權(quán)
屬性值加權(quán)樸素貝葉斯分類器算法(Correlation-based Attribute Value Weighted Naive Bayes,CAVWNB)是一種對(duì)所有屬性值都增加一個(gè)不同的權(quán)值,該權(quán)值的大小只與該屬性數(shù)值的重要性相關(guān),與類標(biāo)記無關(guān).該權(quán)重削弱了樸素貝葉斯網(wǎng)絡(luò)分類算法的屬性獨(dú)立假設(shè)對(duì)分類結(jié)果的影響,是傳統(tǒng)屬性加權(quán)橫軸方向上的擴(kuò)展,使屬性值加權(quán)方法更具有細(xì)粒度.屬性數(shù)值的權(quán)重是由屬性值與類之間的關(guān)聯(lián)性和屬性值與屬性值之間的冗余性共同決定.關(guān)聯(lián)性大的屬性值具有較大的權(quán)值,冗余性大的屬性值具有較小的權(quán)值,關(guān)聯(lián)性大且冗余性小的屬性值具有較大權(quán)值,關(guān)聯(lián)性小且冗余性大的屬性值具有較小的權(quán)值.
對(duì)于某待測實(shí)例x=
算法的設(shè)計(jì)思路:假設(shè)屬性值與類之間的相互信息取值大,屬性值與其他屬性值之間的冗余性和相互信息度量取值小,則該屬性值對(duì)分類結(jié)果影響就越大,屬性值的權(quán)重就越大.屬性Bi與類變量A之間的相互信息計(jì)算公式為:
屬性Bi與屬性Bj之間的相互信息計(jì)算公式為:
算法需要對(duì)某一個(gè)屬性值的權(quán)值進(jìn)行計(jì)算,需要計(jì)算的是屬性值與類變量之間的關(guān)聯(lián)性,以及不同屬性值之間的依賴性.在計(jì)算過程中,需要對(duì)公式(2)(3)稍作變化.屬性值a與類變量C之間的相互信息計(jì)算公式為:
分別對(duì)Ibi,A和Ibi,bj進(jìn)行歸一化處理得到NIbi,A和NIbi,bj,即分別除以平均相互信息.
由(1)式可得,基于相互信息方式下屬性值的權(quán)值為:
2.2 類權(quán)值
Frank提出了一種采用黃金分割系數(shù)的類權(quán)值選取方式,從類別信息自動(dòng)生成加權(quán)方案.該權(quán)重使得分類器在分類的時(shí)候傾向于少數(shù)類樣本,提高少數(shù)類分類的準(zhǔn)確性.AVG(qt)每一類的平均個(gè)數(shù)#(qt)為類中的樣本個(gè)數(shù),其對(duì)角線元素為樣本的權(quán)重.
2.3 雙重加權(quán)樸素貝葉斯算法
屬性值加權(quán)方法是在原有權(quán)值的基礎(chǔ)上,將權(quán)值矩陣在橫軸方向進(jìn)行擴(kuò)展,更加細(xì)粒度,使屬性值加權(quán)后的樸素貝葉斯分類器能夠更好地削弱屬性條件獨(dú)立假設(shè);類權(quán)值使得分類器在分類過程中少數(shù)類的作用得到提升,使得分類器在處理不平衡數(shù)據(jù)時(shí),更加嚴(yán)謹(jǐn).筆者提出雙重加權(quán)樸素貝葉斯公式,在使用更加細(xì)粒度對(duì)每一個(gè)屬性值加上不同權(quán)重的同時(shí),對(duì)不同類別進(jìn)行加權(quán),綜合計(jì)算權(quán)重值.
樸素貝葉斯網(wǎng)絡(luò)分類算法假設(shè)屬性之間是相互獨(dú)立的,故雙重加權(quán)樸素貝葉斯分類器算法假設(shè)屬性值之間也是相互獨(dú)立的.雙重加權(quán)樸素貝葉斯分類算法用公式(10)來分類.
算法流程如下:
算法:雙重加權(quán)的樸素貝葉斯算法.
輸入:訓(xùn)練實(shí)例集C,待測實(shí)例x.
輸出:待測實(shí)例x的類標(biāo)簽 .
步驟:
1.對(duì)每一個(gè)具體的屬性值bi:
(1)根據(jù)公式(2)計(jì)算屬性值bi與類變量A之間的相互信息Ibi,A.
(2)根據(jù)公式(4)計(jì)算屬性值bi與類變量A之間的關(guān)聯(lián)性NIbi,A.
2.對(duì)每一對(duì)屬性值bi與屬性值bj:
(1)根據(jù)公式(3)計(jì)算屬性值與屬性值之間的相互信息Ibi,bj.
(2)根據(jù)公式(5)計(jì)算屬性值與屬性值之間的冗余性NIbi,bj.
3.根據(jù)公式(8)計(jì)算任意一個(gè)屬性值bi的權(quán)值.
4.根據(jù)公式(9)計(jì)算不同類的權(quán)值.
5.根據(jù)公式(11)計(jì)算雙重權(quán)重的具體數(shù)值.
6.基于雙重加權(quán)的數(shù)據(jù)集構(gòu)建樸素貝葉斯分類器.
7.根據(jù)公式(12)計(jì)算測待測實(shí)例x的類標(biāo)簽.
8.返回待測實(shí)例x的類標(biāo)記.
3 雙重加權(quán)樸素貝葉斯算法在乳腺癌患者復(fù)發(fā)率預(yù)測中的應(yīng)用
數(shù)據(jù)來源于婦女健康飲食與生活(WHEL)計(jì)劃回顧性縱向隊(duì)列研究.WHEL數(shù)據(jù)庫包含常規(guī)地從多個(gè)基于人群的癌癥登記處收集的發(fā)病率和生存率數(shù)據(jù).實(shí)驗(yàn)在JuPyter平臺(tái)上使用Python3.6語言開發(fā),實(shí)驗(yàn)配置為Inter Corei5-4200H cpu@2.80GHz Windows 7.
實(shí)驗(yàn)數(shù)據(jù)進(jìn)行預(yù)處理,把所有屬性列轉(zhuǎn)化為數(shù)值型.運(yùn)用多重插補(bǔ)對(duì)缺失值進(jìn)行填補(bǔ),實(shí)驗(yàn)使用十次十折交叉驗(yàn)證法.將患者診斷年份、年齡、腫瘤大小、腫瘤分期、腫瘤等級(jí)、雌激素受體狀態(tài)、孕激素受體狀態(tài)、淋巴結(jié)陽性數(shù)目、婚姻狀態(tài)等入選特征屬性.類變量四個(gè)取值分別代表:三年內(nèi)復(fù)發(fā)、三至五年內(nèi)復(fù)發(fā)、五至十年內(nèi)復(fù)發(fā)或者十年內(nèi)無復(fù)發(fā).分類數(shù)據(jù)見表1.
實(shí)驗(yàn)選取前三個(gè)樣本屬性的雙重加權(quán)權(quán)值進(jìn)行舉例,分別用樸素貝葉斯(NB)、屬性值加權(quán)樸素貝葉斯(CAVWNB)、雙重加權(quán)樸素貝葉斯、K最近鄰(KNN)分類、支持向量機(jī)(SVM)、隨機(jī)森林(RF)分類器對(duì)目標(biāo)屬性進(jìn)行分類,實(shí)驗(yàn)結(jié)果見表2.
實(shí)驗(yàn)結(jié)果表明,雙重加權(quán)樸素貝葉斯算法相對(duì)于傳統(tǒng)的樸素貝葉斯算法(NB)、屬性值加權(quán)樸素貝葉斯(CAVWNB)、K最近鄰分類算法(KNN)、支持向量機(jī)分類算法(SVM)、隨機(jī)森林算法(RF),其準(zhǔn)確率、精確率、召回率均有不同程度的提升,說明在處理不平衡數(shù)據(jù)上,雙重加權(quán)樸素貝葉斯算法有更好的分類能力,在預(yù)測乳腺癌患者復(fù)發(fā)率預(yù)測上有較好的表現(xiàn).
4 結(jié)語
本文提出雙重加權(quán)樸素貝葉斯算法,利用屬性值之間的相關(guān)性,計(jì)算屬性值與類之間的依賴關(guān)系,屬性值與屬性值之間的冗余性計(jì)算屬性值的權(quán)重,更好的削弱屬性條件獨(dú)立假設(shè),達(dá)到更高的分類精度.類權(quán)值對(duì)類別進(jìn)行加權(quán)處理,使得分類在面對(duì)不平衡數(shù)據(jù)時(shí),提升少數(shù)類對(duì)分類結(jié)果的作用,讓分類器傾向于少數(shù)類.基于雙重加權(quán)樸素貝葉斯乳腺癌患者復(fù)發(fā)實(shí)例集上構(gòu)建的樸素貝葉斯分類器,實(shí)驗(yàn)表明,雙重加權(quán)樸素貝葉斯算法在乳腺癌患者復(fù)發(fā)率預(yù)測上準(zhǔn)確率達(dá)到0.84.
雙重加權(quán)樸素貝葉斯算法表現(xiàn)出更好的分類性能,在乳腺癌患者復(fù)發(fā)率預(yù)測方面更加合理,亦可以為其他疾病復(fù)發(fā)率預(yù)測提供更加合理的統(tǒng)計(jì)學(xué)分類方法.該實(shí)驗(yàn)結(jié)果可為臨床醫(yī)生提供科學(xué)的判斷依據(jù):一是避免對(duì)可能復(fù)發(fā)患者治療不足,或者對(duì)復(fù)發(fā)概率小的患者進(jìn)行過度治療,造成的身體損害和醫(yī)療資源的浪費(fèi).二是對(duì)三、五和十年內(nèi)患者復(fù)發(fā)率的準(zhǔn)確預(yù)測,有利于患者選擇合適的個(gè)性化治療,改善其治療效果,顯著延長患者的生存時(shí)間.該實(shí)驗(yàn)還可以識(shí)別出一些臨床因素:年齡、腫瘤大小、等級(jí)、雌激素受體狀態(tài)、孕激素受體狀態(tài)等,這些因素可增加乳腺腫瘤復(fù)發(fā)風(fēng)險(xiǎn),預(yù)測某些高危患者,使得患者的生存獲益達(dá)到最高,對(duì)乳腺癌患者臨床治療有較好的指導(dǎo)意義.
參考文獻(xiàn)
[1]鄧維斌,王國胤,王燕.基于Rough Set的加權(quán)樸素貝葉斯分類算法[J].計(jì)算機(jī)科學(xué),2007,34(2):204-206.
[2]Hall M.A decision tree-based attribute weighting filter for naive Bayes[C]//International Conference on Innovative Techniques and Applications of Artificial Intelligence. Springer, London, 2006: 59-70.
[3]Li C,Jiang L,Li H.Naive Bayes for value difference metric[J].Frontiers of Computer Science,2014,8(2):255-264.
[4]Lu G,Xia Y,Wang J,et al.Research on text classification based on TextRank[C]//2016 International Conference on Communications,Information Management and Network Security.Atlantis Press,2016.
[5]段淑敏.時(shí)間序列數(shù)據(jù)挖掘關(guān)鍵問題分析[J].中國市場,2016(03):38-39.
[6]范濤,方賢文.一種基于Petri網(wǎng)和因果關(guān)系矩陣的事件日志過程挖掘方法[J].牡丹江師范學(xué)院學(xué)報(bào):自然科學(xué)版,2020(4):10-14.
[7]陳鳳娟.不確定數(shù)據(jù)中的頻繁閉項(xiàng)集挖掘[J].牡丹江師范學(xué)院學(xué)報(bào):自然科學(xué)版,2016(3):22-25.
編輯:琳莉
收稿日期:2020-12-14
基金項(xiàng)目:國家自然科學(xué)基金項(xiàng)目(61976101);安徽省自然科學(xué)基金項(xiàng)目(1908085QF286);
安徽高校自然科學(xué)研究項(xiàng)目(KJ2017A390)
作者簡介:馮照石(1993-),男,安徽宿州人.碩士研究生,主要從事數(shù)據(jù)挖掘研究;范祺(1979-),男,安徽淮北人.副教授,碩士,碩士生導(dǎo)師,主要從事數(shù)據(jù)挖掘與應(yīng)用、人工智能、癌癥信息學(xué)等研究.
通信作者:范 祺