決策樹算法
決策樹(DT)是一種基本的分類和回歸方法。在分類問題中它可以認為是if-then規則的集合,也可以認為是定義在特征空間與類空間上的條件概率分布,學習思想包括ID3,C4.5,CART(摘自《統計學習方法》)。
- CLS
- ID3
- C4-5
- CART
概述
1.1 決策樹(DT)是一種基本的分類和回歸方法。在分類問題中它可以認為是if-then規則的集合,也可以認為是定義在特征空間與類空間上的條件概率分布,學習思想包括ID3,C4.5,CART(摘自《統計學習方法》)。
1.2 Bagging :基于數據隨機重抽樣的集成方法(Ensemble methods),也稱為自舉匯聚法(boostrap aggregating),整個數據集是通過在原始數據集中隨機選擇一個樣本進行替換得到的。進而得到S個基預測器( base estimators),選擇estimators投票最多的類別作為分類結果,estimators的平均值作為回歸結果。(摘自《統計學習方法》和scikit集成方法介紹)
1.3 隨機森林(RF):基于boostrap重抽樣和隨機選取特征,基預測器是決策樹的集成方法(Ensemble methods)
1.4 Boosting :通過改變樣本的權重(誤分樣本權重擴大)學習多個基預測器,并將這些預測器進行線性加權的集成方法 (摘自《統計學習方法》)
1.5 梯度提升決策樹(GBDT):基于boosting方法,提升方向是梯度方向的決策樹的集成方法(Ensemble methods)
1.6 XGBDT:基于GBDT的一種升級版本,對目標函數做了二階導數,主要改進是使用了正則化和特征分塊存儲并行處理(參考大殺器xgboost指南)
1.7 回歸/分類樹樹模型函數:
,這里數據集被劃分為R1,...,Rm個區域,每一個區域對應一個預測值Cm;其中I()是指示函數,當滿足條件時返回1,否則為0
1.8 決策樹常見的損失函數:
用于分類的損失函數:01損失,LR的對數損失,softmax的mlogloss
用于回歸的損失函數:線性回歸的MSE
原理
- <統計學習方法> 李航 第5章 決策樹
本質
決策樹學習本質上是從訓練數據集中歸納出一組分類規則,與訓練數據集不相矛盾的決策樹。能對訓練數據進行正確分類的決策樹可能有多個,也可能 一個也沒有.我們需要的是一個與訓練數據矛盾較小的決策樹,同時具有很好的 泛化能力. ?決策樹學習是由訓練數據集估計條件概率模型.基于特征空間劃分的類的條件概率模型有無窮多個. 我們選擇的條件概率模型應該不僅對訓練數據有很好的擬合,而且對未知數據有很好的預測.
CLS(Concept Learning System)算法
?CLS算法是早期的決策樹學習算法。它是許多決策樹學習算法的基礎
CLS基本思想
?從一棵空決策樹開始,選擇某一屬性(分類屬性)作為測試屬性。該測試屬性對應決策樹中的決策結點。根據該屬性的值的不同,可將訓練樣本分成相應的子集:
? 如果該子集為空,或該子集中的樣本屬于同一個類,則該子集為葉結點, 否則該子集對應于決策樹的內部結點,即測試結點,需要選擇一個新的分類屬性對該子集進行劃分,直到所有的子集都為空或者屬于同一類。
參考
決策樹的路徑或者if then具有重要性質——互斥并且完備。
什么是泛化?
損失函數未目標函數的最小化。
熵
條件熵
信息增益定義
信息增益的算法
信息增益表示由于特征A而使對數據集D進行分類的不確定性減少的程度。
信息增益大的特征具有更強的分類能力。
信息增益比
偏向取值較多的特征——使用信息增益比校正。
ID3算法
C4.5算法
決策樹的剪枝
對生成的樹進行簡化,裁剪掉一些子樹或者結點。剪枝通過最小化決策樹整體的損失函數或代價函數來實現。
剪枝算法
CART算法
分類與回歸樹classification and regression tree