More Related Content
More from Fuzhou University
More from Fuzhou University (20)
人工智慧06_決策樹
- 4. 決策樹定義和說明
4
顧客編號 婚姻 收入 購買不動產
C01 0 0 0
C02 0 1 0
C03 1 0 1
C04 1 1 1
不會購買不動產 會購買不動產
採用自頂端向下搜尋可能的決策樹空間
演算法概念
◦ 資料設定:將原始資料分成訓練資料和測試資料
◦ 決策樹生成:運用訓練資料來建立決策樹,過程中依據屬性選擇指標(如:資訊增益、Gini係數、
卡方統計量)來評估選擇哪個屬性做分支的依據
◦ 剪枝:參考測試資料,並進行決策樹修剪
◦ 將以上步驟不斷重複進行,直到所有的新產生節點都是樹葉節點為止
以資訊增益為基礎之決策樹方法:ID3、C4.5/C5.0
以Gini係數為基礎之決策樹方法:CART
以卡方統計量為基礎之決策樹方法:CHAID
- 5. 以資訊增益為基礎之決策樹方法
運用資訊增益(Information Gain)作為分支準則
◦ ID3
運用資訊增益比(Information Gain Ratio)作為分支準則
◦ C4.5/C5.0
5
k
i
ii ppInfo
1
2log購買不動產
顧客編號 婚姻 收入 購買不動產
C01 0 0 0
C02 0 1 0
C03 1 0 1
C04 1 1 1
購買不動產購買不動產婚姻 婚姻InfoInfoGain
已婚已婚單身單身購買不動產婚姻 InfoInfoInfo PrPr
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產 PrlogPrPrlogPr 22 Info
婚姻
婚姻
婚姻
SplitInfo
Gain
GR
已婚已婚單身單身婚姻 PrlogPrPrlogPr 22 SplitInfo
此資訊增益代表在取得「婚姻」資料屬性
的情況下,獲得的資訊量
- 6. ID3決策樹方法
Info函式稱為熵(Entropy),常用來衡量資料亂度
6
購買不動產
0
0
0
0
k
i
ii ppInfo
1
2log購買不動產
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產 PrlogPrPrlogPr 22 Info
000
0log01log1 22
購買不動產Info
購買不動產
1
0
0
0
.810.50.310
25.0log25.0
75.0log75.0
2
2
購買不動產Info
購買不動產
1
1
0
0
1.50.50
.50log.50
.50log.50
2
2
購買不動產Info
購買不動產
1
1
1
1
000
1log10log0 22
購買不動產Info
在此情境,資料亂度最高 在此情境,資料亂度最低在此情境,資料亂度最低
- 7. ID3決策樹方法
資訊增益(Information Gain)計算方式
7
顧客編號 婚姻 收入 購買不動產
C01 0 0 0
C02 0 1 0
C03 1 0 1
C04 1 1 1
1.50.505.0log5.05.0log5.0
4
2
log
4
2
4
2
log
4
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產Info
0000log01log1
2
0
log
2
0
2
2
log
2
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產單身Info
0001log10log0
2
2
log
2
2
2
0
log
2
0
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產已婚Info
在得知「單身」的情況下,
可將資料亂度降到0
在得知「已婚」的情況下,
可將資料亂度降到0
案例1
- 8. ID3決策樹方法
資訊增益(Information Gain)計算方式
8
顧客編號 婚姻 收入 購買不動產
C01 0 0 0
C02 0 1 0
C03 1 0 1
C04 1 1 1
005.005.0
4
2
4
2
PrPr
已婚單身
已婚已婚單身單身購買不動產婚姻
InfoInfo
InfoInfoInfo
101
購買不動產購買不動產婚姻 婚姻InfoInfoGain
由於在得知「單身」和「已婚」的情況下,
分別可以將資料亂度降到0
因此在得知「婚姻」屬性的情況下,可將
資料亂度降到0在得知「婚姻」的情況下,
可以得到許多資訊量
案例1
- 9. ID3決策樹方法
資訊增益(Information Gain)計算方式
9
顧客編號 婚姻 收入 購買不動產
C01 0 0 0
C02 0 1 0
C03 1 0 1
C04 1 1 1
1.50.505.0log5.05.0log5.0
4
2
log
4
2
4
2
log
4
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產Info
10.50.50.5log0.50.5log0.5
2
1
log
2
1
2
1
log
2
1
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產低收入Info
10.50.50.5log0.50.5log0.5
2
1
log
2
1
2
1
log
2
1
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產高收入Info
在得知「低收入」的情況
下,資料亂度仍為1
在得知「高收入」的情況
下,資料亂度仍為1
案例1
- 10. ID3決策樹方法
資訊增益(Information Gain)計算方式
10
顧客編號 婚姻 收入 購買不動產
C01 0 0 0
C02 0 1 0
C03 1 0 1
C04 1 1 1
115.015.0
4
2
4
2
PrPr
高收入低收入
高收入高收入低收入低收入購買不動產收入
InfoInfo
InfoInfoInfo
011
購買不動產購買不動產收入 收入InfoInfoGain
在得知「收入」的情況下,
並沒有得到任何資訊量
由於在得知「低收入」和「高收入」的情
況下,資料亂度仍分別為1
因此在得知「收入」屬性的情況下,資料
亂度仍為1
案例1
- 13. ID3決策樹方法-不適用情境
資訊增益(Information Gain)計算方式
13
顧客編號 婚姻 收入 購買不動產
C11 1 0 0
C12 0 1 0
C13 1 0 1
C14 0 1 1
1.50.505.0log5.05.0log5.0
4
2
log
4
2
4
2
log
4
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產Info
15.05.05.0log5.05.0log5.0
2
1
log
2
1
2
1
log
2
1
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產單身Info
15.05.05.0log5.05.0log5.0
2
1
log
2
1
2
1
log
2
1
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產已婚Info
在得知「單身」的情況下,
資料亂度仍為1
在得知「已婚」的情況下,
資料亂度仍為1
案例2
- 14. ID3決策樹方法-不適用情境
資訊增益(Information Gain)計算方式
14
115.015.0
4
2
4
2
PrPr
已婚單身
已婚已婚單身單身購買不動產婚姻
InfoInfo
InfoInfoInfo
011
購買不動產購買不動產婚姻 婚姻InfoInfoGain
由於在得知「單身」和「已婚」的情況下,
資料亂度仍分別為1
因此在得知「婚姻」屬性的情況下,資料
亂度仍為1在得知「婚姻」的情況下,
並沒有得到任何資訊量
顧客編號 婚姻 收入 購買不動產
C11 1 0 0
C12 0 1 0
C13 1 0 1
C14 0 1 1
案例2
- 15. ID3決策樹方法-不適用情境
資訊增益(Information Gain)計算方式
15
1.50.505.0log5.05.0log5.0
4
2
log
4
2
4
2
log
4
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產Info
10.50.50.5log0.50.5log0.5
2
1
log
2
1
2
1
log
2
1
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產低收入Info
10.50.50.5log0.50.5log0.5
2
1
log
2
1
2
1
log
2
1
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產高收入Info
在得知「低收入」的情況
下,資料亂度仍為1
在得知「高收入」的情況
下,資料亂度仍為1
顧客編號 婚姻 收入 購買不動產
C11 1 0 0
C12 0 1 0
C13 1 0 1
C14 0 1 1
案例2
- 16. ID3決策樹方法-不適用情境
資訊增益(Information Gain)計算方式
16
115.015.0
4
2
4
2
PrPr
高收入低收入
高收入高收入低收入低收入購買不動產收入
InfoInfo
InfoInfoInfo
011
購買不動產購買不動產收入 收入InfoInfoGain
在得知「收入」的情況下,
並沒有得到任何資訊量
由於在得知「低收入」和「高收入」的情
況下,資料亂度仍分別為1
因此在得知「收入」屬性的情況下,資料
亂度仍為1
顧客編號 婚姻 收入 購買不動產
C11 1 0 0
C12 0 1 0
C13 1 0 1
C14 0 1 1
由於得知「婚姻」和「收入」的情況下,得到的資訊量皆為0
所有資料屬性皆無參考價值,所以無法生成決策樹
案例2
- 17. 顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
ID3決策樹方法-適用情境
決策樹適用情境:資料切割後,仍有資料屬性與目標屬性相依
17
單身:0
已婚:1
青年:0
中年:1
無:0
有:1
顧客編號 婚姻 年齡 收入 購買不動產
C21 已婚 青年 高 有
C22 已婚 中年 低 有
C23 已婚 青年 高 有
C24 已婚 中年 低 有
C25 單身 中年 高 有
C26 單身 中年 低 有
C27 單身 青年 高 無
C28 單身 青年 低 無
低:0
高:1
不會購買不動產 會購買不動產會購買不動產
案例3
- 18. ID3決策樹方法-適用情境
資訊增益(Information Gain)計算方式
18
18.0.310.5075.0log75.025.0log25.0
8
6
log
8
6
8
2
log
8
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產Info
15.05.05.0log5.05.0log5.0
4
2
log
4
2
4
2
log
4
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產單身Info
0001log10log0
4
4
log
4
4
4
0
log
4
0
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產已婚Info
在得知「單身」的情況下,
資料亂度仍為1
在得知「已婚」的情況下,
可將資料亂度降到0
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 19. ID3決策樹方法-適用情境
資訊增益(Information Gain)計算方式
19
5.005.015.0
8
4
8
4
PrPr
已婚單身
已婚已婚單身單身購買不動產婚姻
InfoInfo
InfoInfoInfo
31.05.081.0
購買不動產購買不動產婚姻 婚姻InfoInfoGain
得知「單身」的情況下,資料亂度為1;而
得知「已婚」的情況下,資料亂度為0,且
「單身」和「已婚」各佔一半的資料
因此在得知「婚姻」屬性的情況下,可將
資料亂度降到0.5在得知「婚姻」的情況下,
可以得到資訊量0.31
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 20.
0001log10log0
4
4
log
4
4
4
0
log
4
0
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產中年Info
ID3決策樹方法-適用情境
資訊增益(Information Gain)計算方式
20
18.0.310.5075.0log75.025.0log25.0
8
6
log
8
6
8
2
log
8
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產Info
15.05.05.0log5.05.0log5.0
4
2
log
4
2
4
2
log
4
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產青年Info
在得知「青年」的情況下,
資料亂度仍為1
在得知「中年」的情況下,
可將資料亂度降到0
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 21. ID3決策樹方法-適用情境
資訊增益(Information Gain)計算方式
21
5.005.015.0
8
4
8
4
PrPr
中年青年
中年中年青年青年購買不動產年齡
InfoInfo
InfoInfoInfo
31.05.081.0
購買不動產購買不動產年齡 年齡InfoInfoGain
得知「青年」的情況下,資料亂度為1;而
得知「中年」的情況下,資料亂度為0,且
「青年」和「中年」各佔一半的資料
因此在得知「年齡」屬性的情況下,可將
資料亂度降到0.5
在得知「年齡」的情況下,
可以得到資訊量0.31
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 22. ID3決策樹方法-適用情境
資訊增益(Information Gain)計算方式
22
18.0.310.5075.0log75.025.0log25.0
8
6
log
8
6
8
2
log
8
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產Info
18.031.05.075.0log75.025.0log25.0
4
3
log
4
3
4
1
log
4
1
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產低收入Info
在得知「低收入」的情況
下,資料亂度仍為0.81
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
18.031.05.075.0log75.025.0log25.0
4
3
log
4
3
4
1
log
4
1
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產高收入Info
在得知「高收入」的情況
下,資料亂度仍為0.81
- 23. ID3決策樹方法-適用情境
資訊增益(Information Gain)計算方式
23
81.081.05.081.05.0
8
4
8
4
PrPr
高收入低收入
高收入高收入低收入低收入購買不動產收入
InfoInfo
InfoInfoInfo
081.081.0
購買不動產購買不動產收入 收入InfoInfoGain
得知「低收入」的情況下,資料亂度為0.81;
而得知「高收入」的情況下,資料亂度為0.81,
且「低收入」和「高收入」各佔一半的資料
因此在得知「婚姻」屬性的情況下,可將資料
亂度仍為0.81在得知「收入」的情況下,
並沒有得到任何資訊量
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 24. ID3決策樹方法-適用情境
生成決策樹的方式
判斷資訊增益最高的資料屬性作為節點
決策樹
24
收入年齡婚姻 GainGainGain
婚姻
?
會
購買不動產
單身
婚姻=0
已婚
婚姻=1
「婚姻」比「收入」可以取得更多的資訊量,
故將「婚姻」設定為根節點
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 25.
0001log10log0
2
2
log
2
2
2
0
log
2
0
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產中年Info
ID3決策樹方法-適用情境
資訊增益(Information Gain)計算方式
25
1.50.505.0log5.05.0log5.0
4
2
log
4
2
4
2
log
4
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產Info
0000log01log1
2
0
log
2
0
2
2
log
2
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產青年Info
在得知「中年」的情況下,
可將資料亂度降到0
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
在得知「青年」的情況下,
可將資料亂度降到0
- 26. ID3決策樹方法-適用情境
資訊增益(Information Gain)計算方式
26
005.005.0
4
2
4
2
PrPr
中年青年
中年中年青年青年購買不動產年齡
InfoInfo
InfoInfoInfo
101
購買不動產購買不動產年齡 年齡InfoInfoGain
得知「青年」的情況下,資料亂度為0;而
得知「中年」的情況下,資料亂度為0,且
「青年」和「中年」各佔一半的資料
因此在得知「年齡」屬性的情況下,可將
資料亂度降到0
在得知「年齡」的情況下,
可以得到資訊量1
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 27. ID3決策樹方法-適用情境
資訊增益(Information Gain)計算方式
27
15.05.05.0log5.05.0log5.0
2
1
log
2
1
2
1
log
2
1
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產低收入Info
在得知「低收入」的情況
下,資料亂度仍為1
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
15.05.05.0log5.05.0log5.0
2
1
log
2
1
2
1
log
2
1
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產高收入Info
在得知「高收入」的情況
下,資料亂度仍為1
1.50.505.0log5.05.0log5.0
4
2
log
4
2
4
2
log
4
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產Info
- 28. ID3決策樹方法-適用情境
資訊增益(Information Gain)計算方式
28
115.015.0
4
2
4
2
PrPr
高收入低收入
高收入高收入低收入低收入購買不動產收入
InfoInfo
InfoInfoInfo
011
購買不動產購買不動產收入 收入InfoInfoGain
得知「低收入」的情況下,資料亂度為1;
而得知「高收入」的情況下,資料亂度為1,
且「低收入」和「高收入」各佔一半的資料
因此在得知「收入」屬性的情況下,可將資
料亂度仍為1
在得知「收入」的情況下,
並沒有得到任何資訊量
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 29. ID3決策樹方法-適用情境
生成決策樹的方式
判斷資訊增益最高的資料屬性作為節點
決策樹
29
收入年齡 GainGain
婚姻
年齡
會
購買不動產
單身
婚姻=0
已婚
婚姻=1
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
青年
年齡=0
中年
年齡=1
會
購買不動產
不會
購買不動產
不會購買不動產 會購買不動產會購買不動產
「年齡」比「收入」可以取得更多的資訊量,
故將「年齡」設定為節點
- 30. 顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
C4.5/C5.0決策樹方法
C4.5/C5.0與ID3不同的地方在於運用「資訊增益比(Information Gain Ratio)」作為分支準則
30
單身:0
已婚:1
青年:0
中年:1
無:0
有:1
顧客編號 婚姻 年齡 收入 購買不動產
C21 已婚 青年 高 有
C22 已婚 中年 低 有
C23 已婚 青年 高 有
C24 已婚 中年 低 有
C25 單身 中年 高 有
C26 單身 中年 低 有
C27 單身 青年 高 無
C28 單身 青年 低 無
低:0
高:1
不會購買不動產 會購買不動產會購買不動產
案例3
- 31. C4.5/C5.0決策樹方法
資訊增益(Information Gain)計算方式
31
18.0.310.5075.0log75.025.0log25.0
8
6
log
8
6
8
2
log
8
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產購買不動產Info
15.05.05.0log5.05.0log5.0
4
2
log
4
2
4
2
log
4
2
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產單身Info
0001log10log0
4
4
log
4
4
4
0
log
4
0
PrlogPrPrlogPr
2222
22
已購買不動產已購買不動產未購買不動產未購買不動產已婚Info
在得知「單身」的情況下,
資料亂度仍為1
在得知「已婚」的情況下,
可將資料亂度降到0
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 32. C4.5/C5.0決策樹方法
資訊增益(Information Gain)計算方式
32
5.005.015.0
8
4
8
4
PrPr
已婚單身
已婚已婚單身單身購買不動產婚姻
InfoInfo
InfoInfoInfo
31.05.081.0
購買不動產購買不動產婚姻 婚姻InfoInfoGain 得知「單身」的情況下,資料亂度為1;而
得知「已婚」的情況下,資料亂度為0,且
「單身」和「已婚」各佔一半的資料
因此在得知「婚姻」屬性的情況下,可將
資料亂度降到0.5
在得知「婚姻」的情況下,
可以得到資訊量0.31
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 35. C4.5/C5.0決策樹方法
資訊增益比(Information Gain Ratio)計算方式
35
「收入」屬性本身的資料亂度為1
在得知「收入」的情況下,
得到資訊增益比0
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
0
1
0
收入
收入
收入
SplitInfo
Gain
GR
15.05.05.0log5.05.0log5.0
8
4
log
8
4
8
4
log
8
4
PrlogPrPrlogPr
2222
22
高收入高收入低收入低收入收入SplitInfo
- 37. C4.5/C5.0決策樹方法
37
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
資訊增益比(Information Gain Ratio)計算方式
「年齡」屬性本身的資料亂度為1
在得知「年齡」的情況下,
可以得到資訊增益比1
1
1
1
年齡
年齡
年齡
SplitInfo
Gain
GR
15.05.05.0log5.05.0log5.0
4
2
log
4
2
4
2
log
4
2
PrlogPrPrlogPr
2222
22
中年中年青年青年年齡SplitInfo
- 38. C4.5/C5.0決策樹方法
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
資訊增益比(Information Gain Ratio)計算方式
「收入」屬性本身的資料亂度為1
在得知「收入」的情況下,
得到資訊增益比0
0
1
0
收入
收入
收入
SplitInfo
Gain
GR
15.05.05.0log5.05.0log5.0
4
2
log
4
2
4
2
log
4
2
PrlogPrPrlogPr
2222
22
高收入高收入低收入低收入收入SplitInfo
- 39. C4.5/C5.0決策樹方法
生成決策樹的方式
判斷資訊增益比最高的資料屬性作為節點
決策樹
39
收入年齡 GRGR
婚姻
年齡
會
購買不動產
單身
婚姻=0
已婚
婚姻=1
「年齡」比「收入」可以取得更高的資訊增益比,
故將「年齡」設定為節點
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
青年
年齡=0
中年
年齡=1
會
購買不動產
不會
購買不動產
不會購買不動產 會購買不動產會購買不動產
- 40. C4.5/C5.0決策樹方法
為什麼需要資訊增益比?當同一個資料屬性有多個不同資料項目時,可以正規化
40
年齡
單身
單身
單身
已婚
已婚
已婚
1.50.50
.50log.50
.50log.50
2
2
婚姻SplitInfo
年齡
青年
青年
中年
中年
老年
老年
1.590.53.530.530
.330log.330
.330log.330
.330log.330
2
2
2
年齡SplitInfo
年齡 購買不動產
單身 有
單身 無
單身 有
已婚 有
已婚 有
已婚 有
46.00.46.920
購買不動產
購買不動產
婚姻
年齡Info
Info
Gain
59.00.33.920
購買不動產
購買不動產
年齡
年齡Info
Info
Gain
年齡 購買不動產
青年 有
青年 無
中年 有
中年 有
老年 有
老年 有
46.0
1
46.0
婚姻
婚姻
婚姻
SplitInfo
Gain
GR
37.0
59.1
59.0
年齡
年齡
年齡
SplitInfo
Gain
GR
2個不同項目時,資
料亂度最大值為1
3個不同項目時,資
料亂度最大值為1.59
只考慮資訊增益,將
由婚姻資料屬性勝出
考慮資訊增益比,將
由年齡資料屬性勝出
- 41. C5.0決策樹方法實作
建立訓練資料,並儲存為csv檔
請參考「案例3_購買不動產(訓練資料).csv」
41
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
單身:0
已婚:1
青年:0
中年:1
無:0
有:1
顧客編號 婚姻 年齡 收入 購買不動產
C21 已婚 青年 高 有
C22 已婚 中年 低 有
C23 已婚 青年 高 有
C24 已婚 中年 低 有
C25 單身 中年 高 有
C26 單身 中年 低 有
C27 單身 青年 高 無
C28 單身 青年 低 無
低:0
高:1
- 48. 顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
以Gini係數為基礎之決策樹方法
分類和回歸樹(Classification And Regression Trees, CART)為以Gini係數為基礎之決策樹方法
48
單身:0
已婚:1
青年:0
中年:1
無:0
有:1
顧客編號 婚姻 年齡 收入 購買不動產
C21 已婚 青年 高 有
C22 已婚 中年 低 有
C23 已婚 青年 高 有
C24 已婚 中年 低 有
C25 單身 中年 高 有
C26 單身 中年 低 有
C27 單身 青年 高 無
C28 單身 青年 低 無
低:0
高:1
不會購買不動產 會購買不動產會購買不動產
案例3
Gini係數為不純度(Impurity)
- 49. CART決策樹方法
Gini係數計算方式
49
5.0.5015.05.01
PrPr1
22
22
已購買不動產未購買不動產購買不動產Gini
在得知「婚姻」的情況下,
Gini係數值下降0.25
原始的Gini係數值為0.5
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
25.005.05.05.0
4
4
4
0
1
8
4
4
2
4
2
1
8
4
|Pr|Pr1Pr
|Pr|Pr1Pr
PrPr
2222
22
22
已婚已購買不動產已婚未購買不動產已婚
單身已購買不動產單身未購買不動產單身
已婚已婚單身單身購買不動產婚姻 GiniGiniGini
25.025.05.0 購買不動產購買不動產婚姻 婚姻GiniGiniGini
- 50. CART決策樹方法
Gini係數計算方式
50
5.0.5015.05.01
PrPr1
22
22
已購買不動產未購買不動產購買不動產Gini
在得知「年齡」的情況下,
Gini係數值下降0.25
原始的Gini係數值為0.5
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
25.005.05.05.0
4
4
4
0
1
8
4
4
2
4
2
1
8
4
|Pr|Pr1Pr
|Pr|Pr1Pr
PrPr
2222
22
22
中年已購買不動產中年未購買不動產中年
青年已購買不動產青年未購買不動產青年
中年中年青年青年購買不動產年齡 GiniGiniGini
25.025.05.0 購買不動產購買不動產年齡 年齡GiniGiniGini
- 51. CART決策樹方法
Gini係數計算方式
51
5.0.5015.05.01
PrPr1
22
22
已購買不動產未購買不動產購買不動產Gini
在得知「收入」的情況下,
Gini係數值下降0.125
原始的Gini係數值為0.5
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
375.0375.05.0375.05.0
4
3
4
1
1
8
4
4
3
4
1
1
8
4
|Pr|Pr1Pr
|Pr|Pr1Pr
PrPr
2222
22
22
高收入已購買不動產高收入未購買不動產高收入
低收入已購買不動產低收入未購買不動產低收入
高收入高收入低收入低收入購買不動產收入 GiniGiniGini
125.0375.05.0 購買不動產購買不動產收入 收入GiniGiniGini
- 52. CART決策樹方法
生成決策樹的方式
判斷Gini值減少最多的資料屬性作為節點
決策樹
52
收入年齡婚姻 GiniGiniGini
婚姻
?
會
購買不動產
單身
婚姻=0
已婚
婚姻=1
「婚姻」比「收入」減少更多的不純度,故
將「婚姻」設定為根節點
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 53. CART決策樹方法
Gini係數計算方式
53
5.0.5015.05.01
PrPr1
22
22
已購買不動產未購買不動產購買不動產Gini
在得知「年齡」的情況下,
Gini係數值下降0.5
原始的Gini係數值為0.5
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
005.005.0
2
2
2
0
1
4
2
2
0
2
2
1
4
2
|Pr|Pr1Pr
|Pr|Pr1Pr
PrPr
2222
22
22
中年已購買不動產中年未購買不動產中年
青年已購買不動產青年未購買不動產青年
中年中年青年青年購買不動產年齡 GiniGiniGini
5.005.0 購買不動產購買不動產年齡 年齡GiniGiniGini
- 54. CART決策樹方法
Gini係數計算方式
54
5.0.5015.05.01
PrPr1
22
22
已購買不動產未購買不動產購買不動產Gini
在得知「收入」的情況下,
Gini係數值下降0
原始的Gini係數值為0.5
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
5.05.05.05.05.0
2
1
2
1
1
4
2
2
1
2
1
1
4
2
|Pr|Pr1Pr
|Pr|Pr1Pr
PrPr
2222
22
22
高收入已購買不動產高收入未購買不動產高收入
低收入已購買不動產低收入未購買不動產低收入
高收入高收入低收入低收入購買不動產收入 GiniGiniGini
05.05.0 購買不動產購買不動產收入 收入GiniGiniGini
- 55. 收入年齡 GiniGini
CART決策樹方法
生成決策樹的方式
判斷Gini值減少最多的資料屬性作為節點
決策樹
55
婚姻
年齡
會
購買不動產
單身
婚姻=0
已婚
婚姻=1
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
青年
年齡=0
中年
年齡=1
會
購買不動產
不會
購買不動產
「年齡」比「收入」減少更多的不純度,故
將「年齡」設定為節點
不會購買不動產 會購買不動產會購買不動產
- 62. 顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
以卡方統計為基礎之決策樹方法
卡方自動交互檢視法(Chi-Square Automatic Interaction Detector, CHAID)為以卡方統計量為
基礎之決策樹方法
計算每個資料屬性與目標屬性的完全獨立值,再計算真值與完全獨立值的卡方統計量
若真值與完全獨立值相似,則代表該資料屬性與目標屬性獨立,反之,則是具有相依性
取出相依性最高的資料屬性作為節點
62
單身:0
已婚:1
青年:0
中年:1
無:0
有:1
顧客編號 婚姻 年齡 收入 購買不動產
C21 已婚 青年 高 有
C22 已婚 中年 低 有
C23 已婚 青年 高 有
C24 已婚 中年 低 有
C25 單身 中年 高 有
C26 單身 中年 低 有
C27 單身 青年 高 無
C28 單身 青年 低 無
低:0
高:1
案例3
- 63. CHAID決策樹方法
婚姻與購買不動產的卡方統計量計算方式
卡方統計量
63
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
67.2
3
34
3
32
1
10
1
12
2222
2
婚姻
未購買不動產 已購買不動產 總和
單身 2 (1) 2 (3) 4
已婚 0 (1) 4 (3) 4
總和 2 6 8
完全獨立值算法:
欄總和 * 列總和 / 總數
6 * 4 / 8 = 3
- 64. CHAID決策樹方法
64
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
年齡與購買不動產的卡方統計量計算方式
卡方統計量
完全獨立值算法:
欄總和 * 列總和 / 總數
6 * 4 / 8 = 3
67.2
3
34
3
32
1
10
1
12
2222
2
年齡
未購買不動產 已購買不動產 總和
青年 2 (1) 2 (3) 4
中年 0 (1) 4 (3) 4
總和 2 6 8
- 65. CHAID決策樹方法
65
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
收入與購買不動產的卡方統計量計算方式
卡方統計量
完全獨立值算法:
欄總和 * 列總和 / 總數
6 * 4 / 8 = 3
0
3
33
3
33
1
11
1
11
2222
2
收入
未購買不動產 已購買不動產 總和
低收入 1 (1) 3 (3) 4
高收入 1 (1) 3 (3) 4
總和 2 6 8
- 66. CHAID決策樹方法
生成決策樹的方式
判斷卡方統計量最多的資料屬性作為節點
決策樹
66
收入年齡婚姻 222
婚姻
?
會
購買不動產
單身
婚姻=0
已婚
婚姻=1
「婚姻」比「收入」更為偏離完全獨立值,
故將「婚姻」設定為根節點
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
- 67. CHAID決策樹方法
67
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
年齡與購買不動產的卡方統計量計算方式
卡方統計量
完全獨立值算法:
欄總和 * 列總和 / 總數
2 * 2 / 4 = 1
未購買不動產 已購買不動產 總和
青年 2 (1) 0 (1) 2
中年 0 (1) 2 (1) 2
總和 2 2 4
4
1
12
1
10
1
10
1
12
2222
2
年齡
- 68. CHAID決策樹方法
68
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
收入與購買不動產的卡方統計量計算方式
卡方統計量
完全獨立值算法:
欄總和 * 列總和 / 總數
2 * 2 / 4 = 1
0
3
33
3
33
1
11
1
11
2222
2
收入
未購買不動產 已購買不動產 總和
低收入 1 (1) 1 (1) 2
高收入 1 (1) 1 (1) 2
總和 2 2 4
- 69. 生成決策樹的方式
判斷Gini值減少最多的資料屬性作為節點
決策樹
收入年齡 22
CHAID決策樹方法
69
婚姻
年齡
會
購買不動產
單身
婚姻=0
已婚
婚姻=1
顧客編號 婚姻 年齡 收入 購買不動產
C21 1 0 1 1
C22 1 1 0 1
C23 1 0 1 1
C24 1 1 0 1
C25 0 1 1 1
C26 0 1 0 1
C27 0 0 1 0
C28 0 0 0 0
案例3
青年
年齡=0
中年
年齡=1
會
購買不動產
不會
購買不動產
「年齡」比「收入」更為偏離完全獨立值,
故將「年齡」設定為節點