02-24 決策樹總結

更新、更全的《機器學習》的更新網站,更有python、go、數據結構與算法、爬蟲、人工智能教學等着你:http://www.javashuo.com/article/p-vozphyqp-cm.htmlpython

決策樹總結

1、ID3算法、C4.5算法和CART算法比較

算法 樹結構 支持模型 特徵選擇 連續值處理 缺失值處理 剪枝
ID3 分類 多叉樹 信息增益 不支持 不支持 不支持
C4.5 分類 多叉樹 信息增益比 支持 支持 支持
CART 分類、迴歸 二叉樹 基尼指數、均方差 支持 支持 支持

2、決策樹優缺點

2.1 優勢

  1. 簡單明瞭,生成的決策樹很直觀,在邏輯上能夠獲得很好的解釋,屬於白盒模型。
  2. 一般狀況下不須要進行數據預處理。
  3. 使用決策樹預測的代價是\(O(\log_2m)\quad\text{m爲樣本數}\)
  4. 不少算法只是專一於離散值或者連續值,而決策樹既能夠處理離散值也能夠處理連續值。
  5. 能夠處理多維度樣本的分類問題。
  6. 可使用交叉驗證的剪枝方法來選擇模型,很大程度的提升了泛化能力。
  7. 對於敏感點的容錯能力強。

2.2 缺點

  1. 決策樹算法很是容易過擬合,進而致使泛化能力不強。(能夠經過設置節點最少樣本數量和限制決策樹層數來改進)
  2. 決策樹會由於樣本發生一點的改動,進而致使樹結構發生劇烈變化。(可使用集成學習生成隨機森林、Xgboost等方法改善)
  3. 一般狀況下經過啓發式方法尋找最優的決策樹,但因爲該問題是一個NP難的問題,因此很容易獲得局部最優解。(可使用集成學習生成隨機森林、Xgboost等方法改善)
  4. 決策樹很難學習比較複雜的關係,例如異或。(一般換個分類器解決該類問題,例如使用神經網絡分類)
  5. 決策樹容易偏向於徵樣本比例偏大的特徵。(能夠適度的調節樣本的權重)
相關文章
相關標籤/搜索