0% menganggap dokumen ini bermanfaat (0 suara)
188 tayangan8 halaman

Algoritma C45

Algoritma C4.5 merupakan algoritma klasifikasi yang mengembangkan algoritma ID3 dengan mampu menangani atribut kontinu dan missing value, serta menggunakan gain ratio untuk memilih atribut splitting berdasarkan entropy dan information gain dari setiap atribut.
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
188 tayangan8 halaman

Algoritma C45

Algoritma C4.5 merupakan algoritma klasifikasi yang mengembangkan algoritma ID3 dengan mampu menangani atribut kontinu dan missing value, serta menggunakan gain ratio untuk memilih atribut splitting berdasarkan entropy dan information gain dari setiap atribut.
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 8

ALGORITMA C4.

1. Pengertian Algoritma C.45


Algoritma data mining C4.5 merupakan salah satu algoritma yang digunakan untuk
melakukan klasifikasi atau segmentasi atau pengelompokan dan bersifat
prediktif. Klasifikasi merupakan salah satu proses pada data mining yang bertujuan untuk
menemukan pola yang berharga dari data yang berukuran relatif besar hingga sangat
besar. Algortima C4.5 sendiri merupakan pengembangan dari algortima ID3.
 
2. Perbedaan ID3 dengan C4.5
Algoritma C4.5 mempunyai prinsip dasar kerja yang sama dengan algoritma ID3. Beberapa
perbedaannya antara lain :
 
a. Mampu Menangani Atribut dengan Tipe Diskrit atau Kontinu
Pemilihan atribut pada algoritma induksi decision tree menggunakan ukuran berdasarkan
entropy yang dikenal dengan information gain sebagai sebuah heuristic untuk memilih
atribut yang merupakan bagian terbaik dari contoh ke dalam kelas. Semua atribut adalah
bersifat kategori yang bernilai diskrit. Atribut dengan nilai continuous harus didiskritkan.

 Diskritisasi atribut bertujuan untuk mempermudah pengelompokan nilai berdasarkan


kriteria yang telah ditetapkan. Hal ini juga bertujuan untuk menyederhanakan
permasalahan dan meningkatkan akurasi dalam proses pembelajaran.
 
Terdapat beberapa teknik yang bisa dilakukan, diantaranya ‘binning’, yang mendefinisikan
kumpulan kelas nominal untuk setiap atribut, kemudian menetapkan setiap nilai atribut ke
dalam salah satu kelas. Misalnya, jika domain atribut numerik mempunyai nilai dari 0
sampai dengan 100, domain tersebut dapat dibagi menjadi empat bin (0..24, 25..49, 50..74,
75..100). Setiap nilai atribut akan dikonversi menjadi atribut nominal yang
berkorespondensi dengan salah satu bin. Oleh karena itu metode binning
disebut  unsupervised discretization method.
 
Teknik berikutnya dapat dilakukan dengan pengukuran entropi, dengan
mempertimbangkan semua kemungkinan pembagian dan cari pemotongan terbaik.

Langkah pertama adalah urutkan nilai atribut kontinu beserta nilai kelas utama nya.
Kemudian lakukan pemotongan dengan pertimbangan pembagian jumlah kelas utama
50:50 atau mendekati,  untuk memerkirakan mendapat nilai entropi tertinggi atau
mendekati 1. Contoh:
temperature < 71.5: yes/4, no/2
temperature ≥ 71.5: yes/5, no/3
Info([4,2],[5,3]) = 6/14 info([4,2]) + 8/14 info([5,3]) = 0.939
 
Teknik lain, normalisasi, juga dapat dilakukan dengan cara mencari nilai rata dan standart
deviasi pada rentang atribut kontinu.
standart deviasi
 
b. Mampu Menangani Atribut yang Kosong (Missing Value)
Nilai kosong pada sebuah dataset wajib kita isi terlebih dahulu sebelum diproses untuk
tahap machine learning atau bentuk kedalam sebuah model decision tree.
 
Cara paling mudah dalam pengisian atribut kosong adalah dengan memberikan nilai
berdasar nilai yang paling banyak atau dominan dalam atribut tersebut. Contoh, atribut
Shape baris ketiga dan keempat kita beri nilai 4 dikarenakan pada kelompok class 1
mayoritas atribut Shape memiliki angka 4. Sedangkan pada class 0, baris 7 kita berikan
nilai 1.
 

 
c. Pemangkasan Pohon Keputusan
Pada saat pembangunan pohon keputusan, banyaknya cabang mungkin mencerminkan
adanya noise atau outlier pada training data. Pemangkasan pohon dapat dilakukan untuk
mengenali dan menghapus cabang-cabang tersebut. Pohon yang dipangkas akan menjadi
lebih kecil dan lebih mudah dipahami. Pohon semacam itu biasanya juga menjadi lebih
cepat dan lebih baik dalam melakukan klasifikasi.

Jika suatu fungsi atau dataset memiliki terlalu banyak atribut (fitur), model pelatihan yang
terbentuk akan menghasilkan akurasi yang baik, namun akan sangat mungkin mengalami
kegagalan untuk memprediksi data masukan baru seperti pada contoh diatas.
 
Pemangkasan pohon juga dapat digunakan untuk mengatasi overfitting. Overfitting terjadi
karena ada noise data training, yaitu data yang tidak relevan sehingga mengakibatkan
pohon memiliki subtree yang panjang dan tidak seimbang. Misal internal node memiliki
kelas YA = 5 dan TIDAK = 1. Data yang berada pada kelas TIDAK merupakan noise,
sehingga apabila data tersebut diolah akan menghasilkan pohon dengan subtree yang
panjang. Overfitting juga dapat terjadi karena data training yang sedikit.

 
Ada dua metode dalam melakukan pemangkasan dalam pohon keputusan, yaitu:
a. Prepruning, yaitu menghentikan pembangunan suatu subtree lebih awal, yaitu dengan
memutuskan untuk tidak lebih jauh mempartisi data training. Pada pendekatan
prepruning, sebuah pohon dipangkas dengan cara menghentikan pembangunannya jika
partisi yang akan dibuat dianggap tidak signifikan. Untuk mengetahui nilai parameter
apakah akan dilakukan expanding atau pruning dapat menggunakan metode chi-squared.
b. Postpruning, yaitu menyederhanakan pohon dengan cara membuang beberapa cabang
subtree setelah pohon selesai dibangun. Metode postpruning ini merupakan metode
standard untuk algoritma C4.5.
Reduced Error Pruning merupakan salah satu algoritma postpruning. Algoritma ini
membagi data menjadi dua, yaitu training data dan test data. Training data adalah data
yang digunakan untuk membentuk pohon keputusan, sedangkan test data digunakan untuk
menghitung nilai error rate pada pohon setelah dipangkas.

Cara kerja REP adalah dengan memangkas internal node yang dimulai dari internal node
paling bawah ke atas. Pemangkasan dilakukan dengan cara mengganti atribut dengan leaf
node yang memiliki kelas yang dominan muncul. Setelah itu test data diproses
menggunakan rule hasil pemangkasan, kemudian dihitung nilai error ratenya. Test data
juga diproses dengan rule awal, yaitu rule yang terbentuk sebelum pohon dipangkas,
kemudian dihitung nilai error ratenya. Apabila nilai error rate yang dihasilkan dari
pemangkasan pohon lebih kecil, maka pemangkasan dilakukan.

Dimana:
r = nilai perbandingan error rate
n = total sample
z = Φ-1(c)

 
Pada contoh diatas dapat diketahui bahwa atribut “Health Plan Contribution” banyak
memiliki class Bad, maka dari itu dipangkas menjadi leaf node Bad untuk keseluruhan
atribut tersebut, dan seterusnya.
 
d. Pemilihan Atribut yang Dilakukan Menggunakan Gain Ratio
Quinlan memperkenalkan metode C4.5, dimana untuk pemilihan split atribut enggunakan
metode Gain Ratio (GR) menggantikan Information Gain (IG).
 
Information gain pada ID3 lebih mengutamakan pengujian yang menghasilkan banyak
keluaran. Dengan kata lain, atribut yang memiliki banyak nilailah yang dipilih sebagai
splitting atribut. Sebagai contoh, pembagian terhadap atribut yang berfungsi sebagai
unique identifier, seperti product_ID¸ akan menghasilkan keluaran dalam jumlah yang
banyak, di mana setiap keluaran hanya terdiri dari satu tuple.
 
Partisi semacam ini tentu saja bersifat pure, sehingga informasi yang dibutuhkan untuk
mengklasifikasi D berdasarkan partisi seperti ini adalah sebesar Infoproduct_ID(D) = 0.
Sebagai akibatnya, information gain yang dimiliki atribut product_ID menjadi maksimal.
Padahal, jelas sekali terlihat bahwa partisi semacam ini tidaklah berguna. Karena itu
algoritma C4.5 yang merupakan suksesor dari ID3 menggunakan gain ratio untuk
memperbaiki information gain, dengan rumus gain ratio (Larose, 2009).
split-id-code
info([0,1]) + info([0,1]) + info([0,1]) + …… + info([0,1])
nilai information gain akan mencapai maksimal untuk atribute ID code.
 
3. Entropy, Information Gain & Gain Ratio
Pemilihan atribut yang baik adalah atribut yang memungkinkan untuk mendapatkan
decision tree yang paling kecil ukurannya. Atau atribut yang bisa memisahkan obyek
menurut kelasnya. Secara heuristik atribut yang dipilih adalah atribut yang menghasilkan
simpul yang paling ”purest” (paling bersih). Ukuran purity dinyatakan dengan tingkat
impurity, dan untuk menghitungnya, dapat dilakukan dengan menggunakan konsep
Entropy, Entropy menyatakan impurity suatu kumpulan objek.
Formula mencari entropi sebagai berikut :

Keterangan :
• S adalah himpunan (dataset) kasus
• k adalah banyaknya partisi S
• pj adalah probabilitas yang di dapat dari Sum(Ya) dibagi Total Kasus.
 
Information gain adalah kriteria yang paling populer untuk pemilihan atribut. Algoritma
C4.5 adalah pengembangan dari algoritma ID3. Oleh karena pengembangan tersebut
algoritma C4.5 mempunyai prinsip dasar kerja yang sama dengan algoritma ID3. Hanya
saja dalam algoritma C4.5 pemilihan atribut dilakukan dengan menggunakan Gain Ratio
dengan rumus :

Dimana:
a = atribut.
gain(a) = information gain pada atribut a
Split(a) = split information pada atribut a

Atribut dengan nilai Gain Ratio tertinggi dipilih sebagai atribut test untuk simpul. Dengan
gain adalah information gain. Pendekatan ini menerapkan normalisasi pada information
gain dengan menggunakan apa yang disebut sebagai split information. SplitInfo
menyatakan entropy atau informasi potensial dengan rumus :

Dimana:
S = ruang (data) sample yang digunakan untuk training.
A = atribut.
Si = jumlah sample untuk atribut i
 
dimana Xi menyatakan sub himpunan ke-i pada sampel X.

Dimana:
S = ruang (data) sample yang digunakan untuk training.
A = atribut.
|Si| = jumlah sample untuk nilai V.
|S| = jumlah seluruh sample data.
Entropi(Si) = entropy untuk sample-sample yang memiliki nilai i
 
Alasan penggunaan gain ratio(a) pada C4.5 (bukan gain(a)) sebagai kriteria pada pemilihan
atribut adalah gain ternyata bias terhadap atribut yagn memiliki banyak nilai unik.
 
4. Latihan Soal

 
Berikut hasil perhitungan dengan menghitung gain ratio.

 
.

Anda mungkin juga menyukai