決策樹

//我的讀書筆記,後期會進行修正
決策樹思想來源:每一個人大腦中都有相似if-then這樣的邏輯判斷。在程序設計中最基礎的語句就是它。而最先的決策樹就是利用這類結構分隔數據的一種分類學習方法算法

決策實例:書框架

決策樹的算法框架:函數

決策樹的主函數:本質是一個遞歸函數。學習

               主函數的功能:①輸入須要分類的數據②根據分類規則獲得最優的劃分特徵,並建立特徵的劃分節點--計算最優特徵子函數③劃分數據集子函數④進入各自子函數遞歸⑤檢驗是否符合遞歸終止條件⑥重複遞歸測試

        計算最優特徵子函數---是除了主函數外的最重要函數。決策樹的差別都是由於這個函數的差別spa

                ID3:信息增益    C4.5信息增益率    CART 是節點方差的大小設計

          劃分數據集函數:分隔數據集遞歸

            分類器:決策樹的分類器是經過遍歷整個決策樹,使測試集數據找到決策樹中葉子節點對應的類別標籤。該標籤就是分類結果。隊列

 

信息熵ci

    熵:能量分佈的均勻讀,越均勻該集就越大

    信息熵:某個特徵列向量信息熵越大,就說明該向量的不肯定性程度越大

   

信息熵:事物不肯定性的度量標準

決策樹中,它不只能用來度量類別的不肯定性,也可用來度量包含不一樣特徵的數據樣本與類別的不肯定性

某特徵列向量的信息熵越大--》向量的不肯定性程度越大(混亂程度越大)-》優先從該特徵向量着手   信息熵爲決策樹的劃分提供了重要的依據和標準

 

信息增益:決策樹某個分支上整個數據集信息熵與當前節點信息熵的差值,用Gain(A)

 

ID3算法的決策樹生成過程(信息增益)

1.計算對給定樣本分類所需的信息熵

2.計算每一個特徵的信息熵

3.從全部的特徵隊列中選出信息增益最大的那個做爲根節點或內部節點-劃分節點,劃分整列,首次遞歸列

4.根據劃分節點的不一樣取值取值類拆分數據集爲若干子集,而後刪除當前的特徵列,再計算剩餘特徵列的信息熵

5.劃分結束的標誌:子集中只有一個類別標籤,中止劃分。

算法待續。(Python)

 

C4.5 信息增益率:客服信息增益選擇特徵時偏向於特徵個數不足的缺點

信息增益率公式

 

Scikit-Learn與迴歸樹

迴歸算法原理(CART):

CART使用最小剩餘方差來判斷迴歸樹的最優劃分,這個準則指望劃分以後的子樹與樣本點的偏差方差最小。決策樹會將數據集合切分紅不少子模型數據,而後利用線性迴歸來建模。若每次切分的數據集難以擬合,就繼續切分。在這種切分方式下,每一個葉子節點都是一個線性迴歸模型。(這些迴歸模型也被稱做模型書) CART不只支持總體預測,也支持局部預測。

CART算法流程:

 1.決策樹主函數:決策樹的主函數是個遞歸函數,該函數主要按照CART規則生成出決策樹的各個分支節點。並根據終止條件結束算法

2.使用最小剩餘方差子函數,計算數據集各列最優劃分方差,劃分列,劃分值。

3.二分數據集:根據給定的分隔列和分隔值將數據一分爲二,分別返回

相關文章
相關標籤/搜索