Decision Forest 模型由決策樹組成。決策樹學習演算法 (例如隨機森林) 至少部分仰賴決策樹學習。
在本課程中,您將研究一個小型範例資料集,並瞭解如何訓練單一決策樹。在後續章節中,您將瞭解如何結合決策樹來訓練決策樹叢集。
在 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. 在 *{num_legs : 4, num_eyes : 2}* 的例子中,推論路徑最終會結束於葉節點 *dog*。
在前述範例中,決策樹的葉節包含分類預測結果,也就是說,每個葉節都包含一組可能動物物種中的動物物種。
同樣地,決策樹也可以透過標示分葉的回歸預測值 (數值),預測數值。舉例來說,下列決策樹會預測動物的可愛分數,分數介於 0 到 10 之間。
圖 3. 用於做出數值預測的決策樹。