Anda di halaman 1dari 21

Algoritma C4.

Habib Firdausi Comara


P31.2014.01604
Pohon Keputusan
- Pohon keputusan adalah model prediksi menggunakan
struktur pohon atau struktur berhirarki.
- Pemetaan mengenai alternatif-alternatif pemecahan
masalah yang dapat diambil dari masalah tersebut.
- Memperlihatkan faktor-faktor kemungkinan /
probablitas yang akan mempengaruhi alternatif
keputusan tersebut, disertai dengan estimasi hasil akhir
yang akan didapat.
Manfaat Pohon Keputusan
• Mem-break down proses pengambilan keputusan
yang kompleks menjadi lebih simpel
• Mengeksplorasi data, menemukan hubungan
tersembunyi antara sejumlah calon variabel input
dengan sebuah variabel target.
• Memadukan antara eksplorasi data dan pemodelan,
sehingga sangat bagus sebagai langkah awal dalam
proses pemodelan bahkan ketika dijadikan sebagai
model akhir dari beberapa teknik lain.
Kelebihan Pohon Keputusan
1. Daerah pengambilan keputusan menjadi lebih simpel dan
spesifik.
2. Eliminasi perhitungan-perhitungan yang tidak diperlukan.
3. Fleksibel untuk memilih fitur dari internal node yang
berbeda, fitur yang terpilih akan membedakan suatu
kriteria dibandingkan kriteria yang lain dalam node yang
sama.
4. Metode pohon keputusan dapat menghindari munculnya
permasalahan ini dengan menggunakan criteria yang
jumlahnya lebih sedikit pada setiap node internal tanpa
banyak mengurangi kualitas keputusan yang dihasilkan.
Kekurangan Pohon Keputusan
• meningkatnya waktu pengambilan keputusan dan
jumlah memori yang diperlukan ketika jumlah kelas
dan kriteria sangat banyak
• Pengakumulasian jumlah eror dari setiap tingkat
dalam sebuah pohon keputusan yang besar.
• Kesulitan dalam mendesain pohon keputusan yang
optimal.
• Hasil kualitas keputusan yang didapatkan dari metode
pohon keputusan sangat tergantung pada bagaimana
pohon tersebut didesain.
Definisi Algoritma C4.5
Beberapa pengertian C4.5 menurut :
• a)  Max Bremer, 2007 “Metode yang digunakan untuk
membangun pohon keputusan dengan menggunakan
seperangkat aturan pada sebuah dataset.”
• b)  Xindong Wu and Vipin Kumar, 2008 “Rangkaian
dari algoritma untuk masalah klasifikasi dalam
machine learning dan data mining.”
Definisi Algoritma C4.5
• Algoritma C4.5 merupakan algoritma
pembentuk pohon keputusan (decision tree)
untuk mengklarifikasi data yang besar menjadi
record yang lebih kecil dengan menerapkan
serangkaian aturan keputusan
Tahapan Algoritma
1. Memilih atribut sebagai
akar
2. Membuat cabang untuk
tiap-tiap nilai didalam
akar tersebut
3. Membagi kasus dalam
cabang.
4. Ulangi proses untuk
setiap cabang sampai
semua kasus pada cabang
memiliki kelas yang sama.
Contoh:Keputusan Bermain Golf
NO OUTLOOK TEMPERATURE HUMIDITY WINDY PLAY
1 Sunny Hot High FALSE No
2 Sunny Hot High TRUE No
3 Cloudy Hot High FALSE Yes
4 Rainy Mild High FALSE Yes
5 Rainy Cool Normal FALSE Yes
6 Rainy Cool Normal TRUE Yes
7 Cloudy Cool Normal TRUE Yes
8 Sunny Mild High FALSE No
9 Sunny Cool Normal FALSE Yes
10 Rainy Mild Normal FALSE Yes
11 Sunny Mild Normal TRUE Yes
12 Cloudy Mild High TRUE Yes
13 Cloudy Hot Normal FALSE Yes
14 Rainy Mild High TRUE No
Atribut dan Label
- Atribut-atributnya adalah Outlook,
Temperature, Humidity, dan Wind.
- Sedangkan Label-nya ada pada kolom Play
yaitu kelas “No” dan kelas “Yes”.
- Dataset tersebut memiliki 14 kasus yang
terdiri 9 “Yes” dan 5 “No” pada kolom Play
Rumus Nilai Gain
• Untuk memilih atribut sebagai akar, didasarkan pada nilai gain
tertinggi dari atribut-atribut yang ada. Untuk menghitung gain
digunakan rumus seperti tertera dalam Rumus 1

S : Himpunan kasus
A : Atribut
n : Jumlah partisi atribut A
lSil : Jumlah kasus pada partisi ke i
lSl : Jumlah kasus dalam S
Nilai Entropi
• penghitungan nilai entropi dapat dilihat pada
persamaan :

S: adalah himpunan (dataset) kasus


n: adalah banyaknya partisi S
pi: adalah probabilitas yang di dapat dari
Sum(Yes) dibagi Total Kasus
Nilai Entropi
• Menghitung frekwensi hasil play yang muncul
berikut proporsi-nya serta entropy-nya.

Hasil Frek pi Log2pi -pi.log2pi

Yes 10 0.71 -0.49 0.35

No 4 0.29 -1.81 0.52

Total 14 Total Entropy 0.86


Penentuan Calon Cabang

1 Outlook Sunny Outlook Cloudy Outlook Rainy


2 Temperatur Hot Temperature Mild Temperature Cool
3 Humidity High Humidity Normal
4 Windy False Windy True
Menghitung Gain
Menghitung Gain dari masing – masing kriteria untuk mencari
gain tertinggi yang akan dijadikan cabang keputusan.
Yes No P(Yes) P(No) -P(Yes) . LOG2 P(Yes) -P(No) . LOG2 P(No) Total p(outlook=...) Total.p(outlook=...) S(Total.p(outlook=...)) gain

Outlook Sunny 2 3 0.40 0.60 0.53 0.44 0.97 0.36 0.35 0.60 0.26

Cloudy 4 0 1.00 0.00 0.00 0.00 0.00 0.29 0.00

Rainy 4 1 0.80 0.20 0.26 0.46 0.72 0.36 0.26

Temperature Hot 2 2 0.50 0.50 0.50 0.50 1.00 0.29 0.29 0.68 0.18

Mild 4 2 0.67 0.33 0.39 0.53 0.92 0.43 0.39

Cool 4 0 1.00 0.00 0.00 0.00 0.00 0.29 0.00

Humidity High 3 4 0.43 0.57 0.52 0.46 0.99 0.50 0.49 0.49 0.37

Normal 7 0 1.00 0.00 0.00 0.00 0.00 0.50 0.00

Windy FALSE 6 2 0.75 0.25 0.31 0.50 0.81 0.57 0.46 0.86 0.01

TRUE 4 2 0.67 0.33 0.39 0.53 0.92 0.43 0.39


Pohon Keputusan Hasil Node 1
- Atribut dengan gain tertinggi adalah Humidity
yaitu sebesar 0,37.
- Nilai atribut Normal sudah meng- Humidity
1

klasifikasikan kasus menjadi 1


yaitu Yes (Yes=7, No=0) High Normal

- Nilai atribut High masih 1.1


Yes
?
perlu dilakukan
perhitungan lagi
Penghitungan Entropy Node 1.1
-P(No) X LOG2 Total
Node 1.1 Yes No P(Yes) P(No) -P(Yes) X LOG2 P(Yes) P(No) Entropy p(outlook=...) Total.p(outlook=...) S(Total.p(outlook=...)) gain

Humidity - High 3 4 0.43 0.57 0.52 0.46 0.99 0.00

outlook Sunny 0 3 0.00 1.00 0.00 0.00 0.00 0.43 0.00 0.29 0.70

Cloudy 2 0 1.00 0.00 0.00 0.00 0.00 0.29 0.00

Rainy 1 1 0.50 0.50 0.50 0.50 1.00 0.29 0.29

Temperature Hot 1 2 0.33 0.67 0.53 0.39 0.92 0.43 0.39 0.96 0.02

Mild 2 2 0.50 0.50 0.50 0.50 1.00 0.57 0.57

Cool 0 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00

Windy FALSE 2 2 0.50 0.50 0.50 0.50 1.00 0.57 0.57 0.96 0.02

TRUE 1 2 0.33 0.67 0.53 0.39 0.92 0.43 0.39


Pohon Keputusan Node 1.1
• Atribut dengan gain tertinggi adalah Outlook yaitu
sebesar 0,70 1
Humidity

• Nilai atribut Sunny sudah meng-


High Normal
klasifikasikan kasus menjadi 1 1.1 Yes
Outlook

yaitu No (Yes=0 No=3) Sunny Cloudy

• Demikian pula pada atribut NO


Rainy
Yes

Cloudy, yaitu Yes (Yes=2 No=0)


1.1.2
• Nilai Atribut Rainy masih perlu ?

dilakukan perhitungan lagi


Penghitungan Entropy Node 1.1.2
Yes No P(Yes) P(No) -P(Yes) . LOG2 P(Yes) -P(No) . LOG2 P(No) Total Entropy p(outlook=...) Total.p(outlook=...) S(Total.p(outlook=...)) gain

Humidity - High dan


Outlook Rainy 1 1 0.50 0.50 0.50 0.50 1.00

Temperature Hot 0 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 1.00 0.00

Mild 1 1 0.50 0.50 0.50 0.50 1.00 1.00 1.00

Cool 0 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00

Windy FALSE 1 0 1.00 0.00 0.00 0.00 0.00 0.50 0.00 0.00 1.00

TRUE 0 1 0.00 1.00 0.00 0.00 0.00 0.50 0.00


Pohon Keputusan Node 1.1.2
• Atribut dengan gain tertinggi adalah 1
Humidity

Windy yaitu sebesar 1 High Normal

• Nilai atribut TRUE sudah meng-


1.1 Yes
Outlook

Sunny Cloudy
klasifikasikan kasus menjadi 1 NO
Rainy
Yes

yaitu No (Yes=0 No=1)


• Demikian pula pada atribut
1.1.2
Windy

True False

FALSE, yaitu Yes (Yes=1 No=0) No Yes


Pohon Keputusan terakhir
Output (Rule) 1
Humidity

R1. If Humidity = Normal then Play = Yes High Normal

R2. If Humidity = High and Outlook = Cloudy 1.1 Yes


Outlook

then Play = Yes


Sunny Cloudy
R3. If Humidity = High and Outlook = Sunny NO
Rainy
Yes
then Play = No
R4. If Humidity = High and Outlook = Rainy 1.1.2
Windy

and Windy = True then Play = No


True False
R5. If Humidity = High and Outlook = Rainy No Yes

and Windy = False then Play = Yes

Anda mungkin juga menyukai