Download :
http://www.cs.waikato.ac.nz/ml/weka/downloading.html
http://facweb.cs.depaul.edu/mobasher/
Weka adalah aplikasi data mining open source berbasis Java. Aplikasi ini dikembangkan pertama kali oleh Universitas Waikato di Selandia Baru sebelum menjadi bagian dari Pentaho. Weka terdiri dari koleksi algoritma machine learning yang dapat digunakan untuk melakukan generalisasi / formulasi dari sekumpulan data sampling. Walaupun kekuatan Weka terletak pada algoritma yang makin lengkap dan canggih, kesuksesan data mining tetap terletak pada faktor pengetahuan manusia implementornya. Tugas pengumpulan data yang berkualitas tinggi dan pengetahuan pemodelan dan penggunaan algoritma yang tepat diperlukan untuk menjamin keakuratan formulasi yang diharapkan.
Test Awal:
ketik data sebagai berikut lalu simpan dengan extensi .arff
@relation PlayTennis @attribute day numeric @attribute outlook {Sunny, Overcast, Rain} @attribute temperature {Hot, Mild, Cool} @attribute humidity {High, Normal} @attribute wind {Weak, Strong} @attribute playTennis {Yes, No} @data 1,Sunny,Hot,High,Weak,No,? 2,Sunny,Hot,High,Strong,No,? 3,Overcast,Hot,High,Weak,Yes,? 4,Rain,Mild,High,Weak,Yes,? 5,Rain,Cool,Normal,Weak,Yes,? 6,Rain,Cool,Normal,Strong,No,? 7,Overcast,Cool,Normal,Strong,Yes,? 8,Sunny,Mild,High,Weak,No,? 9,Sunny,Cool,Normal,Weak,Yes,? 10,Rain,Mild,Normal,Weak,Yes,? 11,Sunny,Mild,Normal,Strong,Yes,? 12,Overcast,Mild,High,Strong,Yes,? 13,Overcast,Hot,Normal,Weak,Yes,? 14,Rain,Mild,High,Strong,No,?
Buka Weka
Empat tombol diatas dapat digunakan untuk menjalanankan Aplikasi :
- Explorer digunkan untuk menggali lebih jauh data dengan aplikasi WEKA
- Experimenter digunakan untuk melakukan percobaan dengan pengujian statistic skema belajar
- Knowledge Flow digunakan untuk pengetahuan pendukung
- Aplikasi Pengujian
- Simple CLI antar muka dengan menggunakan tampilan command-line yang memungkinkan langsung mengeksekusi perintah weka untuk Sistem Operasi yg tidak menyediakan secara langsung
Kita.....Klik Workbench
Pada bagian atas window workbanch, tepatnya pada bawah judul bar. Terdapat deretan data, seperti Prepocess,Classify,Cluster,Associate,Select Attributes Visualize. Namun yang aktif hanya Prepocess ini dikarenakan sebelum menggunakan algoritma diatas pastikan sudah melakukan set file yang akan dieksekusi .
Kita ....klik Choose : pilih file .arff yang kita ketik di atas atau bisa juga menggunakan extensi file .csv (Command Separated Values).
Lalu Pilih classify......arahkan ke J48 atau C45 lalu start....
Algoritma yang akan digunakan adalah J48. Perbedaan ID3, C4.5 dan J48 sebagai berikut ini:
ID3 merupakan algoritma yang dipergunakan untuk membangun sebuah decision tree atau pohon keputusan. Algoritma ini ditemukan oleh J. Ross Quinlan, dengan memanfaatkan Teori Informasi atau Information Theory milik Shanon.
ID3 sendiri merupakan singkatan dari Iterative Dichotomiser 3.
Idenya, adalah membuat pohon dengan percabangan awal adalah atribut yang paling signifikan. Maksudnya signifikan adalah yang paling bisa mempartisi antara iya dan tidak.
Bisa dilihat, bahwa atribut “patron” membagi 3, dimana hasil pembagiannya cukup ideal.
Maksudnya ideal adalah setiap cabang terdiri dari hijau saja atau merah saja. Memang, untuk cabang “full” tidak satu warna (hijau saja atau merah saja). Tapi, pemilihan atribut pohon jelas lebih baik daripada atribut type.
Untuk menentukan atribut mana yang lebih dahulu dipergunakan untuk membuat cabang pohon, digunakanlah teori informasi.
Pada WEKA, ada pilihan untuk menggunakan ID3 ini, dengan nama yang sama. Namun, jelas semua atribut harus bertipe nominal, dan tidak boleh ada yang kosong
Sedangkan, C4.5 merupakan pengembangan dari ID3. Beberapa perbedaannya antara lain :
1. Mampu menangani atribut dengan tipe diskrit atau kontinu.
2. Mampu menangani atribut yang kosong (missing value)
3. Bisa memangkas cabang.
Dan J48 merupakan implementasi C4.5 di WEKA.
Untuk visualisasi silakan pilih menu visualiasi
dan hasilnya:
Ketika kita ingin melakukan klasifikasi dengan menggunakan WEKA, akan ada 4 (empat) buah pilihan, yang disebut dengan test options. Test options ini digunakan untuk mengetes hasil dari klasifikasi yang telah dilakukan. Berikut penjelasan mengenai masing-masing option.
1. Use training set
Pengetesan dilakukan dengan menggunakan data training itu sendiri.
2. Supplied test set
Pengetesan dilakukan dengan menggunakan data lain. Dengan menggunakan option inilah, kita bisa melakukan prediksi terhadap data tes.
3. Cross-validation
Pada cross-validation, akan ada pilihan berapa fold yang akan digunakan. Default-nya adalah 10.
Mekanisme-nya adalah sebagai berikut:
Data training dibagi menjadi k buah subset (subhimpunan). Dimana k adalah nilai dari fold. Selanjutnya, untuk tiap dari subset, akan dijadikan data tes dari hasil klasifikasi yang dihasilkan dari k-1 subset lainnya. Jadi, akan ada 10 kali tes. Dimana, setiap datum akan menjadi data tes sebanyak 1 kali, dan menjadi data training sebanyak k-1 kali.
Kemudian, error dari k tes tersebut akan dihitung rata-ratanya.
4. Percentage split
Hasil klasifikasi akan dites dengan menggunakan k% dari data tersebut. k =masukan dari user.
Contoh kalkulasi untuk classificator Wind di atas:
Ada 8 instance dengan value : Weak. Jika Wind bernilai Weak maka ada 6x keputusan untuk Play dan 3x keputusan untuk not Play. [6+, 2-]. Jika strong wind (6 instances), keputusan to play 3x dan not to play 3x juga. Maka information gain attribute wind adalah 0.48.
Information gain dari semua attibut adalah :
Information gain dari semua attibut adalah :
Gain(S, Outlook) = 0.246 Gain(S, Humidity) = 0.151 Gain(S, Wind) = 0.048 Gain(S, Temperature) = 0.029
Instances: 14
Attributes: 6
day
outlook
temperature
humidity
wind
playTennis
=== Classifier model (full training set) ===
J48 pruned tree/C-45
------------------
outlook = Sunny
| humidity = High: No (3.0)
| humidity = Normal: Yes (2.0)
outlook = Overcast: Yes (4.0)
outlook = Rain
| wind = Weak: Yes (3.0)
| wind = Strong: No (2.0)
Number of Leaves : 5
Size of the tree : 8
Time taken to test model on training data: 0 seconds
=== Summary ===
Correctly Classified Instances 14 100 %
Incorrectly Classified Instances 0 0 %
Kappa statistic 1
Mean absolute error 0
Root mean squared error 0
Relative absolute error 0 %
Root relative squared error 0 %
Total Number of Instances 14
=== Detailed Accuracy By Class ===
TP Rate FP Rate Precision Recall F-Measure MCC ROC Area PRC Area Class
1.000 0.000 1.000 1.000 1.000 1.000 1.000 1.000 Yes
1.000 0.000 1.000 1.000 1.000 1.000 1.000 1.000 No
Weighted Avg. 1.000 0.000 1.000 1.000 1.000 1.000 1.000 1.000
=== Confusion Matrix ===
a b <-- classified as
9 0 | a = Yes
0 5 | b = No
COntoh lain misalkan dikethui data transaksi sbb:
A01 dst adalah data pelanggan....bacalah prediksi kesukaan pelanggan:
Analisa pakai J48
Hasilnya:
Bahwa dari decision tree tersebut maka root node pada pink
menunjukkan cabang sebelah kiri untuk False dengan harga 15000-20000,
dimana yang true dengan harga tersebut adalah kode pelanggan dengan A05 sebanyak 4
dan false dengan kode pelanggan A01 sebanyak 6.
Sedangkan disebelah kanan menunjukkan True dengan warna node selanjutnya putih dimana disebelah kiri
dengan node warna merah yang disebelah kiri menunjukkan True untuk kode pelanggan A04 sebanyak 2,
dan sebelah kanan menunjukkan False dengan kode pelanggan A03 sebanyak 3.
Artinya bahwa pelanggan lebih menyukai warna pink kemudian diikuti warna putih
selanjutnya diikuti dengan warna merah dimana tidak dengan harga 15000-20000 per pakaian.
Selanjutya simpan hasil analisa di atas:
caranya klik kanan pilih VISUALIZ CLASSIFIER ERROR
lalu simpan dan untuk membukanya klik Tools ARff Viewer
Hmm.....Mudah ya......
Selamat mencoba......
Tidak ada komentar:
Posting Komentar