陳雨桐


摘要:大數據時代,對海量數據的高效處理極為重要。集成學習算法中的隨機森林和梯度提升決策樹是近些年來常被用于處理數據分類與回歸的方法,決策樹則是隨機森林和梯度提升決策樹算法組成的基礎。本文首先對決策樹進行了介紹,然后分別對隨機森林和梯度提升決策樹進行了分析,敘述了兩種算法的優缺點以及近幾年來在生活生產中的應用,并對兩種算法進行了比較。
關鍵詞:決策樹;隨機森林;梯度提升決策樹;集成學習
中圖分類號:TP311? ? ? 文獻標識碼:A
文章編號:1009-3044(2021)15-0032-03
隨著科技的不斷進步與發展,海量的數據涌入人們的生活,人們便希望可以有方式能夠高效地處理這些數據。于是,產生了數據挖掘技術。決策樹便是數據挖掘技術中典型的算法,決策樹可以處理分類問題和回歸問題,但它屬于單個的分類器,具有容易發生過擬合現象的缺陷。因此,集成學習算法應運而生。其中,隨機森林和梯度提升決策樹是兩種由多棵決策樹集合而成的算法,且它們在集成學習算法中很具有代表性。本文將對隨機森林算法和梯度提升決策樹算法進行綜述。
1決策樹
1.1決策樹簡介
決策樹是機器學習中一類用于分類和回歸的算法,目前常用的決策樹算法主要有在1986年由Quinlan提出的ID3算法、由ID3算法改進形成的C4.5算法、進一步改進形成的C5.0算法和在1984年由Breiman提出的CART算法。決策樹的理論結構是一個樹狀圖,圖中每個非葉子節點代表一種決策,每一個分支代表一種決策結果,每一個葉子節點代表一個類別。決策樹分類的方法就是從根結點開始,對某個輸入實例進行決策,每次決策都根據測試結果,通過分支將實例流向下一個節點,直至此實例被劃分到一個葉結點,其便被分到了此葉結點所代表的類中。
決策樹的構造過程依據訓練集特征的決定性,將決定性最重要的特征作為根節點,之后依次按照特征決定性的重要程度分出子節點,直至最后生成葉結點所代表的類。因此,在決策樹的構建過程中,關鍵是找出每次在當前分支節點起決定性作用最大的特征,使最后分出的類盡可能“純”,不同的決策樹算法評估純度差和選擇特征的方式不同[1],ID3算法使用信息增益選擇特征,C4.5和C5.0算法使用信息增益率進行選擇,而CART算法使用Gini指數判斷和選擇特征。
1.2優勢和缺陷
決策樹的優勢是樹狀圖便于理解,能很好地展現出樣本的分類過程和分類過程中屬性的重要程度,且決策樹既能夠處理連續型數據,又能夠處理離散型數據。但同時,決策樹也存在著一些缺陷,一個最典型的缺陷是通過決策樹算法進行分類操作,很容易出現對訓練數據集分類效果很好,但對測試數據集分類效果較差,即出現過擬合[1],無法有效地對所有新樣本進行分類,泛化能力弱。于是,便出現了對決策樹進行剪枝[1]的方法,減去不必過度細化的分支,以此來避免發生過擬合現象。但剪枝的方式只能在一定程度上優化決策樹,當數據龐大復雜時,應用決策樹依舊有一定限制。因此,便出現了基于決策樹的集成學習算法,對數據分類問題有更好的可行性。
2隨機森林
2.1隨機森林簡介
隨機森林(Random Forest)是一種基于決策樹的集成學習算法,它由多棵決策樹組成,每棵決策樹具有一個投票權,隨機森林最后的分類結果就取決于這些決策樹的投票結果。隨機森林中每棵決策樹的生成方式如下:
(1)從訓練集中用有放回抽樣法隨機抽取一定數量的樣本組成新訓練集;
(2)在特征集中隨機選擇一定數量的特征;
(3)利用建立決策樹的方法,依次計算最優的特征作為當前節點進行建樹。
上述過程重復執行n次,每次抽取的樣本數量、特征數量都固定不變,建立的n棵樹就組成了隨機森林。由于每次對樣本和特征都是隨機抽取,就會構造出許多不同的決策樹。因此,隨機森林中的所有決策樹對同一個樣本進行分類,會得到許多分類結果,每棵決策樹對其分類結果進行一次投票,通常取被投次數最多的類作為該樣本所屬的類。用一個簡單的流程圖表示隨機森林應用的過程,如下所示:
由于隨機森林選取訓練樣本和特征的隨機性,以及多次對測試樣本進行分類的特性,應用此算法進行分類可以較好地解決單棵決策樹泛化能力弱的問題,一定程度上彌補了決策樹容易出現過擬合的缺陷。
2.2優缺點
隨機森林主要有以下優點:
(1)實現較為簡單,且訓練速度快。
(2)可以處理多特征的數據,適應能力強。
(3)采用了集成算法后分類精度比單個算法要高。
(4)不容易發生過擬合,泛化能力強。
(5)對不平衡的數據集,隨機森林可以平衡誤差[2]。
但隨機森林算法也存在著一定的缺點,在一些噪聲比較大,即錯誤數據較多的分類問題或回歸問題中,隨機森林也會出現過擬合;對于有不同特征的數據,可能會出現建立了多棵相似決策樹的情形,對分類的真實結果產生一定偏差。
2.3應用
由于隨機森林算法性能較好,目前在許多領域都有所應用。例如,彭遠新等人[3]利用隨機森林算法在濰北平原進行土壤全氮高光譜估算,因為獲取土壤的氮素信息對植物生長極為重要;李銳光等人[4]改進了隨機森林算法,將其用于物聯網設備流量分類,對網絡空間的流量管理有重要意義;蕭伊等人[5]將隨機森林應用于分析膝關節炎患者結構特征和癥狀定量,為在膝關節的相關癥狀評估以及治療指導貢獻了幫助。可見,隨機森林作為近些年來熱門的應用算法,在各行各業中充分發揮了其可用之處。
3梯度提升決策樹
3.1梯度提升決策樹簡介
GBDT(Gradient Boosting Decision Tress),稱作梯度提升決策樹,是決策樹集成學習算法中的一種迭代算法,由多棵依據原訓練集構造的決策樹組成,進行多次迭代,每次迭代在一棵決策樹中產生一個結果,下一棵決策樹在上一次的殘差(真實值-預測值)基礎上進行訓練,經過所有決策樹后,生成最終的結果。梯度提升決策樹算法的過程如下圖所示:
樣本每經過一棵決策樹,它所預測的結果會與真實結果有一定的差異。每棵新的決策樹建立的目的是使殘差在梯度[6]方向上減少,以此最終預測出最接近真實結果的數據。
為了更好地方便理解梯度提升決策樹的擬合數據的過程,下面以一個簡單的例子進行演示:
假設有個人身高170cm,我們最初用160cm去擬合,發現殘差為10cm,接下來我們用7cm去擬合上一輪的殘差,此時的殘差為3cm,第三次我們用2cm去擬合,此時還有1cm的差距,可以繼續不斷地迭代直至GBDT中的迭代次數使用完畢,我們會發現每次迭代擬合的差值都會減小,且每次迭代后預測值都會更加逼近真實值,這就是梯度提升決策樹的簡單應用。
3.2優缺點
梯度提升決策樹主要有以下優點:
(1)幾乎可以適用于所有的回歸問題,無論是線性回歸還是非線性回歸。
(2)預測精度高,泛化能力強。
(3)可以靈活處理連續型數據和離散型數據。
同時,梯度提升決策樹也存在著一定的缺點,由于其決策樹是依次迭代對數據進行訓練的,即決策樹間存在依賴關系,導致梯度提升決策樹難以并行訓練數據。
3.3應用
梯度提升決策樹是人們現在解決許多數據問題能夠用到的算法。例如,路志英等人[7]將改進的GBDT模型用于對天津強對流災害的預報,陳濤等人[8]將GBDT模型用于滑坡易發性的評價中,并證實了GBDT模型在此問題中具有比較高的預測能力,近些年來還有許多關于GBDT的應用,可見其應用效果良好。
4 隨機森林與梯度提升決策樹的比較
隨機森林和梯度提升決策樹都屬于集成學習算法,它們都由多棵決策樹所組成,最終的結果也需要經過所有決策樹共同決定。但隨機森林與梯度提升決策樹在思想和算法上有所區別,隨機森林采用的是機器學習中的Bagging[9]思想,而梯度提升決策樹則采用的是Boosting[10]思想。Bagging和Boosting都是集成學習方法,且都是通過結合多個弱學習器并提升為強學習器來完成訓練任務。Bagging通過有放回均勻抽樣法從訓練集中抽取樣本訓練弱分類器,每個分類器的訓練集是相互獨立的,而Boosting的每個分類器的訓練集不是相互獨立的,每個弱分類器的訓練集都是在上一個弱分類器的結果上進行取樣。由于隨機森林采用了Bagging思想,那么決策樹訓練集相互獨立,組成隨機森林的樹相互之間可以并行生成,而梯度提升決策樹采用的Boosting思想,組成的樹需要按順序串行生成。并且隨機森林中的決策樹對訓練集進行訓練時,對所有的訓練集一視同仁,而梯度提升決策樹對不同的決策樹依據重要性賦有不同的權值[6]。在應用上,隨機森林與梯度提升決策樹都可以解決分類與回歸問題,但隨機森林更多地用于解決分類問題,梯度提升決策樹則更多用于處理回歸問題。
5結束語
隨機森林和梯度提升決策樹都是集成算法中的經典算法,目前在許多領域都有所應用,也有一些科研者將隨機森林或梯度提升決策樹與其他方法相結合,形成復合算法去研究、處理相應問題。雖然目前這兩種算法應用廣泛,但仍有缺陷存在,如何更好地對其更新與拓展是非常值得我們思考和研究的事情,這樣才能更靈活、更有效地讓其應用于人們的生活和生產中。
參考文獻:
[1] 周志華.機器學習[M].北京:清華大學出版社,2016.
[2] 曹正鳳.隨機森林算法優化研究[D].北京:首都經濟貿易大學,2014.
[3] 彭遠新,蒙永輝,徐夕博,等.基于隨機森林算法的濰北平原土壤全氮高光譜估算[J].安全與環境學報,2020,20(5):1975-1983.
[4]李銳光,段鵬宇,沈蒙,等.基于隨機森林的物聯網設備流量分類算法[EB/OL].(2020-10-20).北京航空航天大學學報:1-9.
[5] 蕭伊,肖峰,徐海波.隨機森林模型在膝關節炎患者結構特征與癥狀定量分析中的應用[J].磁共振成像,2020,11(10):877-884.
[6]Jerome H. Friedman. Greedy function approximation: A gradient boosting machine[J]. The Annals of Statistics,2001,29(5).
[7] 路志英,汪永清,孫曉磊,等.基于Focal Loss改進的GBDT模型對天津強對流災害的預報[J].災害學,2020,35(3):34-37,50.
[8] 陳濤,朱麗,牛瑞卿.基于GBDT模型的滑坡易發性評價[C]//第五屆高分辨率對地觀測學術年會論文集.西安,2018:511-520.
[9] Breiman L.Bagging predictors[J].Machine Learning,1996,24(2):123-140.
[10] Freund Y,Schapire R E.A decision-theoretic generalization of on-line learning and an application to boosting[J].Journal of Computer and System Sciences,1997,55(1):119-139.
【通聯編輯:唐一東】