導航:首頁 > 源碼編譯 > 決策樹演算法有哪些

決策樹演算法有哪些

發布時間:2022-10-01 00:16:22

『壹』 決策樹演算法 CART和C4.5決策樹有什麼區別各用於什麼領域

1、C4.5演算法是在ID3演算法的基礎上採用信息增益率的方法選擇測試屬性。CART演算法採用一種二分遞歸分割的技術,與基於信息熵的演算法不同,CART演算法對每次樣本集的劃分計算GINI系數,GINI系數,GINI系數越小則劃分越合理。
2、決策樹演算法是一種逼近離散函數值的方法。它是一種典型的分類方法,首先對數據進行處理,利用歸納演算法生成可讀的規則和決策樹,然後使用決策對新數據進行分析。本質上決策樹是通過一系列規則對數據進行分類的過程。
3、決策樹演算法構造決策樹來發現數據中蘊涵的分類規則.如何構造精度高、規模小的決策樹是決策樹演算法的核心內容。決策樹構造可以分兩步進行。第一步,決策樹的生成:由訓練樣本集生成決策樹的過程。一般情況下,訓練樣本數據集是根據實際需要有歷史的、有一定綜合程度的,用於數據分析處理的數據集。第二步,決策樹的剪技:決策樹的剪枝是對上一階段生成的決策樹進行檢驗、校正和修下的過程,主要是用新的樣本數據集(稱為測試數據集)中的數據校驗決策樹生成過程中產生的初步規則,將那些影響預衡准確性的分枝剪除。

『貳』 決策樹、隨機森林

在了解樹模型之前,自然想到樹模型和線性模型,他們有什麼區別呢?

決策樹與邏輯回歸的分類區別也在於此。

樹形模型更加接近人的思維方式,可以 產生可視化的分類規則,產生的模型具有可解釋性 。樹模型擬合出來的函數其實是 分區間的階梯函數 。

決策樹(decision tree)是一種基本的分類與回歸方法,此處主要討論分類的決策樹。決策樹是一種十分常用的分類方法,屬於有監督學習(Supervised Learning)。所謂有監督學習,就是給出一堆樣本,每個樣本都有一組屬性和一個分類結果,也就是分類結果已知,那麼通過學習這些樣本得到一個決策樹,這個決策樹能夠對新的數據給出正確的分類。

決策樹是一種樹形結構,它主要有三種不同的節點:

決策樹演算法主要包括三個部分: 特徵選擇、樹的生成、樹的剪枝。

比較常用的決策樹演算法有ID3,C4.5和CART(Classification And Regression Tree),CART的分類效果一般優於其他決策樹。

樣本數量,特徵數量上面,一開始需要注意的:

當熵中的概率由數據估計(特別是最大似然估計)得到時,所對應的熵稱為 經驗熵 (empirical entropy)。

什麼叫由數據估計?比如有10個數據,一共有兩個類別,A類和B類。其中有7個數據屬於A類,則該A類的概率即為十分之七。其中有3個數據屬於B類,則該B類的概率即為十分之三。淺顯的解釋就是,這概率是我們根據數據數出來的。

訓練數據集D,則訓練數據集D的經驗熵為H(D),|D|表示其樣本容量,及樣本個數。設有K個類Ck,k = 1,2,3,···,K,|Ck|為屬於類Ck的樣本個數,這經驗熵公式可以寫為:

信息增益表示得知特徵X的信息而使得類Y的信息不確定性減少的程度。

條件熵H(Y|X)表示在已知隨機變數X的條件下隨機變數Y的不確定性,隨機變數X給定的條件下隨機變數Y的條件熵(conditional entropy) H(Y|X),定義X給定條件下Y的條件概率分布的熵對X的數學期望:

當熵和條件熵中的概率由數據估計(特別是極大似然估計)得到時,所對應的分別為經驗熵和經驗條件熵,此時如果有0概率,令0log0=0。

信息增益

一般地, 熵H(D)與條件熵H(D|A)之差成為互信息(mutual information) 。決策樹學習中的信息增益等價於訓練數據集中類與特徵的互信息。

信息增益比

Gini 指數

舉例計算Gini指數(不純度)

這個分類結果明顯並不是很好,因為它沒有將見面與不見面完全的分開,在演算法中,當然不能憑我們的「感覺」去評價分類結果的好壞。我們需要用一個數去表示。(具體數值代入上面的基尼指數計算公式)

信息增益 vs 信息增益比

Gini 指數 vs 熵

ID3演算法的核心是在決策樹各個結點上對應信息增益准則選擇特徵,遞歸地構建決策樹。

具體方法是:

1)從根結點(root node)開始,對結點計算所有可能的特徵的信息增益,選擇信息增益最大的特徵作為結點的特徵。

2)由該特徵的不同取值建立子節點,再對子結點遞歸地調用以上方法,構建決策樹;直到 所有特徵的信息增益均很小或沒有特徵可以選擇 為止;

3)最後得到一個決策樹。

ID3相當於用 極大似然法進行概率模型的選擇 。

與ID3演算法相似,但是做了改進,將信息增益比作為選擇特徵的標准。

CART 的全稱是分類與回歸樹。從這個名字中就應該知道,CART 既可以用於分類問題,也可以用於回歸問題。

回歸樹中,使用平方誤差最小化准則來選擇特徵並進行劃分。每一個葉子節點給出的預測值,是劃分到該葉子節點的所有樣本目標值的均值,這樣只是在給定劃分的情況下最小化了平方誤差。

要確定最優化分,還需要遍歷所有屬性,以及其所有的取值來分別嘗試劃分並計算在此種劃分情況下的最小平方誤差,選取最小的作為此次劃分的依據。由於回歸樹生成使用平方誤差最小化准則,所以又叫做最小二乘回歸樹。

ID3

熵表示的是數據中包含的信息量大小。熵越小,數據的純度越高,也就是說數據越趨於一致,這是我們希望的劃分之後每個子節點的樣子。

信息增益 = 劃分前熵 - 劃分後熵。信息增益越大,則意味著使用屬性 a 來進行劃分所獲得的 「純度提升」 越大 **。也就是說,用屬性 a 來劃分訓練集,得到的結果中純度比較高。

ID3 僅僅適用於二分類問題。ID3 僅僅能夠處理離散屬性。

C4.5 克服了 ID3 僅僅能夠處理離散屬性的問題,以及信息增益偏向選擇取值較多特徵的問題,使用信息增益比來選擇特徵。 信息增益比 = 信息增益 / 劃分前熵 選擇信息增益比最大的作為最優特徵。

C4.5 處理連續特徵是先將特徵取值排序,以連續兩個值中間值作為劃分標准。嘗試每一種劃分,並計算修正後的信息增益,選擇信息增益最大的分裂點作為該屬性的分裂點。

CART 與 ID3,C4.5 不同之處在於 CART 生成的樹必須是二叉樹 。也就是說,無論是回歸還是分類問題,無論特徵是離散的還是連續的,無論屬性取值有多個還是兩個,內部節點只能根據屬性值進行二分。

決策樹生成演算法遞歸的產生決策樹,直到不能繼續下去為止,這樣產生的樹往往對訓練數據的分類很准確,但對未知測試數據的分類缺沒有那麼精確,即會出現過擬合現象。過擬合產生的原因在於在學習時過多的考慮如何提高對訓練數據的正確分類,從而構建出過於復雜的決策樹,解決方法是考慮決策樹的復雜度,對已經生成的樹進行簡化。

剪枝(pruning):從已經生成的樹上裁掉一些子樹或葉節點,並將其根節點或父節點作為新的葉子節點,從而簡化分類樹模型。

實現方式:極小化決策樹整體的損失函數或代價函數來實現

決策樹學習的損失函數定義為:

https://www.cnblogs.com/ooon/p/5647309.html

鑒於決策樹容易過擬合的缺點,隨機森林採用多個決策樹的投票機制來改善決策樹,我們假設隨機森林使用了m棵決策樹,那麼就需要產生m個一定數量的樣本集來訓練每一棵樹,如果用全樣本去訓練m棵決策樹顯然是不可取的,全樣本訓練忽視了局部樣本的規律,對於模型的泛化能力是有害的。

產生n個樣本的方法採用Bootstraping法,這是一種有放回的抽樣方法,產生n個樣本。

而最終結果採用Bagging的策略來獲得,即多數投票機制。

隨機森林的生成方法:

1.從樣本集中通過重采樣的方式產生n個樣本

2.假設樣本特徵數目為a,對n個樣本選擇a中的k個特徵,用建立決策樹的方式獲得最佳分割點

3.重復m次,產生m棵決策樹

4.多數投票機制來進行預測

(需要注意的一點是,這里m是指循環的次數,n是指樣本的數目,n個樣本構成訓練的樣本集,而m次循環中又會產生m個這樣的樣本集)

隨機森林是一個比較優秀的模型,在我的項目的使用效果上來看,它對於多維特徵的數據集分類有很高的效率,還可以做特徵重要性的選擇。運行效率和准確率較高,實現起來也比較簡單。 但是在數據噪音比較大的情況下會過擬合,過擬合的缺點對於隨機森林來說還是較為致命的。

機器學習實戰(三)——決策樹 https://blog.csdn.net/jiaoyangwm/article/details/79525237

『叄』 決策樹演算法 CART和C4.5決策樹有什麼區別各用於什麼領域

1、C4.5演算法是在ID3演算法的基礎上採用信息增益率的方法選擇測試屬性。CART演算法採用一種二分遞歸分割的技術,與基於信息熵的演算法不同,CART演算法對每次樣本集的劃分計算GINI系數,GINI系數,GINI系數越小則劃分越合理。
2、決策樹演算法是一種逼近離散函數值的方法。它是一種典型的分類方法,首先對數據進行處理,利用歸納演算法生成可讀的規則和決策樹,然後使用決策對新數據進行分析。本質上決策樹是通過一系列規則對數據進行分類的過程。
3、決策樹演算法構造決策樹來發現數據中蘊涵的分類規則.如何構造精度高、規模小的決策樹是決策樹演算法的核心內容。決策樹構造可以分兩步進行。第一步,決策樹的生成:由訓練樣本集生成決策樹的過程。一般情況下,訓練樣本數據集是根據實際需要有歷史的、有一定綜合程度的,用於數據分析處理的數據集。第二步,決策樹的剪技:決策樹的剪枝是對上一階段生成的決策樹進行檢驗、校正和修下的過程,主要是用新的樣本數據集(稱為測試數據集)中的數據校驗決策樹生成過程中產生的初步規則,將那些影響預衡准確性的分枝剪除。

『肆』 決策樹法分為那幾個步驟

1、特徵選擇

特徵選擇決定了使用哪些特徵來做判斷。在訓練數據集中,每個樣本的屬性可能有很多個,不同屬性的作用有大有小。因而特徵選擇的作用就是篩選出跟分類結果相關性較高的特徵,也就是分類能力較強的特徵。在特徵選擇中通常使用的准則是:信息增益。

2、決策樹生成

選擇好特徵後,就從根節點觸發,對節點計算所有特徵的信息增益,選擇信息增益最大的特徵作為節點特徵,根據該特徵的不同取值建立子節點;對每個子節點使用相同的方式生成新的子節點,直到信息增益很小或者沒有特徵可以選擇為止。

3、決策樹剪枝

剪枝的主要目的是對抗「過擬合」,通過主動去掉部分分支來降低過擬合的風險。

【簡介】

決策樹是一種解決分類問題的演算法,決策樹演算法採用樹形結構,使用層層推理來實現最終的分類。

『伍』 大數據挖掘的演算法有哪些

大數據挖掘的演算法:
1.樸素貝葉斯,超級簡單,就像做一些數數的工作。如果條件獨立假設成立的話,NB將比鑒別模型收斂的更快,所以你只需要少量的訓練數據。即使條件獨立假設不成立,NB在實際中仍然表現出驚人的好。
2. Logistic回歸,LR有很多方法來對模型正則化。比起NB的條件獨立性假設,LR不需要考慮樣本是否是相關的。與決策樹與支持向量機不同,NB有很好的概率解釋,且很容易利用新的訓練數據來更新模型。如果你想要一些概率信息或者希望將來有更多數據時能方便的更新改進模型,LR是值得使用的。
3.決策樹,DT容易理解與解釋。DT是非參數的,所以你不需要擔心野點(或離群點)和數據是否線性可分的問題,DT的主要缺點是容易過擬合,這也正是隨機森林等集成學習演算法被提出來的原因。
4.支持向量機,很高的分類正確率,對過擬合有很好的理論保證,選取合適的核函數,面對特徵線性不可分的問題也可以表現得很好。SVM在維數通常很高的文本分類中非常的流行。

如果想要或許更多更詳細的訊息,建議您去參加CDA數據分析課程。大數據分析師現在有專業的國際認證證書了,CDA,即「CDA 數據分析師」,是在數字經濟大背景和人工智慧時代趨勢下,面向全行業的專業權威國際資格認證, 旨在提升全民數字技能,助力企業數字化轉型,推動行業數字化發展。 「CDA 數據分析師」具體指在互聯網、金融、零售、咨詢、電信、醫療、旅遊等行業專門從事數據的採集、清洗、處理、分析並能製作業務報告、 提供決策的新型數據分析人才。點擊預約免費試聽課。

『陸』 決策樹是什麼東東

小白自學路上的備忘記錄。。。

參考:
決策樹(分類樹、回歸樹)
決策樹 :這個博客的圖真好看,通俗易懂。哈哈
決策樹詳解

決策樹(Decision Tree)是一種有監督學習演算法,常用於分類和回歸。本文僅討論分類問題。

決策樹模型是運用於分類以及回歸的一種樹結構。決策樹由節點和有向邊組成,一般一棵決策樹包含一個根節點、若干內部節點和若干葉節點。決策樹的決策過程需要從決策樹的根節點開始,待測數據與決策樹中的特徵節點進行比較,並按照比較結果選擇選擇下一比較分支,直到葉子節點作為最終的決策結果。

簡而言之,決策樹是一個利用樹的模型進行決策的多分類模型

為了找到最優的劃分特徵,我們需要先了解一些資訊理論的知識:

純度
你可以把決策樹的構造過程理解成為尋找純凈劃分的過程。數學上,我們可以用純度來表示,純度換一種方式來解釋就是讓目標變數的分歧最小

信息熵 :表示信息的不確定度
在資訊理論中,隨機離散事件出現的概率存在著不確定性。為了衡量這種信息的不確定性,信息學之父香農引入了信息熵的概念.
當不確定性越大時,它所包含的信息量也就越大,信息熵也就越高
信息熵越大,純度越低。當集合中的所有樣本均勻混合時,信息熵最大,純度最低

經典的 「不純度」的指標有三種,分別是信息增益(ID3 演算法)、信息增益率(C4.5 演算法)以及基尼指數(Cart 演算法)
信息增益
信息增益指的就是劃分可以帶來純度的提高,信息熵的下降。它的計算公式,是父親節點的信息熵減去所有子節點的信息熵。
信息增益率
信息增益率 = 信息增益 / 屬性熵
基尼指數
基尼指數(基尼不純度):表示在樣本集合中一個隨機選中的樣本被分錯的概率。
即 基尼指數(基尼不純度)= 樣本被選中的概率 * 樣本被分錯的概率
基尼系數的性質與信息熵一樣:度量隨機變數的不確定度的大小;
G 越大,數據的不確定性越高;
G 越小,數據的不確定性越低;
G = 0,數據集中的所有樣本都是同一類別
詳細參考: 機器學習——基尼指數

ID3 演算法是建立在奧卡姆剃刀(用較少的東西,同樣可以做好事情)的基礎上:越是小型的決策樹越優於大的決策樹
ID3演算法的核心是在決策樹各個節點上根據信息增益來選擇進行劃分的特徵,然後遞歸地構建決策樹。演算法採用自頂向下的貪婪搜索遍歷可能的決策樹空間。

具體方法

ID3的局限

C4.5與ID3相似,但大的特點是克服了 ID3 對特徵數目的偏重這一缺點,引入信息增益率來作為分類標准。

C4.5的實現基於ID3的改進

信息增益率對可取值較少的特徵有所偏好(分母越小,整體越大),因此 C4.5 並不是直接用增益率最大的特徵進行劃分,而是使用一個 啟發式方法 :先從候選劃分特徵中找到信息增益高於平均值的特徵,再從中選擇增益率最高的。

C4.5的局限

ID3 和 C4.5 生成的決策樹分支、規模都比較大,CART 演算法的二分法可以簡化決策樹的規模,提高生成決策樹的效率。
CART(),分類回歸樹演算法,既可用於分類也可用於回歸,在這一部分我們先主要將其分類樹的生成。區別於ID3和C4.5,CART假設決策樹是二叉樹,內部節點特徵的取值為「是」和「否」,左分支為取值為「是」的分支,右分支為取值為」否「的分支。這樣的決策樹等價於遞歸地二分每個特徵,將輸入空間(即特徵空間)劃分為有限個單元。
CART的分類樹用基尼指數來選擇最優特徵的最優劃分點,具體過程如下

剪枝就是給決策樹瘦身,這一步想實現的目標就是,不需要太多的判斷,同樣可以得到不錯的結果。之所以這么做,是為了防止「過擬合」(Overfitting)現象的發生。
過擬合:指的是模型的訓練結果「太好了」,以至於在實際應用的過程中,會存在「死板」的情況,導致分類錯誤。
欠擬合:指的是模型的訓練結果不理想.
剪枝的方法

參考: 【機器學習】決策樹(上)——ID3、C4.5、CART(非常詳細)

更多模型不斷更新中。。。。

『柒』 決策樹演算法原理

決策樹是通過一系列規則對數據進行分類的過程。它提供一種在什麼條件下會得到什麼值的類似規則的方法。決策樹分為分類樹和回歸樹兩種,分類樹對離散變數做決策樹,回歸樹對連續變數做決策樹。

如果不考慮效率等,那麼樣本所有特徵的判斷級聯起來終會將某一個樣本分到一個類終止塊上。實際上,樣本所有特徵中有一些特徵在分類時起到決定性作用,決策樹的構造過程就是找到這些具有決定性作用的特徵,根據其決定性程度來構造一個倒立的樹--決定性作用最大的那個特徵作為根節點,然後遞歸找到各分支下子數據集中次大的決定性特徵,直至子數據集中所有數據都屬於同一類。所以,構造決策樹的過程本質上就是根據數據特徵將數據集分類的遞歸過程,我們需要解決的第一個問題就是,當前數據集上哪個特徵在劃分數據分類時起決定性作用。

一棵決策樹的生成過程主要分為以下3個部分:

特徵選擇:特徵選擇是指從訓練數據中眾多的特徵中選擇一個特徵作為當前節點的分裂標准,如何選擇特徵有著很多不同量化評估標准標准,從而衍生出不同的決策樹演算法。

決策樹生成: 根據選擇的特徵評估標准,從上至下遞歸地生成子節點,直到數據集不可分則停止決策樹停止生長。 樹結構來說,遞歸結構是最容易理解的方式。

剪枝:決策樹容易過擬合,一般來需要剪枝,縮小樹結構規模、緩解過擬合。剪枝技術有預剪枝和後剪枝兩種。

劃分數據集的最大原則是:使無序的數據變的有序。如果一個訓練數據中有20個特徵,那麼選取哪個做劃分依據?這就必須採用量化的方法來判斷,量化劃分方法有多重,其中一項就是「資訊理論度量信息分類」。基於資訊理論的決策樹演算法有ID3、CART和C4.5等演算法,其中C4.5和CART兩種演算法從ID3演算法中衍生而來。

CART和C4.5支持數據特徵為連續分布時的處理,主要通過使用二元切分來處理連續型變數,即求一個特定的值-分裂值:特徵值大於分裂值就走左子樹,或者就走右子樹。這個分裂值的選取的原則是使得劃分後的子樹中的「混亂程度」降低,具體到C4.5和CART演算法則有不同的定義方式。

ID3演算法由Ross Quinlan發明,建立在「奧卡姆剃刀」的基礎上:越是小型的決策樹越優於大的決策樹(be simple簡單理論)。ID3演算法中根據資訊理論的信息增益評估和選擇特徵,每次選擇信息增益最大的特徵做判斷模塊。ID3演算法可用於劃分標稱型數據集,沒有剪枝的過程,為了去除過度數據匹配的問題,可通過裁剪合並相鄰的無法產生大量信息增益的葉子節點(例如設置信息增益閥值)。使用信息增益的話其實是有一個缺點,那就是它偏向於具有大量值的屬性--就是說在訓練集中,某個屬性所取的不同值的個數越多,那麼越有可能拿它來作為分裂屬性,而這樣做有時候是沒有意義的,另外ID3不能處理連續分布的數據特徵,於是就有了C4.5演算法。CART演算法也支持連續分布的數據特徵。

C4.5是ID3的一個改進演算法,繼承了ID3演算法的優點。C4.5演算法用信息增益率來選擇屬性,克服了用信息增益選擇屬性時偏向選擇取值多的屬性的不足在樹構造過程中進行剪枝;能夠完成對連續屬性的離散化處理;能夠對不完整數據進行處理。C4.5演算法產生的分類規則易於理解、准確率較高;但效率低,因樹構造過程中,需要對數據集進行多次的順序掃描和排序。也是因為必須多次數據集掃描,C4.5隻適合於能夠駐留於內存的數據集。

CART演算法的全稱是Classification And Regression Tree,採用的是Gini指數(選Gini指數最小的特徵s)作為分裂標准,同時它也是包含後剪枝操作。ID3演算法和C4.5演算法雖然在對訓練樣本集的學習中可以盡可能多地挖掘信息,但其生成的決策樹分支較大,規模較大。為了簡化決策樹的規模,提高生成決策樹的效率,就出現了根據GINI系數來選擇測試屬性的決策樹演算法CART。

決策樹演算法的優點:

(1)便於理解和解釋,樹的結構可以可視化出來

(2)基本不需要預處理,不需要提前歸一化,處理缺失值

(3)使用決策樹預測的代價是O(log2m),m為樣本數

(4)能夠處理數值型數據和分類數據

(5)可以處理多維度輸出的分類問題

(6)可以通過數值統計測試來驗證該模型,這使解釋驗證該模型的可靠性成為可能

(7)即使該模型假設的結果與真實模型所提供的數據有些違反,其表現依舊良好

決策樹演算法的缺點:

(1)決策樹模型容易產生一個過於復雜的模型,這樣的模型對數據的泛化性能會很差。這就是所謂的過擬合.一些策略像剪枝、設置葉節點所需的最小樣本數或設置數的最大深度是避免出現該問題最為有效地方法。

(2)決策樹可能是不穩定的,因為數據中的微小變化可能會導致完全不同的樹生成。這個問題可以通過決策樹的集成來得到緩解。

(3)在多方面性能最優和簡單化概念的要求下,學習一棵最優決策樹通常是一個NP難問題。因此,實際的決策樹學習演算法是基於啟發式演算法,例如在每個節點進行局部最優決策的貪心演算法。這樣的演算法不能保證返回全局最優決策樹。這個問題可以通過集成學習來訓練多棵決策樹來緩解,這多棵決策樹一般通過對特徵和樣本有放回的隨機采樣來生成。

(4)有些概念很難被決策樹學習到,因為決策樹很難清楚的表述這些概念。例如XOR,奇偶或者復用器的問題。

(5)如果某些類在問題中佔主導地位會使得創建的決策樹有偏差。因此,我們建議在擬合前先對數據集進行平衡。

(1)當數據的特徵維度很高而數據量又很少的時候,這樣的數據在構建決策樹的時候往往會過擬合。所以我們要控制樣本數量和特徵的之間正確的比率;

(2)在構建決策樹之前,可以考慮預先執行降維技術(如PCA,ICA或特徵選擇),以使我們生成的樹更有可能找到具有辨別力的特徵;

(3)在訓練一棵樹的時候,可以先設置max_depth=3來將樹可視化出來,以便我們找到樹是怎樣擬合我們數據的感覺,然後在增加我們樹的深度;

(4)樹每增加一層,填充所需的樣本數量是原來的2倍,比如我們設置了最小葉節點的樣本數量,當我們的樹層數增加一層的時候,所需的樣本數量就會翻倍,所以我們要控制好樹的最大深度,防止過擬合;

(5)使用min_samples_split(節點可以切分時擁有的最小樣本數) 和 min_samples_leaf(最小葉節點數)來控制葉節點的樣本數量。這兩個值設置的很小通常意味著我們的樹過擬合了,而設置的很大意味著我們樹預測的精度又會降低。通常設置min_samples_leaf=5;

(6)當樹的類比不平衡的時候,在訓練之前一定要先平很數據集,防止一些類別大的類主宰了決策樹。可以通過采樣的方法將各個類別的樣本數量到大致相等,或者最好是將每個類的樣本權重之和(sample_weight)規范化為相同的值。另請注意,基於權重的預剪枝標准(如min_weight_fraction_leaf)將比不知道樣本權重的標准(如min_samples_leaf)更少偏向主導類別。

(7)如果樣本是帶權重的,使用基於權重的預剪枝標准將更簡單的去優化樹結構,如mn_weight_fraction_leaf,這確保了葉節點至少包含了樣本權值總體總和的一小部分;

(8)在sklearn中所有決策樹使用的數據都是np.float32類型的內部數組。如果訓練數據不是這種格式,則將復制數據集,這樣會浪費計算機資源。

(9)如果輸入矩陣X非常稀疏,建議在調用fit函數和稀疏csr_matrix之前轉換為稀疏csc_matrix,然後再調用predict。 當特徵在大多數樣本中具有零值時,與密集矩陣相比,稀疏矩陣輸入的訓練時間可以快幾個數量級。

『捌』 目前比較流行的決策樹演算法有哪些

ID3演算法,最簡單的決策樹
c4.5 是最經典的決策樹演算法,選擇信息差異率最大的作為分割屬性。
CART演算法,適合用於回歸

『玖』 常見的幾種決策樹

https://www.cnblogs.com/pinard/p/6053344.html
https://blog.csdn.net/a857553315/article/details/95620881

基於條件概率 則分為正類,否則為負類。

如果瞎猜中的概率與特徵選擇出來的概率相差無幾,那麼就可以放棄該特徵了。特徵選擇的標準是信息增益或信息增益比。

得知特徵X的信息而使輸出的分類Y的不確定性減少的程度。

條件熵:

信息增益: ,D是數據集,A是特徵。

(1)計算數據集D的經驗熵:

,k為第一級特徵{紋理,色澤,觸感}

(2)計算條件熵:

i為第二級特徵{ 清晰,模糊,稍糊 },ik為第二級特徵中的第一級特徵{ 紋理 / 色澤 / 觸感 }

(3) ,越大越好。

固有值: , 是第一級特徵a下的第二級特徵,固有值隨V的個數增加而增加。

使用Gini系數替代ID3里的熵,Gini系數越小越均衡(被錯分的概率低),說明該樣本只屬於同一類的概率(純度)越高。

pk表示選中的樣本屬於k類別的概率,則這個樣本被分錯的概率是(1-pk)

基尼指數(基尼不純度)= 樣本被選中的概率 * 樣本被分錯的概率

在決策樹公式中,葉子結點的取值對應的是 ,現在假設被劃分到葉子結點 t 的數據為 ,那麼在分類問題中,該葉子結點對應的取值為 裡面佔比最高的類別,即Majority of classes;在回歸問題中,採用所有 值的平均,因為這樣的話會使得 最小。

預剪枝使得很多分支沒有展開,這不僅 降低了過擬合的風險 ,還顯著 減少了決策樹的訓練時間開銷和測試時間 。但是,有些分支雖當前不能提升泛化性。甚至可能導致泛化性暫時降低,但在其基礎上進行後續劃分卻有可能導致顯著提高,因此預剪枝的這種貪心本質,給決策樹帶來了 欠擬合的風險 。

後剪枝通常比預剪枝 保留更多的分支 ,其 欠擬合風險很小 ,因此後剪枝的 泛化性能 往往 優 於預剪枝決策樹。但後剪枝過程是從底往上裁剪,因此其 訓練時間開銷 比前剪枝要 大 。

(1)C4.5還有ID3演算法的剪枝:
葉節點的個數是|T|,t是樹T的葉節點,該葉節點有 個樣本點,其中第k類的樣本點有 個,k=1,2,...K, 為葉節點t上的經驗熵。

記 ,可得 , 表示模型對訓練數據的預測誤差。 為調整模型復雜度的參數, 表示只考慮擬合程度,不考慮復雜度。

(2)CART演算法的剪枝:

後剪枝,進行交叉驗證。

連續(非離散)特徵可以將特徵值從小到大排列然後取

按照 進行劃分 { - ,+ },從而得到該情況下的信息增益。

(1)如何在屬性值缺失的情況下進行劃分屬性的選擇?(創建決策樹的時候怎麼計算缺失值存在下的信息增益,選擇正確的屬性)
(2)給定劃分屬性,若樣本在該屬性上的值是缺失的,那麼該如何對這個樣本進行劃分?(在分類過程中有缺失值的話怎麼進行劃分)

無缺失樣本所佔比例:
無缺失樣本中第k類所佔比例:
無缺失樣本中在特徵a上取值為 的樣本所佔比例:

最後得到了推廣了的公式:

一般的決策樹分類邊界由若干個與坐標軸平行的分段組成:

判斷過程:密度 -> 含糖率 -> 密度 -> 含糖率...

多變數決策樹有d個屬性對應d維空間的一個數據點,對樣本分類表示在坐標空間中找到不同樣本之間的分類邊界。

「多變數決策樹」能實現斜的劃分邊界,使決策樹模型簡化。在多變數決策樹的學習過程中,不是為非葉結點尋找最優劃分屬性,而是試圖建立合適的線性分類器:

可以通過最小二乘或者嵌入神經網路進一步優化。

增量學習:根據新樣本可對學得的模型進行調整適應當前形勢,而不需要重新訓練。如ID4,ID5R還有ITI

和熵模型的度量方式比,基尼系數對應的誤差有多大呢?對於二類分類,基尼系數和熵之半的曲線如下:

從上圖可以看出,基尼系數和熵之半的曲線非常接近,因此,基尼系數可以做為熵模型的一個近似替代。而CART分類樹演算法就是使用的基尼系數來選擇決策樹的特徵。為了進一步簡化,CART分類樹演算法每次僅僅對某個特徵的值進行二分,而不是多分,這樣CART分類樹演算法建立起來的是二叉樹,而不是多叉樹。

『拾』 決策樹演算法的基本思想

1)樹以代表訓練樣本的單個結點開始。
2)如果樣本都在同一個類.則該結點成為樹葉,並用該類標記。
3)否則,演算法選擇最有分類能力的屬性作為決策樹的當前結點.
4)根據當前決策結點屬性取值的不同,將訓練樣本數據集tlI分為若乾子集,每個取值形成一個分枝,有幾個取值形成幾個分枝。勻針對上一步得到的一個子集,重復進行先前步驟,遞4'I形成每個劃分樣本上的決策樹。一旦一個屬性出現在一個結點上,就不必在該結點的任何後代考慮它。
5)遞歸劃分步驟僅當下列條件之一成立時停止:
①給定結點的所有樣本屬於同一類。
②沒有剩餘屬性可以用來進一步劃分樣本.在這種情況下.使用多數表決,將給定的結點轉換成樹葉,並以樣本中元組個數最多的類別作為類別標記,同時也可以存放該結點樣本的類別分布,
③如果某一分枝tc,沒有滿足該分支中已有分類的樣本,則以樣本的多數類創建一個樹葉。

閱讀全文

與決策樹演算法有哪些相關的資料

熱點內容
手機版寶可夢模組的伺服器怎麼進 瀏覽:118
qt在arm上編譯過程 瀏覽:124
黑白命令在哪裡 瀏覽:22
演算法崗問面試官的問題 瀏覽:116
720pjpg壓縮 瀏覽:525
經濟學人app怎麼用 瀏覽:733
thunderbird如何刪除伺服器 瀏覽:632
編譯內核模塊准備工作 瀏覽:186
protues單片機 瀏覽:679
淘寶想多開店怎麼租伺服器 瀏覽:580
小鹿情感app怎麼打不開了 瀏覽:325
可自編譯的C 瀏覽:62
vfl90壓縮機是哪個廠家 瀏覽:677
安卓系統游戲怎麼開發 瀏覽:410
抖助力app綁定的銀行卡怎麼辦 瀏覽:466
我的電腦文件夾打開方式 瀏覽:931
東莞加密u盤公司 瀏覽:137
graphvizlinux 瀏覽:438
智能手錶藍牙怎麼下載app 瀏覽:293
女程序員下班菜譜 瀏覽:260