機器學習 決策樹

2022-07-25 06:36:05 字數 1838 閱讀 6846

決策樹定義

決策樹是一類常見的機器學習方法。本質就是一棵樹,這棵樹表示的含義如下:

優點可解釋性極強,常用於醫療診斷等領域

計算複雜度低

可以處理不同型別的資料,包括離散值和連續值

缺點容易過擬合,需要配合剪枝策略

不是一點點容易,真的是非常容易,因為只要有乙個 outlier 就會導致決策樹繼續分支,最後會非常複雜。

決策樹的劃分目的,是使得每個結點所包含的樣本盡量屬於同一類別,即「純度」 (purity)。衡量集合純度最常用的指標是資訊熵

\[ent(d) = -\sum_^|}p_k\log_2p_k

\]資訊熵越小,純度越高

資訊增益 (information gain)

\[gain(d, a) = ent(d) - \sum_^\fracent(d^v)

\]衡量劃分後純度的變化。不同子集合資訊熵通過加權平均的方式彙總。缺點是對可取值較多的屬性有偏好。

資訊增益率 (information gain ratio)

\[gain\_ratio(d, a) = \frac\\

iv(a)=-\sum_^\frac\log_2\frac

\]\(iv(a)\)稱為 a 的固有值(intrinsic value)。增益率對可取值較少的屬性有偏好。

基尼指數 (gini index)

\[gini(d) = \sum_^|} \sum_p_kp_ = 1 - \sum_^|}p_k^2\\

gini\_index(d, a) = \sum_^v\fracgini(d^v)

\]

其實熵 (ent) 和基尼值 (gini) 是很類似的東西,從表示式中就可以看出:

熵就是 \(-\sum p\log p\),基尼值就是 \(-\sum p^2\),都是越小越好。二者只是對純度的敏感程度不一樣。

同理基尼指數也會對可取值較多的屬性有偏好。

剪枝策略是決策樹學習演算法處理過擬合的主要手段,分為預剪枝和後剪枝。兩種剪枝策略都是基於泛化能力(驗證集結果)進行的。

預剪枝後剪枝確實值處理需要面對兩個問題:

訓練過程中,如何選擇劃分屬性 - 調整資訊增益(率)的計算方式。只有存在的值能夠用來計算資訊增益。

**過程中,如何劃分缺值樣本 - 將**結果變為乙個概率分布。缺失值可能是該屬性的任意乙個值,可利用該屬性的分布估計不同狀態下的**結果。

決策樹有一些常用的訓練演算法,是對以上知識點的整合應用。例如 cart,id3,c4.5,其中 c4.5 是由 id3 發展而來。具體區別如下:

cart (1984)

id3 (1986)

c4.5 (1993)

分支指標

gini 係數

資訊增益

資訊增益率

輸入變數

連續/離散

離散連續/離散

輸出變數

回歸/分類

分類分類

樹結構二叉樹

多叉樹多叉樹

特徵重用

可重用不可重用

不可重用

缺失值可處理

不可處理

可處理計算量低較高

較高泛化誤差

較大較小

較小適用樣本

大樣本小樣本

小樣本剪枝方法

代價複雜度 (ccp)

正則化損失函式

正則化損失函式

一般的決策樹,每個結點只考慮乙個屬性,決策邊界是垂直於座標軸的;如果每個結點考慮多個屬性,實現乙個線性分類器,那麼決策邊界就能更好的擬合結果。本質類似乙個樹狀的多層感知機。

機器學習 決策樹

一 基本概念 決策樹 decision tree 是一種基本的分類與回歸方法。決策樹模型呈樹形結構,在分類問題中,表示屬於特徵對例項進行分類的過程,它可以認為是if then規則的集合,也可以認為是電議在特徵空間與類空空上的條件概率分布,其主要優點是模型具有可讀性,分類速度快。決策樹的學習通常包括3...

機器學習 決策樹

我覺得決策樹是機器學習所有演算法中最可愛的了 沒有那麼多複雜的數學公式哈哈 下圖是一棵決策樹,用來判斷西瓜是好瓜還是壞瓜 決策過程中提出的每個判定問題都是都對某個屬性的測試,每個測試結果要麼推導出最終結論,要麼匯出進一步判斷的問題,在上次決策結果限定的範圍內做進一步判斷。從上圖可以看出,葉節點對應決...

機器學習 決策樹

一 演算法簡介 決策樹一般都是自上而下來生成的,每個決策後事件 即自然狀態 都可能引出兩個或多個事件,導致結果的不同,把這種結構分支畫成形狀很像一棵樹的枝幹,故稱為決策樹。決策樹能夠讀取資料集合,並且決策樹很多任務都是為了資料中所蘊含的知識資訊,因此決策樹可以使用不熟悉的資料集合,並從中提取一系列規...