決策樹剪枝就是基於方差分析,設定置信區間,然後自動剪枝。c50內部會做
classification and regression trees與c4.5演算法是非常相似的,也只是如何選取節點的區別,但是cart支援**連續的值(回歸)。cart只構建二叉樹,而c4.5則能構建多叉樹。
根據熵分枝
參考(為防止內容消失,所以將所需內容引用如下):
1、是一種不等性度量;
2、通常用來度量收入不平衡,可以用來度量任何不均勻分布;
3、是介於0~1之間的數,0-完全相等,1-完全不相等;
4、總體內包含的類別越雜亂,gini指數就越大(跟熵的概念很相似)
基尼不純度指標
在cart演算法中, 基尼不純度表示乙個隨機選中的樣本在子集中被分錯的可能性。基尼不純度為這個樣本被選中的概率乘以它被分錯的概率。當乙個節點中所有樣本都是乙個類時,基尼不純度為零。
假設y的可能取值為,令fi是樣本被賦予i的概率,則基尼指數可以通過如下計算:
cart分類樹中的基尼指數
如果訓練資料集d根據特徵a是否取某一可能值a被分割為d1和d2兩部分,則在特徵a的條件下,集合d的基尼指數定義為
基尼指數gini(d)表示集合d的不確定性,基尼指數gini(d,a)表示經過a=a分割後集合d的不確定性。基尼指數越大,樣本的不確定性也就越大。
熵vs基尼指數
隨機變數的熵表達形式:
隨機變數的基尼係數表達形式:
主要區別在於,熵達到峰值的過程要相對慢一些。因此,熵對於混亂集合的判罰要更重一些。
葉節點太多(葉節點樣本太少,例如葉節點樣本都是1個)
類似於方差分析,設定乙個閥值,類似於置信區間。低於這個閥值就剪枝。例如某節點兩種樣本a佔95%,b佔5%。閥值90%,那麼就停止分枝。
數字型特徵,分類時之前用過,後面也可能會用到(字元型特徵不會)。原因是決策樹會不斷兩分數字型特徵,計算量很大。這也是決策樹的缺點之一,不適合數字(有待研究)
多模型做決策。例如先用決策樹分類,在用線性回歸擬合。現實中的效果比較好
bagging 是隨機抽樣獲得s個弱分類器,然後根據s個弱分類器學習結果,根據多數表決的原則分類。
boost 是根據弱分類器分類的錯誤率,給予權重。分類器錯誤率越低,權重就越大,越容易對最終結果產生影響。
adaboost 是基於弱分類器的分類錯誤率,給弱分類器分配決定係數alpha(錯誤率低的決定係數高),再根據決定係數選擇分類迭代學習。
gb是根據一階導數ri,xgboost是根據一階導數gi和二階導數hi,迭代生成基學習器,相加更新學習器。
xgboost做了優化,是gbdt的高效實現。在演算法和效能,都做了優化。
決策樹筆記
決策樹學習的常用演算法有id3 c4.5與cart。其中id3特徵選擇的準則是資訊增益,c4.5的是資訊增益率,cart是基尼指數。熵 entropy 介紹資訊增益之前需要先引入熵的概念 熵表示的是隨機變數的不確定性程度,表示式為 其中pi表示離散變數x取xi的概率。log一般以2和e為底。而熵越大...
決策樹分類應用
題目要求 根據一些病人的資訊,推薦合適的 眼鏡型別 資料集資訊 有關 眼鏡,他有著24個案例,4維資料,常用於多分類問題 資料準備與資料預處理 資料 眼鏡資料集是十分著名的資料集,它包含很多患者眼部狀況的觀察條件以及醫生推薦的 眼鏡型別。眼鏡型別包括硬材質,軟材質,以及不適合佩戴 眼鏡。數即 於uc...
決策樹筆記彙總
網上關於決策樹的博文已經有很多了。我挑選了幾篇比較好理解的幾篇,作為以後查閱備忘。同時,決策樹剛開始學習時,概念比較多,建議博文結合西瓜書一起看,因為有些公式這樣寫不太理解,但是別的地方換一種寫法,就會容易理解很多。資訊熵 資訊增益 id3 資訊增益比 c4.5 參閱下面兩篇博文 基尼指數 cart...