決策樹簡介

2021-10-01 16:58:07 字數 1155 閱讀 9748

決策樹(decision tree),也稱為判定樹,是一類常見的機器學習方法。決策樹是基於樹結構來進行決策的,這恰是人類在面臨決策問題時一種很自然的處理機制。

決策過程中提出的每個判定問題都是對某個屬性的「測試」。每個測試的結果或是匯出最終結論,或是匯出進一步的判定問題,其考慮範圍是在上次決策結果的限定範圍之內。

一般的,一棵決策樹包含乙個根節點、若干個內部節點和若干個葉節點;葉節點對應於決策結果,其他每個節點則對應於乙個屬性測試;每個節點包含的樣本集合根據屬性測試的結果被劃分到子節點中;根節點包含樣本全集。從根節點到每個葉節點的路徑對應了乙個判定測試序列。決策樹學習的目的是為了產生一棵泛化能力強,即處理未見示例能力強的決策樹,其基本流程遵循簡單且直觀的「分而治之」(divide-and-conquer)策略。

決策樹學習演算法有三個步驟:

決策樹學習的演算法通常是乙個遞迴地選擇最優特徵,並根據該特徵對訓練資料進行分割,使得對各個子資料集有乙個最好的分類的過程。這一過程對應著對特徵空間的劃分,也對應著決策樹的構建。

決策樹的構建過程如下:

構建根節點,將所有訓練資料都放在根節點,選擇乙個最優特徵,按照這一特徵將訓練資料集分割成子集,使得各個子集有乙個在當前條件下最好的分類。這個過程就涉及到特徵選擇的相關知識點,特徵選擇是為了找到最優的劃分特徵。

如果這些子集已經能夠被基本正確分類,那麼構建葉節點,並將這些子集分到所對應的葉子節點。

如果還有子集不能夠被正確的分類,那麼就對這些子集選擇新的最優特徵,繼續對其進行分割,構建相應的節點,如此遞迴進行,直至所有訓練資料子集被基本正確的分類,或者沒有合適的特徵為止。

每個子集都被分到葉節點上,即都有了明確的類,這樣就生成了一顆決策樹。

以上方法就是決策樹學習中的特徵選擇和決策樹生成,這樣生成的決策樹可能對訓練資料有很好的分類能力,但對未知的測試資料卻未必有很好的分類能力,即可能發生過擬合現象。我們需要對已生成的樹自下而上進行剪枝,將樹變得更簡單,從而使其具有更好的泛化能力。具體地,就是去掉過於細分的葉結點,使其回退到父結點,甚至更高的結點,然後將父結點或更高的結點改為新的葉結點,從而使得模型有較好的泛化能力。。

決策樹生成和決策樹剪枝是個相對的過程,決策樹生成旨在得到對於當前子資料集最好的分類效果(區域性最優),而決策樹剪枝則是考慮全域性最優,增強泛化能力。

決策樹1:初識決策樹

決策樹2: 特徵選擇中的相關概念

《機器學習》周志華

決策樹演算法簡介

決策樹 decision tree 一 背景知識 符號 xi的資訊量 l xi log2p xi 熵 h p xi log2p xi 資訊增益 特徵 a對訓練資料集 d的資訊增益 g d,a h d h d a 其中,定義集合 d的經驗熵 h d 與特徵a 給定條件下 d的經驗條件熵 h d a 之...

決策樹演算法簡介

決策樹思想的 非常樸素,程式設計中的條件分支結構就是if else結構,最早的決策樹就是利用這類結構分割資料的一種分類學習方法 決策樹 是一種樹形結構,其中每個內部節點表示乙個屬性上的判斷,每個分支代表乙個判斷結果的輸出,最後每個葉節點代表一種分類結果,本質是一顆由多個判斷節點組成的樹。決策樹分類原...

決策樹演算法原理簡介

1,決策樹概念簡介 不同的演算法模型適合於不同型別的資料。首先,在了解樹模型之前,自然想到樹模型和線性模型有什麼區別呢?其中最重要的是,樹形模型是乙個乙個特徵進行處理,之前線性模型是所有特徵給予權重相加得到乙個新的值。決策樹與邏輯回歸的分類區別也在於此,邏輯回歸是將所有特徵變換為概率後,通過大於某一...