劉芬 劉秀峰
摘 要:目的 利用機(jī)器學(xué)習(xí)算法處理大腸癌中醫(yī)癥狀與證型數(shù)據(jù),建立適用于大腸癌不平衡數(shù)據(jù)集的虛實證型分類模型。方法 量化收集的大腸癌中醫(yī)臨床病案數(shù)據(jù)以及文獻(xiàn)檢索數(shù)據(jù),首先采用人工合成過采樣技術(shù)對數(shù)據(jù)集進(jìn)行平衡處理,再結(jié)合集成學(xué)習(xí)算法Adaboost,將癥狀作為輸入,證型作為輸出,對比傳統(tǒng)機(jī)器學(xué)習(xí)算法分類效果,探討大腸癌的SMOTEboost分類模型在虛實證型中的分類性能。結(jié)果 SMOTEboost分類算法在大腸癌虛實證型分類模型中,F(xiàn)-mean較Adaboost提高了25.40%,G-mean提高了16.60%,表明構(gòu)建的分類器具有較高的分類性能與泛化能力。結(jié)論 SMOTEboost復(fù)合分類器為大腸癌中醫(yī)證型分類提供很好的計算機(jī)網(wǎng)絡(luò)模型,也為其他中醫(yī)病癥的臨床證型判定提供借鑒意義。
關(guān)鍵詞:大腸癌;Adaboost;SMOTE;不平衡數(shù)據(jù)集
中圖分類號:TP311.13;R735.3+4 文獻(xiàn)標(biāo)識碼:A DOI:10.3969/j.issn.1006-1959.2018.23.003
文章編號:1006-1959(2018)23-0010-03
Abstract:Objective To establish a classification model of deficiency and solid syndrome type suitable for unbalanced data set of colorectal cancer by using machine learning algorithm to process TCM symptom and syndrome type data of colorectal cancer.Methods The data of TCM clinical records and literature retrieval of colorectal cancer were collected quantitatively.First, the artificial oversampling technique is used to balance the data set, and then the integrated learning algorithm Adaboost, is used to deal with the data set balance.Take symptoms as input, syndrome as output,and then compared the classification effect of traditional machine learning algorithm in order to study the classification performance of SMOTEboost classification model of colorectal cancer in deficiency and solid syndrome.Results In SMOTEboost classification algorithm used in the classification model of colonic carcinoma,F(xiàn)-mean increased 25.40% and G-mean by 16.60% compared with Adaboost which shows that the constructed classifier has high classification performance and generalization ability.Conclusion The SMOTEboost compound classifier can provide a good computer network model for the classification of TCM syndromes of colorectal cancer, and also provide reference for other TCM syndromes.
Key words:Colorectal cancer;Adaboost;SMOTE;Unbalanced dataset
不平衡數(shù)據(jù)集(unbalanced data sets)是指在一個數(shù)據(jù)集中,某些類的數(shù)量遠(yuǎn)遠(yuǎn)大于其他類別的數(shù)量,其中類別數(shù)量多的為多數(shù)類,類別數(shù)量少的為少數(shù)類[1]。大多數(shù)的機(jī)器學(xué)習(xí)分類算法都是基于平衡數(shù)據(jù)集的假設(shè),然而當(dāng)數(shù)據(jù)集各類別的樣本分布不均勻時,分類器常常會傾向樣本中的多數(shù)類[2]。現(xiàn)實生活中,大多數(shù)屬于不平衡分類問題,如疾病診斷、人臉識別、文本分類、金融風(fēng)險預(yù)測等[3]。人們往往需要知道少數(shù)類是否被正確分類,因此不平衡數(shù)據(jù)分類問題是近年來機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘的研究熱點[4]。
大腸癌(large intestinecancer)是下消化系統(tǒng)中一種常見的惡性腫瘤[5,6],中醫(yī)在降低大腸癌化療毒副反應(yīng),改善臨床證侯,提高生存質(zhì)量,以及預(yù)防復(fù)發(fā)、轉(zhuǎn)移等方面顯示出了一定的優(yōu)勢[7]。然而大腸癌臨床證型大多存在病例量小、地區(qū)差異、診斷不規(guī)范、各種癥型分布不均等問題,故為了實現(xiàn)大腸癌中醫(yī)癥型的有效分類,使得大腸癌辨病與辨證相結(jié)合,訓(xùn)練大腸癌中醫(yī)癥型的高效分類器將為大腸癌中醫(yī)癥狀與癥型之間的臨床判斷提供便利。
1 資料與方法
1.1數(shù)據(jù)來源 本文訓(xùn)練分類模型的一部分?jǐn)?shù)據(jù)集來源于UCI機(jī)器學(xué)習(xí)數(shù)據(jù)庫,選用乳腺癌數(shù)據(jù)集(breast cancer)用以算法仿真實驗;另一部分?jǐn)?shù)據(jù)集來源于人工收集的大腸癌數(shù)據(jù)(colorectal-cancer)用以分類器的驗證。Breast cancer數(shù)據(jù)集共286例,標(biāo)號為非復(fù)發(fā)事件(no recurrence events)的數(shù)據(jù)有201例,而類標(biāo)號為復(fù)發(fā)事件(recurrence events)的數(shù)據(jù)有85例,即兩類樣本量不平衡。
收集的大腸癌數(shù)據(jù)總共338例,其中150例收集于2007年廣東省臨床病案,另外188例來自文獻(xiàn)數(shù)據(jù),分別來源于中國知網(wǎng)全文數(shù)據(jù)庫(CNKI)、維普全文數(shù)據(jù)庫(VIP)及萬方數(shù)據(jù)知識服務(wù)平臺,檢索年限為1990~2015年,關(guān)鍵詞為“大腸癌”“病機(jī)”“驗案”等。最終篩選出符合大腸癌病理學(xué)納入排除標(biāo)準(zhǔn)的數(shù)據(jù)有218例,其中虛癥143例(包含的證型有脾失健運、脾虛夾瘀、氣血虧虛、脾腎陽虛和肝脾不調(diào)),實證75例(包含的證型有濕熱內(nèi)蘊、氣滯血瘀、淤毒內(nèi)阻),構(gòu)成了不平衡數(shù)據(jù)集。表1所列為兩組數(shù)據(jù)集描述,不平衡率為少數(shù)類樣本量與多數(shù)類樣本量之比,不平衡率越大,表明數(shù)據(jù)集整體不平衡度越高。屬性為表示數(shù)據(jù)集的特征集,其中Breast cancer數(shù)據(jù)集包含的屬性特征有患者樣本的年齡、乳腺腫瘤大小、位置、是否復(fù)發(fā)等10個;Colorectal cancer數(shù)據(jù)集包含里急后重、大便秘結(jié)、脈沉、舌紅、舌苔厚等28項癥狀屬性特征。
1.2數(shù)據(jù)預(yù)處理 本研究結(jié)合臨床數(shù)據(jù)與文獻(xiàn)數(shù)據(jù),篩選出的癥狀輸入一共有28項,包含里急后重、大便秘結(jié)、脈沉、舌紅、舌苔厚等中醫(yī)體征變化,并將收集到的原始數(shù)據(jù)在EXCEL表中進(jìn)性“0”“1”初步量化,有該癥狀賦1,無該癥狀賦0;同理量化證型輸出,結(jié)合專家意見,將大腸癌證型分為8類,分別為氣血虧虛、濕熱內(nèi)蘊、氣滯血瘀、淤毒內(nèi)阻、脾失健運、脾腎陽虛、肝脾不調(diào)、脾虛夾瘀。考慮到分屬于8種證型的樣本數(shù)據(jù)量太小不足以訓(xùn)練模型,故進(jìn)而將這8種證型轉(zhuǎn)變?yōu)樘搶崈勺C,探討二分類問題。
1.3研究方法
1.3.1 SMOTE算法 最普通的上采樣技術(shù)為隨機(jī)上采樣(random over-sampling,ROS),此種方法實現(xiàn)簡單,通過不斷復(fù)制少類樣本來擴(kuò)大平衡樣本量,但隨機(jī)上采樣會使得分類算法過度擬合從而降低分類器的靈敏度,本文在數(shù)據(jù)層面選用啟發(fā)式的基于“插值”合成少數(shù)類過采樣技術(shù)(synthetic minority oversampling technique,SMOTE),在數(shù)據(jù)層面對不平衡數(shù)據(jù)集作出改進(jìn)。合成少類過采樣技術(shù)(SMOTE)相比隨機(jī)過采樣,SMOTE中插入的點位于少類樣本點和其周圍的樣本點之間,有效解決了過擬合問題。
1.3.2 Adaboost算法 針對不平衡數(shù)據(jù)集分類問題,目前主要的分類算法有支持向量機(jī)、模糊分類算法、Boosting算法、Fisher線性判別分析方法、代價敏感學(xué)習(xí)方法、Bagging算法和決策樹算法等。Boosting算法中存在一種損失函數(shù)為指數(shù)損失的Adaboost(adaptive boosting)算法,它可以根據(jù)所提供的一種框架,在框架內(nèi)可以使用各種方法構(gòu)建子分類器,而且可以使用任何簡單的弱分類器;此外,Adaboost算法不需要弱分類器的先驗知識,最后得到的強(qiáng)分類器的分類精度依賴于所有弱分類器,且不需要預(yù)先知道弱分類器的錯誤率上限,它根據(jù)弱分類器的反饋,自適應(yīng)地調(diào)整假定的錯誤率從而具有深挖分類器的能力。綜合Adaboost算法在分類上的優(yōu)點以及集成效果,本文在分類算法層面選取以單決策樹為弱分類器構(gòu)建Adaboost強(qiáng)分類器模型運用于不平衡數(shù)據(jù)集的分類研究。
2 結(jié)果
2.1 SMOTE上采樣結(jié)果 在SMOTE算法中我們將鄰域K值設(shè)置為5,數(shù)據(jù)采樣后少數(shù)類比例與原始少數(shù)類比例見表2。可見在經(jīng)過SMOTE過采樣后,少數(shù)類比例在某種程度上得到提升,從而起到平衡數(shù)據(jù)集的作用。
2.2不平衡數(shù)據(jù)集評價指標(biāo) 我們通常使用預(yù)測準(zhǔn)確率(ACC)作為評價指標(biāo)來評估一般數(shù)據(jù)集分類器的性能。但對于不平衡數(shù)據(jù)集,由于精度會偏向多數(shù)類,而少數(shù)類很少可以產(chǎn)生影響,故ACC并不能夠正確反映分類器的分類性能。在包含兩類的數(shù)據(jù)集中,我們將樣本數(shù)量少但識別重要性高的稱為正樣本,反之稱為負(fù)樣本。經(jīng)過分類,訓(xùn)練樣本分成4 類,構(gòu)成混淆矩陣(confusionmatrix),見表3。
一般來說準(zhǔn)確率和召回率越高,預(yù)測的結(jié)果越好,但是實際上有時兩者會有矛盾,故采用使用兩者的調(diào)和平均值,更好的估計分類器對少數(shù)類的分類性能。G-mean是以少數(shù)類的分類正確率和多數(shù)類的分類正確率為基礎(chǔ),較高的G-mean值說明分類器對于多數(shù)類和少數(shù)類樣本都有不錯的分類性能。
2.3建立基于SMOTE法的Adboost分類模型 為減少訓(xùn)練時間,在導(dǎo)入數(shù)據(jù)之前,利用主成分分析將大腸癌的28個原始輸入降為10個。同時為了選取合適的弱分類器數(shù)目,我們將弱分類器數(shù)目設(shè)定為1~10000中幾個不同數(shù)字,多次運行Adaboost分類過程,最終根據(jù)錯誤率確定弱分類器的個數(shù)為50。為充分運用數(shù)據(jù)集,整個訓(xùn)練過程采用5折交叉驗證法,循環(huán)訓(xùn)練數(shù)據(jù),當(dāng)分類器錯誤率為0或者到達(dá)迭代次數(shù)時訓(xùn)練終止。表4記錄了采樣后相對平衡的數(shù)據(jù)集在Adaboost分類器中的F-mean和 G-mean值,可以很直觀感受出SMOTEboost分類器較傳統(tǒng)Adaboost分類器在大腸癌虛實證型分類性能上得到了很大提升。
3討論
對于表現(xiàn)好的數(shù)據(jù)集,Adaboost的測試錯誤率會達(dá)到一個穩(wěn)定值,并不會隨著分類器的增多而上升。但本研究在設(shè)定不同的弱分類器數(shù)目時,不平衡數(shù)據(jù)集的測試錯誤率在達(dá)到一個最小值之后便又開始上升,即訓(xùn)練過程產(chǎn)生了過擬合。這也進(jìn)一步說明了傳統(tǒng)分類算法運用于不平衡數(shù)據(jù)集所帶來的缺陷,故在進(jìn)行分類器訓(xùn)練之前對不平衡數(shù)據(jù)集進(jìn)行過采樣等平衡處理是非常必要的。其次,本文采用SMOTE過采樣技術(shù)對數(shù)據(jù)集進(jìn)行平衡處理的效果雖有得到提升,但效果依然值得進(jìn)一步商榷改良,原因是它是基于隨機(jī)過采樣算法的一種改進(jìn)方案,由于隨機(jī)過采樣采取簡單復(fù)制樣本的策略來增加少數(shù)類樣本,這樣容易產(chǎn)生模型過擬合的問題,即使得模型學(xué)習(xí)到的信息過于特別而不夠泛化。本文雖選取Adaboost集成算法作為分類器的原始模型,但對不平衡數(shù)據(jù)集而言,為提升分類器性能,考慮不同誤分類情況代價的差異性對算法進(jìn)行優(yōu)化也是之后需要深入研究的重要問題。
辨證論治是中醫(yī)藥治療大腸癌的核心,目前臨床研究對中醫(yī)證型的分析缺乏多中心、大樣本的流行病學(xué)研究,為辯證的客觀化、標(biāo)準(zhǔn)化帶來了一定的困難。癌癥數(shù)據(jù)存在極大的不平衡,準(zhǔn)確率的應(yīng)用更加有限,當(dāng)某些重要類的代表樣本不足時,很容易引起漏診。傳統(tǒng)的學(xué)習(xí)方法以降低總體分類精度為目標(biāo),將所有樣本同等對待,造成了分類器在多數(shù)類的分類精度較高而在少數(shù)類的分類精度很低,故本文放棄采用單一準(zhǔn)確率作為分類器性能衡量指標(biāo),引入F-mean與G-mean則更具合理性。而由于大腸癌中醫(yī)癥狀與證型之間存在明顯的非線性映射關(guān)系,即癥狀與證型之間并不是簡單的一一對應(yīng)關(guān)系,這就說明在大腸癌中醫(yī)證型的臨床判別中醫(yī)生很容易根據(jù)經(jīng)驗做出判定,缺乏一定的科普性。故將中醫(yī)藥與信息化結(jié)合起來,探討適用于處理臨床領(lǐng)域不平衡數(shù)據(jù)集的計算機(jī)網(wǎng)絡(luò)模型至關(guān)重要,也為中醫(yī)證型的規(guī)范化帶來裨益。本文從改善不平衡數(shù)據(jù)集出發(fā),構(gòu)建適用于大腸癌證型分類的網(wǎng)絡(luò)模型,為大腸癌中醫(yī)證型的辯證論治提供計算機(jī)領(lǐng)域的輔助模型,旨在推動大腸癌臨床證型判定的有效性。
參考文獻(xiàn):
[1]胡小生,張潤晶,鐘勇.一種基于聚類提升的不平衡數(shù)據(jù)分類算法[J].集成技術(shù),2014,3(02):35-41.
[2]姚宇,董本志,陳廣勝.一種改進(jìn)的樸素貝葉斯不平衡數(shù)據(jù)集分類算法[J].黑龍江大學(xué)自然科學(xué)學(xué)報,2015,32(05):681-686.
[3]閆慈,田翔華,阿拉依,等.基于AdaBoost法在代謝綜合征不平衡數(shù)據(jù)分類中的應(yīng)用[J].現(xiàn)代預(yù)防醫(yī)學(xué),2017,44(21):3850-3852,3862.
[4]張文東,呂扇扇,張興森.基于改進(jìn)BP神經(jīng)網(wǎng)絡(luò)的非均衡數(shù)據(jù)分類算法[J].計算機(jī)系統(tǒng)應(yīng)用,2017,26(06):153-156.
[5]駱學(xué)新,李志丹.大腸癌的中醫(yī)藥治療進(jìn)展[J].浙江中醫(yī)雜志,2014,49(10):777-779.
[6]王國娟,余文燕.大腸癌中醫(yī)證型規(guī)律研究[J].中華中醫(yī)藥雜志,2016,31(03):837-840.
[7]閆霞,鄭佳露,胡兵.大腸癌證候及其現(xiàn)代生物醫(yī)學(xué)內(nèi)涵研究[J].世界科學(xué)技術(shù)-中醫(yī)藥現(xiàn)代化,2017,19(07):1253-1257.
收稿日期:2018-10-9;修回日期:2018-10-19
編輯/成森