全雪峰
(南陽醫(yī)學(xué)高等專科學(xué)校 衛(wèi)生管理系,河南 南陽 473061)
基于隨機(jī)森林的乳腺癌計算機(jī)輔助診斷
全雪峰
(南陽醫(yī)學(xué)高等專科學(xué)校 衛(wèi)生管理系,河南 南陽 473061)
為提高乳腺癌診斷的準(zhǔn)確性,該文提出了一種基于隨機(jī)森林算法的乳腺癌診斷方法。用 UCI數(shù)據(jù)集提供的683例乳腺腫瘤患者進(jìn)行了分類識別,5-折交叉驗證結(jié)果表明,采用新方法檢測乳癌平均準(zhǔn)確率達(dá)到96.93%,優(yōu)于概率神經(jīng)網(wǎng)絡(luò)識別方法,說明了其在乳腺癌計算機(jī)輔助診斷方面的可行性。
隨機(jī)森林;乳腺癌;計算機(jī)輔助診斷
乳腺癌是一種危及婦女健康和生命的惡性腫瘤,是導(dǎo)致女性癌癥死亡的第二大原因[1]。根據(jù)世界衛(wèi)生組織的報道,每年有超過120萬女性被診斷患有乳腺癌[2]。因此早期診斷、積極預(yù)防已成為迫切需要解決的問題。隨著人工智能技術(shù)的迅速發(fā)展,運(yùn)用計算機(jī)輔助診斷乳腺癌已受到越來越多的關(guān)注,并取得了不少成果。劉瓊蓀[3]等提出基于徑向基神經(jīng)網(wǎng)絡(luò)的乳腺癌分類模型,對100個檢測樣本的平均誤識率為23.5%。毛利鋒[4]等采用決策樹方法對乳腺癌進(jìn)行判別,準(zhǔn)確率達(dá)到96%以上。劉興華[5]等人利用支持向量機(jī)進(jìn)行乳腺癌識別,最佳平均分類準(zhǔn)確率達(dá)到96.24%。徐勝舟[6]等人提出結(jié)合遺傳算法的支持向量機(jī)乳腺癌診斷新方法,AUC值達(dá)到了0.908。唐思源[7]等人利用支持向量機(jī)對癌細(xì)胞的識別,取得了較好的正確識別率。
隨機(jī)森林是一種比較新的機(jī)器學(xué)習(xí)模型,它在沒有顯著提高運(yùn)算量的前提下提高了預(yù)測精度。黃衍[8]等人指出,在多分類問題上,隨機(jī)森林的泛化能力明顯優(yōu)于支持向量機(jī)。文獻(xiàn)[9-10]指出支持向量機(jī)比BP神經(jīng)網(wǎng)絡(luò)具有更高的泛化能力。目前,隨機(jī)森林已被應(yīng)用于多個領(lǐng)域[11-12]。模型本文提出了一種基于隨機(jī)森林的乳腺癌識別方法,并使用UCI數(shù)據(jù)集驗證模型的性能,結(jié)果顯示該方法具有較好的分類準(zhǔn)確率。
隨機(jī)森林是一種集成樹形分類器[13],由多個決策樹(h(x,θi), i=1,2,…)組成。其中h(x,θi)是用分類回歸樹CART算法構(gòu)建的沒有剪枝的分類決策樹,θi是獨(dú)立同分布的隨機(jī)向量,決定單棵樹的生長速度。在給定輸入向量 x的情況下,每個決策樹分類器通過投票來決定最優(yōu)分類結(jié)果。
隨機(jī)森林一般構(gòu)造過程如下:
(1)利用自助法(bootstrap)重抽樣技術(shù)從原始樣本集中有放回地隨機(jī)抽取 k個新的自助樣本集,以此形成一個分類器。
(2)每個自助樣本集生成單棵決策樹。在樹的每個節(jié)點處M個特征中隨機(jī)抽取m(m (3)重復(fù)步驟(2),構(gòu)建k棵決策樹,形成隨機(jī)森林。 (4)根據(jù)每棵決策樹的投票結(jié)果,選出票數(shù)最多的一個分類。 節(jié)點不純度的度量方法是Gini準(zhǔn)則[14]。設(shè)P(ωj)是節(jié)點n上屬于ωj類樣本個數(shù)占訓(xùn)練樣本總數(shù)的頻率,則Gini不純度表示為: 2.1 數(shù)據(jù)選取 本文所用數(shù)據(jù)來自UCI數(shù)據(jù)集[15]。該數(shù)據(jù)集是美國威斯康星州醫(yī)院用針吸細(xì)胞學(xué)方法所得到的乳腺癌樣本,共有699個。每一樣本具有9個特征,分別為:腫塊密度(Clump Thickness)、細(xì)胞大小均勻性(Uniformity of Cell Size)、細(xì)胞形狀均勻性(Uniformity of Cell Shape)、邊界粘連(Marginal Adhesion)、單個上皮細(xì)胞大?。⊿ingle Epithelial Cell Size)、裸核(Bare Nuclei)、微受激染色質(zhì)(Bland Chromatin)、正常核(Normal Nucleoli)、有絲分裂(Mitoses)。所有特征的屬性值都是1~10的整數(shù),1代表正常狀態(tài),10代表極不正常狀態(tài),值越大表示該患者乳腺腫瘤惡性的可能性就越大。整個數(shù)據(jù)集中,有少量屬性值缺省,以“?”表示。考慮到實驗數(shù)據(jù)的全面性,本文剔除了含有缺省屬性的病例,剩下病例中確診為良性的有444例,確診為乳腺癌惡性的有239例,共計683個樣本。 2.2 確定訓(xùn)練集與測試集 實驗中采用5折交叉驗證法對數(shù)據(jù)集進(jìn)行分組和測試。即將數(shù)據(jù)隨機(jī)分為容量大致相同的5組,每一組依次輪流作為測試集,其余部分作為訓(xùn)練集。對每次分組得到的訓(xùn)練集和測試集,用隨機(jī)森林進(jìn)行訓(xùn)練和測試。 2.3 分類器設(shè)計 在得到訓(xùn)練集和測試集之后就可以利用分類器進(jìn)行識別了。本文采用 Matlab2013a中隨機(jī)森林工具箱函數(shù)TreeBagger()創(chuàng)建一個隨機(jī)森林分類器,利用predict()函數(shù)對測試集數(shù)據(jù)進(jìn)行預(yù)測。 3.1 決策樹個數(shù)對分類結(jié)果的影響 在隨機(jī)森林模型中,決策樹個數(shù)k影響著分類器的性能。當(dāng)k值較小時,隨機(jī)森林的分類誤差大、性能也比較差。但是構(gòu)建隨機(jī)森林的復(fù)雜度與 k值成正比,若 k值過大,則需要花費(fèi)較多的時間來構(gòu)建隨機(jī)森林。不同決策樹個數(shù)與模型誤差的關(guān)系如圖1所示。 圖1 決策樹個數(shù)與模型誤差關(guān)系 由圖 1可以看出,當(dāng)決策樹個數(shù)大概大于 300以后,模型誤差趨于穩(wěn)定,因此本文將模型中決策樹個數(shù)確定為300,以此來達(dá)到最優(yōu)模型。 3.2 數(shù)據(jù)歸一化對算法性能的影響 為研究數(shù)據(jù)歸一化處理對算法性能的影響,使用相同的訓(xùn)練集和測試集,分別在歸一化到[-1,1]和未歸一化情況下進(jìn)行算法測試,結(jié)果如表1所示。 表1 數(shù)據(jù)歸一化與否對模型性能的影響 由表1可以看出,數(shù)據(jù)歸一化后的分類準(zhǔn)確率低于未歸一化的分類準(zhǔn)確率。這說明,數(shù)據(jù)是否需要?dú)w一化處理,并非一個必要條件,需根據(jù)具體情況選擇。 3.3 5-折交叉驗證結(jié)果 取隨機(jī)森林模型中決策樹個數(shù)為 300,不進(jìn)行數(shù)據(jù)歸一化處理,用5-折交叉驗證對剔除含有缺省屬性后的683個樣本進(jìn)行測試。由于每次所選訓(xùn)練集和測試集均不相同,因而其結(jié)果也不相同。某輪5-折交叉驗證結(jié)果如表2所示。 表2 5-折交叉驗證結(jié)果 由表2可以看出,基于隨機(jī)森林算法的乳腺癌分類模型平均分類準(zhǔn)確率達(dá)到了96.93%,說明分類準(zhǔn)確率較高。 3.4 不同算法比較 為了與其他算法進(jìn)行對比分析,本文使用相同的訓(xùn)練樣本和測試樣本,采用5-折交叉驗證方法,分別與文獻(xiàn)[5]所提支持向量機(jī)算法以及文獻(xiàn)[16]所提概率神經(jīng)網(wǎng)絡(luò)算法做了性能對比,某輪5-折交叉驗證結(jié)果如表3所示。 表3 不同算法比較 由表3可以看出,本文算法的平均準(zhǔn)確率與支持向量機(jī)的平均準(zhǔn)確率相當(dāng),但優(yōu)于概率神經(jīng)網(wǎng)絡(luò)算法。這表明隨機(jī)森林算法同支持向量機(jī)算法一樣,不僅可以較好地識別出乳腺癌患者,還可以較好地識別出非乳腺癌病例,從而可以減少人為原因造成的漏診和誤診幾率,給病人帶來福音。 本文將隨機(jī)森林算法用于乳腺腫瘤的良性和惡性識別。從實驗結(jié)果可以看出,該算法能較好的區(qū)分開良性腫瘤和惡性腫瘤,從而為乳腺癌的計算機(jī)輔助自動診斷提供了一種新的思路。 [1]E.C.Fear, P.M.Meaney, and M.A.Stuchly, “Microwaves for breast cancer detection”, IEEE potentials, vol.22, pp.12-18, February-March 2003. [2]Akay M F.Support vector machines combined with feature selection for breast cancer diagnosis[J].Expert systems with applications, 2009, 36(2): 3240-3247. [3]劉瓊蓀, 何離慶.基于人工神經(jīng)網(wǎng)絡(luò)的乳腺癌診斷模型[J].重慶大學(xué)學(xué)報(自然科學(xué)版), 2003, 26(4): 70-72. [4]毛利鋒, 瞿海斌.一種基于決策樹的乳腺癌計算機(jī)輔助診斷新方法[J].江南大學(xué)學(xué)報(自然科學(xué)版), 2004, 3(3): 227-229. [5]劉興華, 蔡從中, 袁前飛等.基于支持向量機(jī)的乳腺癌輔助診斷[J].重慶大學(xué)學(xué)報(自然科學(xué)版), 2007, 30(6): 140-144. [6]徐勝舟, 裴承丹.基于遺傳算法和支持向量機(jī)的乳腺腫塊識別[J].計算機(jī)仿真, 2015, 32(2): 432-435, 440. [7]唐思源, 柳原, 崔媛.利用支持向量機(jī)對癌細(xì)胞的識別[J].軟件, 2014, 35(3): 170-171. [8]黃衍, 查偉雄.隨機(jī)森林與支持向量機(jī)分類性能比較[J].軟件, 2012, 33(6): 107-110. [9]王宏濤, 孫劍偉.基于BP神經(jīng)網(wǎng)絡(luò)和SVM的分類方法研究[J].軟件, 2015, 36(11): 96-99. [10]肖曉, 徐啟華.基于SVM與BP的分類與回歸比較研究[J].新型工業(yè)化, 2014, 4(5): 48-53. [11]全雪峰.基于奇異熵和隨機(jī)森林的人臉識別[J].軟件, 2016, 37(02): 35-38. [12]王浩.基于隨機(jī)森林的網(wǎng)絡(luò)攻擊檢測方法[J].軟件, 2016, (11): 60-63. [13]Breiman L.Random forests[J].Machine learning, 2001, 45(1): 5-32. [14]張洪強(qiáng), 劉光遠(yuǎn), 賴祥偉等.隨機(jī)森林算法在肌電的重要特征選擇中的應(yīng)用[J].計算機(jī)科學(xué), 2013, 40(1): 200-202. [15]William H.Wolberg, UCI Machine Learning Repository[DB/OL].(2016-4-24).http: //archive.ics.uci.edu/ml. [16]程智輝, 陳將宏.基于概率神經(jīng)網(wǎng)絡(luò)的乳腺癌計算機(jī)輔助診斷[J].計算機(jī)仿真, 2012, 29(9): 166-169. Computer-Aided Diagnosis of Breast Cancer Based on Random Forest QUAN Xue-feng In order to improve the accuracy of diagnosis of breast cancer, this paper proposes a method for diagnosis of breast cancer based on random forest algorithm.With 683 cases of breast cancer patients from UCI data sets for identification and classification, 5-fold cross validation results show that average accuracy rate reached 96.93% by this new method for the detection of breast cancer.This is superior to probabilistic neural network recognition method, indicating the feasibility of computer-aided breast cancer diagnosis. Random forest; Breast cancer; Computer-aided diagnosis TP391 A 10.3969/j.issn.1003-6970.2017.03.012 河南省醫(yī)學(xué)教育研究課題(Wjlx2015133) 全雪峰(1969-),男,副教授,主要研究方向為智能信息處理。 本文著錄格式:全雪峰.基于隨機(jī)森林的乳腺癌計算機(jī)輔助診斷[J].軟件,2017,38(3):57-592 算法設(shè)計
3 實驗結(jié)果與分析
4 結(jié)束語
(Department of Health Management, Nanyang Medical College, Nanyang 473061, China)