Semester ini saya mengambil mata kuliah Sistem Informasi Intelijen. Salah satu tugasnya adalah memanfaatkan WEKA untuk mengaplikasikan data mining pada suatu kasus dan menggunakan WEKA sebagai tools data mining-nya. Untuk tugas ini, kelompok saya melakukan data mining terhadap data transaksional pelanggan PLN untuk mengevaluasi jumlah kelompok tarif yang diterapkan PLN dan deteksi terhadap fraud yang dilakukan pelanggan.

Setelah eksplor-eksplor si WEKA, saya merasa kayaknya nih si WEKA ini tuh bener-bener untuk eksplorasi yang udah ngerti data mining. Orang yang awam di bidang data mining, ketika pertama kali menggunakan WEKA, pasti tidak bisa memanfaatkan WEKA dengan maksimal. Kenapa?? Karena WEKA tidak memberikan sense kepada pengguna mengenai proses data mining.

Hmm.. Contohnya nih.. Waktu saya eksplor WEKA, saya langsung aja coba-coba klasifikasi dan clusteringnya. Ketika saya ingin melakukan klasifikasi terhadap data, ternyata tidak semua algoritma bisa saya gunakan. Bahkan ID3, satu-satunya algoritma klasifikasi yang familiar untuk saya, tidak bisa digunakan. Akhirnya saya browsing sana-sini, saya menemukan bahwa ID3 itu cuma bisa diterapkan pada data nominal. Saya juga menemukan bahwa perlu dilakukan preprocess terlebih dahulu sebelum dilakukan data mining. Misalnya mengubah atribut numeric ke nominal, membagi nilai numeric menjadi range tertentu, handling null atribut, dsb.

Coba ya kalo weka menyediakan suatu wizard yang memandu pengguna step-by-step dalam melakukan data mining, seperti layaknya ketika kita mau install suatu program. contohnya ky gini:

  1. WEKA : silakan memasukkan file ARFF
  2. USER : memasukkan file ARFF
  3. WEKA :melakukan analisis terhadap data yang dimasukkan, kemudian menampilkan window untuk preproses. Window ini sbnrnya sama sprti tab  preprocess yang ada pada WEKA saat ini, namun ditambahkan juga notifikasi mengenai karakteristik datadan/atau saran preprocessing yang dilakukan. Misalnya : “Data Anda mengandung null atribut” atau “Atribut numeric X memiliki nilai yang berulang, apakah Anda ingin mengubah atribut X menjadi nominal?”. Jadi si pengguna punya sense bahwa si data ini harus dipreproses dulu sebelum diklasifikasi atau dicluster.
  4. USER : pilih mau melakukan cluster atau klasifikasi atau asosiasi
  5. WEKA : menampilkan window sesuai pilihan pengguna beserta algoritmanya.

Nah, kalo ada wizard ini, pengguna kan jadi dapet sense bahwa harusnya si data di preprocess dulu, sebelum diterapkan teknik data mining.

Kasus lain lagi, saya menemukan permasalahan ketika saya melakukan clustering terhadap data. Pertama saya melakukan clustering menggunakan algoritma EM dan ternyata membutuhkan waktu sekitar 30 menit. -__-” Setelah itu, saya mencoba mengcluster data menggunakan algoritma COBWEB. Pada pengaturan algoritmanya, saya mengatur agar WEKA menyimpan instance data karena saya perlu menelusuri anggota dari suatu cluster. Ketika menjalankan algoritmanya sih baik-baik aja. Tapi ketika divisualize trus diklik nodenya (buat ngeliat instance data), langsung kluar exception memori nya ga cukup, trus WEKAnya langsung ngeclose. Hilang deh model hasil clustering tadi.. T_T

Belajar dari pengalaman tersebut, saya mengusulkan supaya WEKA menambah fitur untuk memberikan warning ketika proses mining akan memakan waktu lama. Warning yang saya maksud di sini mirip-mirip  warning yg diberikan OS windows ketika saya ingin membuka 40 file pdf sekaligus.. HOHO.. Misalnya “This process will take longer than usual. Do u really want to continue?”. Semacam itu deh. Kalo si user pilih continue, ya siap-siap nunggu lama deh. Tapi kalo si user pilih cancel, baru deh si WEKA nampilin saran-saran apa aja yg bisa dilakuin supaya proses miningnya ga lama-lama amat. Contoh saran-sarannya : manfaatkan fasilitas atribut selection jadi atribut yg di-mining cuma atribut yg signifikan aja. Atau normalisasi data numeric sehingga memori yang dipake pas proses berkurang. Atau sampling data. Atau proses mining dilakukan incremental. (BTW, si WEKA memfasilitasi sampling  dan proses mining incremental ga si??)

Kalau si WEKA menyediakan fitur ini, WEKA akan memberikan sense pada pengguna bahwa proses mining itu butuh waktu dan dimensi data sangat mempengaruhi waktu yang dibutuhkan. Lagipula, tantangan data mining saat ini kan emang bagaimana cara supaya dari data yang sizenya sangat-sangat besar bisa didapatkan informasi-informasi implisit tapi dalam waktu yang cepat. informasi ini kan nantinya akan digunakan untuk pengambilan keputusan. Jika informasi ini terlambat didapatkan, maka pengambilan keputusan juga akan terlambat.

Dari cerita-cerita saya tadi, saya rangkum usulan fitur tambahan untuk weka, yaitu sebagai berikut:

  1. Wizard step-by-step dalam melakukan data mining.
  2. Fitur untuk memberikan saran preprocessing data
  3. Fitur untuk memberikan warning terhadap exception yang mungkin terjadi
  4. Fitur untuk memberikan saran dalam mereduksi dimensi data

Sekian deh bagi-bagi pengalaman WEKA dari saya.. Semoga bermanfaat ya.. Dan kayanya ini bisa dijadiin topik tugas akhir deh. Pengembangan fitur WEKA.

Anyway, ada yang punya pengalaman atau saran lain untuk penggunaan WEKA?? Kalo mo komentar, silakan lho.. hehe..

SEMANGAT!!^_^