datawhale決策樹演算法梳理

2021-09-11 22:32:00 字數 1498 閱讀 9430

構造樹的基本想法是隨著樹深度的增加,節點的熵迅速地降低。熵降低的速度越快越好,這樣有望得到一顆高度最矮的決策樹。

1. 資訊理論基礎

2.決策樹的不同分類演算法的原理及應用場景

c4.5(id3的擴充套件):資訊增益率、連續屬性處理、決策樹剪枝

cart演算法

原理:採用一種二分遞迴分割的技術,與基於資訊熵的演算法不同,cart演算法對每次樣本集的劃分計算gini係數, gini係數越小則劃分越合理。

3/ 回歸樹原理

假設x與y分別是輸入和輸出向量,並且y是連續變數,給定訓練資料集

乙個回歸樹對應著輸入空間(即特徵空間)的乙個劃分以及在劃分的但單元上的輸出值。假設已將輸入空間劃分為m個單元r_1,r_2,…r_m,並且在每個單元r_m上有乙個固定的輸出值c_m,於是回歸樹模型可表示為

當輸入空間的劃分確定時,可以用平方誤差

對固定輸入變數j可以找到最優切分點 s

遍歷所有輸入變數,找到最優切分變數j,構成乙個對(j,s)依次將輸入空間劃分為兩個區域。接著,每個對每個區域重複上述劃分過程,直到滿足停止條件為止。這樣就生成一棵回歸樹,這樣的回歸樹通常被稱為最小二乘樹

4.決策樹防止過擬合手段

產生過擬合的原因有樣本問題、構建決策樹的方法問題。

方法:針對第乙個,合理、有效的抽樣,用相對能夠反映業務邏輯的訓練集去產生決策樹;針對第二個,剪枝(提前停止樹的增長或者對已經生成的樹按照一定的規則進行後剪枝)

5.模型評估

評估指標有分類準確度、召回率、虛警率和精確度等。而這些指標都是基於混淆矩陣 (confusion matrix) 進行計算的。

混淆矩陣是用來評價監督式學習模型的精確性,矩陣的每一列代表乙個類的例項**,而每一行表示乙個實際的類的例項。

評估方法有保留法、隨機二次抽樣、交叉驗證和自助法等

評價函式:

6.sklearn引數詳解

class sklearn.tree.decisiontreeclassifier(criterion=『gini』, splitter=『best』, max_depth=none, min_samples_split=2, min_samples_leaf=1, min_weight_fraction_leaf=0.0, max_features=none, random_state=none, max_leaf_nodes=none, min_impurity_split=1e-07, class_weight=none, presort=false)

:param max_depth:int或none,可選(預設=無)樹的最大深度。如果沒有,那麼節點將被擴充套件,直到所有的葉子都是純類,或者直到所有的葉子都包含少於min_samples_split樣本

:param random_state:random_state是隨機數生成器使用的種子

決策樹演算法

決策樹是一種樹型結構,其中每個內部結點表示在乙個屬性上的測試,每個分支代表乙個測試輸出,每個葉結點代表一種類別。決策樹學習是以例項為基礎的歸納學習,採用的是自頂向下的遞迴方法,其基本思想是以資訊熵為度量構造一棵熵值下降最快的樹,到葉子結點處的熵值為零,此時每個葉節點中的例項都屬於同一類。決策樹學習演...

決策樹演算法

本文主要介紹id3 c4.5和cart演算法 決策樹起源於概念學習系統 cls 概念學習模型 是乙個事先定義的範疇集合和一些有關例子是否落入給定範疇的判定 概念學習的主要任務 是判斷所給定事物的屬性或特性,並且正確地區分這些事物,將其劃分到某乙個範疇 對於如下決策樹模型 我們首先考慮他的屬性outl...

決策樹演算法

引 最近老師布置了課堂展示的作業,主題是決策樹,老師還舉了買西瓜的決策例子,感覺貼近生活也很有意思。在這之前沒有了解過這個概念,通過幾個禮拜的學習收穫不少。一 首先,什麼是決策樹?個人而言,決策樹就是將人在做決策時的思維脈絡以樹的形式展示出來的產物,即決策的過程模型。這是一棵去不去打高爾夫球的決策樹...