決策樹複習

2021-10-05 06:39:13 字數 3243 閱讀 2460

一般而言,隨著決策樹的不斷劃分,我們希望決策樹的分支節點所包含的樣本盡可能屬於同一類別,即節點的「純度」越來越高。

一、概念

1.什麼是熵

一種事物的不確定性。比如:我第一次去買西瓜,不知道怎麼挑西瓜,很懵,但不知到該挑哪乙個。

2.什麼是資訊

消除我對不確定事物的因素。

資訊的作用:

調整概率;拿乙個榴蓮聞一聞,很香,他就進入了你的目標。

排除干擾;無關因素,包裝,店面等等因素。

確定情況;比如賣瓜的人說了一句,這瓜保熟,不甜不要錢。你是不是打算挑這個西瓜。

3.噪音

不能消除某人對某件事的不確定性的事物(白白浪費精力)。

4.資料

我們日常得到的資料就是:噪音+資訊

二、熵如何量化

參照單位

參照乙個不確定的事件作為單位。

我的不確定相當於拋幾次硬幣的不確定性:如拋硬幣:50%正,50%反相當於猜一次硬幣的不確定性,記為1bit(二分法)。

如下表:

拋硬幣次數

結果個數12

2438

n2n拋硬幣次數與結果不確定性呈指數關係

2.等概率均勻分布

8個等概率的不確定情況,相當於拋3次硬幣

4個等概率的不確定情況,相當於拋2次硬幣

假設有m=10個等概率的不確定情況,那麼10 = 2n ,相當於拋n = log210 次硬幣

所以等概率均勻分布的熵: n = log2m (m:有m種等概率的不確定的情況。n:這種情況熵的值)

3.每種情況概率不相等一般分布

樣本集合d中第k類樣本所佔的比例為 p

kp_k

pk​(k = 1,2,3,…∣y∣

\mid y\mid

∣y∣)

資訊熵計算公式:ent(d) =- ∑k=

1∣y∣

pklo

g2pk

\displaystyle\sum_^ p_k log_2p_k

k=1∑∣y

∣​pk

​log

2​pk

​ (y:當前結果的個數)

ent(d)的值越小,則d的純度越高。(這個公式也決定了資訊增益的乙個缺點:即資訊增益對可取值數目多的特徵有偏好(即該屬效能取得值越多,資訊增益,越偏向這個),因為特徵可取的值越多,會導致「純度」越大,即ent(d)會很小,如果乙個特徵的離散個數與樣本數相等,那麼ent(d)值會為0)。

公式複雜,但舉例很容易理解

解釋原理:

三、資訊如何量化(資訊增益 id3決策樹演算法)

得知資訊前後,熵的差額就是資訊的量(資訊增益)

公式:一般而言,資訊增益越大,則表示使用特徵對資料集劃分所獲得的「純度提公升」越大。所以資訊增益可以用於決策樹劃分屬性的選擇,其實就是選擇資訊增益最大的屬性,id3演算法就是採用的資訊增益來劃分屬性。

舉例:小明不知道選擇題是abcd哪個選項是時的熵: n = log24 = 2,

這時告訴小明c有一半概率是正確,小明知道c有一半概率後:a正確的概率:1/6,b正確的概率:1/6,c正確的概率:1/2,d正確的概率:1/6

所以小明知道c有一半概率後的不確定性(熵):

所以,告訴小明c有一半概率是正確 提供的資訊:2 -1.73 = 0.21

天澤28,這位大神把每一步寫的都很詳細,鏈結點此引用

資訊增益比的定義為:

其中:舉例:上面計算了關於色澤的資訊增益

資訊增益為:

所以特徵「色澤」的增益率為:

1.資訊增益對取值數目較多的屬性有所偏好

舉個例子講,還是考慮西瓜資料集,如果我們把「編號」這一列當做屬性也考慮在內,那麼可以計算出它的資訊增益為0.998,遠遠大於其他的候選屬性,因為「編號」有17個可取的數值,產生17個分支,每個分支結點僅包含乙個樣本,顯然這些分支結點的純度最大。但是,這樣的決策樹不具有任何泛化能力。

2.增益率對取值數目較少的屬性有所偏好,所以c4.5演算法並不是直接選擇使用增益率最大的候選劃分屬性,而是使用了乙個啟發式演算法:先從候選劃分屬性中找出資訊增益高於平均水平的屬性,再從中選擇資訊增益率最高的。

gini(d)反映了從資料d中隨機抽取兩個樣本,其中類別標記不一致的概率。因此gini(d)越小,資料集d的純度越高。

所以在候選屬性集合中,選擇那個使得劃分後基尼指數最小的屬性作為最優劃分屬性。

關於基尼指數的詳細例子,參考大神 ksy_e的博文

詳細位址在此

剪枝是決策樹學習演算法對付「過擬合」的主要手段。分為:預剪枝和後剪枝

關於剪枝處理,b站有位大神講的十分清楚:

【一起啃書】機器學習西瓜書白話解讀,講解的西瓜書上的內容,甚是透徹。

b站位址在此

但要注以兩點:

1.標記(好瓜壞瓜)是由訓練集中數量最多的類別決定的,當數量相同時為好瓜。

2精確值時由測試集上的樣例是否分對的個數。

還是看大神天澤28的博文

詳細位址在此

但要總結一下計算過程(參照西瓜書資料集3.0):

1.先把「密度」這些值從小到大排序(17個數值)

2.依此計算兩兩之間的中位數(16個數值)

3.以此以16個中位數為閾值,劃分資料集(二分類),從而計算資訊增益或基尼指數。

複習筆記 決策樹學習

決策樹適用問題的特徵 1 例項由 屬性 值 對 pair 表示 2 目標函式具有離散的輸出值 3 可能需要析取的描述 4 訓練資料可以包含錯誤 5 訓練資料可以包含缺少屬性值的例項 id3演算法特點 1 搜尋完整的假設空間 也就是說,決策樹空間能夠表示定義在離散例項上的任何離散值函式 2 從根向下推...

資料探勘 決策樹複習

3.1.1 資訊增益 劃分資料集的大原則是 將無序資料變得更加有序,但是各種方法都有各自的優缺點,資訊理論是量化處理資訊的分支科學,在劃分資料集前後資訊發生的變化稱為資訊增益,獲得資訊增益最高的特徵就是最好的選擇,所以必須先學習如何計算資訊增益,集合資訊的度量方式稱為夏農熵,或者簡稱熵。希望通過所給...

決策樹和CART決策樹

首先簡單介紹下決策樹 說到決策樹肯定離不開資訊熵 什麼是資訊熵 不要被這名字唬住,其實很簡單 乙個不太可能的時間居然發生了,要比乙個非常可能的時間發生提供更多的資訊。訊息說 今天早上太陽公升起 資訊量是很少的,以至於沒有必要傳送。但另一條訊息說 今天早上日食 資訊量就很豐富。概率越大資訊量就越少,與...