決策樹學習筆記

2021-10-14 07:58:29 字數 1594 閱讀 4765

決策樹是一種有監督機器學習方法。

熵(entropy)是表示隨機變數不確定性的度量。

設x是乙個取有限個值的離散隨機變數,其概率分布為:

則其隨機變數的資訊熵為:

熵越大,則隨機變數的不確定性越大。決策樹的目的就是讓資訊熵越來越小,分類則越來越明確。

資訊增益表示得知特徵a的資訊而使得總樣本d的資訊的不確定性減少的程度。

資訊增益

其中,資訊增益比

資訊增益比

其中,根節點輸入資料集d,特徵集a,

對資料集d計算h(d)

對每乙個特徵ai(ai代表特徵集a中的第i個特徵)計算一遍h(d|ai); 利用公式, 計算所有的g(d,ai),i=1,2,3...n。n為當前節點中所有特徵的特徵數。

選出最大的g(d,ak) = max(g(d,ai)),特徵ak作為當前節點的分支依據,進而進行下一步分支。

舉個例子:

對於上表資料集d和特徵集a,資料集d就是每個樣本資訊,特徵集a就是年齡、有工作、有房子、信貸情況,共4個特徵。首先計算h(d),然後依次計算h(d,a1)、h(d,a2)、h(d,a3)、h(d,a4),在得到g(d,a1)、g(d,a2)、g(d,a3)、g(d,a4)。最後發現g(d,a3)最大,所以我們用a3這個特徵作為分支標準,對當前子節點進行分支,有房子和沒有房子分別作為其兩個子節點。這時候資料集d就可以以a3特徵為標準,分為兩類,有房子的為一類,沒有房子的為另一類,把資料集分為d1和d2兩個資料集,進入兩個子節點。注意,進入子節點後,特徵a3就不進入子節點了,只剩下特徵a1、a2、a4進入子節點。

設樹t的葉子節點個數為|t|,t是樹t的葉子節點,該葉子節點有nt個樣本點,其中,k類的樣本點有ntk個,k=1,2...,k.ht(t)為葉子節點t上的經驗熵,α≥0為引數,則決策樹學習的損失函式可以定義為:

簡而言之,就是當某乙個父節點的損失函式小於其所有葉子節點的損傷函式之和,就只保留其父節點。簡單理解就是,父節點的損失函式更小,分類更準確,那就沒必要用子節點來分類了。

決策樹的核心思想:以樹結構為基礎,每個節點對某特徵進行判斷,進入分支,直到到達葉節點。

決策樹構造的核心思想:讓資訊熵快速下降,從而達到最少的判斷次數獲得標籤。即每次選取能使資訊增益(或資訊增益比)最大的那個特徵作為分支標準。

id3演算法和c4.5演算法所有流程都是一致的,除了分支採取的策略。id3演算法採用最大資訊增益的特徵作為分支標準,c4.5演算法採用最大資訊增益比作為分支標準。

採用最大資訊增益的特徵作為分支標準有個缺陷,資訊增益會導致節點偏向選取取值較多的特徵的問題,極端情況就是乙個特徵取值只有乙個樣本,這樣是沒有意義的。最大資訊增益比則可以避免這個問題。

決策樹學習筆記

模型 監督學習中的分類演算法 決策樹演算法的思路 利用樹的結構,將資料集中的特徵 屬性 劃分為樹中的分支節點 資料集中類別標籤對應樹的葉節點。構建決策樹的三要素 1.特徵選擇 資訊熵或資訊增益gini係數來選擇特徵 2.決策樹的生成 id3演算法 資訊增益 c4.5演算法 gini係數 3.決策樹的...

決策樹學習筆記

一 什麼是決策樹 決策樹是一種基於規則的方法,它用一組巢狀的規則進行 在樹的每個決策節點處,根據判斷結果進入乙個分之,反覆執行這種操作直到到達葉子節點,得到 結果。這些規則是通過訓練得到的,而不是認為設定的。規則是每一次 時的閥值。二 樹形成決策的過程 為便於用程式實現,一般將決策樹設計成二叉樹。與...

決策樹學習筆記

熵是表示隨機變數不確定性的度量,越小越好 資訊增益 表示特徵x使得類y的不確定性減少的程度。先計算y的熵值為原始熵值,再計算 增益 原始熵值 id3 資訊增益 id熵值小,增益大,但是對結果的影響基本沒有 c4.5 資訊增益率 解決id3,考慮自身熵 cart 使用gini係數來當做衡量標準 gin...