一文看懂決策樹 - Decision tree(3個步驟+3種典型算法+10個優缺點)

本文首發自產品經理的人工智能學習庫 easyai.tech算法

原文地址:《一文看懂決策樹 - Decision tree(3個步驟+3種典型算法+10個優缺點)機器學習

一文看懂決策樹

決策樹是一種邏輯簡單的機器學習算法,它是一種樹形結構,因此叫決策樹。學習

本文將介紹決策樹的基本概念、決策樹學習的 3 個步驟、3 種典型的決策樹算法、決策樹的 10 個優缺點。測試

什麼是決策樹?

決策樹是一種解決分類問題的算法,想要了解分類問題和迴歸問題,能夠看這裏《監督學習的2個任務:迴歸、分類》。人工智能

決策樹算法採用樹形結構,使用層層推理來實現最終的分類。決策樹由下面幾種元素構成:3d

  • 根節點:包含樣本的全集
  • 內部節點:對應特徵屬性測試
  • 葉節點:表明決策的結果

決策樹的結構

預測時,在樹的內部節點處用某一屬性值進行判斷,根據判斷結果決定進入哪一個分支節點,直到到達葉節點處,獲得分類結果。cdn

這是一種基於 if-then-else 規則的有監督學習算法,決策樹的這些規則經過訓練獲得,而不是人工制定的。blog

決策樹是最簡單的機器學習算法,它易於實現,可解釋性強,徹底符合人類的直觀思惟,有着普遍的應用。ci

舉個栗子:get

上面的說法過於抽象,下面來看一個實際的例子。銀行要用機器學習算法來肯定是否給客戶發放貸款,爲此須要考察客戶的年收入,是否有房產這兩個指標。領導安排你實現這個算法,你想到了最簡單的線性模型,很快就完成了這個任務。

首先判斷客戶的年收入指標。若是大於20萬,能夠貸款;不然繼續判斷。而後判斷客戶是否有房產。若是有房產,能夠貸款;不然不能貸款。

這個例子的決策樹以下圖所示:

決策樹解決是否貸款的案例

決策樹學習的 3 個步驟

決策樹學習的 3 個步驟

特徵選擇

特徵選擇決定了使用哪些特徵來作判斷。在訓練數據集中,每一個樣本的屬性可能有不少個,不一樣屬性的做用有大有小。於是特徵選擇的做用就是篩選出跟分類結果相關性較高的特徵,也就是分類能力較強的特徵。

在特徵選擇中一般使用的準則是:信息增益。

決策樹生成

選擇好特徵後,就從根節點觸發,對節點計算全部特徵的信息增益,選擇信息增益最大的特徵做爲節點特徵,根據該特徵的不一樣取值創建子節點;對每一個子節點使用相同的方式生成新的子節點,直到信息增益很小或者沒有特徵能夠選擇爲止。

決策樹剪枝

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

3 種典型的決策樹算法

3 種典型的決策樹算法

ID3 算法

ID3 是最先提出的決策樹算法,他就是利用信息增益來選擇特徵的。

C4.5 算法

他是 ID3 的改進版,他不是直接使用信息增益,而是引入「信息增益比」指標做爲特徵的選擇依據。

CART(Classification and Regression Tree)

這種算法便可以用於分類,也能夠用於迴歸問題。CART 算法使用了基尼係數取代了信息熵模型。

決策樹的優缺點

優勢

  • 決策樹易於理解和解釋,能夠可視化分析,容易提取出規則;
  • 能夠同時處理標稱型和數值型數據;
  • 比較適合處理有缺失屬性的樣本;
  • 可以處理不相關的特徵;
  • 測試數據集時,運行速度比較快;
  • 在相對短的時間內可以對大型數據源作出可行且效果良好的結果。

缺點

  • 容易發生過擬合(隨機森林能夠很大程度上減小過擬合);
  • 容易忽略數據集中屬性的相互關聯;
  • 對於那些各種別樣本數量不一致的數據,在決策樹中,進行屬性劃分時,不一樣的斷定準則會帶來不一樣的屬性選擇傾向;信息增益準則對可取數目較多的屬性有所偏好(典型表明ID3算法),而增益率準則(CART)則對可取數目較少的屬性有所偏好,但CART進行屬性劃分時候再也不簡單地直接利用增益率盡心劃分,而是採用一種啓發式規則)(只要是使用了信息增益,都有這個缺點,如RF)。
  • ID3算法計算信息增益時結果偏向數值比較多的特徵。
相關文章
相關標籤/搜索