小編邀請您,先思考:
1 如何構建決策樹?
2 決策樹適合解決什麼問題?
1. 什麼是決策樹/判定樹(decision tree)?決策樹(Decision Tree)算法是機器學習(Machine Learning)中分類算法中的一個重要算法,屬於監督學習(Supervised Learning)算法。決策樹算法是一種逼近離散函數值的方法。它是一種典型的分類方法,首先對數據進行處理,利用歸納算法生成可讀的規則和決策樹,然後使用決策對新數據進行分析。本質上決策樹是通過一系列規則對數據進行分類的過程。
2. 決策樹構造決策樹學習的算法通常是一個遞歸地選擇最優特徵,並根據該特徵對訓練數據進行分割,使得對各個子數據集有一個最好的分類的過程。決策樹構造可以分三步進行:特徵選擇、決策樹的生成、決策樹的修剪。
3. 熵(entropy)概念:信息和抽象,如何度量?
1948年,香農提出了 「信息熵(entropy)」的概念
一條信息的信息量大小和它的不確定性有直接的關係,要搞清楚一件非常非常不確定的事情,或者是我們一無所知的事情,需要了解大量信息==>信息量的度量就等於不確定性的多少
例子:猜世界盃冠軍,假如一無所知,猜多少次?每個隊奪冠的機率不是相等的 比特(bit)來衡量信息的多少
變量的不確定性越大,熵也就越大.
4. 決策樹歸納算法 (ID3)決策樹方法最早產生於上世紀60年代,到70年代末。由J.Ross.Quinlan提出了ID3算法,此算法的目的在於減少樹的深度。但是忽略了葉子數目的研究。C4.5算法在ID3算法的基礎上進行了改進,對於預測變量的缺值處理、剪枝技術、派生規則等方面作了較大改進,既適合於分類問題,又適合於回歸問題。
決策樹的典型算法有ID3,C4.5,CART等。數據挖掘領域的十大經典算法中,C4.5算法排名第一。C4.5算法是機器學習算法中的一種分類決策樹算法,其核心算法是ID3算法。C4.5算法產生的分類規則易於理解,準確率較高。
選擇屬性判斷節點
信息獲取量(Information Gain):Gain(A) = Info(D) - Infor_A(D)
通過A來作為節點分類獲取了多少信息
電腦銷售客戶的訓練數據集:
根據年齡、收入、是否為學生,信用度判斷是否買電腦
類似,Gain(income) = 0.029,
Gain(student) = 0.151,
Gain(credit_rating)=0.048
所以,選擇age作為第一個根節點
重複上面的操作。
算法:
樹以代表訓練樣本的單個結點開始(步驟1)。
如果樣本都在同一個類,則該結點成為樹葉,並用該類標號(步驟2 和3)。
否則,算法使用稱為信息增益的基於熵的度量作為啟發信息,選擇能夠最好地將樣本分類的屬性(步驟6)。該屬性成為該結點的「測試」或「判定」屬性(步驟7)。在算法的該版本中,
所有的屬性都是分類的,即離散值。連續屬性必須離散化。
對測試屬性的每個已知的值,創建一個分枝,並據此劃分樣本(步驟8-10)。
算法使用同樣的過程,遞歸地形成每個劃分上的樣本判定樹。一旦一個屬性出現在一個結點上,就不必該結點的任何後代上考慮它(步驟13)。
遞歸劃分步驟僅當下列條件之一成立停止:
(a) 給定結點的所有樣本屬於同一類(步驟2 和3)。
(b) 沒有剩餘屬性可以用來進一步劃分樣本(步驟4)。在此情況下,使用多數表決(步驟5)。
這涉及將給定的結點轉換成樹葉,並用樣本中的多數所在的類標記它。替換地,可以存放結
點樣本的類分布。
(c) 分枝
test_attribute = a i 沒有樣本(步驟11)。在這種情況下,以 samples 中的多數類
創建一個樹葉(步驟12)
5 .決策樹/判定樹(decision tree)判定樹:根據條件判定是否去play
7. 決策樹優點:直觀、生成的模式簡單,便於理解,小規模數據集有效
分類精度高
缺點:
親愛的讀者朋友們,您們有什麼想法,請點擊【寫留言】按鈕,寫下您的留言。
數據人網(http://shujuren.org)誠邀各位數據人來平臺分享和傳播優質數據知識。
公眾號推薦:
好又樂書屋,專注分享有思想的人物,身心健康,自我教育,閱讀寫作和有趣味的生活等內容,傳播正能量。
閱讀原文,更多精彩!
分享是收穫,傳播是價值!