1. 程式人生 > >阿里雲隨筆(11)-PAI-AutoML

阿里雲隨筆(11)-PAI-AutoML

決策樹(Decision Tree)與隨機森林(Random Forest)

決策樹是用樹的結構來構建分類模型,每個節點代表著一個屬性,根據這個屬性的劃分,進入這個節點的兒子節點,直至葉子節點,每個葉子節點都表徵著一定的類別,從而達到分類的目的。

常用的決策樹有ID4,C4.5,CART等。在生成樹的過程中,需要選擇用那個特徵進行剖分,一般來說,選取的原則是,分開後能儘可能地提升純度,可以用資訊增益,增益率,以及基尼係數等指標來衡量。如果是一棵樹的話,為了避免過擬合,還要進行剪枝(prunning),取消那些可能會導致驗證集誤差上升的節點。

隨機森林實際上是一種特殊的bagging方法,它將決策樹用作bagging中的模型。首先,用bootstrap方法生成m個訓練集,然後,對於每個訓練集,構造一顆決策樹,在節點找特徵進行分裂的時候,並不是對所有特徵找到能使得指標(如資訊增益)最大的,而是在特徵中隨機抽取一部分特徵,在抽到的特徵中間找到最優解,應用於節點,進行分裂。隨機森林的方法由於有了bagging,也就是整合的思想在,實際上相當於對於樣本和特徵都進行了取樣(如果把訓練資料看成矩陣,就像實際中常見的那樣,那麼就是一個行和列都進行取樣的過程),所以可以避免過擬合。