Decision Tree
Oleh :
d. Ulangi proses untuk masing-masing cabang sampai semua kasus pada cabang
memiliki kelas yang sama.
Contoh :
Dalam kasus yang tertera pda table akan dibuat pohon keputusan untuk menentuka
main tenis atau tidak dengan melihat keadaan cuaca (outlook), suhu (temperature),
kelembapan (humidity), dan keadaan angin (windy).
1. Menghitung jumlah kasus, jumlah kasus untuk keputusan Yes, jumlah kasus
untuk keputusan No dan Entropy dari semua kasus dan kasus yang dibagi
berdasarkan atribut Outlook, Temperature, Humidity dan Windy. Setelah itu
lakukan penghitungan Gain untuk masing masing atribut.
Keterangan :
S : Himpunan (dataset) kasus, dimana koleksi S terdiri dari contoh
positif dan negatif
P(+) : proporsi dari contoh positif dalam S
P(-) : proporsi dari contoh negative dalam S
log
+
log
(
)
(
)
(
)
(
( 14 14 ) ( 14 14 ))=0.863120569
Entropi ( S )=
Gain ( S , A ) =Entropi ( S )
i=1
Keterangan :
S
(dataset) kasus
A
k
atribut A
|Si|
pada partisi ke i
|S|
dalam S
: himpunan
: atribut
: jumlah partisi
: jumlah kasus
: jumlah kasus
2
5
3
5
2
2 3
3 2
3
log 2 log 2 =
1,32 0,73 =0,528+ 0,438
5
5 5
5
5
5
)(
4
4
4
4 0
4
log 2 log 2 =0+0=0
4
4 4
4
4
5
4
4 1
1 4
1
log 2 log 2 =
0,32 2,32 =0,256+ 0,4
5
5 5
5
5
5
)(
4
5
5
0+
0.721928095+
0.970950594 =0.25
14
14
14
(( ) ( )
b. HUMIDITY
3
7
( )
4
7
3
3 4
4
log 2 log 2 =(0,431,22 )( 0,570,80 ) =0,99
7
7 7
7
7
7
Normal , Entropy ( S )=
7
7 0
0
log 2 log 2 =0+0=0
7
7 7
7
(( )
( ) )
c. WIND
6
8
6
6 2
2
log 2 log 2 =(0,750,415)(0,252)=0,81
8
8 8
8
4
6
2
8
2
6
2
2 4
4
log 2 log 2 =(0,31,584)(0,670,585)=0,918
6
6 6
6
(( )
d. TEMPERATURE
( )
2
4
2
4
2
2 2
2
log 2 log 2 =(0,51 ) ( 0,51 )=1
4
4 4
4
4
6
2
6
Mild , Entropy ( S )=
4
4 2
2
log 2 log 2 =(0,670,584 )( 0,331,584 )=0,3
6
6 6
6
4
4
0
4
4
4 0
0
log 2 log 2 =0
4
4 4
4
4
4
6
0+
1+
0.918295834 =0.18385092
14
14
14
(( ) ( ) ( )
Atribu
t
Outloo
k
Nilai
Cloudy
Sum(Ni Sum(
Sum(No
lai)
YES)
)
4
4
0
Rainy
Sunny
Entropi
Gain
0
0.7219
28095
0.9709
50594
0.28
5210
37
Tempe
rature
Humid
ity
Cool
Hot
4
4
4
2
0
2
Mild
0
1
0.9182
95834
0.18
3809
25
High
Norma
l
0.9852
28136
0
0.37
0506
501
Windy
False
True
0.8112
78124
0.9182
95834
0.00
5977
711
2. Berdasarkan pembentukkan pohon keputusan node 1 (root node), node 1.1 akan
dianalisis lebih lanjut. Untuk mempermudah maka pada table awal akan
diambil data yang memiliki humidity = high.
no
Outlook
temperat
Kelemabap
Windy
Main
1
2
3
4
5
6
7
Sunny
Sunny
Cloudy
Rainy
Sunny
Cloudy
Rainy
ure
Hot
Hot
Hot
Mild
Mild
Mild
Mild
an
High
High
High
High
High
High
High
False
True
False
False
False
True
True
No
No
Yes
Yes
No
Yes
No
Kemudian akan dianalisis lagi entropi dan gain dari atribut humidity high.
a. Humidity High
Jumlah yes =
3
7
Jumlah no =
4
7
3
3
4
4
log
+
log
(
)
(
)
(
)
(
( 7 7 ) ( 7 7 ))=0.985228136
Entropi ( Humidity )=
b. Outlook
Sunny , Entropy ( S )=
0
0 3
3
log 2 log 2 =0
3
3 3
3
Cloudy , Entropy ( S )=
2
2 0
0
log 2 log 2 =0
2
2 2
2
0,51
1
1 1
1
Rainy , Entropy ( S )=
log 2 log 2 =(0,51) ) = 1
2
2 2
2
c. Wind
False, Entropy ( S ) =
2
2 2
2
log 2 log 2 =(0,51 )( 0,51 )=1
4
4 4
4
True , Entropy ( S ) =
2
2 1
1
log 2 log 2 =(0,670,5849 )( 0,3331,5849 )=0,3918+
3
3 3
3
d. Temperature
Hot , Entropy ( S )=
1
1 2
2
log 2 log 2 = (0,331,584 ) ( 0,6670,5849 ) =0,5227+0
3
3 3
3
Mild , Entropy ( S )=
2
2 2
2
log 2 log 2 =(0,51 ) ( 0,51 )=1
4
4 4
3
Cool , Entropy ( S )=
0
0 0
0
log 2 log 2 =0
0
0 0
0
atribut
nilai
1.1
Outlook
cloudy
rainy
sunny
Sum(v
ar)
2
2
3
Sum(Ya)
2
1
0
Sum(Ti
d)
0
1
3
Entropi
Gain
0
1
0
0.699
5138
5
Temper
ature
cool
hot
0
3
0
1
0
2
mild
0
0.91829
5834
1
0.020
2442
07
Windy
False
True
4
3
2
2
2
1
1
0.91829
5834
0.020
2442
07
tidak perlu dilakukan perhitungan lebih lanjut, tetapi untuk nilai atribut
rainy masih perlu dilakukan perhitungan lagi.
Pohon keputusan yang terbentuk sampai saat ini adalah sebagai berikut :
3. Menghitung jumlah kasus, jumlah kasus untuk keputusan Yes, jumlah kasus
untuk keputusan No, dan entropi dari semua kasus dan kasus yang dibagi
berdasarkan atribut Temperature dan Windy yang dapat menjadi node cabang
dari nilai atribut Rainy. Setelah itu lakukan perhitungan gain untuk masingmasing atribut.
No
1
2
Outlook
Rainy
Rainy
Temperature
Mild
Mild
Humidity
High
High
Windy
False
True
Main
Yes
No
False, Entropy ( S ) =
1
1 0
0
log 2 log 2 =0
1
1 1
1
True , Entropy ( S ) =
c. Temperature
Hot , Entropy ( S )=
node
( 120)+( 120)=1
0
0 0
0
log 2 log 2 =0
0
0 0
0
Mild , Entropy ( S )=
1
1 1
1
log 2 log 2 =(0,51 )( 0,51 )=1
2
2 2
2
Cool , Entropy ( S )=
0
0 0
0
log 2 log 2 =0
0
0 0
0
0
0 1
1
log 2 log 2 =0
1
1 1
1
Atribut
Nilai
Sum(Va
Sum(yes Sum(tid
Entropi Gain
r)
2
0
0
2
)
1
0
0
1
)
1
0
0
1
1
0
0
1
1
1
1
0
0
1
0
0
0
Windy
False
True
Berdasarkan hasil tersebut diketahui bahwa atribut yang memiliki gain terhigh
adalah Windy yaitu sebesar 1. Dengan demikian Windy dapat menjadi node
cabang dari nilai Rainy. Terdapat 2 nilai atribut dari Windy yaitu False dan
True.
Dari
kedua
nilai
atribut
tersebut,
nilai
atribut
False
sudah
Pohon keputusan yang terbentuk sampai pada tahap ini adalah sebagai berikut :
Dengan memperhatikan pohon keputusan diatas, diketahui bahwa semua kasus sudah
masuk kedalam kelas. Dengan demikian, pohon keputusan tersebut merupakan pohon
keputusan terkahir yang terbentuk.
Kesimpulan :
Humidity ->High, Outlook->Rainy, Windy->false = Playing tennis
Humidity ->High, Outlook->Rainy, Windy->true = Dont Playing tennis