Sunday, September 7, 2008

Algoritma C4.5

Untuk memudahkan penjelasan mengenai algoritma C4.5 berikut ini disertakan contoh kasus yang dituangkan dalam Tabel 3.1.



Dalam kasus yang tertera pada Tabel 3.1, akan dibuat pohon keputusan untuk menentukan main tenis atau tidak dengan melihat keadaan cuaca, temperatur, kelembaban dan keadaan angin.

Secara umum algoritma C4.5 untuk membangun pohon keputusan adalah sebagai berikut:

  1. Pilih atribut sebagai akar
  2. Buat cabang untuk masing-masing nilai
  3. Bagi kasus dalam cabang
  4. Ulangi proses untuk masing-masing cabang sampai semua kasus pada cabang memiliki kelas yang sama.

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 (Craw, S., ---).










Sedangkan penhitungan nilai entropy dapat dilihat pada rumus 2 berikut(Craw, S., ---):



Berikut ini adalah penjelasan lebih rinci mengenai masing-masing langkah dalam pembentukan pohon keputusan dengan menggunakan algoritma C4.5 untuk menyelesaikan permasalahan pada Tabel 3.1.

  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. Hasil perhitungan ditunjukkan oleh Tabel 3.2.








Baris TOTAL kolom Entropy pada Tabel 3.2 dihitung dengan rumus 2, sebagai berikut:






Dari hasil pada Tabel 3.2 dapat diketahui bahwa atribut dengan Gain tertinggi adalah HUMIDITY yaitu sebesar 0.37. Dengan demikian HUMIDITY dapat menjadi node akar. Ada 2 nilai atribut dari HUMIDITY yaitu HIGH dan NORMAL. Dari kedua nilai atribut tersebut, nilai atribut NORMAL sudah mengklasifikasikan kasus menjadi 1 yaitu keputusan-nya Yes, sehingga tidak perlu dilakukan perhitungan lebih lanjut, tetapi untuk nilai atribut HIGH masih perlu dilakukan perhitungan lagi.

Dari hasil tersebut dapat digambarkan pohon keputusan sementara-nya tampak seperti Gambar 3.1










  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 dan WINDY yang dapat menjadi node akar dari nilai atribut HIGH. Setelah itu lakukan penghitungan Gain untuk masing-masing atribut. Hasil perhitungan ditunjukkan oleh Tabel 3.3.


Dari hasil pada Tabel 3.3 dapat diketahui bahwa atribut dengan Gain tertinggi adalah OUTLOOK yaitu sebesar 0.67. Dengan demikian OUTLOOK dapat menjadi node cabang dari nilai atribut HIGH. Ada 3 nilai atribut dari OUTLOOK yaitu CLOUDY, RAINY dan SUNNY. Dari ketiga nilai atribut tersebut, nilai atribut CLOUDY sudah mengklasifikasikan kasus menjadi 1 yaitu keputusan-nya Yes dan nilai atribut SUNNY sudah mengklasifikasikan kasus menjadi satu dengan keputusan No, sehingga tidak perlu dilakukan perhitungan lebih lanjut, tetapi untuk nilai atribut RAINY masih perlu dilakukan perhitungan lagi.

Pohon keputusan yang terbentuk sampai tahap ini ditunjukkan pada gambar 3.2 berikut:












3. Menghitung jumlah kasus, jumlah kasus untuk keputusan Yes, jumlah kasus untuk keputusan No, dan Entropy dari semua kasus dan kasus yang dibagi berdasarkan atribut TEMPERATURE dan WINDY yang dapat menjadi node cabang dari nilai atribut RAINY. Setelah itu lakukan penghitungan Gain untuk masing-masing atribut. Hasil perhitungan ditunjukkan oleh Tabel 3.4.


Dari hasil pada tabel 3.4 dapat diketahui bahwa atribut dengan Gain tertinggi adalah WINDY yaitu sebesar 1. Dengan demikian WINDY dapat menjadi node cabang dari nilai atribut RAINY. Ada 2 nilai atribut dari WINDY yaitu FALSE dan TRUE. Dari kedua nilai atribut tersebut, nilai atribut FALSE sudah mengklasifikasikan kasus menjadi 1 yaitu keputusan-nya Yes dan nilai atribut TRUE sudah mengklasifikasikan kasus menjadi satu dengan keputusan No, sehingga tidak perlu dilakukan perhitungan lebih lanjut untuk nilai atribut ini.

Pohon keputusan yang terbentuk sampai tahap ini ditunjukkan pada Gambar 3.3.







Dengan memperhatikan pohon keputusan pada Gambar 3.3, diketahui bahwa semua kasus sudah masuk dalam kelas. Dengan demikian, pohon keputusan pada Gambar 3.3 merupakan pohon keputusan terakhir yang terbentuk.

6 comments:

azzam said...

Bu, Join STMIK AMIKOM Yogyakarta OSUM at : http://osum.sun.com/group/amikomyogyakartaosum

Open Source University Meetup yang sering disingkat dengan OSUM, dan dibaca dengan “awesome” merupakan sebuah program yang baru saja di luncurkan oleh Sun Microsystems, untuk mendorong mahasiswa berpartisipasi dan berkontribusi dalam FOSS [Free Open Source Software]. Di web portal yang aplikasi dan fungsi-nya mirip facebook ini kita akan menemukan banyak resources untuk belajar tentang banyak teknologi dari Sun Microsystems seperti Java, OpenSolaris, MySQL, OpenOffice, NetBeans, OpenSparc, GlassFish, OpenOffice dsb. Lewat web portal ini kita bisa berdiskusi di forum diskusi, menulis blog, dan juga berinteraksi dengan seluruh siswa/mahasiswa diseluruh dunia yang telah bergabung di OSUM lewat email ataupun lewat aplikasi chatting.

Selain kegiatan online, Sun Microsystems mendorong juga para siswa/mahasiswa untuk melakukan kegiatan offline [meetup] seperti diskusi, belajar bareng [kelompok study], conference dsb. Dukungan tersebut berupa goodies yang bisa di request ketika akan mengadakan kegiatan offline dan juga resources belajar yang bisa di-download, untuk dijadikan bahan diskusi ataupun bahan belajar bersama. Untuk kedepan-nya, akan ada juga beberapa project yang bisa dikerjakan bersama, sebagai kontribusi nyata dalam dunia FOSS.

Saat saya menulis ini, sudah ada 705 group yang terdiri dari pelajar/dosen/profesor tingkat SMU/SMK/Diploma/S1/S2 di seluruh dunia dengan 23.347 anggota. Di Indonesia sendiri, saat ini sudah ada 914 anggota dan 29 group. (red-dikutip dari : http://alexbudiyanto.web.id/2008/11/17/osum-open-source-university-meetup.html)

Unknown said...
This comment has been removed by the author.
Unknown said...
This comment has been removed by the author.
Unknown said...

maaf ,mau bertanya...
Software yang digunakan pada penjelasan tersebut apa ya??

hmm,, kemudian saya juga mau bertanya tentang algoritma QUEST.
kenapa dikatakan Quick? unbiased? Efficient?

terimakasih

Unknown said...

maaf saya mau bertanya buku data mining karangan anda dengan lutfi di toga mas surakarta masih ada gak...


terima kasih....

Unknown said...

ijin share ilmu pohon keputusan yg pernah saya pelajari di http://nugikkool.blogspot.co.id/2012/08/pohon-keputusan-id3-dan-c45-menggunakan.html
juga ada implementasi program pohon keputusan di php, perhitungan manual, penjelasan pruning, dll. semoga bermanfaat.