国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

XGBoost算法在二分類非平衡高維數(shù)據(jù)分析中的應(yīng)用*

2021-03-16 10:18:32哈爾濱醫(yī)科大學(xué)衛(wèi)生統(tǒng)計(jì)學(xué)教研室150081
中國衛(wèi)生統(tǒng)計(jì) 2021年1期
關(guān)鍵詞:高維模擬實(shí)驗(yàn)分類器

哈爾濱醫(yī)科大學(xué)衛(wèi)生統(tǒng)計(jì)學(xué)教研室(150081)

盧婭欣 黃 月 李 康△

【提 要】 目的 探討XGBoost算法在二分類高維非平衡數(shù)據(jù)中的分類判別效果。方法 通過模擬實(shí)驗(yàn)及真實(shí)代謝組學(xué)數(shù)據(jù)分析,對(duì)XGBoost、隨機(jī)森林、支持向量機(jī)、隨機(jī)欠采樣以及隨機(jī)梯度提升樹共五種方法進(jìn)行比較。結(jié)果 模擬實(shí)驗(yàn)顯示,XGBoost算法在數(shù)據(jù)非平衡較明顯時(shí),在各種實(shí)驗(yàn)條件下均優(yōu)于或不劣于其他四種算法,在數(shù)據(jù)類別趨于平衡的情況下也同樣具有較好的分類效果,且對(duì)噪聲變量具有一定的抗干擾能力。實(shí)例分析顯示,與其他四種算法相比,XGBoost算法的分類性能最優(yōu),且在保證分類效果的基礎(chǔ)上具有更快的運(yùn)算速度。結(jié)論 XGBoost算法適用于非平衡高維數(shù)據(jù)的判別分析,值得研究。

在對(duì)高維數(shù)據(jù)進(jìn)行分類或判別時(shí),數(shù)據(jù)的類別間常存在非平衡的現(xiàn)象,而各類之間的例數(shù)相差較大常會(huì)對(duì)判別效果產(chǎn)生影響[1]。而如何對(duì)非平衡數(shù)據(jù)建立預(yù)測模型進(jìn)行分類是一個(gè)較難解決的問題[2]。目前對(duì)非平衡數(shù)據(jù)的處理主要在數(shù)據(jù)及算法兩大層面。數(shù)據(jù)層面的基本思想是應(yīng)用重采樣技術(shù)使各類別的分布達(dá)到平衡,再使用傳統(tǒng)分類器進(jìn)行分類判別,常用的方法如隨機(jī)欠采樣、隨機(jī)過采樣以及Chawla等人[3]提出的合成少數(shù)類過采樣技術(shù)(SMOTE)等。算法層面以代價(jià)敏感學(xué)習(xí)(cost-sensitive learning)、一分類學(xué)習(xí)(one-class learning)以及集成學(xué)習(xí)(ensemble learning)為主,其中boosting作為一種強(qiáng)大的集成學(xué)習(xí)算法,以算法集合的思想將基礎(chǔ)弱分類器轉(zhuǎn)換為優(yōu)效分類器,已被證明可對(duì)各種不規(guī)則的數(shù)據(jù)類型顯示出良好的分類效果[4]。極端梯度提升算法(extreme gradient boosting,XGBoost)是近年來一種基于boosting的新算法,具有運(yùn)算速度快、效果好等特點(diǎn)[5]。本文在介紹XGBoost算法原理的基礎(chǔ)上,通過模擬實(shí)驗(yàn)及實(shí)例分析,比較并考察它與其他處理非平衡數(shù)據(jù)常用方法的分類效果。

原理與方法

1.XGBoost的目標(biāo)函數(shù)

boosting是一種集成學(xué)習(xí)算法,其主要思想是將許多弱分類器集合在一起,形成一個(gè)強(qiáng)大的組合分類器以提高分類精度,主要算法有自適應(yīng)增強(qiáng)(adaptive boosting,Adaboost)與梯度提升樹(gradient boosting decision tree,GBDT)[6]。XGBoost是GBDT的一種優(yōu)化算法,是將許多CART回歸樹模型集合在一起形成一個(gè)強(qiáng)分類器。其算法步驟如下:

(1)

其中,f(x)表示一棵CART回歸樹,wk是第k棵回歸樹的葉子權(quán)重,q(x)是葉節(jié)點(diǎn)的編號(hào),即樣本x最后會(huì)落在樹的某個(gè)葉節(jié)點(diǎn)上,其值為wq(x)。

(2)

(3)對(duì)損失函數(shù)進(jìn)行泰勒二階展開近似原函數(shù)并移除常數(shù)項(xiàng),則:

(3)

(4)

(4)定義Ij={i|q(xi)=j}作為葉節(jié)點(diǎn)的實(shí)例集,將公式(1)代入公式(3)中,整理可得:

(5)

(6)

2.尋找最佳分裂點(diǎn)的近似算法

XGBoost使用近似分位點(diǎn)算法,通過對(duì)特征值進(jìn)行排序[8],在既定誤差ε和序列大小N的情況下可以以εN的精度來計(jì)算任意分位,同時(shí)還可用原序列的一個(gè)子集代替全集以減少數(shù)據(jù)量。XGBoost通過對(duì)該算法增加權(quán)重,提出了加權(quán)分位數(shù)略圖(weighted quantile sketch),同樣是在訓(xùn)練前對(duì)數(shù)據(jù)排序來列舉數(shù)個(gè)候選分裂點(diǎn),同時(shí)將位于相鄰分位點(diǎn)間的樣本以“塊”的結(jié)構(gòu)儲(chǔ)存到內(nèi)存中,可在串聯(lián)進(jìn)行的迭代過程中重復(fù)使用。在選擇增益最大的特征進(jìn)行節(jié)點(diǎn)分裂時(shí),也可使各特征的增益計(jì)算并聯(lián)進(jìn)行。模擬實(shí)驗(yàn)表明,該算法較傳統(tǒng)的boosting算法可提高計(jì)算速度10~50倍。

模擬實(shí)驗(yàn)

本模擬實(shí)驗(yàn)以基于樹的模型構(gòu)建XGBoost算法模型,旨在考察XGBoost對(duì)非平衡數(shù)據(jù)的分類判別效果,并將其與典型的傳統(tǒng)分類器如隨機(jī)森林(RF)、支持向量機(jī)(SVM)以及處理非平衡數(shù)據(jù)常用的隨機(jī)欠采樣(random under-sampling)和隨機(jī)梯度提升樹(stochastic gradient boosting based trees,SGBT)算法[9]進(jìn)行比較。

該模擬實(shí)驗(yàn)考察二分類數(shù)據(jù)在不同非平衡率(imbalanced ratio,IR)、不同大小的真實(shí)區(qū)分度θ(ROC曲線下面積)及不同數(shù)量噪聲的情況下五種算法的判別能力。具體步驟如下:

(1)設(shè)定20個(gè)服從正態(tài)分布X~N(μ,1)的差異變量,訓(xùn)練集和測試集樣本量各占50%,均為400例,分別設(shè)置非平衡率(IR)為1/19、1/9、1/4和2/3。

(2)設(shè)定兩類間的真實(shí)區(qū)分度θ為0.85和0.95兩個(gè)水平,并另設(shè)定500個(gè)噪聲(均數(shù)為0,方差為1);數(shù)據(jù)間的相關(guān)性均簡單設(shè)定為0。

(3)分別使用上述五種算法對(duì)訓(xùn)練集建模100次,再用訓(xùn)練好的模型對(duì)測試集做判別預(yù)測,最終各評(píng)價(jià)指標(biāo)的結(jié)果取100次計(jì)算的均值(表1)。五種算法在各實(shí)驗(yàn)條件下的AUC值分布見圖1和圖2。

表1 五種算法在不同情況下對(duì)模擬數(shù)據(jù)的分類效果AUC均值

圖1 真實(shí)區(qū)分度θ=0.85時(shí)各算法的分類效果AUC值

圖2 真實(shí)區(qū)分度θ=0.95時(shí)各算法的分類效果AUC值

由圖1和圖2可知,在各種不同的條件下,非平衡較嚴(yán)重時(shí)(非平衡率IR<2/3),XGBoost算法的分類效果均優(yōu)于其他算法,而在接近平衡的狀態(tài)時(shí)(IR=2/3),XGBoost的AUC值略低于效果最佳的RF算法。當(dāng)噪聲數(shù)量由0增加到500時(shí),XGBoost的分類效果仍優(yōu)于其他算法,說明該算法對(duì)噪聲變量具有一定的抗干擾能力。

實(shí)例分析

選取同一批次檢測的大腸癌(CRC)患者和炎性腸病患者的血漿代謝組學(xué)數(shù)據(jù)進(jìn)行研究。該數(shù)據(jù)共包括662個(gè)代謝物和644例樣本,其中大腸癌組571例,炎性腸病組73例,非平衡率為12.8%。經(jīng)過變量篩選后(取VIP>1.1且FDR校正后的P值<0.05),剩余68個(gè)代謝物。使用無放回的隨機(jī)抽樣,分層抽取每一類別的50%樣本作為訓(xùn)練集,剩余50%作為測試集,并重復(fù)100次。使用XGBoost算法和其他四種算法對(duì)未篩變量及變量篩選后的組學(xué)數(shù)據(jù)分別建模訓(xùn)練,得出各模型預(yù)測的AUC值以及靈敏度、特異度(根據(jù)約登指數(shù)最大選取診斷閾值)。各算法的分類判別結(jié)果分別見表2和表3。

表2 五種算法在662個(gè)變量時(shí)CRC的分類判別效果

表3 五種算法在篩選出68個(gè)變量時(shí)CRC的分類判別效果

分析結(jié)果顯示,XGBoost在無論變量篩選與否的情況下均具有良好的分類判別效果,證明其在高維數(shù)據(jù)判別領(lǐng)域廣泛應(yīng)用的可行性,可為臨床疾病診斷與癌癥篩查提供一定幫助。

討 論

XGBoost是一種基于boosting思想的新算法。該算法在傳統(tǒng)梯度提升樹的基礎(chǔ)上,加入了正則項(xiàng)以控制模型復(fù)雜度,減少過擬合。同時(shí)XGBoost對(duì)損失函數(shù)進(jìn)行泰勒二階展開以近似原函數(shù),因此損失函數(shù)只需滿足函數(shù)二階可微。該算法中所使用的加權(quán)分位數(shù)略圖可快速生成可保證精度的候選分割點(diǎn),且在模型訓(xùn)練前預(yù)先保存了排序后的數(shù)據(jù)特征,以支持在迭代中高效反復(fù)利用,從而大大提高了運(yùn)算效率。

模擬實(shí)驗(yàn)結(jié)果顯示,在數(shù)據(jù)非平衡較嚴(yán)重的情況下(如IR<1/4),XGBoost算法在各種實(shí)驗(yàn)情況下均可取得最優(yōu)的分類效果,并且對(duì)噪聲也具有一定的干擾能力。其他模擬實(shí)驗(yàn)顯示,當(dāng)訓(xùn)練集兩個(gè)類別的樣本量由兩類均為100例的完全平衡狀態(tài)增加信息量至300例與100例的非平衡狀態(tài)時(shí),相比其他分類器,XGBoost可以克服非平衡造成的影響從而表現(xiàn)出更好的分類效果。實(shí)際代謝組數(shù)據(jù)分析結(jié)果顯示,相比于其他四種算法,XGBoost在有無變量篩選的情況下判別效果均相對(duì)最優(yōu)。以上結(jié)果均說明XGBoost算法對(duì)處理非平衡數(shù)據(jù)具有明顯優(yōu)勢。

XGBoost算法的其他特點(diǎn)還包括可以進(jìn)行特征選擇、自動(dòng)學(xué)習(xí)缺失值的分裂方向以處理缺失值等。同時(shí),本研究中該算法的損失函數(shù)使用的是機(jī)器學(xué)習(xí)常用的均方誤差(MSE),在實(shí)際應(yīng)用中也可以根據(jù)數(shù)據(jù)的特點(diǎn)選取其他二階可微的函數(shù)。

猜你喜歡
高維模擬實(shí)驗(yàn)分類器
斷塊油藏注采耦合物理模擬實(shí)驗(yàn)
一種改進(jìn)的GP-CLIQUE自適應(yīng)高維子空間聚類算法
BP-GA光照分類器在車道線識(shí)別中的應(yīng)用
電子測試(2018年1期)2018-04-18 11:52:35
基于加權(quán)自學(xué)習(xí)散列的高維數(shù)據(jù)最近鄰查詢算法
輸氣管道砂沖蝕的模擬實(shí)驗(yàn)
加權(quán)空-譜與最近鄰分類器相結(jié)合的高光譜圖像分類
結(jié)合模糊(C+P)均值聚類和SP-V-支持向量機(jī)的TSK分類器
一般非齊次非線性擴(kuò)散方程的等價(jià)變換和高維不變子空間
射孔井水力壓裂模擬實(shí)驗(yàn)相似準(zhǔn)則推導(dǎo)
彈道修正模擬實(shí)驗(yàn)裝置的研究
湄潭县| 泰宁县| 内江市| 阳西县| 休宁县| 诏安县| 枣强县| 行唐县| 镇坪县| 屯昌县| 桦甸市| 通江县| 成安县| 兴城市| 利津县| 永靖县| 武冈市| 延庆县| 怀宁县| 扬中市| 托克托县| 磐石市| 漳浦县| 阿拉善右旗| 英山县| 南丰县| 石城县| 达日县| 华安县| 融水| 开江县| 乳山市| 柯坪县| 文安县| 富平县| 海淀区| 浑源县| 平谷区| 南和县| 阿勒泰市| 酒泉市|