LANGKAH LANGKAH MEMBUAT PEMBENTUKAN RULE MENGGUNAKAN DECISION TREE J48
A.
WEKA
Sebelum
membahas decision tree J48, penulis
akan menjelaskan mengenai tools yang
digunakan dalam membuat rule yang
terbentuk dengan menggunakan decision
tree J48. Tools yang digunakan adalah WEKA singkatan dari Waikato Environment for Knowledge Analysis. Berikut
pengertian dari WEKA:
WEKA (Waikato Environment for Knowledge Analysis)
merupakan salah satu perangkat lunak
untuk data meaning yang dikembangkan
oleh University Of Waikato, New Zaeland. WEKA termasuk perangkat
lunak bebas (free software) yang terdiri
dari sekumpulan algoritma untuk analisis data dan pemodelan untuk prediksi.
Salah satu kemampuan WEKA adalah dapat melakukan proses klasifikasi dari
kumpulan data dalam sebuah tabel. Hasil klasifikasi dapat digambarkan dalam
bentuk pohon keputusan (decision tree).
B.
Pohon
Keputusan J48
Pohon
keputusan merupakan salah satu bentuk basis pengetahuan yang dapat digunakan
untuk mengetahui ciri atau atribut yang penting dari kumpulan data. Proses ini
disebut dengan seleksi ciri. Dengan adanya seleksi ciri, proses produksi
dilakukan berdasarkan ciri-ciri yang menjadi node pada pohon keputusan sehingga waktu yang digunakan untuk
prediksi biasanya lebih singkat dan hasilnya bisa lebih baik. Salah satu
algoritma untuk membangun pohon keputusan adalah algoritma C4.5 dalam WEKA
dikenal dengan nama J48 (Enny dkk, 2015).
Algoritma C4.5 mengkontruksi pohon
keputusan dari data pelatihan, yang berupa kasus-kasus atau record-record dalam basis data. Setiap
kasus berisikan nilai-nilai dari atribut-atribut untuk sebuah kelas. Setiap
atribut dapat berisi data diskrit atau kontinu (numerik). Akan tetapi, atribut
kelas hanya bertipe diskrit dan tidak boleh kosong.
Tiga
prinsip kerja algoritma C4.5 adalah :
a. Membangun
pohon keputusan. Tujuan dari tahap ini adalah membuat pohon keputusan yang
dapat digunakan untuk memprediksi kelas dari sebuah kasus atau record.
b. Pemangkasan
pohon keputusan dan evaluasi. Pohon keputusan yang dihasilkan dapat berukuran
besar. Algoritma C4.5 dapat menyederhanakan pohon dalam melakukan pemangkasan berdasarkan
nilai tingkat kepercayaan. Pemangkasan juga bertujuan untuk mengurangi tingkat
kesalahan prediksi pada kasus baru.
c. Pembuatan
aturan-aturan dari pohon keputusan. Aturan-aturan dalam bentuk if-then diturunkan dari pohon keputusan
dengan melakukan penelusuran dari akar sampai daun.
Pada pohon
C4.5, di setiap simpul pohon, atribut dengan nilai gain ratio yang tertinggi dipilih sebagai atribut test atau split untuk simpul.
C.
Contoh
Kasus
Berikut contoh kasus dalam
pembuatan rule menggunakan decision tree J48 untuk memprediksi
jumlah produksi kain tenun dalam periode perbulan yang terdiri dari tiga input
kriteria dan satu output kriteria. Tiga input kriteria itu adalah Biaya
produksi, Permintaan, dan Stok, dimana untuk masing-masing kriteria memiliki nilai
linguistic Banyak dan Sedikit,
sedangkan output kriterianya adalah jumlah produksi, serta nilai linguistic terdiri dari Banyak dan
Sedikit. Berikut data set yang penulis dapat dari kain tenun Mlaki Wanarejan
Utara Pemalang, tepatnya di Pondok Pesantren Annur Pemalang.
Bulan
|
Tahun
|
Biaya Produksi
|
Permintaan
|
Stok
|
Jumlah Produksi
|
September
|
2014
|
1500000
|
100
|
15
|
120
|
Oktober
|
2014
|
1200000
|
110
|
12
|
128
|
November
|
2014
|
1000000
|
200
|
50
|
205
|
Desember
|
2014
|
1100000
|
300
|
75
|
305
|
Januari
|
2015
|
1600000
|
400
|
10
|
410
|
Februari
|
2015
|
1000000
|
50
|
5
|
106
|
Maret
|
2015
|
900000
|
230
|
12
|
280
|
April
|
2015
|
1400000
|
124
|
100
|
180
|
Mei
|
2015
|
900000
|
450
|
100
|
465
|
Juni
|
2015
|
1100000
|
105
|
98
|
250
|
Juli
|
2015
|
1600000
|
290
|
230
|
100
|
Agustus
|
2015
|
1000000
|
50
|
10
|
100
|
September
|
2015
|
900000
|
50
|
15
|
80
|
Oktober
|
2015
|
1400000
|
75
|
34
|
116
|
November
|
2015
|
900000
|
120
|
100
|
122
|
Desember
|
2015
|
1200000
|
126
|
59
|
160
|
Januari
|
2016
|
7890400
|
220
|
33
|
224
|
Februari
|
2016
|
8806250
|
245
|
24
|
250
|
Maret
|
2016
|
14547925
|
409
|
65
|
413
|
April
|
2016
|
10497050
|
292
|
22
|
298
|
Mei
|
2016
|
7608600
|
211
|
32
|
216
|
Juni
|
2016
|
12082175
|
340
|
58
|
343
|
Juli
|
2016
|
7925625
|
215
|
27
|
225
|
Agustus
|
2016
|
16344400
|
485
|
64
|
464
|
September
|
2016
|
16600000
|
450
|
40
|
472
|
Oktober
|
2016
|
8806250
|
245
|
38
|
250
|
November
|
2016
|
8665350
|
243
|
26
|
246
|
Desember
|
2016
|
8348325
|
300
|
30
|
237
|
Januari
|
2017
|
10664000
|
242
|
37
|
248
|
Februari
|
2017
|
12900000
|
276
|
44
|
300
|
Kemudian,
untuk dapat dibaca oleh tools WEKA
maka ambil atribut atau parameter yang akan digunakan, berarti dalam kasus ini
parameter yang digunakan adalah biaya produksi, permintaan, stok, dan jumlah
produksi, kemudian untuk parameter output yang berarti jumlah produksi dirubah
kedalam bentuk nilai linguistic
Banyak dan Sedikit, dengan cara random
atau acak, dikarenakan belum adanya klasifikasi data yang mengidentifikasikan nilai
yang ada masuk kedalam klasifikasi Banyak atau Sedikit. Untuk dapat mengetahui
data yang diacak tersebut dapat digunakan atau tidak dengan prosentase nilai
yang dihasilkan, ketika prosentase nilai melebihi ± 80 %
maka hasil dari pohon keputusan tersebut dapat digunakan, akan tetapi jika
kurang maka perlu di acak kembali nilai tersebut agar sampai ke prosentase ± 80 %.
Berikut contoh data yang telah di acak untuk parameter output dengan nilai linguistic Banyak dan Sedikit:
Biaya Produksi
|
Permintaan
|
Stok
|
Jumlah Produksi
|
1500000
|
100
|
15
|
Banyak
|
1200000
|
110
|
12
|
Banyak
|
1000000
|
200
|
50
|
Banyak
|
1100000
|
300
|
75
|
Sedikit
|
1600000
|
400
|
10
|
Banyak
|
1000000
|
50
|
5
|
Banyak
|
900000
|
230
|
12
|
Banyak
|
1400000
|
124
|
100
|
Banyak
|
900000
|
450
|
100
|
Banyak
|
1100000
|
105
|
98
|
Banyak
|
1600000
|
290
|
230
|
Banyak
|
1000000
|
50
|
10
|
Sedikit
|
900000
|
50
|
15
|
Sedikit
|
1400000
|
75
|
34
|
Sedikit
|
900000
|
120
|
100
|
Banyak
|
1200000
|
126
|
59
|
Banyak
|
7890400
|
220
|
33
|
Sedikit
|
8806250
|
245
|
24
|
Sedikit
|
14547925
|
409
|
65
|
Sedikit
|
10497050
|
292
|
22
|
Banyak
|
7608600
|
211
|
32
|
Banyak
|
12082175
|
340
|
58
|
Sedikit
|
7925625
|
215
|
27
|
Banyak
|
16344400
|
485
|
64
|
Banyak
|
16600000
|
450
|
40
|
Sedikit
|
8806250
|
245
|
38
|
Sedikit
|
8665350
|
243
|
26
|
Banyak
|
8348325
|
300
|
30
|
Sedikit
|
10664000
|
242
|
37
|
Sedikit
|
12900000
|
276
|
44
|
Sedikit
|
Langkah
berikutnya simpan data di atas menggunakan format ( *.csv), selanjutnya panggil data tersebut
ke WEKA. Setelah itu, pilih menu classify,
pada test options pilih use training set, serta pada tombol choose
pilih file trees, kemudian pilih
J48, setelah itu klik tombol start,
maka akan muncul tampilan klasifikasi seperti pada gambar berikut :
Dari gambar di atas dapat diketahui bahwa data
yang dimasukan sebanyak 30 yang benar dalam klasifikasi sebanyak 26 dan
klasifikasi yang salah sebanyak 4. Tingkat keakuratannya yaitu 86.6667 %.
Berikutnya yaitu menampilkan pohon keputusan
dengan cara klik kanan pada result
list, kemudian pilih visualize tree,
maka akan muncul gambar seperti berikut :
Dari gambar decision
tree di atas dapat disimpulkan bahwa yang terbentuk dari aturan tree J48 dengan menggunakan tools WEKA batasan datanya adalah
sebagai berikut:
Biaya
Produksi :
Sedikit : 900000 ≤ Biaya produksi ≤ 7608600
Banyak : lebih dari 7608600
Permintaan
:
Sedikit : 50 ≤
Permintaan ≤ 75
Banyak : lebih dari 75
Stok :
Sedikit : 5 ≤ Stok ≤
27
Banyak : lebih dari 27
Bahwa dari gambar decision
tree di atas maka root node pada
cabang sebelah kiri terbentuk Biaya
produksi <= 7608600, dan Permintaan <= 75 yang bernilai Sedikit untuk jumlah produksinya yaitu sebanyak 4, lalu Biaya produksi <= 7608600, dan Permintaan > 75 yang bernilai Banyak untuk jumlah produksinya
yaitu sebanyak 13, sedangkan disebelah kanan menunjukkan untuk Biaya produksi > 7608600 dan Stok > 27, yang bernilai Banyak untuk jumlah produksinya yaitu sebanyak 4.
Selanjutnya untuk Biaya produksi > 7608600 dan Stok <= 27, yang
bernilai Sedikit untuk jumlah
produksinya yaitu sebanyak 9, Sehingga ketika di total maka terdapat 30 data
yang ada.
Berdasarkan kesimpulan di atas maka dapat
disimpulkan aturan atau rule yang
terbentuk sebagai berikut:
IF Biaya Produksi <= 7608600 AND Permintaan <= 75 THEN Jumlah produksi Sedikit.
IF Biaya Produksi <= 7608600 AND Permintaan > 75 THEN Jumlah produksi Banyak.
IF Biaya Produksi > 7608600 AND Stok <= 27 THEN Jumlah produksi Banyak.
IF Biaya Produksi > 7608600 AND Stok > 27 THEN Jumlah produksi Sedikit.
Berikutnya, yaitu merubah tanda > dan < = menjadi nilai linguistik
yaitu > berubah menjadi Banyak dan < =
berubah menjadi Sedikit maka
aturan atau rule berubah menjadi
seperti berikut :
R1: IF Biaya Produksi Sedikit AND Permintaan Sedikit THEN Jumlah produksi Sedikit.
R2: IF Biaya Produksi Sedikit AND Permintaan Banyak THEN Jumlah produksi Banyak.
R3: IF Biaya Produksi Banyak AND Stok Sedikit THEN Jumlah produksi Banyak.
R4: IF Biaya Produksi Banyak AND Stok Banyak THEN Jumlah produksi Sedikit.
Maka dapat disimpulkan bahwa dari data set yang
ada sebanyak 30 data, rule yang
terbentuk dengan menggunakan decision
tree J48 sebanyak 4 rule,
sehingga lebih praktis dan efisien dibandingkan dengan menggunakan rule konsep fuzy, serta keakuratan prosentasenya pun dapat kita lihat dan
dipertanggungjawabkan karena semua ada detailnya pada saat data tersebut di panggil untuk dirubah menjadi pohon
keputusan.
DAFTAR PUSTAKA
Sela, E.I., Hartati,S.,
Harjoko, A., Wardoyo, R., Mudjosemedi, M, 2015, Features detection Of The Combination Of Porous Trabecular With
Anthropometic Features For Osteoporosis Screening, Interl. Journal
Electrical and Computer Engineerig (IJECE), Vol. 5 No 1.
Komentar
Posting Komentar