決策樹算法
![]() |
決策樹算法是一種逼近離散函數值的方法。它是一種典型的分類方法,首先對數據進行處理,利用歸納算法生成可讀的規則和決策樹,然後使用決策對新數據進行分析。本質上決策樹是通過一系列規則對數據進行分類的過程。
決策樹方法最早產生於上世紀60年代,到70年代末。由J Ross Quinlan提出了ID3算法,此算法的目的在於減少樹的深度。但是忽略了葉子數目的研究。C4.5算法在ID3算法的基礎上進行了改進,對於預測變量的缺值處理、剪枝技術、派生規則等方面作了較大改進,既適合於分類問題,又適合於回歸問題。
決策樹算法構造決策樹來發現數據中蘊涵的分類規則.如何構造精度高、規模小的決策樹是決策樹算法的核心內容。決策樹構造可以分兩步進行。第一步,決策樹的生成:由訓練樣本集生成決策樹的過程。一般情況下,訓練樣本數據集[1]是根據實際需要有歷史的、有一定綜合程度的,用於數據分析[2]處理的數據集。第二步,決策樹的剪枝:決策樹的剪枝是對上一階段生成的決策樹進行檢驗、校正和修下的過程,主要是用新的樣本數據集(稱為測試數據集)中的數據校驗決策樹生成過程中產生的初步規則,將那些影響預衡準確性的分枝剪除。
簡介
決策樹(decision tree)是一種基本的分類與回歸方法。決策樹模型呈樹形結構,在分類問題中,表示基於特徵對實例進行分類的過程。它可以認為是if-then規則的集合,也可以認為是定義在特徵空間與類空間上的條件概率分布。
其主要優點是模型具有可讀性,分類速度快。學習時,利用訓練數據,根據損失函數最小化的原則建立決策樹模型。預測時,對新的數據,利用決策樹模型進行分類。
決策樹學習通常包括3個步驟:特徵選擇、決策樹的生成和決策樹的修剪。
決策樹學習
目標:根據給定的訓練數據集構建一個決策樹模型,使它能夠對實例進行正確的分類。決策樹學習本質上是從訓練數據集中歸納出一組分類規則。能對訓練數據進行正確分類的決策樹可能有多個,可能沒有。在選擇決策樹時,應選擇一個與訓練數據矛盾較小的決策樹,同時具有很好的泛化能力;而且選擇的條件概率模型應該不僅對訓練數據有很好的擬合,而且對未知數據有很好的預測。
損失函數:通常是正則化的極大似然函數
策略:是以損失函數為目標函數的最小化
因為從所有可能的決策樹中選取最優決策樹是NP完全問題,所以現實中決策樹學習通常採用啟發式方法,近似求解這一最優化問題,得到的決策樹是次最優(sub-optimal)的。
決策樹學習的算法通常是一個遞歸地選擇最優特徵,並根據該特徵對訓練數據進行分割,使得對各個子數據集有一個最好的分類的過程。包含特徵選擇、決策樹的生成和決策樹的剪枝過程。
剪枝
目的:將樹變得更簡單,從而使它具有更好的泛化能力。
步驟:去掉過於細分的葉結點,使其回退到父結點,甚至更高的結點,然後將父結點或更高的結點改為新的葉結點。
決策樹的生成對應模型的局部選擇,決策樹的剪枝對應於模型的全局選擇。決策樹的生成只考慮局部最優,決策樹的剪枝則考慮全局最優。
特徵選擇
如果特徵數量很多,在決策樹學習開始時對特徵進行選擇,只留下對訓練數據有足夠分類能力的特徵。(例如把名字不作為一個特徵進行選擇)
典型算法
決策樹的典型算法有ID3,C4.5,CART等。
國際權威的學術組織,數據挖掘國際會議ICDM(the IEEE International Conference on Data Mining)在2006年12月評選出了數據挖掘領域的十大經典算法中,C4.5算法排名第一。C4.5算法是機器學習算法中的一種分類決策樹算法,其核心算法是ID3算法。C4.5算法產生的分類規則易於理解,準確率較高。不過在構造樹的過程中,需要對數據集進行多次的順序掃描和排序,在實際應用中因而會導致算法的低效。
決策樹算法的優點如下:
(1)分類精度高;
(2)生成的模式簡單;
(3)對噪聲數據有很好的健壯性。
因而是目前應用最為廣泛的歸納推理算法之一,在數據挖掘中受到研究者的廣泛關注。
參考文獻
- ↑ YOLO11:自定義數據集訓練與部署的新革命,搜狐,2024-10-02
- ↑ 圖書行業數據分析:2019年中國專業圖書出版收入將達3125百萬美元,艾媒網,2019-12-20