決策樹模型由決策樹組成。決策樹的學習演算法 (例如隨機森林) 至少需要部分依賴於學習決策樹。
在本節課程中,您將研究一個小型的資料集範例,並瞭解單一決策樹如何訓練。在下一節中,您會瞭解怎麼結合決策樹來訓練決策樹系。
在 YDF 中,使用 CART 學習工具訓練個別決策樹狀圖模型:
# https://ydf.readthedocs.io/en/latest/py_api/CartLearner import ydf model = ydf.CartLearner(label="my_label").train(dataset)
模型
「決策樹狀圖」是一種模型,由一組在樹狀結構中按階層分類的「問題」組成。這類問題通常稱為「條件」、「分割」或「測試」。我們會在這個類別中使用「condition」一詞。每個非分葉節點皆含有一個條件,而每個分葉節點都包含預測。
植物樹通常會隨著底部的根部長長,但決策樹通常會以「根」 (第一個節點) 的形式呈現。
圖 1. 簡單的分類決策樹。綠色的圖例不屬於決策樹狀圖。
決策樹狀模型的推論結果,是根據條件將根範例 (位於頂端) 轉送至其中一個分葉節點 (位於底部)。觸及的分葉值即為決策樹的預測結果。一組已造訪的節點稱為「推論路徑」。例如,請考量下列特徵值:
num_legs | num_eyes |
---|---|
4 | 2 |
預測結果會是 dog。推論路徑為:
- num_legs ≥ 3 → 是
- num_eyes ≥ 3 → 否
圖 2. 就範例而言,在分葉 *dog* 中形成的推論路徑 *{num_legs : 4, num_eyes : 2}*。
在上述範例中,決策樹的葉子含有分類預測;也就是說,每個葉子都含有一組可能物種的動物物種。
同樣地,決策樹狀圖也能將片段加上回歸預測 (數值) 標籤,藉此預測數值。舉例來說,下列決策樹會預測 0 到 10 之間的動物的可愛分數分數。
圖 3. 進行數值預測的決策樹狀圖。