機器學習詞彙解釋:Decision Forest

本頁面包含 Decision Forest 的詞彙。如要查看所有詞彙表術語,請按這裡

A

屬性取樣

#df

訓練決策樹的策略,其中每個決策樹在學習條件時,只會考量可能特徵的隨機子集。一般來說,每個節點會抽樣不同的子集功能。相反地,如果在訓練決策樹時未使用屬性取樣,系統會考量每個節點的所有可能特徵。

對齊軸的條件

#df

決策樹中,只涉及單一功能條件。舉例來說,如果 area 是功能,則下列為軸對齊條件:

area > 200

斜線條件形成對比。

B

bagging

#df

這是一種訓練集成的方法,其中每個組成部分模型會針對取樣並替換的隨機訓練示例子集進行訓練。舉例來說,隨機森林是使用袋裝法訓練的決策樹集合。

「bagging」一詞是「bootstrap aggregating」的縮寫,指的是「bootstrap aggregating」的縮寫。

詳情請參閱「決策樹」課程中的「隨機森林」一節。

二元條件

#df

決策樹中,只有兩種可能結果的條件,通常是「是」或「否」。例如,以下是二元條件:

temperature >= 100

請參閱非二元條件

詳情請參閱決策樹課程中的「條件類型」。

C

狀況

#df

決策樹中,任何評估表式的節點。舉例來說,決策樹的以下部分包含兩個條件:

決策樹包含兩個條件:(x > 0) 和 (y > 0)。

條件也稱為「測試」或「分割」。

leaf 比較的條件。

另請參閱:

詳情請參閱決策樹課程中的「條件類型」。

D

決策森林

#df

由多個決策樹建立的模型。決策樹叢集會匯總決策樹的預測結果,藉此做出預測。熱門的決策樹類型包括 隨機森林梯度提升樹狀圖

詳情請參閱「決策樹」課程中的「決策樹」一節。

決策樹狀圖

#df

監督式學習模型由一組條件葉子組成,並以階層方式排列。例如,以下是決策樹:

決策樹包含四個條件,以階層方式排列,並導向五個葉節點。

E

#df

資訊理論中,熵是用來描述機率分布的不可預測性。此外,熵也定義為每個示例所含的資訊量。當隨機變數的所有值都具有同等的可能性時,分布就會具有最高可能的熵。

熵的值集包含兩個可能的值「0」和「1」(例如 二元分類問題中的標籤),其公式如下:

  H = -p log p - q log q = -p log p - (1-p) * log (1-p)

其中:

  • H 是熵。
  • p 是「1」個範例的分數。
  • q 是「0」例子的分數。請注意,q = (1 - p)
  • log 通常是 log2。在本例中,熵單位為位元。

舉例來說,假設以下情況:

  • 100 個示例包含值「1」
  • 300 個示例包含值「0」

因此,熵值為:

  • p = 0.25
  • q = 0.75
  • H = (-0.25)log2(0.25) - (0.75)log2(0.75) = 每個例項 0.81 位元

完全平衡的集合 (例如 200 個「0」和 200 個「1」) 每個示例的熵為 1.0 位元。隨著集合變得愈來愈不平衡,熵值會趨近 0.0。

決策樹中,熵可協助建立資訊增益,以利分割器在分類決策樹成長的過程中選取條件

熵與下列項目的比較:

熵經常稱為「Shannon 熵」

詳情請參閱決策樹課程中的「使用數值特徵進行二元分類的確切分割器」。

F

特徵重要性

#df

與「變數重要性」同義。

G

吉尼不純度

#df

類似於的指標。分隔器會使用從基尼不純度或熵衍生而來的值,組合條件,用於分類決策樹資訊增益是從熵衍生而來。目前沒有普遍接受的等同於吉尼不純度指標的術語,但這個未命名的指標與資訊增益一樣重要。

吉尼不純度也稱為「吉尼係數」,或簡稱「吉尼」

梯度提升 (決策) 樹狀圖 (GBT)

#df

一種決策樹,其特點如下:

詳情請參閱「決策樹叢書」課程中的「梯度提升決策樹」一節。

梯度提升

#df

訓練演算法,訓練弱模型,以便逐步改善強模型的品質 (降低損失)。舉例來說,線性或小型決策樹模型就是弱模型。強大模型會成為先前訓練的所有弱模型的總和。

在最簡單的梯度提升形式中,每次疊代時,系統都會訓練弱模型,以預測強模型的損失梯度。接著,系統會透過減去預測梯度來更新強大模型的輸出內容,類似於梯度下降法

$$F_{0} = 0$$ $$F_{i+1} = F_i - \xi f_i $$

其中:

  • $F_{0}$ 是起始強模型。
  • $F_{i+1}$ 是下一個強大模型。
  • $F_{i}$ 是目前的強大模型。
  • $\xi$ 是介於 0.0 和 1.0 之間的值,稱為「收縮」,類似於梯度下降法中的學習率
  • $f_{i}$ 是經過訓練的弱模型,可預測 $F_{i}$ 的損失梯度。

現代梯度提升的變化版本也會在運算中納入損失的二次微分 (Hessian)。

決策樹通常用於梯度提升法中的弱模型。請參閱梯度提升 (決策) 樹

I

推論路徑

#df

決策樹中,在推論期間,特定示例會從根節點轉移至其他條件,並以葉節點結束。舉例來說,在下列決策樹狀圖中,較粗的箭頭會顯示具有下列特徵值的示例推論路徑:

  • x = 7
  • y = 12
  • z = -3

下圖中的推論路徑會經過三個條件,然後才到達葉節點 (Zeta)。

決策樹包含四個條件和五個葉節點。根條件為 (x > 0)。由於答案為「是」,推論路徑會從根節點前往下一個條件 (y > 0)。由於答案為「是」,推論路徑會轉往下一個條件 (z > 0)。由於答案為「否」,推論路徑會前往終端節點,也就是葉節點 (Zeta)。

三個粗箭頭代表推論路徑。

詳情請參閱決策樹叢書中的「決策樹」一節。

資訊增益

#df

決策樹中,節點的 與其子節點熵的加權 (以範例數量為依據) 之間的差異。節點的熵是該節點中樣本的熵。

舉例來說,請考量下列熵值:

  • 父節點的熵 = 0.6
  • 熵值為 0.2,其中一個子節點有 16 個相關示例
  • 另一個子節點的熵值 (有 24 個相關範例) = 0.1

因此,40% 的例項位於一個子節點,60% 位於另一個子節點。因此:

  • 子節點的加權熵和 = (0.4 * 0.2) + (0.6 * 0.1) = 0.14

因此,資訊增益為:

  • 資訊增益 = 父節點的熵 - 子節點的加權熵和
  • 資訊增益 = 0.6 - 0.14 = 0.46

大多數的分割器都會建立條件,以便盡可能提高資訊增益。

在集合內的條件

#df

決策樹中,用於測試一組項目中是否包含某個項目的條件。舉例來說,以下是「in-set」條件:

  house-style in [tudor, colonial, cape]

在推論期間,如果房屋樣式的特徵值為 tudorcolonialcape,則這個條件會評估為 Yes。如果房屋類型地圖項目的值為其他項目 (例如 ranch),則這個條件會評估為 No。

相較於測試 one-hot 編碼 特徵的條件,集合條件通常會產生更有效率的決策樹。

L

葉子

#df

決策樹中的任何端點。與條件不同,葉節不會執行測試。葉節是可能的預測結果。葉子也是推論路徑的終端節點

例如,下列決策樹包含三個葉節:

決策樹狀圖包含兩個條件,導致三個葉節。

節點 (決策樹)

#df

決策樹中,任何條件葉節點

包含兩個條件和三個葉節的決策樹。

非二元條件

#df

條件包含兩個以上的可能結果。舉例來說,下列非二元條件包含三種可能的結果:

一個可導致三種可能結果的條件 (number_of_legs = ?)。一個結果 (number_of_legs = 8) 會產生名為 spider 的葉子。第二個結果 (number_of_legs = 4) 會導向名為 dog 的分葉。第三個結果 (number_of_legs = 2) 會導向名為 penguin 的葉片。

O

斜線條件

#df

決策樹中,涉及一個以上特徵條件。舉例來說,如果高度和寬度都是特徵,則下列為斜向條件:

  height > width

請參閱「軸對齊條件」一節。

袋外評估 (OOB 評估)

#df

評估決策森林品質的機制,可測試每個決策樹示例 (用於該決策樹的訓練) 進行比較。舉例來說,在下圖中,您會發現系統會針對約三分之二的範例訓練每個決策樹,然後根據剩餘的三分之一範例進行評估。

決策森林包含三個決策樹。一個決策樹會針對三分之二的範例進行訓練,然後使用剩下的三分之一進行 OOB 評估。第二個決策樹會針對與先前決策樹不同的三分之二示例進行訓練,然後使用與先前決策樹不同的三分之一進行 OOB 評估。

袋外評估是交叉驗證機制的一種計算效率高且保守的近似值。在交叉驗證中,每個交叉驗證輪次都會訓練一個模型 (例如,在 10 倍交叉驗證中訓練 10 個模型)。使用 OOB 評估時,系統會訓練單一模型。由於袋外樣本在訓練期間會保留每個樹的部分資料,因此 OOB 評估可以使用這些資料來近似交叉驗證。

P

排序變數重要性

#df

一種變數重要性,用於評估模型在變換特徵值後,預測錯誤率的增幅情形。排序變數重要性是與模型無關的指標。

R

隨機森林

#df

決策樹集成,其中每個決策樹都會使用特定隨機雜訊進行訓練,例如袋子採樣

隨機樹系是一種決策樹系

#df

決策樹中的起始節點 (第一個條件)。依照慣例,圖表會將根放在決策樹的頂端。例如:

決策樹包含兩個條件和三個葉節點。起始條件 (x > 2) 是根節點。

S

有取代值的抽樣

#df

從一組候選項目中挑選項目的方法,其中可重複選取相同項目。「with replacement」一詞代表每次選取後,系統會將所選項目傳回候選項目集區。反向方法「不替換取樣」,表示候選項目只能選取一次。

舉例來說,請考量下列水果組合:

fruit = {kiwi, apple, pear, fig, cherry, lime, mango}

假設系統隨機選取 fig 做為第一個項目。如果使用取樣與取代,系統會從下列集合中挑選第二個項目:

fruit = {kiwi, apple, pear, fig, cherry, lime, mango}

是的,這是與先前相同的集合,因此系統可能會再次選取 fig

如果使用無置換的取樣方式,一旦選取,就無法再次選取樣本。舉例來說,如果系統隨機選取 fig 做為第一個樣本,則 fig 就無法再次選取。因此,系統會從下列 (縮減) 集合中挑選第二個樣本:

fruit = {kiwi, apple, pear, cherry, lime, mango}

收縮

#df

梯度提升中的超參數,用於控制過度擬合。梯度提升中的收縮功能,類似於梯度下降中的學習率。縮減值是介於 0.0 和 1.0 之間的小數值。較低的收縮值比較高的收縮值更能減少過度擬合。

split

#df

決策樹中,條件的另一個名稱。

分割器

#df

訓練決策樹時,例行程序 (和演算法) 會負責在每個節點中尋找最佳條件

T

test

#df

決策樹中,條件的另一個名稱。

閾值 (適用於決策樹)

#df

軸對齊條件中,地圖項目會與哪個值進行比較。舉例來說,75 是下列條件中的閾值:

grade >= 75

V

變數重要性

#df

一組分數,用來表示每項特徵對模型的相對重要性。

舉例來說,假設您要建立一個用於估算房價的決策樹,假設這個決策樹使用三個特徵:尺寸、年齡和風格。如果計算出這三項特徵的變數重要性組合為 {size=5.8, age=2.5, style=4.7},則 size 對決策樹的重要性高於 age 或 style。

有不同的變數重要性指標,可讓機器學習專家瞭解模型的不同面向。

W

群眾智慧

#df

這個概念認為,將大量使用者 (「群眾」) 的意見或估計值平均起來,通常會得到出乎意料的好結果。舉例來說,假設有一款遊戲,要求使用者猜猜大罐子裡的果凍豆數量。雖然大多數的個人猜測都會不準確,但根據實驗,所有猜測的平均值竟然與罐子中果凍豆的實際數量非常接近。

Ensembles 是一種軟體類比,類似於群眾智慧。即使個別模型的預測結果極不準確,平均多個模型的預測結果通常會產生出乎意料的準確預測結果。舉例來說,雖然個別的決策樹可能會做出不佳的預測,但決策森林通常會做出非常準確的預測。