徐勇
摘 要:本文將集成式人工智能算法——梯度提升樹算法應(yīng)用到了特征信息有缺失的帶標(biāo)簽樣本的分類預(yù)測(cè)中,通過和其它分類算法比較看出集成式算法在準(zhǔn)確度和ROC、AUC等分類性能指標(biāo)上有著明顯的優(yōu)勢(shì)。
關(guān)鍵詞:人工智能;集成式;分類預(yù)測(cè)
一、引言
近些年,人工智能技術(shù)因所依賴的硬件環(huán)境的改善得到了更為廣泛的應(yīng)用。概括地說,人工智能技術(shù)是利用計(jì)算機(jī)軟硬件通過程序設(shè)計(jì)來實(shí)現(xiàn)人類智能的技術(shù)科學(xué)。從應(yīng)用領(lǐng)域的角度來講,人工智能技術(shù)又可以大致分為模式識(shí)別、機(jī)器學(xué)習(xí)、智能算法和數(shù)據(jù)挖掘等方面。本文關(guān)注的就是利用數(shù)據(jù)挖掘中的集成式算法對(duì)樣本數(shù)據(jù)實(shí)現(xiàn)分類預(yù)測(cè)。
集成式的數(shù)據(jù)挖掘算法比較多。所謂集成是指將多個(gè)同類算法進(jìn)行有機(jī)結(jié)合實(shí)現(xiàn)聯(lián)合決策的過程。比較經(jīng)典隨機(jī)森林算法就是通過隨機(jī)組合將多課決策樹聯(lián)合通過投票的方式確定樣本的類別。以此為基礎(chǔ)發(fā)展得到一些諸如AdaBoost,GBDT(Gradient Boosting Decision Tree)等集成式算法,尤其是GBDT算法,作為一種迭代的決策樹算法,聯(lián)合多課決策樹通過迭代的過程對(duì)歷次預(yù)測(cè)產(chǎn)生的殘差進(jìn)行擬合以達(dá)到較高的訓(xùn)練精度。它和支持向量機(jī)都被認(rèn)為是泛化能力較強(qiáng)的樣本分類算法。本文也將通過實(shí)例比較二者的分類性能。
二、基于集成式人工智能算法GBDT的分類預(yù)測(cè)
以一個(gè)確定的帶標(biāo)簽的數(shù)據(jù)集為例。這里選取記錄了泰坦尼克號(hào)沉沒事件中的乘客身份信息以及最終幸存與否的數(shù)據(jù)表。根據(jù)歷史記錄,泰坦尼克號(hào)上共計(jì)1316位乘客。每位乘客均帶有年齡,性別,座號(hào)等信息。另外用標(biāo)簽0標(biāo)注乘客死亡,1標(biāo)注乘客生還。這樣就個(gè)構(gòu)成了一個(gè)包含1316條樣本的數(shù)據(jù)表。表一呈現(xiàn)了部分乘客的信息。可以注意到每位乘客包含座位等級(jí),姓名,年齡,性別等十個(gè)特征信息。而“survived”則是幸存與否,用0和1區(qū)別。因年代原因不少信息都是殘缺的,只能用“NaN”來記錄,在實(shí)際數(shù)據(jù)分析中,我們采用該特征的其它記錄值的均值來代替這些缺失值?,F(xiàn)在目的則是利用集成式的人工智能算法GBDT、隨機(jī)森林和公認(rèn)分類學(xué)習(xí)能力比較出色的支持向量機(jī)(SVC)來學(xué)習(xí)這些樣本的信息,從而訓(xùn)練出預(yù)測(cè)模型。
根據(jù)預(yù)測(cè)模型的構(gòu)建原理,我們將1316條數(shù)據(jù)分為訓(xùn)練集和測(cè)試集。訓(xùn)練集顧名思義是用于讓算法學(xué)習(xí)數(shù)據(jù)訓(xùn)練模型的,而測(cè)試集則是檢驗(yàn)?zāi)P偷男阅?。為比較公平,三種分類算法不指定參數(shù),均采用默認(rèn)設(shè)置以讓算法自動(dòng)充分地學(xué)習(xí)訓(xùn)練集數(shù)據(jù)??紤]到這些算法在學(xué)習(xí)數(shù)據(jù)時(shí)某些環(huán)節(jié)的隨機(jī)性,我們對(duì)每個(gè)算法均運(yùn)行50次,通過平均性能,包括平均準(zhǔn)確率、平均AUC等值反映三種算法的性能。
三、模型性能的比較
首先通過比較直觀的ROC曲線圖反映一次學(xué)習(xí)后三種算法的性能比較。ROC曲線圖的出現(xiàn)是為了解決僅通過模型對(duì)測(cè)試集樣本預(yù)測(cè)的準(zhǔn)確率來反映模型性能不夠科學(xué)的問題,尤其是在不平衡的數(shù)據(jù)集中。例如若測(cè)試集由199個(gè)正類和1個(gè)負(fù)類樣本組成,則即使不用分類算法直接把所有樣本都預(yù)測(cè)為正類,準(zhǔn)確率也非常高。所以準(zhǔn)確率不足以反映模型的性能,這時(shí)需要正類樣本被正確歸類(真的正類)的比例tpr和正類樣本被錯(cuò)誤歸類(假的正類)的比例fpr來綜合反映模型性能。ROC曲線正是反映了tpr和fpr隨著算法閾值變化的曲線圖。圖1是此次預(yù)測(cè)的ROC曲線圖。圖中按圖例表示的不同形狀的曲線是此次預(yù)測(cè)的三種算法的ROC曲線,它代表模型對(duì)正類樣本正確分類的比率(tpr)和對(duì)正類樣本錯(cuò)分的比率(fpr)。在以fpr為橫軸tpr為縱軸的ROC曲線圖里,顯然曲線越靠近左上角表明性能越好。
從圖1可以看出整體而言,在不同的閾值下,GBDT算法的整體的性能更好,總體上其ROC曲線是位于其它兩種算法之上的。相對(duì)而言在閾值較小時(shí),支持向量機(jī)SVC性能比擬于GBDT而優(yōu)于隨機(jī)森林RF,在閾值較大時(shí),三種算法的性能幾乎沒有差別。但這僅僅是對(duì)測(cè)試集一次預(yù)測(cè)的性能比較,考慮到切分?jǐn)?shù)據(jù)集的隨機(jī)性,這還不夠全面。所以我們對(duì)每種算法實(shí)施50輪預(yù)測(cè),對(duì)50次預(yù)測(cè)的準(zhǔn)確率和ROC曲線的線下面積AUC都取均值來比較三種算法的預(yù)測(cè)性能。平均準(zhǔn)確率具體結(jié)果隨機(jī)森林,GBDT和SVC分別為0.815,0.824和0.809。結(jié)果顯示就平均準(zhǔn)確率而言,GBDT最優(yōu),隨機(jī)森林次之,SVC稍稍落后。ROC線下面積AUC的具體結(jié)果隨機(jī)森林,GBDT和SVC分別為0.816,0.838和0.822。結(jié)果顯示就平均AUC而言GBDT最優(yōu),SVC次之而隨機(jī)森林稍稍落后??紤]到數(shù)據(jù)表本身很多數(shù)據(jù)都是缺失的,這些算法的準(zhǔn)確率和對(duì)正負(fù)類樣本分別正確判斷的能力都是令人滿意的。
參考文獻(xiàn)
[1] 結(jié)合隨機(jī)森林面向?qū)ο蟮纳仲Y源分類 王猛等 測(cè)繪學(xué)報(bào) 2020 第49卷 第2期 P235-244
[2] 采用單類隨機(jī)森林的異常檢測(cè)方法及應(yīng)用 張西寧等 西安交通大學(xué)學(xué)報(bào) 2020 第2期 P1-8
[3] 面向高維特征和多分類的分布式梯度提升樹 江佳偉等 軟件學(xué)報(bào) 2019 第30卷 第3期 P784-798
[4] 基于梯度提升樹的飛機(jī)機(jī)身對(duì)接狀態(tài)識(shí)別 蔡暢等 浙江大學(xué)學(xué)報(bào)(工學(xué)版)2019 第7期 P1274-1281
[5] 定點(diǎn)孿生支持向量機(jī) 劉嶠等 控制與決策 2020 第35卷 第2期 P272-284
[6] 基于支持向量機(jī)的線化簡(jiǎn)方法 段佩祥等 武漢大學(xué)學(xué)報(bào)(信息科學(xué)版) 2020第5期 P744-752