機器學習之決策樹

2022-08-27 05:36:11 字數 1824 閱讀 6054

目錄3、cart演算法(classification and regression tree tree)

(1)資訊增益

其中,\(g(d,a)\)是熵\(h(d)\)與條件熵\(h(d|a)\)之差,稱為互資訊,\(d = \, x_,...,x_\}\)。決策樹中的資訊增益等價於訓練資料集中類與特徵的互資訊。

也可以寫成$$h(p) = - \sum_^ p_ log_ p_$$

其中,\(p_ = \frac|}\),因此經驗條件熵也可以寫成:

$$h(d) = - \sum_^ \frac|} log_ \frac}$$

其中d是資料集,|d|表示樣本容量,即樣本個數。\(c_\)表示第k個類別標籤,而\(|c_|\)表示第k個類別的樣本個數,第c個特徵有k個類。

以資訊增益為標準的特徵選擇**在胡歌的github

(2)資訊增益比

其中,\(h_(d) = -\sum_^ \frac|} log_ \frac|}\),\(n\)表示特徵a的取值個數。

-懲罰引數:資料集d以特徵a作為隨機變數的熵的倒數,即:將特徵a取值相同的樣本劃分到同乙個子集中之前所說資料集的熵是依據類別進行劃分的)

$$懲罰引數 = \frac^} = \frac^ \frac|} log_ \frac|} }$$

以資訊增益比為標準的特徵選擇**在胡歌的github

(3)基尼指數

計算公司如下:

$$gini(p) = \sum_^ p_ (1-p_) = 1 - \sum_^ p_^$$

其中,pk表示選中的樣本屬於k類別的概率,則這個樣本被分錯的概率是(1-pk);樣本集合中有k個類別,乙個隨機選中的樣本可以屬於這k個類別中的任意乙個,因而對類別就加和;當為二分類是,gini(p) = 2p(1-p)。

輸入:訓練資料集d,特徵集a,閾值threshold

輸出:決策樹t.

1.檢查d中所有資料標籤是否為同一類,是同一類,t直接為單節點樹,並將此類標記為該結點的類標記並返回t。

2.若,則t為單結點樹,並將d中例項數最大的類作為該結點的標記,返回t。

3.否則,按照特徵選擇方法中的資訊增益(資訊增益比)方法計算a中各特徵的資訊增益(資訊增益比),選擇資訊增益(比)最大的特徵,並檢測其增益(比)是否大於閾值。

4.對大於閾值的資訊增益(比)特徵,對其每乙個可能的值將資料集d進行分割為若干非空子集並構建子結點。

5.重複分割步驟,分割特徵不包括之前已經分割過的特徵,當分割後的資訊增益(比)不大於閾值時,將此結點下的例項數最多的類作為此結點的標記,構成乙個葉結點。

\[c_(t) = c(t)+ \alpha |t|

\]其中\(c(t) = \sum_^ n_h_(t)\)表示模型對訓練資料的**誤差,\(h_(t)(t) = -\sum_^ \frac}} log \frac}}\)表示經驗熵。

\(|t|\)是葉結點個數,表示模型的複雜度,\(n_\)表示葉結點t的樣本個數,\(n_\)表示第k類樣本的個數。

\(\alpha\)表示剪枝引數,用於控制擬合程度和模型複雜度的平衡。較大的\(\alpha\)能促使選擇簡單的樹,較小的\(\alpha\)能促使選擇複雜的樹。

詳細的cart請參考:

參考

jack cui的機器學習基礎:

李航《統計學習方法》

決策樹之特徵選擇標準:

機器學習之決策樹

在這裡,我想以更直觀的方式幫助各位理解 掌握並且運用 注意 是運用 決策樹,從而為機器學習作鋪墊。ps 但還是希望大家稍微知道決策樹大概是什麼樣子。1.根結點 root node 沒有入邊,但有零條或多條出邊 2.內部結點 internal node 恰有一條入邊和 兩條或多條出邊 3.葉結點 le...

機器學習之決策樹

決策樹是很常見的機器學習分類演算法,竟然叫決策樹,那麼它的模型其實就像樹一樣。通過對樣本集的學習,挖掘出有用的規則。對於程式設計師來說或許以條件語句來看就更好理解了,決策樹可以看成是多個if then條件語句的集合。這種模型等同於我們寫的條件語句,所以它的 分類速度是很快的。來個例子了解下決策樹分類...

機器學習之決策樹

簡介 決策樹是一種基本的分類方法,當然也可以用於回歸。我們一般只討論用於分類的決策樹。決策樹模型呈樹形結構。在分類問題中,表示基於特徵對例項進行分類的過程,它可以認為是if then規則的集合。在決策樹的結構中,每乙個例項都被一條路徑或者一條規則所覆蓋。通常決策樹學習包括三個步驟 特徵選擇 決策樹的...