• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Kmeans聚類的XGBoost集成算法研究

      2020-11-09 07:29羅春芳張國(guó)華劉德華朱定歡
      計(jì)算機(jī)時(shí)代 2020年10期

      羅春芳 張國(guó)華 劉德華 朱定歡

      摘? 要: 針對(duì)分類問(wèn)題中的模型泛化能力,提出了基于Kmeans聚類的XGBoost基分類器集成算法,以提升整體算法的泛化能力。首先,訓(xùn)練數(shù)據(jù)集獲得多個(gè)XGBoost模型;然后,通過(guò)Kmeans算法對(duì)不同模型的實(shí)驗(yàn)結(jié)果聚類;最后,對(duì)每個(gè)分類簇中泛化能力最優(yōu)的分類器進(jìn)行集成。在對(duì)某公司實(shí)際分類問(wèn)題中應(yīng)用該算法,結(jié)果表明,該算法的泛化能力有很大程度的提升。

      關(guān)鍵詞: Kmeans聚類; XGBoost; 集成算法; 泛化能力

      中圖分類號(hào):TP391? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ?文章編號(hào):1006-8228(2020)10-12-03

      Abstract: Aiming at the model generalization ability of classification problem, a K-means clustering based XGBoost base classifier ensemble algorithm is proposed in this paper to improve the generalization ability of the whole algorithm. Firstly, training data sets to obtain multiple XGBoost models; then clustering the experiment results of different models with K-means algorithm; finally, integrating the classifiers with the best generalization ability in each cluster. The algorithm was applied to practical classification problems, the results show that the generalization ability of the algorithm is greatly improved.

      Key words: K-means clustering; XGBoost; ensemble algorithm; generalization ability

      0 引言

      近年來(lái),隨著數(shù)據(jù)科學(xué)的不斷進(jìn)步,XGBoost(eXtreme Gradient Boosting)算法被商業(yè)、網(wǎng)絡(luò)、股票分析、電子產(chǎn)品等領(lǐng)域廣泛應(yīng)用[1]。XGBoost是一種在梯度提升算法(GBDT)基礎(chǔ)上改進(jìn)的學(xué)習(xí)算法[2],其特點(diǎn)為復(fù)雜度低、并行效果好、計(jì)算精度高[3],但其泛化能力有待提升。本文選擇Bagging多模型融合思想, 采用多個(gè)XGBoost基分類器,使得每個(gè)基分類器只擬合部分樣本下的部分特征屬性,然后用Kmeans聚類,進(jìn)而提升其泛化能力。

      其思路為:首先,抽取樣本訓(xùn)練多個(gè)XGBoost基分類器模型,然后,采用Kmeans算法聚類多個(gè)基分類器模型中的實(shí)驗(yàn)結(jié)果,最后,集成每個(gè)分類簇中泛化能力最優(yōu)的基分類器。

      1 基于Kmeans聚類的XGBoost集成

      1.1 Kmeans 聚類算法

      Kmeans算法穩(wěn)定性好,聚類效果佳,而且與數(shù)據(jù)的輸入順序無(wú)關(guān),亂序處理時(shí),可獲得同樣的結(jié)果,可很大程度上避免亂序帶來(lái)的煩擾,是一種經(jīng)典的聚類算法[4]。

      1.1.1 Kmeans算法思路

      先在數(shù)據(jù)集中隨機(jī)選取[K]個(gè)樣本為聚類初始中心點(diǎn);然后計(jì)算其余所有樣本與[K]個(gè)樣本點(diǎn)的歐式距離,比較樣本點(diǎn)與[K]個(gè)中心點(diǎn)的[K]個(gè)距離值,離哪個(gè)中心點(diǎn)距離最近就歸為哪一類;之后重新計(jì)算簇中心點(diǎn),并且一直重復(fù)前面的步驟,直到簇中心點(diǎn)位置收斂時(shí)結(jié)束。

      1.1.2 Kmeans算法步驟

      ⑴ 選點(diǎn):從樣本中隨機(jī)選取[K]個(gè)樣本作為初始中心點(diǎn);

      ⑵ 歸類:計(jì)算其余樣本與[K]個(gè)樣本點(diǎn)的歐氏距離并比較,將樣本與距離最近的中心點(diǎn)歸為一類;

      ⑶ 計(jì)算:重新計(jì)算簇中心點(diǎn),一直重復(fù)前面的步驟, 直到簇中心點(diǎn)的位置收斂時(shí)結(jié)束。

      1.2 XGBoost算法

      XGBoost是由Tianqi Chen等2015年提出,在GBDT基礎(chǔ)上,加入目標(biāo)函數(shù)的二次泰勒展開(kāi)項(xiàng)和模型復(fù)雜度的正則項(xiàng)[5],使得目標(biāo)函數(shù)與實(shí)際數(shù)據(jù)相差更小,達(dá)到減少數(shù)據(jù)誤差,提高預(yù)測(cè)準(zhǔn)確度的一種算法。該方法計(jì)算精度高,并行效果好,具有很好的解釋性,在工業(yè)界中得到了廣泛的應(yīng)用。具體思路如下:

      1.3 Bagging集成

      Bagging是經(jīng)典的集成學(xué)習(xí)方法[6],是通過(guò)綜合多個(gè)弱學(xué)習(xí)器的學(xué)習(xí)結(jié)果,共同完成同一個(gè)學(xué)習(xí)任務(wù)的過(guò)程。其集成原理為:有放回重復(fù)抽取[N]個(gè)樣本集,每個(gè)樣本集中有[M]個(gè)樣本,分別訓(xùn)練[N]個(gè)學(xué)習(xí)模型,從而獲得[N]個(gè)弱學(xué)習(xí)器[7]。

      其具體算法如下:

      ⑴ 在原數(shù)據(jù)集中有放回任意抽取[M]個(gè)樣本,共進(jìn)行[N]次,獲得具有[M]個(gè)樣本的[N]個(gè)樣本集;

      ⑵ 將[N]個(gè)樣本集分別對(duì)應(yīng)訓(xùn)練成[N]個(gè)弱學(xué)習(xí)模型,得到[N]個(gè)弱學(xué)習(xí)器;

      ⑶ 將[N]個(gè)弱學(xué)習(xí)器輸出結(jié)果對(duì)應(yīng)投票,得到最終分類結(jié)果。

      1.4 基于Kmeans聚類的XGBoost基分類器集成算法

      為了在采用XGBoost提升模型精度的同時(shí),進(jìn)一步提高模型泛化能力,本文融入了Kmeans和Bagging的思想,提出了基于Kmeans聚類的XGBoost基分類器集成算法,具體流程如圖1所示。

      算法具體步驟如下:

      ① 對(duì)訓(xùn)練集[D]有放回任意抽取[M]個(gè)樣本,獲得具有[M]個(gè)樣本的樣本集;

      ② 訓(xùn)練基分類器[hn],得到樣本的訓(xùn)練結(jié)果;

      ⑷ 將步驟⑶中的[N]個(gè)基分類器的結(jié)果用Kmeans聚類,選出每個(gè)分類簇下的最佳基分類器;

      ⑸ 對(duì)選出的多個(gè)最佳基分類器的輸出結(jié)果根據(jù)簡(jiǎn)單投票法投票,輸出最終預(yù)測(cè)結(jié)果。

      2 實(shí)驗(yàn)結(jié)果與分析

      本文數(shù)據(jù)集樣本量為689945個(gè)數(shù)據(jù),共有51個(gè)特征。對(duì)數(shù)據(jù)進(jìn)行分類后,所得預(yù)測(cè)結(jié)果精度對(duì)比如圖2所示。

      從結(jié)果可知,通過(guò)多XGBoost模型集成的數(shù)據(jù)經(jīng)Kmeans聚類后,整體的泛化能力得到了提升。

      3 結(jié)束語(yǔ)

      文中提出的基于Kmeans聚類下的XGBoost集成算法研究,采用多個(gè)XGBoost基分類器,每個(gè)基分類器只擬合部分樣本下的部分特征屬性增加其差異性,從而提升整體算法的泛化能力。通過(guò)實(shí)驗(yàn)結(jié)果可知,Kmeans聚類的XGBoost集成算法在提高訓(xùn)練精度的同時(shí)提高了算法的泛化能力。

      參考文獻(xiàn)(References):

      [1] 蔣晉文,劉偉光.XGBoost算法在制造業(yè)質(zhì)量預(yù)測(cè)中的應(yīng)用[J].智能計(jì)算機(jī)與應(yīng)用,2017.7(6):58-60

      [2] 謝冬青,周成驥.基于Bagging策略的XGBoost算法在商品購(gòu)買預(yù)測(cè)中的應(yīng)用[J].現(xiàn)代信息科技,2017.1(6):80-82

      [3] 王燕,郭元?jiǎng)P.改進(jìn)的XGBoost模型在股票預(yù)測(cè)中的應(yīng)用[J].計(jì)算機(jī)工程與應(yīng)用,2019.55(20):202-207

      [4] 魏杰.基于K-means聚類算法改進(jìn)算法的研究[J]. 信息通信,2018.5:14-15

      [5] 徐樹(shù)喬.基于XGBoost的Bagging方法的電信客戶流失預(yù)測(cè)應(yīng)用研究[D].華南理工大學(xué)碩士學(xué)位論文,2019.

      [6] 元慧,王文劍,郭虎升.一種基于特征選擇的SVM? Bagging集成方法[J].小型微型計(jì)算機(jī)系統(tǒng),2014.35(11):2533-2537

      [7] 蔣蕓,陳娜,明利特,周澤尋,謝國(guó)城,陳珊.基于Bagging的概率神經(jīng)網(wǎng)絡(luò)集成分類算法[J].計(jì)算機(jī)科學(xué),2013.40(5):242-246

      武夷山市| 仙居县| 若尔盖县| 磴口县| 东兰县| 万安县| 祁东县| 尚志市| 砀山县| 皋兰县| 佛学| 栖霞市| 泽普县| 邯郸市| 凤庆县| 陕西省| 临桂县| 永安市| 塔河县| 唐山市| 云安县| 萍乡市| 独山县| 海口市| 延庆县| 白朗县| 鹤山市| 朝阳县| 呼和浩特市| 喀喇沁旗| 兴和县| 衡南县| 浙江省| 丹江口市| 宁德市| 桦南县| 武陟县| 大渡口区| 滦南县| 内江市| 松潘县|