Senin, 22 Juni 2015

Studi Kasus "Aktifitas Internet Telkom University"

Penggunaan Algoritma Fuzzy C-Means Untuk Analisis Web Usage Mining
(Studi Kasus : Aktifitas Internet Telkom University)

Abstrak

Saat ini penggunaan internet sebagai sumber informasi sedang berkembang dengan pesat. Dengan memanfaatkan media internet ini, pengguna dapat memperoleh informasi secara cepat, di mana saja dan kapan saja tanpa terhalang oleh ruang dan waktu. Informasi-informasi tersebut disimpan dalam sebuah wadah yang biasa disebut dengan website. Agar proses pencarian informasi berjalan lebih efektif maka perlu diperhatikan performasi dan kualitas website tersebut sehingga informasi yang didapat oleh pengguna merupakan informasi yang memang diperlukan. Salah satu tolak ukur yang bisa digunakan untuk meningkatkan performasi dan kualitas dari satu website adalah dengan melihat pola kecenderungan pengguna dalam mengakses website tersebut menggunakan ilmu Web Mining. Pada penelitian ini, ilmu web mining yang dipakai adalah clustering menggunakan algoritma fuzzy c-means. Data log yang digunakan berasal dari situs baa.ittelkom.ac.id yang kemudian akan dilakukan preprocessing untuk mengambil bagian yang dibutuhkan seberti ip address, url, dan waktu akses user. selanjutnya cluster akan dibentuk dan dianalisis.
Kata Kunci: Fuzzy c-means, web usage mining, clustering, web log, transaksi, pola akses

Landasan Teori

  Web

World Wide Web atau WWW merupakan salah satu fenomena teknologi yang berkembangsangat pesat saat ini. WWW menyediakan berbagai layanan informasi mengenai berita, iklan, pendidikan, e- commerce dan sebagainya. Informasi yang tersedia dalam WWW tersebut memilikiukuran yang sangat besar dan terdistribusi secara global di seluruh dunia. Web juga mengandungkekayaan informasi dilihat dari struktur dan penggunaannya (web usage). Web merupakan kumpulandata dan informasi yang sangat berpotensi untuk dilakukan penggalian (mining) agar menghasilkan pengetahuan (knowledge) yang dapat berguna bagi masyarakat maupun pihak-pihak tertentu.
Web Mining

Menurut Etzioni Oren, web mining diartikan sebagai suatu usaha mengaplikasikan teknik data mining untuk menggali dan mengekstrak informasi yang berguna dari dokumen-dokumen yang tersimpan dalam halaman web secara otomatis. Web mining terbagi menjadi 3 (tiga) kategori yaitu web content mining, web structure mining dan web usage mining (Madria, et al., 1999). Web content mining berfokus pada usaha untuk menggali informasi dari isi atau content yang disajikan di web. Teknik web content mining lebih banyak berhubungan dengan disiplin ilmu information retrieval (IR). Sedangkan web structure mining, membahas mengenai penggalian informasi web dilihat dari struktur halaman web itu sendiri. Web structure mining banyak digunakan untuk menggali keterkaitan antara suatu halaman web dengan halaman web lainnya. Sementara web usage mining, berusaha melihat pola atau pattern dari user dalam mengakses web.

Web Usage Mining

Pada web usage mining, untuk mengatasi masalah dokumen web yang terus berubah, data mentah yang digunakan umumnya akan dibekukan untuk sementara waktu. Hal ini dilakukan dengan melakukan mining web logs untuk menemukan aturan bentuk “document 1 – document2” sehingga web server dapat mempersiapkan “document 2” ketika “document 1” direquest. Disimpulkan usage pattern web dari user sebelumnya, dapat memainkan peran dalam membantu pengguna lain selanjutnya.

Fuzzy Clustering

Fuzzy C-means Clustering (FCM) atau dikenal juga sebagai Fuzzy ISODATA merupakan salah satu metode   clustering   yang   merupakan   bagian   dari metode Hard K-Means. Tingkat keberadaan data dalam suatu kelas atau cluster ditentukan oleh derajat keanggotaannya.
Langkah-langkah dalam algoritma Fuzzy C-Means adalah sebagai berikut :
-       Input data yang akan di cluster X yang berukuran i x n (i = jumlah data, n = atribut setiap data)
-       Tentukan parameter-parameter dalam Fuzzy C- Means. Parameter-parameter tersebut antara lain jumlah cluster (c), derajat keanggotaan (m), maksimum iterasi, dan error terkecil
-       Bangkitkan   bilangan   random   sebagai   titik centroid awal



-     Hitung derajat keanggotaan                                                                      -      Hitung titik pusat cluster yang baru
                                                  

-      Hitung fungsi objektif di tiap iterasi                                                         -      Cek kondisi berhenti
                                             

Jika perubahan derajat keangotaan < error terkecil atau t > maksimum iterasi maka berhenti, jika ulangi dari penghitungan derajat keanggotaan.

Self Organizing Map

Cluster validity index digunakan untuk mengevaluasi kualitas dari partisi yang dihasilkan oleh algoritma clustering. Cluster validity index yang akan digunakan adalah Partition coefficient and exponential seperation (PCAES) index. Cara kerjanya adalah sebagai berikut:
Pertama kita asumsikan X = {x1,...,xn} merupakan data set dalam Rs dan
Β΅ = { Β΅1,..., Β΅n } merupakan fuzzy c-partition dari fuzzy clustering.
Definisi indeks PCAES untuk cluster i adalah sebagai berikut :
Salah satu term dari normalized partition coefficient (NPC) digunakan untuk mengukur kepadatan dari cluster i.

Sedangkan untuk perhitungan terpisahnya satu cluster dengan cluster yang lain dengan memanfaatkan fungsi eksponensial yang mengukur jarak antara cluster i dengan cluster terdekatnya.

Dengan demikian cluster dapat dilihat dari dua sudut pandang. Pertama adalah dari sudut pandang normalized validation coefficient dan yang kedua adalah sudut pandang exponentioal partition. Nilai PCAESi yang besar mengindikasikan bahwa cluster i padat didalamnya dan terpisah dari cluster yang lain. Nilai PCAESi yang kecil atau bahkan negatif mengindikasikan bahwa culster yang terbentuk kurang baik. Rumus PCAES validity index adalah :


Perancangan Sistem

Sistem yang akan dibangun pada tugas akhir ini menerapkan metode clustering, yaitu algoritma fuzzy c-means. Pada aplikasi ini akan dibangun sebuah sistem yang berfungsi untuk mengklasterisasi data web log untuk menemukan pola web usage. Dalam mengklasterisasi data tersebut, digunakan algoritma Fuzzy C-Means. Pertama data raw log dari server akan melalui tahapan pre processing, Setelah proses preprocessing selesai, data akan berbentuk sebagai urutan transaksi. Urutan transaksi tersebut kemudian akan di proses clustering menggunakan fuzzy c-means clustering sehingga menghasilkan grup-grup transaksi sesuai dengan karakteristiknya.


Preprocessing
Proses data formatting and cleansing, bertujuan untuk membersihkan data dari bagian-bagian yang tidak diperlukan sehingga yang tersisa hanya bagian data yang diperlukan. Proses ini menggunakan fungsi substring yang ada dengan mengelompokan baris-baris data menjadi beberapa bagian sebelumnya
Sistem akan terus memprosesnya seperti berikut :

Setelah proses formatting dilakukan, langkah selanjutnya adalah membersihkan baris log dari bagian yang tidak perlu seperti data berekstensi .jpg, .gif, ukuran byte, dan status. Langkah selanjutnya adalah menghilangkan log yang tidak berhubungan dengan penelitian. Ada tiga kategori log yang akan dihapus.

Pattern Discovery
Setelah data melalui tahap preprocessing, data kemudian akan diolah untuk mencari pola penggunaan user. Pada tahap ini dilakukan pembentukan grup cluster terhadap list transaksi yang dihasilkan dari proses transaction identification pada preprocessing. Proses pattern discovery menggunakan algoritma fuzzy c-means.
Perhitungan derajat keanggotaan berdasarkan pada jarak transaksi tersebut dan diolah menggunakan satu formula perhitungan tertentu.

Pengujian dan Analisis Sistem
- Mencari Jumlah Cluster Terbaik Sistem
Untuk mencari jumlah cluster terbaik sistem,, dilakukan perulangan percobaan untuk mencari nilai PCAES yang terbaik. Pengujian dilakukan secara berurutan dimulai dari cluster dua pengujian pertama hingga cluster tiga belas pengujian ke empat. Tiga belas dijadikan jumlah cluster maksimum karena adanya keterbatasan kemampuan hardware untuk memproses data jika cluster yang digunakan lebih dari tiga belas. Karena sistem menggunakan fungsi random untuk memulai proses, hasil tiap terasi memberikan output yang berbeda-beda.

Cluster
Percobaan
ke-

FCM eror

PCAES
2
1
12162.64
1.910318
2
2
11958.23
1.797971
2
3
12150.78
1.90994

3
1
12216.77
1.037803
3
2
12217.65
1.128195
3
3
12217.91
1.038972
...
...
...
...
9
1
2410.524
2.251975
9
2
2165.263
2.086605
9
3
2818.229
1.934038
...
...
...
...





 
Dikarenakan hasil yang selalu berubah-ubah tetapi cenderung memiliki nilai yang berdekatan maka diambil keputusan bahwa percobaan ke empat akan dijadikan sumber data yang dipakai untuk menunjukan hasil dengan asumsi data tersebut dapat mewakili data yang lainnya.













Dari tabel diatas dapat dilihat bahwa nilai PCAES tertinggi ada ketika jumlah cluster yang dipakai adalah delapan cluster. Hal ini menunjukan bahwa ketika cluster berjumlah delapan cluster yang terbentuk paling solid dan data didalamnya paling terpisah. Oleh karena itu jumlah cluster delapan lah yang paling optimal untuk kasus penelitian ini.

Pengaruh parameter terhadap hasil performansi
Untuk menguji pengaruh parameter terhadap hasil, digunakan jumlah cluster terbaik hasil pengujian sebelumnya sebagai tolak ukur hasil percobaan. Semua pengujian dilakukan empat kali dengan pengujian satu sampai tiga sebagai acuan nilai, dan pengujian keempat dianggap pengujian yang mewakili pengujian-pengujian sebelumnya

Koefisien Fuzzy
Pada pengujian ini kita akan melihat pengaruh perbedaan koefisien fuzzy dengan mengubah-ubah nilainya. Ada tiga nilai yang akan diujikan, pertama jika derajat fuzzy sama dengan dua, dua koma lima, dan empat.
Error Terkecil
Eror terkecil merupakan nilai perubahan minimum yang boleh terjadi sebelum algoritma berhenti. Diasumsikan bahwa jika perubahan yang terjadi saat proses perulangan lebih kecil dari eror terkecil maka perubahan tersebut dianggap tidak ada dan algoritma akan berhenti

Maksimum Iterasi
Maksimum iterasi merupakan variabel yang berfungsi untuk mencegah terjadinya looping forever pada system. Dengan melihat hasil dapat dilihat bahwa dengan membatasi proses looping sistem maka performansi sistem juga berubah. Hal ini dikarenakan sistem belum selesai memproses semua data tetapi sudah masuk pada proses keluar dari sistem









Kesimpulan dan Saran

5.1  Kesimpulan
Berdasarkan hasil dari pengujian yang telah dilakukan maka dapat disimpulkan hal-hal sebagai berikut:

  1. Algoritma       Fuzzy       c-Means       dapat diimplementasikan untuk membentuk cluster berdasarkan data transaksi hasil preprocessing dimana jumlah cluster optimal yang dihasilkan adalah delapan cluster dengan nilai validitas PCAES 2.446648 dan nilai objektif FCM sebesar 3111.219. saat percobaan nilai parameter fuzzy lainnya saat percobaan adalah koefisien fuzzy sebesar 1.5, error terkecil 0.001, dan maksimum iterasi.
  2. Setiap  parameter  dari  algoritma  fuzzy  c- means memiliki pengaruh masing-masing terhadap performansi algoritma. Koefisien fuzzy yang paling optimal untuk studi kasus ini adalah 1.5 dimana semakin besar koefisien fuzzy nya semakin rendah performansi algoritmanya. Error terkecil dan maksimum iterasi mempengaruhi performansi dikarenakan kedua faktor itu membatasi looping yang dibutuhkan algoritma  untuk  mencapai  hasil  yang optimal.

5.2  Saran
Berdasarkan apa yang sudah dilakukan pada Tugas akhir ini, mulai dari pemilihan data hingga analisis hasil pengujian, saran yang bisa disampaikan adalah

1.     Untuk      pembuatan      algoritma      fuzzy kedepannya dapat menggunakan metoda SSE untuk inisiasi cluster agar titik centroid awal yang dibentuk mempunyai distance yang saling berjauhan satu sama lain.
2.     Untuk    penelitian     selanjutnya   sebaiknya menggunakan data yang lebih variatif

Daftar Pustaka
[1]
A. Luotonen, The Common Logfile Format,
2013.
[2]
Beringer, JΓΌrgen,Adaptive Optimization of the Number of Clusters in Fuzzy Clustering. Otto- von-Guericke University Faculty of Informatics:Germany
[3]
Bezdek, James C., Robert Ehrlich, William Full.1984. FCM: The Fuzzy c-means Clustering Algorithm, Pergamon Press Ltd: U.S.A.
[4]
Chen, Chi-Farn, Jyh-Ming Lee. The Validity Measurement of Fuzzy c-Means Classifier for Remotely Sensed Images.National Central University Centre for space and remote sensing Research:Taiwan.
[5]
Chitraa, V, Dr. Anthony Selvadoss Davamani. An Efficient Path Completion Technique for Web Log Mining. IEEE International Conference on Computational Intelligence and Computing Research. 2010.
[6]
Chitraa, V, Dr.Antony Selvadoss Davamani. A Survey on Preprocessing Methods for Web Usage Data. International Journal of Computirer Science and information Security, Vol. 7, No. 3, 2010.
[7]
Cooley, Robert, B. Mobasher, J. Srivastava,
Data preparation for
mining World Wide Web browsing patterns, Journal of Knowledge and Information Systems 1 (1) (1999) 5 – 32.
[8]
Etzioni, Orem. The Wold Wide Web: Quagmire or gold mine?. Comm. Of ACM. 1996
[9]
Han, Seungyeop, Yong-Yeol Ahn, Sue Moon, and Hawoong Jeong. Collaborative blog spam ltering using adaptive percolation search. In Workshop on the Weblogging Ecosystem, 2006.
[10]
Lakheyan, Chhaman, Usvir Kaur.A survey on Web Usage Mining with Fuzzy c-Means Clustering Algorithm. IJCSMC, vol 2, issue. 4, April 2013, pg. 160-163.
[11]
Lingras, Pawan, Rui Yan, Chad West.2003.Fuzzy c-Means Clustering of Web Users for Educational Sites.Springer- Verlag:Berlin Hiedelberg
[12]
Madria, Sanjay Kumar, Sourav S Bhowmick, W-K Ng, Ee-Peng Lim. Data Warehousing and Knowledge Discovery. 1999. Springer Berlin Hiedelberg.
[13]
Prasetyo, Eko.2012.Data Mining Konsep Dan Aplikasi menggunakan Matlab. Penerbit Andi.Yogyakarta.
[14]
Wu, Kuo-Lung, Miin-Shen Yang.2004.A Cluster Validity Index for Fuzzy Clustering.Elsevier B.V:Taiwan
[15]
Wu, Kuo-Lung.2010. Analysis of Parameter Selection for Fuzzy c-Means. Kun Shan University, Department of Information Management:Taiwan.
[16]
Yaikhom, Gagarine.2010. Implementing the Fuzzy c-Means Algorithm, Stamford, Faculty of Computer Science.