• 沒有找到結果。

演算法簡介

在文檔中 交叉路口雙車事故分析 (頁 38-43)

第三章 決策樹分析方法

3.2 演算法簡介

目前最被廣泛使用的決策樹演算法包括 ID3(Interactive Dichotomizer 3)、

CART(Classification and Regression Trees) 、 CHAID(Chi-square Automatic Interaction Detector) 、C4.5 等,表 6 為主要演算法之比較。

表 6、決策樹演算法比較

作者 資料屬性 規則

ID3

Quinlan(1979) 離散 Entropy、Gain Ratio

CART

Kass(1980) 離散 Gini Ratio

CHAID

Breiman(1984) 離散、連續 Chi-Square Test

C4.5

Quinlan(1993) 離散 Gain Ratio

資料來源:【丁一賢等,民94】

ID3 由 Quinlan 於 1979 年所提出,為最早也是最被廣為應用的離散型資料決 策樹演算法,運算邏輯以熵值(Entropy)與資訊獲利(Information gain)為依據,其 特色在於得以兼顧分類正確率並降低決策樹的複雜度;C4.5 為 ID3 的改良,該 演算法同樣以最大資訊獲利為目標,建構出完整的決策樹後再透過錯誤預估率 (Predicted Error Rate)進行修剪。

CART 又稱分類迴歸樹,由 Breiman(1984)四位學者所提出,此一演算邏輯 使用Gini Ratio 來衡量各節點內資料之分散程度,若分散程度很高,代表資料中 平均分布許多類別,反之若分散程度較低,則顯示單一類別的成員居多。CHAID 又稱卡方自動互動檢視法,由 Kass 於 1980 年所發展,該演算法透過卡方分析 (Chi-square test)預測兩變數是否需要合併,同時為避免資料過度配適,CHAID 可透過P 值決定決策樹是否繼續生長。

以下針對常見之決策樹演算法進行簡介說明;

1. ID3 & C4.5

ID3 為 Quinlan(1979)依據資訊理論所提出之決策樹演算法,所謂資訊理論係 指透過熵值(Entropy)衡量資料亂度,若樣本當中各類別分布越一致,則代表資料 亂度越低;資料獲利代表某一屬性為決策樹所帶來的熵值改變,於決策樹建構過 程中,ID3 選擇使該節點資訊獲利最高者作為資料切割之依據。

熵值的概念由Shannon 於 1949 年所提出;假設 p(i|t)為類別 i 於節點 t 發生 之機率,熵值計算如公式1:

( )

=

∑ ( ) ( )

i

t i p t

i p t

E log2 (1)

決策樹分類過程中須選擇一變數 A 以進行資料切割,將原母體資料所有物件分 派至適當之子節點,各子節點亦可計算其熵值並透過權重相加求得變數 A 的資 訊量,與上層節點之資訊量 E(Parent)相減可知變數 A 之資訊獲利 ∆info,亦即變 數A 所帶來的熵值改變量。公式 2 為資訊獲利計算公式,其中 NjA 變數第 j 個屬性(節點)的樣本數,N 為變數 A 所包含之樣本數,Ej為第 j 個屬性值(節點) 所節點之熵值。

( )

( )

=

j j

info E j

N Parent N

E (2)

ID3 演算法步驟如下【曾憲雄等,民94】、【廖郁雅,民 91】:

步驟一:從決策樹的根節點開始,設定根節點為節點D,此時所有物件都屬 於D的物件集合。

步驟二:若D集合當中所有的物件都屬於同一類別,則停止繼續分類,否則 繼續執行步驟三。

步驟三:對D物件集合,依據公式1計算其熵值。

步驟四:將所有尚未出現在根節點到目前節點之路徑的變數Ax視為候選屬 性,分別對D物件集合資料進行分割,並依據公式2計算其資訊獲 利。

步驟五:選擇資訊獲利最大的候選屬性,將之當成節點D的分類屬性。

步驟六:在節點D下依其屬性值建立子節點,並將D中的所有物件分派至適 當的子節點中。

步驟七:回到步驟二繼續執行。

由上述程序,ID3 演算法得以建構高準確率之決策樹,然而由於資料獲利的 計算方式會使決策樹傾向選擇屬性值數較多的變數,例如透過顧客編號建構決策 樹,每一顧客編號僅代表一筆樣本,其預測準確度高達100%且資訊獲得最大,

但每一節點僅包含一筆樣本,此一分類方式準確率雖高但無法進行後續解釋與應 用;因此C4.5 加入 Gain Ratio 之概念,考量分支數造成之影響。

( ) ( )

= ∆

i info

i p i

p log2 Ratio

Gain (3)

C4.5 以 Gain Ratio 為基準衡量各節點之不純度,當分支數越多時分母亦會越 大,如此可同時考量資訊獲利與分支數來進行變數選擇。

2. CART

CART 由 Breiman 等四位學者於 1984 年所提出,其分析邏輯由分類樹與迴 歸樹所組成,分別適用於類別變數與連續型變數,同時CART 透過單一屬性與二 元分割的方式將資料分為不同節點,因此每一節點都只會有兩個分支。

決策樹生長過程與分支機制與ID3、C4.5 大致相同,須計算每一候選分類變 數的不純度,並選擇不純度最低之變數與分割條件,兩者差異之處在於不純度之 定義與計算。CART 採用 Gini Index 作為其不純度衡量標準,當 Gini Index 越高 時,代表該節點內資料越複雜,反之,若Gini Index 越低時,則代表該節點內資 料類別越趨一致。

Gini Index 定義如公式 4,其中 p(i|t)為節點 t 當中,第 i 類別樣本出現的相對 頻率;

( )

=1

[ ] ( )

2

i

t i p t

Gini (4)

( )

L

( )

L R Gini

( )

tR N

t N N Gini t N

i

Gin ′ = + (5)

( )

t =Gini

( )

tGini

( )

t

∆ (6)

於決策樹生長過程中,CART 將所有尚未出現於該分支的變數列為候選分類變 數,設定各變數所有分割條件,例如類別屬性的組合、二元邏輯或連續資料的分 割點,接著計算各變數以及各分割條件的Gini值;在選擇一變數作為分割依據 後,CART 可將每一節點分支為兩子節點 tL與 tR,透過兩子節點樣本數加權可得 選擇該分類變數之Gini值總和(Gin ′i ,如公式5), Gin ′i 與母節點Gini

( )

t 相減可

得該變數與分割條件的不純度減少量(∆),若 ∆ 越大,則代表經過分支後各節點 內資料越趨一致性。

3. CHAID【余丹寧,民94】

CHAID(Chi-square Automatic Interaction Detection)又稱為卡方自動互動檢視 法,由Kass 於 1975 年所提出,其前身為 Sonquist 與 Morgan 在 1960 年代初期發 展的自動互動檢視法(Automatic Interaction Detection, AID)。不僅解釋變數會影響 目標變數,解釋變數之間亦存在著互動關係,AID 主要功能是找出所有解釋變數 之間的互動;與前述演算法相同,AID 先將所有候選變數納入,並列出所有可能 的資料切割方式,找出其中可使組間變異最大之組合,再計算其分割後的誤差平 方和(error sum of squares, ESS),選擇使子節點誤差平方何降低幅度最大的變數做 為該節點的分類依據。

同樣透過不斷遞迴式搜尋最佳分類變數與資料切割條件,CHAID 利用卡方 值作為分割樣本群體的依據,使同質性的樣本單位歸於同一群,以便找出最能解 釋反應變數變化的解釋變數,並描述解釋變數間的互動關係;與 AID 不同之處 在於CHAID 選擇以卡方值作為不純度之衡量標準,同時 AID 分割方式只能將資 料切割成兩群,CHAID 最佳的分割方式則能夠將資料分割為兩群以上的群體。

CHAID 先選擇一個反應變數作為母群體,將每個解釋變數對母群體的反應 水準進行成對的合併及分割,目的是為求得一顯著性最大的解釋變數水準將原始 樣本分割成若干小群體;第一層分類變數與分割機制確定之後,再以相同方法進 行分割,重複為每一個解釋變數搜尋最佳的分割方式,直到分群結果無顯著差異 或最終分割出的小群體所含樣本單位過少才停止,CHAID 分析流程如圖 8。

開始

計算母群體反應變數的反應分配

針對每一個解釋變數考慮,決定母群體的分 割數目,使分割後得子母體具高度同質性

將反應變數具有相同型態的解釋變 數水準加以合併

以卡方值檢定解釋變數顯 著性

判斷合併後的子群體是否需要再做 分割

分割最佳解釋變數對母群體 的反應水準

判斷、決定是否有更多的母群體需要作分割

結束

顯著 不顯著

是,下一個群體

否,已無足夠資格之群體

資料來源:【余丹寧,民94】

圖 8、CHAID 流程圖

在文檔中 交叉路口雙車事故分析 (頁 38-43)