1. 程式人生 > >機器學習分類器---決策樹

機器學習分類器---決策樹

一、決策樹

經常使用決策樹來處理分類問題,決策樹也是最經常使用的資料探勘演算法,不需要了解機器學習的知識,就能搞明白決策樹是如何工作的。
kNN演算法可以完成很多分類任務,但它最大的缺點就是無法給出資料的內在含義,決策樹的主要優勢在於資料形式非常容易理解
決策樹能夠讀取資料集合,其一個重要任務是為了資料中所蘊含的知識資訊,因此決策樹可以使用不熟悉的資料集合,並從中提取出一系列規則,在這些機器根據資料集建立規則時,就是機器學習的過程。

二、決策樹的構造
1、決策樹優缺點比較:

  • 優點:計算複雜度不高,輸出結果易於理解,對中間值的缺失不敏感,可以處理不相關特徵資料
  • 缺點:可能會產生過度匹配問題
  • 適用資料型別:數值型和標稱型

2、在構造決策樹時,需要解決的第一個問題是當前資料集上哪個特徵在劃分資料分類時起決定性作用。為了找到決定性特徵,需要進行特徵評估。如果某個分支下的資料屬於同一型別,則已正確地劃分資料分類,無需進一步對資料集進行分割。如果資料子集內的資料不屬於同一型別,則需要重複劃分資料子集的過程。

3、資訊增益

  1. 劃分資料集的大原則:將無序的資料變得更加有序。有多種劃分資料集的方法,但每種方法都有各自的優缺點。
  2. 劃分資料集之前之後資訊發生的變化稱為資訊增益,計算每個特徵值劃分資料集獲得的資訊增益,獲得資訊增益最高的特徵就是最好的選擇。

三、重點

  1. 構建決策樹時,通常採用遞迴的方法將資料集轉化為決策樹。一般不構造新的資料結構,而是使用python語言內嵌的資料結構字典儲存樹節點資訊。
  2. 為了便於直觀理解,使用Matplotlib的註解功能,將儲存的樹結構轉化為易於理解的圖形