• Tidak ada hasil yang ditemukan

FUZZY DEPARTEMEN ILMU KOMPUTER

N/A
N/A
Protected

Academic year: 2021

Membagikan "FUZZY DEPARTEMEN ILMU KOMPUTER"

Copied!
43
0
0

Teks penuh

(1)

ANALISIS MENG FAKULTA POLA KUNJ GGUNAKAN A DEPART AS MATEMAT INSTIT JUNGAN PEN N ALGORITM YUDYA PAR TEMEN ILMU TIKA DAN IL TUT PERTAN 2009 NGGUNA SIT MA TOTALLY RAMITA U KOMPUTE LMU PENGE NIAN BOGOR

TUS WEB IPB Y FUZZY ER ETAHUAN AL R B LAM 1

(2)

2 ANALISIS POLA KUNJUNGAN PENGGUNA SITUS WEB IPB

MENGGUNAKAN ALGORITMA TOTALLY FUZZY

Skripsi

Sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer pada Fakultas Matematika dan Ilmu Pengetahuan Alam

Institut Pertanian Bogor

AYUDYA PARAMITA G64104069

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR

(3)

3

ABSTRAK

AYUDYA PARAMITA. Analisis Pola Kunjungan Pengguna Situs Web IPB Menggunakan Algoritma

Totally Fuzzy. Dibimbing oleh ANNISA dan HERU SUKOCO.

Pola pengaksesan pengguna terhadap sebuah situs web biasanya tergambarkan dalam sebuah pola sekuensial. Pola sekuensial mengindikasikan bahwa transaksi biasanya terjadi secara sekuensial terhadap waktu. Untuk mengetahui trends dari pengguna situs web terkait pola pengaksesannya, dapat digunakan metode web mining. Salah satu teknik web mining yang dapat digunakan untuk mengetahui pola sekuensial yaitu Totally Fuzzy. Konsep fuzzy yang diterapkan dalam teknik web mining dapat lebih baik dalam menangani data numerik, karena himpunan fuzzy ”memperhalus” batasan yang tegas. Data numerik diubah menjadi bentuk data fuzzy menggunakan teknik Fuzzy C-Means yang menerapkan konsep ketidakmiripan dalam mengelompokkan suatu objek. Pola sekuensial yang memiliki frekuensi cukup tinggi kemudian dipresentasikan agar mudah dipahami dan diintrepretasikan. Informasi tersebut dapat digunakan oleh web master sebagai dasar untuk perancangan ulang disain sebuah situs web, baik tatanan antarmuka maupun isi.

Data yang digunakan pada penelitian ini adalah data log akses situs web IPB (www.ipb.ac.id) pada periode 5 Januari sampai dengan 18 Juni 2007. Data dikelompokkan ke dalam dua bagian, yaitu pengguna internal dan pengguna eksternal. Dalam hal ini digunakan alamat IP dari server proxy untuk mengasumsikan bahwa seorang pengguna termasuk ke dalam kelompok pengguna internal atau eksternal. Pada penelitian ini digunakan nilai ambang batas (threshold) dari 0,1 hingga 0,6 dengan peningkatan sebesar 0,05 dan nilai minimum support sebesar 3% hingga 56% untuk data pengguna internal serta 14% hingga 65% untuk data pengguna eksternal. Nilai minimum support tersebut ditentukan berdasarkan kondisi datanya.

Dari hasil percobaan didapatkan informasi bahwa bagi data pengguna internal jumlah item maksimal yang membentuk suatu pola sekuensial adalah 5-sequences, yaitu (home, rendah) (ipb-bhmn, rendah) (ipb-bhmn/akademik, rendah) (id/uploadedpictures, rendah) (id, rendah) dengan nilai fuzzy support tertinggi sebesar 56,66%, sedangkan bagi data pengguna eksternal, yaitu (home, rendah) (id, rendah) bhmn, rendah) bhmn/direktori, rendah) (ipb-bhmn/akademik, rendah) dengan nilai fuzzy support sebesar 64,84%. Hal tersebut menggambarkan pola sekuensial yang sering dilakukan oleh pengguna situs web IPB. Dengan nilai minimum support sebesar 10 %, terdapat delapan halaman yang sering diakses oleh pengguna internal IPB, yaitu halaman home, ipb-bhmn, ipb-bhmn/akademik, ipb-bhmn/others, ipb-bhmn/ipbphoto, id, id/uploaded pictures, dan ipb-bhmn/gallery. Dengan nilai minimum support yang sama yaitu 10%, terdapat tujuh halaman yang sering diakses oleh pengguna eksternal IPB, yaitu halaman home, bhmn, ipb-bhmn/direktori, ipb-bhmn/akademik, ip-bhmn/others, ipb-bhmn/ipbphoto dan id. Web master sebaiknya mengalokasikan link menuju halaman tersebut pada halaman utama serta di antara halaman-halaman pada pola sekuensial yang menggambarkan pola pengaksesan pengguna situs web IPB sehingga memudahkan pengguna dalam mengaksesnya.

(4)

4

Judul Skripsi

Nama

NIM

:

:

:

Analisis Pola Kunjungan Pengguna Situs Web IPB

Menggunakan Algoritma Totally Fuzzy

Ayudya Paramita

G64104069

Menyetujui :

Pembimbing I,

Pembimbing II,

Annisa S.Kom., M.Kom.

Heru Sukoco S.Si., M.T.

NIP 132311930 NIP 132282666

Mengetahui :

Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam

Institut Pertanian Bogor

Dr. drh. Hasim, DEA

NIP 131578806

(5)

5

RIWAYAT HIDUP

Penulis dilahirkan pada tanggal 28 Januari 1987 di Jakarta. Penulis merupakan anak pertama dari tiga bersaudara pasangan Dedi Suryadi dan Saryati Kosasih, S.H.

Pada tahun 2004 penulis lulus dari SMA Negeri 2 Bogor. Pada tahun yang sama penulis diterima di Program Studi Ilmu Komputer, Departemen Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor melalui jalur Undangan Seleksi Masuk IPB (USMI).

Selama mengikuti perkuliahan, penulis pernah menjadi pengurus Badan Eksekutif Mahasiswa FMIPA tahun kepengurusan 2005/2006. Selain itu, penulis juga pernah menjadi pengurus Himpunan Mahasiswa Ilmu Komputer (HIMALKOM) tahun kepengurusan 2004/2005. Pada tahun 2007, penulis pernah melakukan kegiatan praktik lapang selama dua bulan di Balai Besar Penelitian dan Pengembangan Bioteknologi dan Sumberdaya Genetik Pertanian (BB-BIOGEN).

(6)

6

KATA PENGANTAR

Puji syukur penulis panjatkan kepada Allah SWT atas segala rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan tugas akhir dengan judul Analisis Pola Kunjungan Pengguna Situs Web IPB Menggunakan Algoritma Totally Fuzzy. Tugas akhir ini merupakan salah satu syarat untuk memperoleh gelar Sarjana Komputer di FMIPA IPB.

Penghargaan serta rasa terima kasih penulis sampaikan kepada Ibu Annisa, S.Kom., M.Kom. dan Bapak Heru Sukoco, S.Si., M.T. selaku pembimbing yang telah bersedia meluangkan waktu serta memberikan saran dan bimbingannya selama penelitian dan penulisan tugas akhir ini. Penghargaan dan rasa terima kasih juga penulis sampaikan kepada Bapak Endang, S.Kom., M.Kom. yang telah berkenan sebagai moderator dan penguji dalam pelaksanaan seminar dan sidang.

Penulis menyampaikan terima kasih dan penghargaan yang mendalam kepada seluruh keluarga, Bapak, Ibu, dan Adik tercinta yang senantiasa memberikan dukungan moral, doa, kasih sayang, dan perhatian. Penulis menyampaikan terima kasih kepada sahabatku (Venty, Dewi, Alfinda, Zee dan Cindy), Kak Irfan, Ilkom 41 (Tresna, Restu, Ajeng, Imam, Heny, Ferdi, Welly, Syadid, Hany, Anna, Intan, Ingrid, Indri, Mirza dan Noven) dan teman-teman satu bimbingan (Marissa, Iwan, Riza dan Jefry) atas dukungan, motivasi dan masukan yang telah diberikan. Terima kasih kepada teman-teman yang telah membantu selama penulisan tugas akhir dan memberi dukungan ketika seminar dan sidang. Semua teman-teman Ilkom 41 lainnya, terima kasih untuk canda tawa, persahabatan, dan kebersamaan selama kuliah di Ilkom IPB.

Penulis mengucapkan terima kasih kepada seluruh staf pengajar yang telah memberikan wawasan serta ilmu yang berharga selama penulis menuntut ilmu di Departemen Ilmu Komputer. Seluruh staf administrasi dan perpustakaan Departemen Ilmu Komputer FMIPA IPB yang selalu memberi kemudahan dalam mengurus segala macam hal berkaitan dengan perkuliahan, serta pihak-pihak lain yang tidak dapat disebutkan satu-persatu.

Penulis menyadari bahwa karya ilmiah ini masih jauh dari sempurna. Namun penulis berharap semoga karya ilmiah ini dapat memberikan manfaat bagi pembacanya.

Bogor, Januari 2009

(7)

7

DAFTAR ISI

Halaman

DAFTAR TABEL... vi

DAFTAR GAMBAR... vi

DAFTAR LAMPIRAN... vii

PENDAHULUAN Latar Belakang ... 1 Tujuan .. ... 1 Ruang Lingkup ... 1 Manfaat Penelitian ... ..1 TINJAUAN PUSTAKA Web mining ... 1

Knowledge Discovery in Database (KDD) ... 2

Association Rule Mining ... 3

Pola Sekuensial ... 3

Himpunan Fuzzy ... 3

Peubah Linguistik ... 3

Fuzzy C-Means ... 4

Fuzzy Cardinality ... 4

Fuzzy Candidate Sequence ... 4

File Log Akses ... 4

Totally Fuzzy ... 5

METODE PENELITIAN Proses Dasar Sistem ... 6

Lingkungan Pengembangan Sistem ... 10

HASIL DAN PEMBAHASAN Pembersihan Data ... 10

Seleksi Data ... 11

Transformasi Data ... 11

Web Mining ... 12

Pembentukan fuzzy support bagi masing-masing halaman situs web ... 12

Pembentukan frequent sequence ... 13

Evaluasi Pola ... 16

Representasi Pengetahuan ... 17

KESIMPULAN DAN SARAN Kesimpulan ... 19

Saran ... 19

DAFTAR PUSTAKA ... 20

LAMPIRAN ... 20

(8)

8

DAFTAR TABEL

Halaman

1 Deskripsi format data log akses ... 4

2 Data transaksi customer ... 7

3 Nilai derajat keanggotaan bagi customer 1 dengan nilai ambang batas sebesar 0,3 ... 8

4 Nilai fuzzy support bagi masing-masing item ... 8

5 Jumlah frequent sequence berdasarkan nilai ambang batas dan minimum support (internal) ... 14

6 Jumlah frequent sequence berdasarkan nilai ambang batas dan minimum support (eksternal) ... 15

7 Daftar pola sekuensial yang menarik (data internal) ... 17

8 Daftar pola sekuensial yang menarik (data eksternal) ... 17

9 Daftar fuzzy support yang memiliki nilai di atas 10% dengan threshold 0,3 (data internal) ... 18

10 Daftar fuzzy support yang memiliki nilai di atas 10% dengan threshold 0,3 (data eksternal) ... 18

DAFTAR GAMBAR

Halaman 1 Arsitektur web mining ... 2

2 Tahapan proses KDD ... 2

3 Algoritma CalcTotallySupport ... 5

4 Diagram alur metode penelitian ... 6

5 (a) Fungsi keanggotaan item Candy ... 7

5 (b) Fungsi keanggotaan item Soda ... 7

5 (c) Fungsi keanggotaan item Toothpaste ... 7

5 (d) Fungsi keanggotaan item Ball ... 7

5 (e) Fungsi keanggotaan item Video game ... 7

6 Proses scanning data customer 1 ... 9

7 (a) Fungsi keanggotaan halaman home bagi data pengguna internal ... 12

7 (b) Fungsi keanggotaan halaman home bagi data pengguna eksternal ... 12

8 (a) Jumlah frequent sequence dengan threshold 0,2 terhadap data pengguna internal ... 13

8 (b) Jumlah frequent sequence dengan threshold 0,4 terhadap data pengguna internal ... 13

8 (c) Jumlah frequent sequence dengan threshold 0,6 terhadap data pengguna internal ... 14

9 (a) Jumlah frequent sequence dengan threshold 0,2 terhadap data pengguna eksternal ... 15

9 (b) Jumlah frequent sequence dengan threshold 0,4 terhadap data pengguna eksternal ... 15

9 (c) Jumlah frequent sequence dengan threshold 0,6 terhadap data pengguna eksternal ... 15

10 Perbandingan waktu eksekusi (data pengguna internal) ... 16

11 Perbandingan waktu eksekusi (data pengguna eksternal) ... 16

12 Antarmuka grafis aplikasi ... 19

(9)

9

DAFTAR LAMPIRAN

Halaman

1 Tahapan algoritma Totally Fuzzy ... 22

2 Deskripsi field data log akses ... 23

3 Data yang telah melalui proses pembersihan data ... 24

4 Format data yang telah dikonversi ke dalam bentuk numerik ... 25

5 URL halaman situs web IPB yang telah dikonversi ke dalam bentuk numerik ... 26

6 Nilai fuzzy support bagi masing-masing halaman situs web bagi pengguna internal ... 27

7 Nilai fuzzy support bagi masing-masing halaman situs web bagi pengguna eksternal ... 31

8 Jumlah frequent sequences berdasarkan nilai ambang batas dan minimum support (internal) ... 35

9 Jumlah frequent sequences berdasarkan nilai ambang batas dan minimum support (eksternal) ... 38

(10)

1

PENDAHULUAN

Latar Belakang

Pola pengaksesan pengguna terhadap sebuah situs web biasanya tergambarkan dalam sebuah pola sekuensial. Pola sekuensial mengindikasikan bahwa transaksi biasanya terjadi secara serial terhadap waktu. Oleh karena itu, analisis terhadap pola sekuensial didasarkan pada urutan waktu atau urutan terjadinya suatu transaksi.

Salah satu metode yang digunakan untuk mendapatkan tatanan antarmuka dan isi yang strategis adalah sequential pattern mining. Metode tersebut pertama kali diperkenalkan oleh Agrawal & Srikant (1995) dan bertujuan untuk mencari kemunculan suatu item yang diikuti kemunculan item lain secara terurut berdasarkan waktu terjadinya transaksi. Metode ini dapat juga digunakan untuk mengetahui trends dari pengguna terkait pola pengaksesannya terhadap sebuah situs web.

Untuk ”memperhalus” batasan yang tegas yang terdapat pada data yang bernilai numerik maka diterapkan konsep fuzzy pada sequential

pattern mining. Pola tersebut dikarakterisasikan

oleh nilai support, yaitu persentase banyaknya transaksi yang mengikuti aturan tersebut.

Salah satu teknik web mining yang dapat digunakan untuk mengetahui pola sekuensial yaitu Totally Fuzzy. Teknik ini menggunakan metode Thresholded Sigma Count untuk mendapatkan nilai fuzzy cardinality dari tiap-tiap pengguna sebuah situs web (Fiot. C et al 2005). Pada pendekatan ini, masing-masing

fuzzy itemset diperhitungkan dalam proses

komputasi untuk mendapatkan nilai fuzzy

support.

Pemahaman terhadap user preference yang tercatat pada data log akses akan mengarahkan sebuah situs web semakin dekat dengan pengguna dan meningkatkan kualitas sebuah situs web, sehingga secara tidak langsung dapat meningkatkan besarnya kemungkinan sebuah situs web untuk tetap bertahan pada lingkungan bisnis yang kompetitif.

Tujuan Penelitian

Penelitian ini bertujuan untuk melihat trends dari pengguna yang mengakses situs web IPB.

Trends tersebut dapat dilihat berdasarkan

informasi mengenai besarnya beban akses suatu halaman pada situs web IPB. Berdasarkan informasi tersebut pada akhirnya dapat diketahui halaman-halaman yang sering dikunjungi oleh pengguna situs web IPB dan dapat digunakan untuk meningkatkan perancangan situs web berdasarkan pola pemakaian.

Ruang Lingkup Penelitian

Ruang lingkup untuk penelitian ini dibatasi pada penerapan metode Totally Fuzzy pada data log akses server web IPB dari tanggal 5 Januari 2007 hingga 18 Juni 2007. Data tersebut dikelompokkan ke dalam dua bagian, yaitu internal dan eksternal IPB. Analisa dilakukan terhadap kedua kelompok data tersebut. Penelitian ini akan menghasilkan informasi mengenai pola pengaksesan yang dilakukan oleh pengguna.

Manfaat Penelitian

Informasi yang didapatkan pada penelitian ini diharapkan dapat digunakan untuk meningkatkan performa dan perancangan situs web berdasarkan pola pemakaian, perubahan struktur dan rancangan web menjadi lebih strategis, mendapatkan pola akses pengunjung web IPB baik internal maupun eksternal yang mengakses situs web IPB (www.ipb.ac.id) dan mengetahui halaman-halaman situs web IPB yang sering dikunjungi oleh pengguna.

TINJAUAN PUSTAKA

Web mining

Web mining merupakan penerapan

teknik-teknik data mining untuk secara otomatis mengumpulkan dan mengekstrak informasi dari sebuah dokumen web. Web mining merupakan suatu teknik yang dapat membantu pengguna untuk menemukan suatu informasi dari sekumpulan data. Selain itu, web mining mengamati pola akses kunjungan pengguna pada sebuah situs web (Kamber 2006).

Secara umum web mining diklasifikasikan ke dalam tiga kategori berdasarkan jenis data yang diekstrak, yaitu web usage mining, web content

mining, dan web structure mining. Arsitektur web mining ditunjukkan pada Gambar 1.

(11)

2 Deskripsi mengenai masing-masing kategori

tersebut, yaitu : 1. Web usage mining

Web usage mining berusaha menemukan

nilai data berdasarkan pola tingkah laku

web surfer.

2. Web content mining

Menggambarkan proses penemuan informasi yang berasal dari konten, data atau dokumen sebuah web.

3. Web structure mining

Web structure mining mencoba

menemukan sebuah model pada struktur

link sebuah web.

Salah satu bagian dari web usage mining adalah General Access Pattern Tracking (GAPT). Gagasan utama pada GAPT adalah melihat secara umum trends pengguna yang mengakses situs web tersebut.

Informasi yang diperoleh dapat digunakan untuk perancangan ulang sebuah situs web sehingga memudahkan proses pengaksesan yang dilakukan oleh pengguna.

Knowledge Discovery from Data (KDD)

Knowledge Discovery from Data (KDD)

adalah suatu proses mengekstrak ilmu pengetahuan atau informasi yang berasal dari kumpulan data dalam jumlah besar (Kamber 2006). Data mining adalah proses penemuan pengetahuan yang menarik dari kumpulan data yang tersimpan pada basis data, data warehouse dan media penyimpanan informasi lainnya.

Tahapan-tahapan proses KDD diilustrasikan pada Gambar 2.

Gambar 2 Tahapan proses KDD (Han & Kamber 2006).

Deskripsi mengenai tahapan-tahapan tersebut adalah sebagai berikut :

1. Pembersihan data

Pembersihan terhadap data dilakukan untuk menghilangkan noise dan data yang tidak konsisten.

2. Integrasi data

Integrasi data dilakukan untuk menggabungkan data yang berasal dari berbagai sumber.

3. Seleksi data

Proses seleksi data merupakan proses pengambilan data yang relevan dengan proses analisis yang dilakukan.

4. Transformasi data

Data ditransformasikan atau digabungkan ke dalam bentuk yang sesuai untuk

di-mining dengan cara melakukan peringkasan

atau operasi agregasi. 5. Data mining

Merupakan proses yang penting dan merupakan tahapan ketika metode-metode

Data Mining

Knowledge

Gambar 1 Arsitektur web mining.

Web Mining

Web Usage Mining

Web Content Mining

Web Structure Mining

General Access Pattern

Customized Access Pattern Search Result

Web Pages

Links

General Access Logs

Usage Pofile Text

XML HTML Multimedia

(12)

3 cerdas diaplikasikan untuk mengekstrak

pola-pola dari kumpulan data. 6. Evaluasi pola

Merupakan suatu proses untuk mengidentifikasikan pola-pola tertentu pada data yang menarik dan mempresentasikan pengetahuan.

7. Representasi pengetahuan

Penggunaan visualisasi dan teknik representasi untuk menunjukkan penemuan pengetahuan hasil proses mining kepada pengguna.

Association Rule Mining

Aturan Asosiasi (association rule) atau analisis afinitas (affinity analysis) berkenaan dengan studi 'apa bersama apa'. Pada dasarnya aturan ini digunakan untuk menggambarkan keterkaitan antar item pada sekumpulan data (Santoso 2007).

Secara umum aturan asosiasi dapat dipandang sebagai proses yang terdiri dari 2 tahap (Kamber 2006), yaitu :

1. Menemukan kumpulan frequent item. Sebuah itemset dikatakan frequent item jika memiliki frekuensi kemunculan minimal sama dengan nilai minimum support.

2. Membangkitkan aturan asosiasi dari itemset yang dikatakan frequent item. Aturan ini harus memenuhi nilai minimum support. • Support

Support bagi suatu aturan asosiasi adalah proporsi banyaknya kejadian pada basis data dimana proporsi sekumpulan item A dan proporsi sekumpulan item B terdapat pada sebuah transaksi. Definisi dari support, yaitu sebagai berikut :

support(A→B) = P(A U B) (1)

Pola Sekuensial

Pola sekuensial adalah daftar urutan dari sekumpulan item. Sebuah pola sekuensial dikatakan maksimal jika tidak mengandung pola sekuensial lainnya (Wang et al 2005). Sebuah pola sekuensial dengan item disebut dengan

k-sequence. Panjang pada sebuah pola sekuensial

adalah jumlah item yang terdapat pada pola sekuensial tersebut dan dilambangkan dengan |s|. Sebuah subsequence s’ dari s dilambangkan dengan s’ ⊆ s. Misalkan, sebuah pola sekuensial

a = <a1a2...an> merupakan subsequence dari b =

<b1b2...bm> jika terdapat integer i1 < i2 < ...in, 1

≤ ik ≤ m, sehingga a1 ⊆ b1, a2 ⊆ b2, ...., an ⊆ bm. Diberikan basis data transaksi D dan ambang batas minimum support ε, maka dapat didefinisikan sequential pattern mining adalah mencari nilai frequent sequence yang maksimal di antara semua pola sekuensial yang mempunyai nilai support lebih besar atau sama dengan ε. Dalam hal ini, waktu terjadinya transaksi juga akan dipertimbangkan dalam pencarian pola sekuensial.

Himpunan Fuzzy

Logika fuzzy merupakan generalisasi dari logika klasik yang hanya memiliki dua nilai keanggotaan, yaitu 0 dan 1. Dalam logika fuzzy nilai kebenaran suatu pernyataan berkisar dari sepenuhnya benar ke sepenuhnya salah. Inti dari himpunan fuzzy, yaitu fungsi keanggotaan yang menggambarkan hubungan antara domain himpunan fuzzy dengan nilai derajat keanggotaan. Hal yang membedakan antara himpunan boolean dan fuzzy, yaitu elemen pada himpunan fuzzy memiliki nilai derajat keanggotaan t (Cox 2005).

Hubungan pada himpunan fuzzy bersifat fungsional karena mengembalikan sebuah derajat keanggotaan untuk nilai yang terdapat pada domain x. Definisi dari derajat keanggotaan sebuah himpunan fuzzy f adalah sebagai berikut :

t = f(s,x) (2)

Peubah Linguistik

Peubah linguistik merupakan sebuah himpunan fuzzy yang membentuk aturan tertentu untuk sebuah variabel dan digunakan pada aturan fuzzy sebagai bagian dari hubungan fuzzy (Cox 2005).

Peubah linguistik dikarakterisasikan oleh

quintaple (x, T(x), X, G, M) dengan x adalah

nama peubah, T(x) adalah kumpulan dari

linguistic term, X adalah nilai interval x, G

adalah aturan sintak yang membangkitkan term dalam T(x), M adalah aturan semantik yang bersesuaian dengan nilai linguistik M(A), dengan M(A) menunjukkan fungsi keanggotaan untuk himpunan fuzzy dalam X. Sebagai contoh, jika frekuensi pengaksesan dipresentasikan

(13)

4 sebagai peubah linguistik, maka himpunan dari

linguistic term T(frekuensi akses) menjadi : T(frekuensi akses) = {rendah, sedang, tinggi}

Setiap term dalam T(frekuensi akses) dikarakterisasikan oleh himpunan fuzzy dalam X. Fuzzy C-Means

Fuzzy C-Means merupakan salah satu

metode pengklasteran data, dimana objek dikelompokkan ke dalam k kelompok atau klaster. Untuk melakukan teknik klastering ini, nilai k harus ditentukan terlebih dahulu. Pada teknik ini digunakan ukuran ketidakmiripan dalam mengelompokkan objek-objek tersebut. Ketidakmiripan bisa diterjemahkan dalam konsep jarak (Cox 2005).

Pada Fuzzy C-Means, setiap data bisa menjadi anggota dari beberapa klaster. Sesuai dengan konsep fuzzy yang berarti samar, maka batas-batas klaster dalam Fuzzy C-Means adalah

soft. Dalam Fuzzy C-Means, pusat klaster

dihitung dengan mencari nilai rata-rata dari semua titik dalam suatu klaster dengan diberi bobot berupa tingkat keanggotaan (degree of

belonging) dalam klaster tersebut.

Fuzzy Cardinality

Terdapat tiga metode untuk mengkomputasikan nilai fuzzy cardinality (Fiot

et al. 2005), yaitu :

1. Menghitung semua elemen yang memiliki nilai derajat keanggotaan tidak sama dengan nol.

2. Hanya memperhitungkan elemen yang memiliki nilai derajat keanggotaan lebih besar dari nilai ambang batas (threshold) yang telah didefinisikan.

3. Menambahkan nilai derajat keanggotaan dari masing-masing elemen. Metode perhitungan ini disebut juga Sigma Count. 4. Menambahkan nilai derajat keanggotaan

dari masing – masing elemen yang memiliki nilai lebih besar dari nilai ambang batas (threshold) yang telah ditentukan. Metode penghitungan ini disebut juga Thresholded

Sigma Count.

Fuzzy Candidate Sequence

Untuk membangkitkan suatu elemen kandidat pola sekuensial fuzzy maka harus terlebih dahulu dilakukan proses validasi, yaitu untuk memeriksa apakah dua buah fuzzy item yang terdapat pada sebuah fuzzy itemset tidak menunjuk pada sebuah atribut yang sama (Fiot

et al 2005).

Langkah awal yang harus dilakukan adalah menghitung nilai fuzzy support bagi masing-masing item dan hanya item yang memiliki nilai support lebih besar dari nilai minimum

support yang akan disimpan sebagai frequent sequence dengan nilai k berukuran satu.

Kandidat pola sekuensial dengan ukuran k, dikatakan sebagai k-sequence, diperoleh dengan mengkombinasikan frequent sequence dengan ukuran k-1. Proses tersebut akan berhenti jika tidak memungkinkan lagi untuk membangkitkan kandidat pola sekuensial dengan ukuran k+1. File Log Akses

Pengelolaaan server web secara efektif membutuhkan feedback atau aktivitas kinerja

server serta permasalahan-permasalahan yang

mungkin terjadi. Feedback ini dapat berupa informasi mengenai pengguna-pengguna yang mengakses situs web, apa yang diakses dan statusnya serta waktu pengaksesan. Informasi tersebut tersimpan pada server web terutama data log akses (Purnomo & Anindito 2006).

Common Log Format (CLF) untuk setiap

baris data pada log akses, yaitu :

remotehost rfc931 authuser [date] ”request” status bytes

Tabel 1 Deskripsi format data log akses Field Deskripsi

Remotehost Nama host atau alamat IP dari pengguna yang mengakses situs web.

rfc931 User name dari pengguna pada remote system seperti yang

dispesifikasikan pada RFC931.

Authuser Username yang melakukan

otentifikasi seperti yang dispesifikasikan pada RFC931. [date] Informasi tanggal dan waktu

saat melakukan request HTTP pewaktuan lokal.

(14)

5 Field Deskripsi

”request” Informasi HTTP request dari

pengguna.

Status Angka numerik yang

menyatakan kode status dari HTTP yang dikirimkan kepada pengguna.

Bytes Panjang bytes dari data yang dikirimkan kepada pengguna. Sumber : http://www-group.slac.stanford.edu

/techpubs/logfiles/info.html Totally Fuzzy

Diberikan sebuah basis data transaksi D yang berisi data yang mencatat transaksi yang dilakukan customer. Misalkan T adalah sekumpulan transaksi. Masing-masing transaksi meliputi tiga informasi : customer-id, waktu terjadinya transaksi, dan sekumpulan item. Sebuah itemset, (i1,i2,...,ik), merupakan himpunan bagian I = {i1,i2,..,im}. Sebuah pola sekuensial s merupakan himpunan item yang tidak kosong, yang dilambangkan dengan <s1s2...sp>. Secara umum, support bagi sebuah pola sekuensial adalah persentase customer yang memiliki s pada transaksi yang dilakukannya.

Sebuah fuzzy item didefinisikan sebagai hubungan antara sebuah item dengan sebuah

fuzzy set yang bersesuaian. Sebuah fuzzy item

dinotasikan dengan (x,α) dimana x merupakan sebuah item dan α merupakan fuzzy set dari item yang bersangkutan. Misalkan, (/php/tutor.htm,

lot) adalah sebuah fuzzy item dengan lot

merupakan sebuah fuzzy set yang didefinisikan oleh suatu derajat keanggotaan (membership

degree) pada pengaksesan item /php/tutor.htm.

Sebuah fuzzy itemset adalah himpunan fuzzy

item. Sebuah fuzzy itemset dinotasikan dengan

(X,A) dengan X menunjukkan kumpulan item dan A kumpulan dari fuzzy set dari item yang bersangkutan. Sebuah fuzzy sequence S = <s1... sn> adalah sebuah pola sekuensial yang terdapat pada fuzzy itemset, misalkan [(/php/tutor.htm,

lot) (/php/faq.php, little) (/php/functions.php, lot)].

Cara untuk mengkomputasikan nilai fuzzy

cardinality pada algoritma Totally Fuzzy adalah

dengan menggunakan metode Thresholded

Sigma Count (Fiot. C et al 2005). Nilai derajat

keanggotaan μα suatu atribut t pada domain x dinotasikan dengan μα(t[x]) dan nilai ambang

batas (threshold) dinotasikan dengan ω. Nilai derajat keanggotaan αa pada algoritma Totally Fuzzy didefinisikan sebagai berikut :

(3)

Formulasi penghitungan nilai Support

Totally Fuzzy (STF) bagi seorang customer c,

yaitu :

(4)

Nilai fuzzy support Fsupp bagi sebuah fuzzy

sequence dikomputasikan sebagai rasio jumlah customer yang memiliki pola sekuensial fuzzy

tertentu pada transaksi yang dilakukannya dibandingkan dengan jumlah total customer C pada basis data.

(5)

Derajat nilai sebuah fuzzy support STF(c,gS)

mengindikasikan bahwa pada transaksi yang dilakukan oleh seorang customer c terdapat

fuzzy sequence gS. Derajat nilai fuzyy support

dikomputasikan dengan menggunakan algoritma

CalcTotallySupport seperti yang ditunjukkan

pada Gambar 3. CalcTotallySupport

– Input : gS, candidate k-sequence;

Output : Fsupp fuzzy support for the sequence gS;

Fsupp, nbSupp,m 0;

For each customer client c Є C do m FindTotallySeq(g-S, Tc)

[the customer support degree is aggregated to

the current support]

nbSupp += m; End for

Fsupport nbSupport/T;

Return Fsupp;

Gambar 3 Algoritma CalcTotallySupport. Untuk menentukan sebuah frequent sequence, nilai minimum support ditentukan terlebih dahulu oleh pengguna. Sebuah pola sekuensial

fuzzy dikatakan frequent sequence jika

memenuhi kondisi bahwa support (s) > minSupp.

α

a

(t[x]) =

{

μ 0 else a (t[x]) if μa(t[x]) > ω

Σ

cєC Fsupp(X,A) =

___________

C

[ S

TF

(c,gS)]

STF (c, (X,A)) = [x, a] Є (X, A) [ αa (tj[x]) ] j = 1 θc

(15)

6 Gagasan utama dari sequential pattern mining

adalah untuk menemukan semua pola sekuensial yang memiliki nilai support lebih besar dari nilai

minimum support yang diberikan (Fiot. C et al

2005). Diagram alir metode Totally Fuzzy secara lengkap dapat dilihat pada Lampiran 1.

METODE PENELITIAN Proses Dasar Sistem

Proses dasar sistem mengacu pada proses dalam Knowledge Discovery from Data (KDD). Algoritma Totally Fuzzy diterapkan pada tahap

web mining. Diagram alur metode penelitian

dapat dilihat pada Gambar 4. Tahapan KDD tersebut dapat diuraikan sebagai berikut : 1. Pembersihan data

Data yang mencatat kode status selain 200 tidak akan diikutsertakan pada tahap selanjutnya. Kode status 200 mengindikasikan bahwa request berhasil dilakukan dan dikirimkan dari server web kepada pengguna.

2. Seleksi data

Pada tahap seleksi data dilakukan pemilihan atribut data yang dibutuhkan sebagai masukkan yang digunakan dalam tahap web mining. Terdapat tiga buah atribut yang akan digunakan yaitu : remotehost / alamat IP, date / tanggal pengaksesan yang dilakukan pengguna dan URL yang diminta oleh pengguna. Selanjutnya dilakukan pemisahan data yang mencatat

request dari pengguna yang berasal dari internal

dan eksternal IPB. 3. Transformasi data

Data diubah ke dalam bentuk yang sesuai sebagai masukkan bagi algoritma Totally

Fuzzy. Data tersebut dikelompokkan

berdasarkan alamat IP masing-masing pengguna, selanjutnya diurutkan secara menaik berdasarkan waktu pengaksesannya.

Sebagai ilustrasi tahapan algoritma Totally

Fuzzy maka akan digunakan kumpulan data

transaksi seperti yang ditunjukkan pada Tabel 2, sel yang kosong menunjukkan bahwa customer tidak melakukan pembelian terhadap item yang bersangkutan. Notasi Cn digunakan untuk

melambangkan customer dan d digunakan untuk melambangkan hari pada saat customer tersebut melakukan pembelian produk.

Web Mining

Gambar 4 Diagram alur metode penelitian.

Data akses log Mulai

Seleksi data

Pengguna Eksternal

Pengklasteran data

Pembentukan membership function

Data fuzzy

Pemberian nilai threshold

Pembentukan nilai fuzzy support bagi masing-masing halaman

Pemberian minimum support

Pembentukan k-sequences Ya Tidak Evaluasi Pola Pengguna internal Representasi Pengetahuan Apakah terdapat K+1 sequences ? Selesai Output

Pembentukan frequent sequence

Evaluasi Pola Pengguna eksternal Pengguna Internal

(16)

S haru data func met bagi Gam akhi yang 0 0 0 0 1 0 0 0 0 1 Su 0 0 Sebelum melal us diubah terle a fuzzy. Fung ction) didapa ode Fuzzy C i masing-mas mbar 5(a), 5( irnya didapatk g memiliki nila 0 0.2 0.4 0.6 0.8 1 1.2 0 0.2 0.4 0.6 0.8 1 1.2 T umber : Fiot. Mini little 1 2 1 ,5 1 1 ,5 little Customer D C1 d d d d d C2 d d d d C3 d d d d d C4 d d d d d d

lui tahap minin ebih dahulu k gsi keanggotaa

atkan dengan

C-Means. Fung

sing item dit (b), 5(c), 5(d) kan data dala

ai yang berkisa 1 1 Tabel 2 Data t C et al. Spee ing. Technical 2 3 4 Candy 5 (a) 2 3 4 Soda lot 5 (b) Date Candy d1 2 d2 1 d3 4 d4 d5 d1 2 d2 d3 d4 3 d1 d2 3 d3 d4 d5 d1 d2 d3 2 d4 d5 d6 ng, data terseb ke dalam bentu an (membersh n menerapk gsi keanggota tunjukkan pa dan 5(e). Pa m bentuk fuz ar antara 0 dan transaksi custo

edy, Mini and

Report 5035, h lot 5 5 Item Toothpaste 3 4 1 2 2 but uk hip an an da da zzy n 1. omer Totally Fuzzy: http://ww.lirmm ms Soda Ball 1 1 1 5 2 1 2 1 4 2 3 2 0 0.2 0.4 0.6 0.8 1 1.2 0 0.2 0.4 0.6 0.8 1 1.2 0 0.2 0.4 0.6 0.8 1 1.2 : Three Ways f m.fr. 1 1 0.5 little m 1 1 0,5 few 1 1 0,5 few Gambar 5 (a Fungsi keang Videogame 2 3 5 4 1 1 1

for Fuzzy Sequ

2 3 4 Toothpaste 5 (c) medium 2 3 4 lot Ball 5 (d) 2 3 4 medium Videogame a), 5 (b), 5 (c), ggotaan masin 5 (e) . uential Pattern 5 lot 5 t 5 lot 5 (d) dan 5 (e) ng-masing item 7 ns ) m.

(17)

8 Tabel 3 merupakan konversi data yang

terdapat pada Tabel 2 ke dalam bentuk derajat keanggotaan fuzzy. Fungsi keanggotaan tersebut dibentuk berdasarkan data yang terdapat pada basis data transaksi. Setiap nilai atau frekuensi pengaksesan memiliki nilai derajat keanggotaan tertentu terhadap masing-masing fuzzy set.

Pada penelitian ini nilai k atau fuzzy set akan ditentukan terlebih dahulu, yaitu frekuensi pengaksesan rendah, sedang dan tinggi.

4. Web Mining

Tahap ini merupakan inti untuk melakukan analisis terhadap data. Pada tahap ini diterapkan penggunaan algoritma Totally Fuzzy yang diperkenalkan oleh Celine Fiot, Anne Laurent dan Maguelonne Teisseire (2005).

Tahapan-tahapan yang akan digunakan pada metode tersebut, yaitu:

a. Menentukan nilai ambang batas (threshold) ώ terhadap data. Sebagai ilustrasi pengguna menentukan nilai ambang batas ώ sebesar 0,2 , maka nilai derajat keanggotaan yang lebih kecil dari 0,2 tidak diperhitungkan dan bernilai 0.

b. Penerapan algoritma Totally Fuzzy bagi masing-masing kandidat pola sekuensial yang terbentuk, yaitu :

1. Dilakukan proses pembentukan kandidat pola sekuensial yang hanya mengandung sebuah item atau

1-sequence. Proses komputasi dilakukan

dengan menggunakan Thresholded Sigma

Count. Nilai fuzzy support bagi item

berukuran satu ditunjukkan pada Tabel 4. Nilai tersebut didapatkan dengan menggunakan algoritma Totally Fuzzy.

Hanya pola sekuensial yang merupakan frequent sequence yang akan diikutsertakan dalam tahap selanjutnya. Misalkan ditentukan nilai minimum support sebesar 55 %, maka hanya item [candy,

little], [toothpaste, medium], [soda, lot],

[videogame, medium] dan [videogame, lot] yang merupakan frequent sequence dan diikutsertakan dalam proses pembentukan kandidat item berukuran dua.

2 Pada tahap ini selanjutnya akan dilakukan proses scanning data untuk memeriksa apakah pada transaksi yang dilakukan oleh tiap pengguna terdapat

item yang merupakan item pertama

pada kandidat pola sekuensial yang dicari. Jika ya, maka dilakukan proses pembentukan sebuah path baru. Masing-masing path menyimpan tiga buah informasi yaitu : item pada pola sekuensial yang telah ditemukan (Seq),

item yang selanjutnya akan dicari

(curIS), dan nilai derajat keanggotaan (curDeg). Hanya path yang memiliki nilai derajat keanggotaan yang paling tinggi yang akan disimpan.

Items

Candy (%) Toothpaste (%) Soda (%) Ball (%) Videogame (%) li L li m L li L f L f m L 87,5 50 25 62,5 37,5 25 100 25 50 0 62,5 67,5

Tabel 4 Nilai fuzzy support bagi masing-masing item

D

Items

Candy Toothpaste Soda Ball Videogame li L li m L li L f L f m L d1 1 0 d2 1 0 0 0,5 0,5 0,5 0,5 d3 0 1 0,5 0,5 d4 0,5 0,5 0 1 d5 0 1 0 1 0

Tabel 3 Nilai derajat keanggotaan bagi customer 1 dengan nilai ambang batas sebesar 0,3

Keterangan :

li : little, L : lot, m: medium, f : few

Keterangan :

(18)

9 <([candy,little])([soda,lot])>, ø ,[0,75]) <([candy,little])([soda,lot])>, ø ,[1]) d1 pth1  pth1 :  updated <([candy,little])>,([soda,lot]),[1]) d2 pth1 :  updated  & closed  <([candy,little])([soda,lot])>, ø ,[0,75]) pth2 :  created  <([candy,little])>,([soda,lot]),[1]) d3 pth1 :  deleted pth2 :  updated  & closed  d4 pth2 :  not  changed  d5 pth2 :  improved   pth2 :  return of  curDeg 

Sebagai ilustrasi penerapan algoritma Totally

Fuzzy, maka akan dilakukan proses komputasi

pada data transaksi seperti yang terdapat pada Tabel 3 untuk mendapatkan nilai fuzzy support terhadap kandidat pola sekuensial gS = <([candy,little]),([soda,lot]) bagi customer 1.

Sebagai langkah awal yang harus dilakukan yaitu proses inisialisasi untuk membentuk sebuah path kosong pth1 = (ø,([candy,little]), 0).

Pth1 bernilai 0 karena belum dilakukan proses scanning terhadap data transaksi.

Langkah-langkah proses scanning data menggunakan algoritma Totally Fuzzy adalah sebagai berikut :

• Pada transaksi d1 : lakukan proses update pada path pth1, karena transaksi pada d1

terdapat ([candy,little]) yang merupakan

item pertama pada kandidat pola sekuensial

yang dicari, sehingga pth1 saat ini bernilai pth1 = (<([candy, little])>, ([soda, lot]), [1]).

• Pada transaksi d2 : lakukan proses pembentukan sebuah path baru pth2 =

(<([candy, little])>,([soda, lot]), [1]). • Selanjutnya lakukan proses update pada

pth1 karena ([soda, lot]) yang merupakan curIS pada pth1 terdapat pada transaksi d2,

sehingga pth1 saat ini bernilai pth1 =

(<([candy, little])([soda, lot]), ø, [0,75]). Nilai curDeg pada pth1 saat ini didapatkan

dari nilai curDeg pth1 sebelum proses update dijumlahkan dengan nilai derajat

keanggotaan ([soda, lot]) pada transaksi d2, kemudian dicari nilai rataannya. Saat ini

curDeg pada pth1 bernilai 0,75. Pth1 ditutup

(path closed) karena telah mengandung semua item pada itemset pola sekuensial yang dicari.

• Pada transaksi d3 : lakukan proses update pada pth2 karena [soda,lot] yang merupakan curIS pada pth2 terdapat pada transaksi d3,

sehingga pth2 saat ini bernilai pth2=(<([candy,little])([soda,lot])>,ø,[0,75]

). Pth2 ditutup karena telah mengandung

semua item pada itemset pola sekuensial yang dicari.

• Untuk optimasi proses scanning terhadap datanya, maka untuk dua path yang telah lengkap (path tersebut telah mencakup semua itemset pada pola sekuensial yang dicari), hanya satu path yang memiliki nilai derajat keanggotaan terbesar yang akan disimpan. Karena pth1 dan pth2 memiliki

nilai yang sama. Maka hanya salah satu dari

path tersebut yang akan dibuang. Misalkan,

nilai pada pth1 yang dibuang, maka nilai

pada pth2 yang akan mewakili besarnya

derajat keanggotaan customer 1 terhadap pola sekuensial ([candy, little], [soda, lot)].

Gambar 6 Proses scanning data customer 1.

Pada transaksi d5 : Terdapat [soda,lot] yang memiliki nilai lebih tinggi yaitu 1, sehingga terjadi proses improved terhadap nilai

curDeg pada pth2. Nilai pth2 yang

sebelumnya bernilai 0,75 mengalami peningkatan menjadi 1. Nilai tersebut berasal dari nilai [candy, little] yang terdapat pada transaksi d1 dijumlahkan dengan nilai [soda, lot] yang terdapat pada transaksi d5, kemudian dicari nilai rataannya. Selanjutnya proses scanning data dilanjutkan seperti ditunjukkan pada Gambar 6.

• Lakukan langkah-langkah diatas bagi masing-masing customer. Nilai fuzzy

cardinality bagi masing-masing customer

dijumlahkan kemudian dibagi dengan jumlah total customer pada basis data transaksi sehingga didapatkan nilai persentase fuzzy support bagi kandidat pola sekuensial <([candy, little]),([soda, lot])> sebesar 93,75 %.

(19)

10 3 Nilai fuzzy support bagi frequent

sequence dengan ukuran k diperoleh

dengan mengkombinasikan frequent

sequence dengan ukuran k-1. Proses

ini akan berhenti jika tidak memungkinkan lagi untuk membangkitkan kandidat pola sekuensial dengan ukuran k+1. Tahapan algoritma Totally Fuzzy secara lengkap dapat dilihat pada Lampiran 1.

5. Analisis Pola

Pada tahap ini akan dianalisis pola sekuensial mana yang dikatakan frequent

sequence dan mewakili pola pengaksesan

pengguna.

6. Representasi pengetahuan

Pola sekuensial yang telah ditemukan kemudian dipresentasikan kepada pengguna agar mudah dipahami dan diinterpretasikan. Lingkungan Pengembangan Sistem

Spesifikasi perangkat keras dan perangkat lunak yang digunakan dalam pengembangan sistem adalah sebagai berikut :

a. Perangkat keras dengan spesifikasi : • Processor : Intel(R) Core(TM) 2 Duo • Memory : 1 GB

• Harddisk : 160 GB

• Monitor 12.1” WXGA dengan resolusi 1024 x 768 pixel

• Alat input : mouse dan keyboard b. Perangkat lunak yang digunakan :

• Sistem Operasi : Microsoft Windows XP Professional dan Linux Ubuntu Feasty Fawn 7.10

• Microsoft Excel 2007 sebagai lembar kerja (worksheet) dalam pengolahan data. • Matlab 7.0.1 sebagai bahasa

pemrograman.

• GAWK sebagai media yang digunakan untuk praproses data.

HASIL DAN PEMBAHASAN

Data yang digunakan dalam penelitian ini adalah data log akses server web situs web IPB (www.ipb.ac.id). Data tesebut merupakan data pada server web IPB selama periode waktu 5 Januari hingga 18 Juni 2007 yang diperoleh

dalam bentuk file Common Log Format (CLF). Deskripsi data tersebut dapat dilihat pada Lampiran 2.

Sebelum di-mining, data harus melewati tahap praproses (preprocessing) terlebih dahulu yang meliputi pembersihan data, transformasi data, dan seleksi data. Hal ini dilakukan agar data benar-benar lengkap, valid, dan sesuai dengan masukkan yang dibutuhkan oleh algoritma.

Pembersihan Data

Pada tahap ini dilakukan proses pembersihan terhadap data, data yang dibuang dan tidak diikutsertakan dalam tahap berikutnya, yaitu : 1. Data yang mencatat request terhadap

resource data citra, yaitu jpg, png dan gif

yang berukuran < 6 KB. Data citra yang berukuran > 6 KB dianggap merupakan sebuah konten dari halaman situs web dan bukan data yang hanya merupakan data pelengkap dari sebuah halaman situs web. 2. Data yang mencatat proses request terhadap

data css, emz, ico, js, robots, swf, vbs, cgi, exe dan template.

3. Data yang mencatat kode status 401, 403, dan 404. Kode status 401, 403, dan 404 menunjukkan bahwa terjadi kegagalan (failed) dalam proses request. Kode status 401 menunjukkan bahwa terjadi kegagalan dalam proses autentifikasi, kode status 403 menunjukkan bahwa terdapat suatu larangan tertentu dalam proses request (forbidden request) terhadap subdirektori yang diminta oleh pengguna, dan kode status 404 menunjukkan bahwa file yang diminta oleh pengguna tidak ditemukan pada server (file not found).

Data yang diikutsertakan dalam tahap selanjutnya, yaitu :

1. Data yang mencatat kode status 200. Kode status 200 mengindikasikan bahwa request berhasil dilakukan dan server web mengirimkan halaman situs yang diminta kepada pengguna.

2. Data yang mencatat request terhadap sebuah halaman situs web.

Pada tahap ini dihasilkan koleksi data yang valid dan sesuai dengan input yang dibutuhkan oleh algoritma Totally Fuzzy. Setelah dilakukan proses pembersihan data maka diperoleh data

(20)

11 bersih sebanyak 2.268.596 record yang terdiri

atas 25.162 record yang berasal dari pengguna internal dan 2.243.434 record yang berasal dari pengguna eksternal. Contoh data yang telah melalui tahap pembersihan data ditunjukkan pada Lampiran 3.

Seleksi Data

Koleksi data log akses server web IPB yang tersedia kemudian diseleksi untuk mendapatkan data yang akan di-mining.

Prosedur yang dilakukan pada tahap seleksi data adalah sebagai berikut :

1. Memilih tiga atribut dari tujuh atribut yang tersedia. Pada log akses tercatat tujuh buah atribut. Namun atribut yang akan digunakan sebagai masukkan bagi algoritma Totally

Fuzzy hanya tiga atribut, yaitu remotehost /

alamat IP, date atau tanggal terjadinya proses pengaksesan, dan URL yang diakses oleh pengguna.

2. Melakukan pemisahan data yang mencatat

request dari pengguna yang berasal dari

internal dan eksternal IPB. Untuk dapat mengetahui bahwa request tersebut berasal dari internal maupun eksternal IPB dapat dilihat dari remotehost / alamat IP server

proxy masing-masing pengguna. Alamat IP

dari server proxy kelompok pengguna yang berasal dari internal IPB, yaitu berkisar di antara 10.x.x.x s/d 10.255.255.255 (class A), 172.16-18.x.x s/d 172.32.x.x (class B), 192.168.0.0 s/d 192.168.255.255 (class C) dan 118.97.49.x, sedangkan alamat IP dari

proxy selain alamat IP dari server proxy

yang termasuk ke dalam kelompok pengguna internal akan dianggap sebagai kelompok pengguna eksternal.

Transformasi Data

Pada tahap ini dilakukan beberapa proses transformasi data, yaitu :

1. Proses konversi format data yang sesuai untuk digunakan sebagai masukkan algoritma. Data yang semula terdapat dalam bentuk Common Log Format (CLF) kemudian ditransformasikan terlebih dahulu ke dalam format text (*.txt) dan selanjutnya diubah ke dalam format data Microsoft Excel (*.xlsx). Data dalam format *.xlsx inilah yang kemudian akan digunakan

sebagai masukkan bagi algoritma Totally

Fuzzy.

2. Data dikelompokkan berdasarkan alamat IP masing-masing pengguna. Kemudian data diurutkan berdasarkan hari pengaksesan serta dilakukan penghitungan banyaknya pengaksesan terhadap masing-masing halaman situs web bagi tiap pengguna. Setelah melalui tahapan tersebut maka untuk kelompok pengguna internal terdapat 572 baris data dengan 54 alamat IP yang berbeda, sedangkan untuk kelompok pengguna eksternal terdapat sebanyak 393.622 baris data dengan 30.269 alamat IP yang berbeda.

3. Proses konversi atribut ke dalam bentuk numerik. Atribut tanggal yang semula berformat date ditransformasikan ke dalam bentuk numerik (datenum). Selain itu, alamat IP dan URL dinotasikan ke dalam bentuk numerik dengan kode yang bersifat unik. Format data tersebut dapat dilihat pada Lampiran 4 dan 5. Hal tersebut dilakukan agar lebih sederhana dan mempermudah proses komputasi terhadap data. Alamat IP dikonversikan ke dalam bentuk numerik dengan menggunakan rumus sebagai berikut :

(5) Simbol w, x, y dan z menggambarkan digit pada alamat IP yang dipisahkan oleh tanda titik. Nilai maksimum w, x ,y dan z adalah 255, yang menunjukkan nilai maksimum digit angka pada alamat IP. 4 Data ditransfomasi ke dalam bentuk

himpunan fuzzy yang memiliki nilai berkisar antara 0 dan 1. Pada tahap ini digunakan metode Fuzzy C-Means untuk membentuk fungsi keanggotaan. Fungsi keanggotaan tersebut dibentuk berdasarkan data yang diperoleh bagi masing-masing halaman situs web. Masing-masing halaman situs web dipartisi ke dalam tiga fuzzy set, yaitu yang memiliki frekuensi pengaksesan rendah, sedang dan tinggi. Dari data tercatat 41 halaman situs web yang diakses oleh pengguna internal dan 48 halaman situs web yang diakses pengguna eksternal. Bagi masing-masing halaman situs web tersebut akan dibentuk fungsi keanggotaan (membership function) sehingga didapatkan nilai derajat keanggotaan bagi

(21)

12 masing frekuensi pengaksesan. Gambar 7(a)

dan 7(b) menunjukkan fungsi keanggotaan halaman home bagi data pengguna internal dan eksternal.

Gambar 7(a) dan 7(b) adalah fungsi keanggotaan halaman home bagi data pengguna internal dan eksternal. Web Mining

Tahapan web mining diterapkan dengan menggunakan metode Totally Fuzzy (Fiot. C et

al 2005) untuk membentuk semua kemungkinan frequent sequence. Secara garis besar, proses ini

dibagi menjadi 2 bagian, yaitu melakukan proses komputasi untuk mendapatkan nilai fuzzy

support bagi masing-masing fuzzy item dan

hanya item dengan nilai support lebih besar dari nilai minimum support yang akan disimpan sebagai frequent sequence berukuran satu. Kemudian melakukan proses pembentukan kandidat pola sekuensial berukuran k yang didapatkan dari kombinasi frequent sequence berukuran k-1.

Proses tersebut akan berhenti jika tidak memungkinkan lagi untuk melakukan proses pembentukan kandidat pola sekuensial berukuran k+1. Percobaan dilakukan terhadap dua kelompok data, yaitu pengguna internal dan eksternal IPB yang telah mengakses situs web IPB (www.ipb.ac.id) dan telah melewati tahapan praproses (data internal sebanyak 25.162 record

dan data eksternal sebanyak 112.140 record). Dalam pengambilan data eksternal diterapkan metode Simple Random Sampling. Hal ini dikarenakan jumlah data pengguna eksternal yang tersedia dalam jumlah yang besar dan terdapat keterbatasan dalam perangkat lunak yang digunakan.

Pada data pengaksesan pengguna eksternal di antara 5 Januari hingga 18 Juni 2007 dengan selang waktu satu minggu dilakukan pengambilan data hanya pada hari dengan jumlah pengguna terbanyak (ditunjukkan dari banyaknya jumlah alamat IP pengguna yang berbeda pada data per hari). Alamat IP yang berbeda diasumsikan sebagai pengguna yang berbeda. Kemudian dilakukan proses analisis terhadap data yang mencatat request terhadap situs web IPB hingga hierarki level tiga. Pembentukan fuzzy support bagi masing-masing halaman situs web

Sebagai langkah awal pengguna harus terlebih dahulu menentukan nilai ambang batas (threshold). Nilai ambang batas (threshold) digunakan untuk menyaring data pada basis data

fuzzy, sedangkan nilai minimum support

digunakan untuk menyaring nilai fuzzy support bagi masing-masing pola sekuensial setelah dilakukan proses komputasi menggunakan algoritma Totally Fuzzy. Nilai derajat

keanggotaan yang bernilai lebih kecil dari nilai ambang batas tidak akan diperhitungkan. Metode ini dikenal juga sebagai Thresholded

Sigma Count.

Selanjutnya dilakukan proses komputasi bagi masing-masing halaman situs web dengan menggunakan algoritma Totally Fuzzy sehingga didapatkan nilai persentase pengaksesan bagi masing-masing halaman situs web dengan kategori pengaksesan rendah, sedang dan tinggi. • Data Pengguna Internal IPB

Data hasil percobaan didapatkan dengan penerapan algoritma Totally Fuzzy pada data pengguna internal IPB yang mengakses situs web IPB (www.ipb.ac.id) dengan time

constraint sekitar 6 bulan. Pada data log akses

situs tersebut tercatat 41 halaman web yang diakses oleh pengguna. Percobaan dilakukan terhadap beberapa nilai ambang batas di antara 0,1 hingga 0,6 dengan penambahan nilai ambang batas sebesar 0,05. Nilai fuzzy support 0 0.2 0.4 0.6 0.8 1 1.2 1 0 0.2 0.4 0.6 0.8 1 1.2 1 0,5 1 1 1,5 2 2,5 3 3,5 4 7 (a)

rendah sedang tinggi

1

0,5

5 10 15 20 25 7 (b)

(22)

13 terhadap masing-masing halaman web

berdasarkan nilai ambang batas secara lengkap dapat dilihat pada Lampiran 6.

Dari data hasil percobaan menunjukkan bahwa hanya delapan halaman yang memiliki nilai fuzzy support di atas 10% dengan nilai ambang batas sebesar 0,3 yaitu halaman 10 (home), halaman 11 (ipb-bhmn), halaman 18 bhmn/akademik), halaman 21 (ipb-bhmn/others), halaman 22 (ipb-bhmn/ipbphoto), halaman 28 (id/), halaman 34 (id/uploadpictures) serta halaman 54 (ipb-bhmn/gallery) .

Halaman-halaman tersebut merupakan halaman yang sering diakses oleh pengguna situs web IPB yang berasal dari ruang lingkup internal IPB karena memiliki nilai fuzzy support yang cukup besar dibandingkan halaman lainnya. • Data Pengguna Eksternal IPB

Percobaan dilakukan terhadap data pengguna eksternal IPB yang mengakses situs web IPB (www.ipb.ac.id) dengan time constraint sekitar 6 bulan. Dari data yang tercatat pada data log akses situs web tersebut tercatat 48 halaman yang diakses oleh pengguna.

Data hasil percobaan didapatkan dengan penerapan algoritma Totally Fuzzy dengan beberapa nilai ambang batas di antara 0,1 hingga 0,6 dengan penambahan nilai ambang batas sebesar 0,05. Nilai fuzzy support terhadap masing-masing halaman web berdasarkan nilai ambang batas secara lengkap dapat dillihat pada Lampiran 7.

Dari data hasil percobaan menunjukkan bahwa hanya tujuh halaman yang memiliki nilai

fuzzy support di atas 10%, yaitu halaman 10

(home), halaman 11 (ipb-bhmn), halaman 12 bhmn/direktori), halaman 18 (ipb-bhmn/akademik), halaman 21 (ipb-bhmn/others), halaman 22 (ipb-bhmn/ipbphoto), dan halaman 28 (id/).

Pembentukan frequent sequence

Pada tahap ini, metode sequential pattern

mining diterapkan untuk membentuk semua

kemungkinan frequent sequences dengan menggunakan algoritma Totally Fuzzy. Sebuah

sequence berukuran k merupakan kombinasi dari sequence berukuran k-1.

• Data Pengguna Internal IPB

Dilakukan percobaan terhadap data pengguna internal IPB yang tercatat pada data log akses server web situs web IPB dengan

time constraint sekitar 6 bulan. Pengujian dilakukan dengan minimum support dari 3% hingga 56% serta variasi nilai ambang batas dari 0,1 hingga 0,6 dengan penambahan sebesar 0,05. Grafik yang menunjukkan jumlah frequent

sequence yang terbentuk dengan threshold

sebesar 0,2 , 0,4 dan 0,6 serta beberapa variasi nilai minimum support dapat dilihat pada Gambar 8 (a), 8 (b) dan 8 (c).

Dari grafik pada Gambar 8 (a), 8 (b) dan 8 (c), jumlah maksimal frequent sequences yang terbentuk adalah 5.470, 5.237 dan 4.085 buah pada posisi minimum support 3%. Nilai

minimum support tertinggi hingga masih

terdapat frequent sequence yang terbentuk adalah 56% dengan nilai ambang batas sebesar 0,2 dan 0,4 yaitu 1-sequence sebanyak satu buah. 0 1000 2000 3000 4000 5000 6000 0 20 40 60 jumlah  frequent  sequence  ( buah) Minimum Support (%) Pembentukan frequent sequence dengan threshold 0,2 0 1000 2000 3000 4000 5000 6000 0 20 40 60 jumla h  frequent  sequence  (buah) Minimum Support (%) Pembentukan frequent sequence dengan threshold 0,4 1 1 64 64 113 64 532 532 3350 5470 2647 5237 8 (b) 8 (a)

(23)

14

Pada beberapa minimum support yang digunakan pada saat percobaan, ternyata

frequent sequence tidak terbentuk. Hal ini

disebabkan karena tidak adanya 2-sequences yang terbentuk. Tidak terbentuknya 2-sequences disebabkan oleh semua 2-sequences hasil penggabungan dari kombinasi 1-sequence mempunyai nilai fuzzy support lebih rendah dari nilai minimum support.

Nilai fuzzy support 1-sequence tertinggi pada setiap nilai threshold umumnya berkisar di antara 55-56% yang didapatkan dari proses komputasi sequence (10 2) atau halaman home dengan kategori pengaksesan rendah. Hal ini dikarenakan halaman home pada situs web IPB sudah mencakup semua link menuju informasi

yang diinginkan oleh pengguna dan untuk mengakses menu lain umumnya pengguna harus melewati halaman home ini terlebih dahulu. Nilai fuzzy support berdasarkan nilai ambang batas dan minimum support secara lengkap dapat dilihat pada Lampiran 8.

Berdasarkan data hasil percobaan pada Tabel 5 dapat dilihat bahwa semakin besar nilai

minimum support yang diberikan maka akan

semakin sedikit jumlah maksimal frequent

sequences yang terbentuk. Banyaknya

maksimal item yang dapat dibentuk pada sebuah

sequence adalah lima buah (5-sequences), yaitu

terbentuk ketika diberikan nilai minimum

support sebesar 15%. Hal tersebut menunjukkan

bahwa terdapat paling banyak lima halaman yang diakses oleh pengguna internal IPB secara sekuensial. Contoh 5-sequences yang terbentuk adalah [(10 2) (11 2) (18 2) (34 2) (28 2)] dengan nilai fuzzy support sebesar 56,30%. • Data Pengguna Eksternal IPB

Data hasil percobaan didapatkan dari penerapan algoritma Totally Fuzzy pada data pengguna eksternal IPB yang mengakses situs web IPB (www.ipb.ac.id) dengan time

constraint sekitar 6 bulan dapat dilihat pada

lampiran 9. Percobaan dilakukan dengan

minimum support dari 14% hingga 65% serta

variasi nilai ambang batas dari 0,1 hingga 0,6 dengan penambahan sebesar 0,05. Gambar 9 (a), 9 (b) dan 9 (c) menggambarkan jumlah frequent

sequence yang terbentuk berdasarkan nilai

ambang batas dan minimum support. 0 1000 2000 3000 4000 5000 0 20 40 60 jumla h  frequent  sequence  (buah) Minimum Support (%) Pembentukan frequent sequence dengan threshold 0,6 Minimum Support Threshold 0,1 0,15 0,2 0,25 0,3 0,35 0,4 0,45 0,5 0,55 0,6 56 1 1 1 1 1 1 1 1 - - - 34 15 15 15 15 15 15 15 15 15 15 15 21 64 64 64 64 64 64 64 64 64 64 15 19 113 113 113 113 113 113 64 64 64 64 64 15 200 200 200 200 200 200 200 200 200 200 200 10 532 532 532 532 532 532 532 532 531 531 531 9 845 846 777 780 717 784 720 720 653 716 653 8 1.149 1.146 1.076 1.072 998 1.149 1.074 1.153 1.150 1.003 1.036 7 1.553 1.384 1.545 1.458 1.546 1.468 1.467 1.554 1.385 1.303 1.076 6 1.814 1.631 1.816 1.723 1.817 1.652 1.652 1.743 1.564 1.479 1.396 5 2.152 1.957 2.153 2.055 2.150 2.052 1.958 2.058 1.867 1.959 1.864 4 3.590 3.214 3.350 3.043 3.362 2.866 2.647 2.721 2.505 2.613 2.330 3 5.465 5.025 5.470 4.997 5.474 4.944 5.237 4.996 4.894 5.183 4.085

Tabel 5 Jumlah frequent sequence berdasarkan nilai ambang batas dan minimum support (internal) Gambar 8 (a), 8 (b) dan 8 (c) adalah jumlah

frequent sequence terhadap nilai threshold dan minimum support

terhadap data pengguna internal 0 15 64 531 2330 4085 8 (c)

(24)

15 Minimum Support Threshold 0,1 0,15 0,2 0,25 0,3 0,35 0,4 0,45 0,5 0,55 0,6 65 1 1 1 1 1 1 - - - 50 4 4 4 4 4 4 4 4 4 4 4 34 4 4 4 4 4 4 4 4 4 4 4 23 15 15 15 15 15 15 15 15 4 4 4 19 64 64 64 64 64 64 64 64 15 15 15 18 64 64 64 64 64 64 64 64 64 64 64 17 64 64 64 64 64 64 64 64 64 64 64 16 325 325 325 325 325 325 64 64 64 64 64 15 325 325 325 325 325 325 325 325 325 325 64 14 325 325 325 325 325 325 325 325 325 325 325 9 (a) 9 (b)

Berdasarkan grafik pada Gambar 8 (a), 8 (b) dan 8 (c), dapat dilihat bahwa jumlah maksimal

frequent sequence yang terbentuk adalah 325

buah pada posisi minimum support 14%, 15% dan 16%. Nilai minimum support tertinggi hingga masih terdapat frequent sequences yang terbentuk adalah 65% dengan nilai ambang batas sebesar 0,2 yaitu 1-sequence sebanyak satu buah. Hal ini menunjukkan bahwa untuk penggunaan minimum support di atas 65% tidak menghasilkan frequent sequence .

Nilai fuzzy support 1-sequence tertinggi pada setiap nilai threshold umumnya berkisar diantara 65-64% yang didapatkan dari proses komputasi

sequence (10 2) atau halaman home dengan

kategori pengaksesan rendah. Nilai fuzzy 0 50 100 150 200 250 300 350 0 20 40 60 80 Jumlah  frequent  sequence  ( buah) Minimum Support (%) Pembentukan frequent sequence dengan threshold 0,2 0 50 100 150 200 250 300 350 0 20 40 60 80 Jumlah  frequent  sequence  ( buah) Minimum Support (%) Pembentukan frequent sequence dengan threshold 0,4 0 50 100 150 200 250 300 350 0 20 40 60 80 Jumlah  frequent  sequence  ( buah) Minimum Support (%) Pembentukan frequent sequence dengan threshold 0,6

Tabel 6 Jumlah frequent sequence berdasarkan nilai ambang batas dan minimum support (eksternal) Gambar 9 (a), 9 (b) dan 9 (c) adalah jumlah

frequent sequence terhadap nilai threshold dan minimum support

terhadap data pengguna eksternal. 325 64 15 4 4 1 325 64 15 4 4 0 325 64 4 4 4 15 0 9 (c)

(25)

16

support berdasarkan nilai ambang batas dan minimum support secara lengkap dapat dilihat

pada Lampiran 9.

Dengan menerapkan algoritma Totally Fuzzy ternyata jumlah maksimal item yang dapat dibentuk pada sebuah pola sekuensial adalah lima buah (5-sequences). Hal ini menunjukkan bahwa jumlah halaman yang diakses oleh pengguna eksternal secara sekuensial adalah paling banyak lima halaman. Contoh

5-sequences yang terbentuk adalah [(10 2) (28 2)

(12 2) (11 2) (18 2)] dengan nilai fuzzy support sebesar 64,84%.

Berdasarkan data pada Tabel 6 diperoleh informasi bahwa peningkatan nilai threshold ternyata tidak terlalu mempengaruhi jumlah

frequent sequence yang terbentuk kecuali untuk

pembentukan 1-sequence. Variasi jumlah

frequent sequence yang terbentuk lebih

dipengaruhi oleh variasi nilai minimum support . Waktu eksekusi yang diperlukan untuk membentuk frequent sequence sangat

dipengaruhi oleh nilai ambang batas dan

minimum support yang digunakan.

Perbandingan waktu eksekusi yang diperlukan untuk membentuk frequent sequence dari seluruh percobaan yang telah dilakukan dapat dilihat pada Gambar 10 dan 11.

Gambar 11 Grafik perbandingan waktu eksekusi terhadap data pengguna eksternal.

Menurut Gambar 10 dan 11, semakin tinggi nilai minimum support yang digunakan maka semakin cepat waktu yang diperlukan untuk membentuk frequent sequence. Hal ini disebabkan semakin besar nilai minimum

support maka akan semakin sedikit sequence

yang membentuk frequent sequence sehingga waktu komputasi untuk pembentukan frequent

sequence akan semakin cepat. Jumlah pola

sekuensial yang semakin sedikit disebabkan oleh banyaknya pola sekuensial yang memiliki nilai

fuzzy support di bawah nilai minimum support

yang digunakan. Selain itu, juga diperoleh informasi bahwa semakin besar nilai ambang batas yang diberikan maka akan semakin cepat waktu yang digunakan untuk membentuk

frequent sequence.

Hal tersebut disebabkan karena makin sedikitnya jumlah data yang memiliki nilai di atas nilai ambang batas yang ditentukan.

Evaluasi Pola

Seluruh frequent sequence yang dihasilkan pada tahap web mining kemudian dievaluasi untuk mendapatkan pola sekuensial. Evaluasi dilakukan dengan mencari frequent sequence yang maksimal dari seluruh frequent sequences yang ada. Suatu pola sekuensial dikatakan maksimal jika pola sekuensial tersebut tidak termuat pada pola sekuensial lainnya.

Dari seluruh pola sekuensial yang terbentuk diambil pola sekuensial yang memiliki nilai 0 50 100 150 200 250 300 350 400 0 20 40 60 Waktu  Eksekusi  (d et ik) Minimum Support (%) Perbandingan Waktu Eksekusi

0 200 400 600 800 1000 0 20 40 60 80 Waktu  Eksekusi  (d et ik) Minimum Support (%) Perbandingan Waktu Eksekusi

Gambar 10 Grafik perbandingan waktu eksekusi terhadap data pengguna internal. Threshold 0.2 Threshold 0.4 Threshold 0.6 Threshold 0.2 Threshold 0.4 Threshold 0.6

Gambar

Gambar 2 Tahapan proses KDD (Han &amp;
Tabel 1 Deskripsi format data  log akses
Gambar 3 Algoritma CalcTotallySupport.
Gambar 4 Diagram alur metode penelitian.
+7

Referensi

Dokumen terkait

[r]

Batu ini mungkin terbentuk di di ginjal kemudian turun ke saluran kemih bagian bawah atau memang terbentuk di saluran kemih bagian bawah karena adanya stasis urine seperti pada

disampaikan guru, dan diskusi, siswa dapat mempraktikkan gerak spesifik menahan (menggunakan kaki bagian dalam, dan kaki bagian luar) pada permainan sepak bola

[r]

Kinerja Simpang C Jalan Kedungpring – Jalan Majenang Tahun 2019 Tahun 2017 ke tahun 2018 nilai DK ketiga simpang meningkat diakibatkan pertumbuhan arus lalu-lintas

LTR bibit Karet yang diberi pupuk Biosang 0,2 % (k1) tidak berbeda dengan LTR bibit yang tidak diberi dipupuk, hal ini menunjukkan bahwa pemberian pupuk

Tantangan yang ditemukan korban/ahli waris secara umum adalah masih adanya korban yang belum berhasil mendapatkan santunan dikarenakan korban dinyatakan bersalah

bahwa Badan Akreditasi Nasional Perguruan Tinggi telah menetapkan status, peringkat, dan nilai akreditasi program studi untuk program pendidikan sarjana pada sejumlah