王亞林,陳忍忍
(江蘇省第二地質(zhì)工程勘察院,江蘇 徐州 221000)
隨著大數(shù)據(jù)時(shí)代的到來(lái),機(jī)器學(xué)習(xí)成為科學(xué)研究和實(shí)際應(yīng)用的重要工具和研究對(duì)象,使運(yùn)用機(jī)器學(xué)習(xí)算法進(jìn)行分類問(wèn)題的研究也成為了熱門。分類問(wèn)題可以分為二分類問(wèn)題和多分類問(wèn)題,其根本思想是通過(guò)一個(gè)函數(shù)(算法)來(lái)判斷輸入數(shù)據(jù)的標(biāo)簽,即類別。相較于回歸問(wèn)題,分類問(wèn)題的輸出是一系列離散值,并且分類問(wèn)題在現(xiàn)實(shí)中的應(yīng)用更為廣泛,如人臉識(shí)別、語(yǔ)音識(shí)別、圖像分類、遙感等領(lǐng)域。
梯度提升樹(gradient boosting decision tree,GBDT)[1-5]、多層感知機(jī)(multi-layer perceptron,MLP)[6-9]和支持向量機(jī)(support vector machine,SVM)[10-12]均為經(jīng)典的機(jī)器學(xué)習(xí)模型。國(guó)內(nèi)外學(xué)者對(duì)這幾種模型在分類問(wèn)題方面已經(jīng)有了諸多的研究。Guangzhou[13]等將特征篩選與神經(jīng)網(wǎng)絡(luò)、樸素貝葉斯、SVM 和 GBDT等模型相互結(jié)合建立分類模型,比較幾種模型在分類問(wèn)題中的表現(xiàn)。Dev[14]等人利用 DGF和HGF的數(shù)據(jù),對(duì)運(yùn)用機(jī)器學(xué)習(xí)方法進(jìn)行地層巖性分類研究,結(jié)果表明,GBDT具有良好的分類結(jié)果。羅威臻[15]利用遺傳算法和MLP模型研究了肌電和腦電的分類問(wèn)題,結(jié)果表明,所提出的方法在分類準(zhǔn)確率上已經(jīng)優(yōu)于現(xiàn)有的分類方法。
以UCI機(jī)器學(xué)習(xí)數(shù)據(jù)倉(cāng)庫(kù)(Machine Learning Data Repository)中提供的康斯威星乳腺癌數(shù)據(jù)為研究數(shù)據(jù),分別使用GBDT、MLP和SVM算法建立乳腺癌預(yù)測(cè)模型,比較各種模型的表現(xiàn),為進(jìn)一步研究機(jī)器學(xué)習(xí)模型在分類問(wèn)題中的實(shí)際應(yīng)用提供了思路。
提升(Boosting)方法是一種常用的統(tǒng)計(jì)學(xué)方法,它通過(guò)改變訓(xùn)練樣本的權(quán)重,學(xué)習(xí)多個(gè)分類器,并將這些分類器進(jìn)行線性組合,提高模型的性能,可以看成一種集成方法。Boosting方法主要采用基函數(shù)的線性組合與前向分布算法。以決策樹為基函數(shù)的提升方法稱為提升樹(booting tree,BD),而梯度提升樹(Gradient boosting decision tree,GBDT)則是結(jié)合回歸樹(Regression Decision Tree)和BT的思想并提出利用殘差梯度來(lái)優(yōu)化回歸樹的集成過(guò)程。
神經(jīng)網(wǎng)絡(luò)是由多個(gè)非常簡(jiǎn)單的處理單元彼此按某種方式相互連接而形成的計(jì)算機(jī)系統(tǒng),該系統(tǒng)靠其狀態(tài)對(duì)外部輸入信息的動(dòng)態(tài)響應(yīng)來(lái)處理信息。人工神經(jīng)網(wǎng)絡(luò)是一種旨在模仿人腦結(jié)構(gòu)及其功能的信息處理系統(tǒng)。反向傳播(Back propagation,BP)是使用多層前饋網(wǎng)絡(luò)進(jìn)行監(jiān)督學(xué)習(xí)的最廣泛使用的算法。
多層感知機(jī)(Multi-Layer perceptron,MLP)是神經(jīng)網(wǎng)絡(luò)模型的擴(kuò)展,其基本思想是通過(guò)增加隱藏層的數(shù)量,構(gòu)造一種多層神經(jīng)網(wǎng)絡(luò)模型??傮w而言,深度神經(jīng)網(wǎng)絡(luò)模型可以分為輸入層、隱藏層和輸出層三部分。
支持向量機(jī)是一種二分類模型,其基本模型是定義在特征空間上的線性分類器。SVM的學(xué)習(xí)策略是間隔最大化,可以形式化為一個(gè)求解凸二次規(guī)劃的問(wèn)題,也等價(jià)于正則化的合頁(yè)損失函數(shù)的最小化問(wèn)題[5]:
(1)
Lε為損失函數(shù),C為懲罰系數(shù)。一般來(lái)說(shuō),C的值設(shè)置的越大,則模型訓(xùn)練的精度越高。但是,如果C值設(shè)置的過(guò)高,則會(huì)出現(xiàn)過(guò)擬合問(wèn)題。
(2)
基于Pycharm平臺(tái),使用Python 3.8.3進(jìn)行編程,實(shí)現(xiàn)GBDT、MLP和SVM算法。實(shí)驗(yàn)數(shù)據(jù)來(lái)自南斯拉夫盧布爾雅那大學(xué)醫(yī)療中心腫瘤研究所。對(duì)于GBDT模型,主要需要設(shè)置最大迭代次數(shù)、樹的深度、節(jié)點(diǎn)和學(xué)習(xí)速率4個(gè)參數(shù)。將最大迭代次數(shù)分別設(shè)為500、1 000和2 000,樹的深度分別設(shè)為2、3和4,節(jié)點(diǎn)均設(shè)為2,學(xué)習(xí)速率分別設(shè)為0.001、0.01和0.1。對(duì)于MLP模型的參數(shù),最大迭代次數(shù)分別設(shè)為500、1 000和2 000,Alpha分別設(shè)為0.1、0.25和1。對(duì)于SVM模型,分別采用不同的核函數(shù),參數(shù)gamma采用網(wǎng)格搜索法尋找最優(yōu)參數(shù)。
表1為部分康斯威星乳腺癌數(shù)據(jù)的統(tǒng)計(jì)信息。該數(shù)據(jù)集有兩大類、9個(gè)特征,共286個(gè)樣本。包括類別(class)分別是乳腺癌復(fù)發(fā)(recurrence-events)和未復(fù)發(fā)(no-recurrence-events)。年齡(age)有20~29、30~39、40~49、50~59、60~69和70~79六個(gè)區(qū)間。絕經(jīng)期(menopause)分為未絕經(jīng)(prememo)、40歲之后絕經(jīng)(ge40)和40歲之前絕經(jīng)(lt40)。腫瘤大小(tumor-size)、淋巴結(jié)個(gè)數(shù)(inv-nodes)、結(jié)節(jié)冒有無(wú)(node-caps)、腫瘤惡性程度(deg-malig)分為1、2、3三種,3代表惡性程度最高。breast分為left和right。breast-quad是所在象限,irradiate是是否有放射性治療經(jīng)歷。
表1 樣本基本統(tǒng)計(jì)特征(部分)Tab.1 Statistical characters of samples (parts)
結(jié)果表明(表2),訓(xùn)練集中、模型精度由高至低分別為GBDT3 (預(yù)測(cè)精度=0.99)、GBDT2(預(yù)測(cè)精度=0.98)和GBDT1(預(yù)測(cè)精度=0.98)。驗(yàn)證集中、模型精度由高至低分別為GBDT3 (預(yù)測(cè)精度=0.97)、GBDT1 (預(yù)測(cè)精度=0.96)和GBDT2 (預(yù)測(cè)精度=0.95)。
表2 GBDT模型分類精度Tab.2 Classification accuracy of GBDT model
從模型解釋度來(lái)看,幾種模型中,GBDT3模型具有最高的模型解釋度,其他模型的訓(xùn)練集精度均低于該模型,且GBDT3模型的驗(yàn)證分類精度為0.97,預(yù)測(cè)精度也高于其他模型。從模型穩(wěn)定性角度,GBDT3模型訓(xùn)練集和驗(yàn)證集相差0.02,與GBDT2相同,但優(yōu)于GBDT1模型。綜合而言,GBDT3在該分類問(wèn)題中的表現(xiàn)最優(yōu)。
結(jié)果表明(表3),訓(xùn)練集中、模型精度由高至低分別為MLP3 (預(yù)測(cè)精度=0.99)、MLP2(預(yù)測(cè)精度=0.98)和MLP1 (預(yù)測(cè)精度=0.91)。驗(yàn)證集中、預(yù)測(cè)精度由高至低分別為MLP3(預(yù)測(cè)精度=0.99)、MLP2(預(yù)測(cè)精度=0.99)和MLP1(預(yù)測(cè)精度=0.94)。
從模型解釋度來(lái)看,幾種模型中,MLP3模型具有最高的模型解釋度,其他模型的訓(xùn)練集精度均低于該模型,且該模型的預(yù)測(cè)精度是三種模型中最高的。但是,MLP2的精度幾乎與MLP3一致,僅在訓(xùn)練集中略低于MLP3模型。綜合而言,MLP3在該分類問(wèn)題中的表現(xiàn)最優(yōu)。
表3 MLP模型分類精度Tab.3 Classification accuracy of MLP model
結(jié)果表明(表4),訓(xùn)練集中,模型精度由高至低分別為linear-svm (預(yù)測(cè)精度=0.99)、rbf-svm (預(yù)測(cè)精度=0.98)、poly-svm (預(yù)測(cè)精度=0.97)和sigmoid-svm(預(yù)測(cè)精度=0.95)。驗(yàn)證集中,模型精度由高至低分別為linear-svm (預(yù)測(cè)精度=0.98)、rbf-svm (預(yù)測(cè)精度=0.97)、poly-svm (預(yù)測(cè)精度=0.96)和sigmoid-svm(預(yù)測(cè)精度=0.96)。
表4 SVM模型分類精度Tab.4 Classification accuracy of SVM model
從模型解釋度來(lái)看,幾種模型中,GBDT3模型具有最高的模型解釋度,其他模型的訓(xùn)練集精度均低于該模型,且GBDT3模型的驗(yàn)證分類精度為0.97,預(yù)測(cè)精度也高于其他模型。從模型穩(wěn)定性角度,GBDT3模型訓(xùn)練集和驗(yàn)證集相差0.02,與GBDT2相同,但優(yōu)于GBDT1模型。綜合而言,GBDT3在該分類問(wèn)題中的表現(xiàn)最優(yōu)。
表5為GBDT、MLP和SVM三種機(jī)器學(xué)習(xí)模型的最優(yōu)分類預(yù)測(cè)模型的結(jié)果。結(jié)果表明,三種模型對(duì)于威斯康星乳腺癌數(shù)據(jù)集均可獲得較好的分類預(yù)測(cè)結(jié)果。訓(xùn)練集中,GBDT3、MLP3和linear-svm的分類精度一致,均可達(dá)到0.99。驗(yàn)證集中,模型精度由高至低分別為MLP3、linear-svm和GBDT3。綜合而言,幾種模型均有較高的預(yù)測(cè)精度,但是MLP精度更高,所以可以將MLP3模型視為最優(yōu)的乳腺癌預(yù)測(cè)模型。
表5 不同機(jī)器學(xué)習(xí)方法預(yù)測(cè)精度分析Tab.5 Accuracy analysis of different machine learning methods
基于梯度提升樹、多層感知機(jī)和支持向量機(jī)三種機(jī)器學(xué)模型,分析幾種不同機(jī)器學(xué)習(xí)模型的預(yù)測(cè)精度,結(jié)論和展望如下:
三種模型在癌癥分類問(wèn)題中均有良好的表現(xiàn),無(wú)論是建模集還是預(yù)測(cè)集均有較高的預(yù)測(cè)精度。相較而言,MLP模型預(yù)測(cè)精度更好,泛化能力更強(qiáng),且參數(shù)方面更為簡(jiǎn)單。
相較于MLP和SVM模型,GBDT模型參數(shù)較多,需要進(jìn)行調(diào)參。綜合而言,幾種模型在分類算法中均有較好的表現(xiàn),研究如何使用兩種模型共同解決其他分類問(wèn)題有一定的意義。
在今后的研究中,可以采用網(wǎng)格搜索法對(duì)GBDT和MLP進(jìn)行調(diào)參,并將這幾種模型用于更多的分類問(wèn)題,以進(jìn)行更廣泛的研究。