JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-3 1 Implementasi Algoritma CARD+ untuk Identifikasi Kategori Pengguna Internet pada Studi Kasus Server ITS Noor Fitria Azzahra, Diana Purwitasari, Abdul Munif Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember (ITS) Jl. Arief Rahman Hakim, Surabaya 60111 E-mail: [email protected] Abstrak— Saat ini, informasi berkembang pesat melalui internet. Hal ini berimplikasi pada kebutuhan internet ITS yang cukup besar. Kebutuhan internet ini perlu dievaluasi untuk mengetahui bagaimana server ITS digunakan. Salah satu evaluasi yang dapat dilakukan adalah evaluasi profil pengguna server ITS. Dalam web mining, teknik ini disebut personalisasi yang mengolah data kunjungan (data usage) setiap pengguna pada suatu halaman website sehingga dapat diketahui kelompok pengguna server. Data kunjungan ini diperoleh dari logfile kemudian dikonversikan menjadi session. Data session berdimensi besar sehingga data ini dikonversi menjadi data relational yang menyatakan tingkat kemiripan antara satu session dengan session lainnya. Teknik pengelompokan data relasi ini dilakukan dengan algoritma CARD+ (Competitive Agglomeration Relational Data). Algoritma ini dilengkapi tahap post-clustering untuk menggabungkan kelompok yang saling tumpang tindih. Hasil kelompok yang terbentuk diukur kepadatannya dengan indeks Dunn. Hasil uji mean dua populasi pada hasil uji coba menunjukkan bahwa indeks Dunn setelah tahap post-clustering lebih besar daripada sebelumnya. Sehingga dapat disimpulkan bahwa algoritma CARD+ dapat diimplementasikan untuk identifikasi kategori pengguna server ITS. Kata Kunci— CARD+, indeks Dunn, log file, post-clustering, session. P I. PENDAHULUAN ERSONALISASI website merupakan sebuah metode untuk melakukan analisis pola kunjungan atau data terkait yang berhasil dikumpulkan sebagai hasil dari interaksi pengguna dengan website. Tujuannya untuk memodelkan atau menganalisis pola perilaku atau profil pengguna berdasarkan interaksinya terhadap website [1]. Data yang digunakan untuk personalisasi adalah log file. Data tersebut berisi catatan kunjungan pengguna website. Dalam [2], halaman sebuah website dapat dikelompokan lebih dari satu kelompok sehingga pengelompokan menggunakan pendekatan fuzzy. Data log file kemudian diolah menjadi data session yang berisi informasi mengenai daftar kunjungan pengguna dalam satu waktu tertentu. Session ini berdimensi cukup besar karena terdiri dari ratusan halaman URL sehingga untuk data ini dikonversi menjadi data relasi yang menyatakan tingkat kemiripan satu session dengan session lainnya. Berdasarkan inilah, digunakan algoritma CARD untuk identifikasi pengguna server ITS. Penelitian selanjutnya menerapkan algoritma CARD+ yang menambahkan tahap post-clustering pada algoritma CARD. Post-clustering menggabungkan dua kelompok yang saling tumpang tindih sehingga dihasilkan kelompok yang lebih baik. Makalah ini bertujuan untuk melakukan identifikasi kategori pengguna server ITS dengan mengimplementasikan algoritma CARD+. Dengan menggunakan algoritma tersebut, diharapkan memperoleh hasil kategori pengguna server ITS yang baik sehingga dapat digunakan sebagai informasi dalam melakukan evaluasi oleh pihak pengelola server ITS, dalam hal ini adalah Pusat Komunikasi ITS. Makalah ini terorganisasi sebagai berikut Bab I menguraikan latar belakang serta tujuan penulisan makalah. Bab II menguraikan mengenai dasar teori yang digunakan. Perancangan perangkat lunak akan diuraikan pada Bab III dan untuk implementasi akan dijelaskan pada Bab IV. Pengujian sistem dijabarkan pada Bab V. Bab VI menjelaskan mengenai kesimpulan yang dapat diambil dari Tugas Akhir ini. II. DASAR TEORI A. Algoritma Competitive Agglomeration (CA) CA merupakan penggabungan teknik pengelompokan fuzzy c-means (FCM) dan hierarki [5]. Sehingga CA dapat menghasilkan nilai fungsi objektif yang minimal dan jumlah kelompok yang optimal. Fungsi objektif CA dijelaskan pada persamaan 1. ( ) ∑ ∑ ∑ [∑ ‖ ‖ ] (1) dimana ∑ * + untuk (2) Fungsi objektif pada persamaan 1 terdiri dari dua komponen. ‖ ‖ , merupakan Komponen pertama, ∑ ∑ fungsi objektif FCM yang berfungsi untuk mengontrol bentuk dan ukuran kelompok serta menghasilkan kelompok yang ∑ [∑ ] , adalah sum padat. Komponen kedua, square dari nilai kardinalitas kelompok yang digunakan untuk mengontrol jumlah kelompok. JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-3 2 Penentuan nilai pada persamaan 1 merupakan hal yang penting. Nilai untuk setiap iterasi didefinisikan dengan ( ) . dimana konstan. / ∑ ∑ ( ∑ ,∑ ) ( ) 2. (3) - adalah nilai inisial sedengankan adalah waktu B. Algoritma CARD+ (Competitive Agglomeration for Relational Data) Dalam referensi [3], data log file yang telah disusun dalam bentuk session kemudian disimpan dalam matriks Behaviour [ ] yang setiap elemennya merepresentasikan ketertarikan pengguna dalam session ke- terhadap halaman website ke- . jika halaman website lainnya { (4) adalah frekuensi akses halaman ke- selama session ke- , ∑ dimana , yang merepresentasikan jumlah akses halaman ke- pada session ke-i dibanding dengan jumlah total kunjungan dalam satu session. Kemudian matriks dikonversi menjadi matrix , yang mengkarakteristikan nilai derajat ketertarikan secara fuzzy dengan persamaan: jika 𝑏𝑖𝑗 𝐼𝐷𝑚𝑖𝑛 { jika 𝑏𝑖𝑗 ,𝐼𝐷𝑚𝑖𝑛 𝐼𝐷𝑚𝑎𝑥 jika 𝑏𝑖𝑗 > 𝐼𝐷𝑚𝑎𝑥 (5) Matriks dikoneversikan menjadi matriks relasi [ ] dengan ( ) ∑ { } ∑ { } Inisialisasi: Jumlah awal kelompok batasan ; matriks partisi ( ) ) g. iii. Memperbaharui ( ) dengan 3 ( ) ( ) ( Memperbaharui ∑ Menghitung Jika ( ) hapus kelompok ke-i dan update C ) 3. Mengintepretasikan hasil kelompok dan post-clustering ( | ) a. Membuat kelompok b. Menghitung jarak antar kelompok c. Menghitung batas bawah, ϵ dari d. Jika ( untuk setiap i dan j) maka i. Gabungkan kelompok dan ii. Update C e. Menghitung vektor prototipe ∑ (6) ( f. ) ∑ | | Tahap post-clustering direpresentasikan pada tahap 3.b dan 3.d. Identifikasi kelompok yang tumpang tindih adalah dengan mencari jarak antar kelompok dengan persamaan Hathaway [6], menghitung jarak Euclidean pada data relasional menggunakan persamaan ( ) (7) merupakan vektor keanggotaan yang didefinisikan dengan ( ) ∑ (8) Perhitungan data relasi menggunakan persamaan ( ) (9) dimana skalar, adalah matriks identitas, dan matriks yang memenuhi untuk . Nilai dalam hal ini harus menyebabkan setiap bernilai positif. Jika terdapat nilai yang negatif, maka nilai yang baru didapatkan dengan menambahkan . ‖ ‖ + * (10) adalah kolom ke-k pada matriks identitas. Algoritma CARD+ dijelaskan sebagai berikut: 1. d. e. diakses dalam session dimana , Algoritma CARD Ulangi sampai keanggotaan kelompok stabil a. Menghitung vektor keanggotaan dengan 8 b. Menghitung dengan 7 c. Jika untuk sembarang i dan k maka: i. Hitung dengan 10 ( ii. menghitung ‖ ‖ untuk dan ∑ ∑ ‖ | ‖ || | dimana , nilai | | merepresentasikan banyaknya session yang menjadi anggota kelompok . Setelah tahap post-clustering, tahap berikutnya adalah penentuan halaman apa saja yang menjadi anggota kelompok yang tebentuk. III. PERANCANGAN PERANGKAT LUNAK Pada tahap ini dilakukan perancangan perangkat lunak untuk melakukan identifikasi pengguna server ITS. Perancangan terdiri dari tahap praproses dan tahap identifikasi. Tahap praproses terdiri dari empat tahap. Pertama, tahap pembersihan data. Pada tahap ini log file dibersihkan dari data yang tidak dapat menyatakan hubungan ketertarikan pengguna terhadap sebuah halaman website. Tahap berikutnya ada penstrukturan data dalam bentuk session. Tahap ketiga adalah tahap penyaringan data. Pada tahap ini, data session disaring sehingga dihasilkan data session yang signifikan. Tahap keempat adalah perhitungan derajat ketertarikan pengguna. Proses identifikasi kategori pengguna server ITS terdiri dari pengimplementasian algoritma CARD+ dan entepretasi hasil identifikasi. Algoritma CARD+ terdiri dari dua tahap utama, yaitu tahap CARD dan tahap post-clustering. Hasil pengelompokan pada masing-masing dievaluasi dengan menggunakan indeks Dunn. Proses entepretasi kategori adalah dengan memasukkan URL dengan nilai 0,001 pada vektor JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-3 3 prototipe sebagai anggota pada setiap kategori. 84 945 3634 2755 594 262 266 4895 7 84 2250 484 263 118 58 1069 42 3124 680 84 7 465 464 308 58 15 91 594 84 464 1634 2637 IV. IMPLEMENTASI Sistem perangkat lunak identifikasi kategori pengguna server ITS dibangunan dengan menggunakan perangkat lunak utama yaitu MySQL, dan Netbeans untuk tahap praproses serta Matlab untuk identifikasi kategori. Data yang digunakan pada sistem ini adalah data log file server ITS pada satu hari. Pada tahap praproses, data log file diolah sehingga terbentuk session. Untuk mendapatkan session tersebut, tahap praproses diawali dengan tahap pembersihan data. Log file yang dibersihkan adalah log file dengan kriteria: Logfile dengan metode permintaan selain metode “GET”. Permintaan halaman yang gagal atau rusak. URL yang bukan halaman utama dari sebuah situs. URL yang memiliki kemiripan isi. Data yang sudah dibersihkan kemudian distrukturkan dalam bentuk session. Selanjutnya session disaring untuk mendapatkan session yang siginifikan. Definisi session yang siginifikan adalah session yang tidak terdapat URL yang terlampau sedikit atau terlampau banyak dalam keseluruhan session dan yang jumlah kunjungannya tidak terlampau sedikit atau terlampau banyak. Tahap praporses selanjutnya adalah perhitungan derajat ketertarikan dengan persamaan 4. Tahap berikutnya adalah tahap identifikasi kategori pengguna server ITS. Fungsi dalam algoritma CARD+ dibagi menjadi tiga tahap utama, yaitu inisialisasi, tahap pengelompokan dengan CARD, dan terakhir tahap postclustering. Uji coba dilakukan untuk mengetahui apakah algoritma CARD+ dapat diimplementasikan untuk proses identifikasi kategori pengguna server ITS. Kelompok yang baik berdefinisi kelompok yang memiliki tingkat kepadatan yang tinggi yang dinyatakan dengan indeks Dunn yang tinggi. Hasil uji coba dapat dilihat pada Gambar 1. Hasil uji mean dua populasi menyatakan bahwa indeks Dunn setelah tahap postclustering lebih baik daripada sebelumnya. Hasil entepretasi kategori dijelaskan pada Tabel 1. III IV V VI VII VIII IX X XI XII Berdasarkan hasil uji coba yang telah dilakukan, terdapat beberapa kesimpulan yang dapat diambil, antara lain: 1. Algoritma CARD+ dapat digunakan untuk proses identifikasi kategori pengguna server ITS. 2. Berdasarkan uji mean dua arah, dapat disimpulkan bahwa algoritma CARD+ menghasilkan pengelompokan yang lebih baik setelah dilakukan proses post-clustering. DAFTAR PUSTAKA [1] [2] [3] [4] Gambar 1. Grafik Perbandingan Hasil Pengelempokan Tahap CARD dengan Tahap Post-Clustering Tabel 1. Hasil Identifikasi Kategori Pengguna Server ITS Alamat URL 'www.detik.com' 'uploading.com' 'rapid8.com' II VI. KESIMPULAN V. UJI COBA id_url 7 1727 2345 'pagead2.googlesyndication.com' 'media.tumblr.com' 'c.directlyrics.com' 'www.ee.its.ac.id' 'translate.google.com' 's2.wp.com' 'partner.googleadservices.com' elnicovengeance.files.wordpress.com 'www.detik.com' 'pagead2.googlesyndication.com' 'untaiankisah.web.id' 'www.mediafire.com' 's1.wp.com' 's7.addthis.com' 'feedjit.com' 'www.goal.com' 'mi.adinterax.com' 'www.okezone.com' 'digilib.its.ac.id' 'pagead2.googlesyndication.com' 'www.detik.com' 'upload.wikimedia.org' 'bits.wikimedia.org' 'img1.blogblog.com' 'feedjit.com' 'ajax.googleapis.com' 'www.sciencedirect.com' 'translate.google.com' 'pagead2.googlesyndication.com' 'bits.wikimedia.org' 'www.free-choice-indonesia.com' 'www.artikelk3.com' [5] [6] Kategori I [7] B. Liu, Web Data Mining Exploring Hyperlinks, Contents, and Usage Data Second Edition, London: Springer, 2011. Olfa Nasraoui, Hichem Frigui, Raghu Krishnapuram and Anupam Joshi, "Extracting Web User Profiles Using Relational Competitive Fuzzy Clustering," Artificial Intelligence Tools, vol. 9, no. 4, pp. 509-526, 2000. Castellano G, Fanelli A.M. and Torsello M.A., "NEWER: A System for NEuro-fuzzy WEb Recommendation," Applied Soft Computing, vol. 11, no. 1, pp. 793-806, January 2011. "Working with Log Files," The Apache Software Foundation, 2011. [Online]. Available: http://trafficserver.apache.org/docs/trunk/admin/working-log-files/squidformat.en.html. [Accessed 19 5 2012]. H. Frigui and R. Krishnapuram, "Clustering by Competitibe Agglomeration," Pattern Recognition, vol. 30, pp. 1109-1119, 1997. R. J. Hathaway, J. W. Davenport and J. Bezdek, "Relational Duals of The C-Means Algorithms," vol. 22, no. Pattern Recognition, pp. 205212, 1989. J. Dunn, "Well Separated Clusters and Optimal Fuzzy Partitions," Journal of Cybernetics, vol. 4, pp. 95-104, 1974.