課程地址:https://class.coursera.org/ntumltwo-002/lecture
重要!重要!重要~
一、決策樹(Decision Tree)、口袋(Bagging),自適應增強(AdaBoost)
- Bagging和AdaBoost算法再分類的時候,是讓所有的弱分類器同時發揮作用。它們之間的區別每個弱分離器是否對后來的blending生成G有相同的權重。
- Decision Tree是一種有條件的融合算法,每次只能根據條件讓某個分類器發揮作用。
二、基本決策樹算法
1.用遞歸的視角來看決策樹,根據特征選擇分支條件,不斷的生成子樹,所有的子數組成了最后的決策樹。
例如下面根據回家時間、約會情況、作業的deadline的特征,生成決策樹,預測是否會觀看mooc在線課程。
2.基本的決策樹算法描述
- 確定分支條件。分支條件可以由人來確定,也可以由算法生成
- 根據分支條件划分訓練數據D
- 根據分支條件不斷遞歸生成子樹,直到滿足終止條件
- 為了防止過擬合,限制模型的復雜度,通常都會通過剪枝(Pruning)來正則化決策樹

三、CART算法(分類回歸樹)
林這里講的很容易理解,可以參考:http://blog.csdn.net/u011067360/article/details/24871801?utm_source=tuicool&utm_medium=referral
- CART是只有兩個分支的二叉樹
- 根據“純度”確定分支的條件。對於分類的通常選擇GINI,對於連續的目標變量可以使用LSD或者LAD。
GINI指數:介於0~1之間的數,0-完全相等,1-完全不等。總體內包含的類別越雜亂,GINI指數就越大(和熵的概念類似)。
- 根據GINI找到最佳的待切分特征
- 如果該節點不能再分,將該節點存為葉節點
- 執行二元切分
- 在右子樹遞歸調用createTree()方法,創建子樹
- 在右子樹遞歸調用createTree()方法,創建子樹
四、CART和AdaBoost元算法應用比較
CART相比AdaBoost的效率會高一些,因為前者是“有條件的切”,后者是完全的“橫、豎”。
五、CART實踐中的特點