Senin, 11 April 2011

Web Mining

Web mining adalah ekstraksi pola-pola penting dan bermanfaat namun tersimpan secara implisit pada kumpulan data yang relatif besar pada layanan world wide web. Web mining teridiri atas tiga bagian yaitu: web content mining, web structure mining, dan web usage mining [2].
Web content mining adalah suatu proses otomatis untuk menemukan informasi yang berguna dari dokumen atau data. Pada prinsipnya teknik ini mengekstraksi kata kunci yang terkandung pada dokumen. Isi data web antara lain dapat berupa teks, citra, audio, video, metadata, dan hyperlink. Ada dua strategi yang umum digunakan: pertama langsung melakukan mining terhadap data, dan kedua melakukan pencarian serta mengimprove hasil pencarian seperti layaknya search engine. 

 
Web struncture mining dikenal juga  sebagai web log mining adalah teknik yang digunakan untuk menemukan struktur link dari hyperlink dan membangun rangkuman website dan halaman  web. Salah satu manfaatnya adlah untuk  menentukan pagerank pada suatu halaman web.
Web usage mining adalah teknik untuk mengenali perilaku pelanggan dan struktur web melalui informasi yang diperoleh dari log, click stream, cookies, dan query. Berbagai tool yang sudah ada antara lain WebLogMiner yang melakukan mining terhadap data log. Teknik yang lebih canggih digunakan untuk melakukan OLAP. Manfaat web usage mining adalah untuk kustomosasi halaman berdasarkan profil pengguna, menentukan ketertarikan pelanggan terhadap produk tertentu, dan menentukan target market yang sesuai. 
2.1. Tahapan Web Mining
Tahapan web mining dapat diilustrasikan dengan gambar berikut [2]:
tahap1
Gambar 1. Tahapan pada web mining
Pada gambar 1, tahapan pada web mining dibagi menjadi tiga kelompok yaitu preprocess, process, dan, post process. Tahapan preprocess meliputi data cleaning, transaction identification, integration, dan transformation. Pada tahap process diterapkan sejumlah formulasi statistik antara lain untuk mengurangi jumlah atribut dengan cara membuang atribut yang tidak berpengaruh (information gain). Pada tahap ini dapat juga dilakukan teknik clustering, asosiasi, dan klasifikasi. Pada tahap post processing dilakukan analisis lebih lanjut untuk mengolah hasil mining pada tahapan sebelumnya. Hal ini perlu dilakukan sebab sering sekali hasil yang diperoleh pada tahap process tidak memberikan sesuatu yang dapat digunakan secara langsung, sehingga diperlukan teknik lainnya seperti visualisasi grafik dan analisis statistik lainnya.
2.2. Information Gain
Tahapan process merupakan tahapan utama dalam web mining. Pada tahap ini, atribut yang akan diolah harus diminimalisasi terlebih dahulu dengan tujuan untuk membuang atirbut yang tidak perlu sehingga hanya atribut yang mempunyai relevansi kuat yang akan diproses, sehingga efisiensi space dan waktu dapat dicapai dan kualitas data yang dihasilkan lebih baik. Salah satu cara untuk mereduksi atribut adalah dengan information gain.
Information gain adalah pengukuran yang dilakukan untuk menseleksi atribut. Pengukuran ini dipelopori oleh Claude Shannon pada teori informasi [1] dituliskan sebagai:
formula1
Dalam hal ini pi adalah probabilitas sebuah tuple pada D masuk ke kelas Ci dan diestimasi dengan | Ci,D|/|D|. Fungsi log diambil berbasis 2 karena informasi dikodekan berbasis bit.
Misal S adalah himpunan beranggotakan s data. Misalkan label atribut yang mendefinisikan kelas memiliki m nilai berbeda yang mendefinisikan m kelas Ci (untuk i=1,2,..,m) berbeda. Misalkan Si adalah jumlah sampel S yang masuk ke dalam kelas Ci. Berdasarkan (1) maka informasi yang diharapkan perlu untuk mengklasifikasi suatu sampel yang diberikan adalah:
formula2
Yang dalam hal ini pi adalah peluang suatu sampel sembarang masuk ke kelas Ci dan ditaksir dengan si/s.
Misalkan atribut A yang bukan atribut suatu kelas, memiliki v buah nilai yang berbeda yaitu {a1, a2, …,av}. Atribut A dapat digunakan untuk memisahkan S ke dalam v subset Sj yaitu {S1, S2, …,Sv}, yang dalam hal ini Sj memuat sampel-sampel di dalam S yang memiliki nilai aj dari A. Jika atribut A dipilih sebagai atribut uji (atribut yang terbaik untuk pemisahan) maka subset-subset tersebut akan berhubungan dengan cabang-cabang yang turun dari simpul yang memuat himpunan S. Misalkan Sij adalah jumlah sampel dari kelas Ci di dalam suatu subset Sj. Entropi atau informasi harapan berdasarkan pemisahan ke dalam subset-subset A dihitung dengan:
formula3
Bentuk  formula4 bertindak sebagai pemberat dari subset j dan merupakan jumlah sampel di dalam subset tersebut (yang memiliki nilai aj dari A) dibagi dengan jumlah total sampel di dalam S. Semakin kecil nilai entropi maka semakin murni pemisahan subset. Untuk suatu subset Sj informasi harapan berdasarkan (2) adalah:
formula5
Yang dalam hal ini pij = sij / |sj| dan merupakan peluang dari suatu sampel di dalam Sj termasuk kelas Ci.
Selanjutnya, Information Gain atribut A diperoleh dengan perhitungan:
Gain(A) = I(s1,s2,…,sm) – E(A) ……..(4)
Dengan penjelasan lain, Gain(A) adalah reduksi yang diharapkan di dalam entropi yang disebabkan oleh pengenalan nilai atribut dari A. Atribut yang memiliki nilai information gain terbesar dipilih sebagai uji atribut untuk himpunan S. Selanjutnya suatu simpul dibuat dan diberi label dengan label atribut tersebut, dan cabang-cabang dibuat untuk masing-masing nilai dari atribut.
Berikut diberikan sebuah contoh untuk menghitung information gain:
gambar2
Gambar 2. Contoh pereduksian atribut
Jika atribut buys_computer diambil sebagai label kelas, maka ada sebanyak m=2 kelas berbeda {C1=no, C2=yes}. Jumlah record pada data set adalah sebanyak 14 record sehingga s=14. Dengan demikian ada sebanyak s1=5 sampel dari S di kelas C1 dan sebanyak s2=9 sampel dari S di kelas C2. Dengan demikian informasi harapan untuk mengelompokkan kelas tersebut adalah:
formula6
Misalkan atribut A yang akan ditinjau dengan age, dan A memiliki 3 nilai berbeda, sehingga v=3 {a1=‘<30‘, a2=’30-40‘,a3=‘>40‘}. Selanjutnya atribut A tersebut dapat digunakan untuk memisahkan S ke dalam 3 subset yaitu {S1 untuk ‘<30‘, S2 untuk ’30-40‘, S3 untuk ‘>40‘}. Dengan demikian S11=3 adalah jumlah sampel dari kelas C1=no di dalam subset S1 untuk ‘<30‘. Selanjutnya S21=2 adalah jumlah sampel dari kelas C2=yes di dalam subset S1 untuk ‘<30‘.Selanjutnya S12=0 adalah jumlah sampel dari kelas C1=no di dalam subset S2 untuk ’30-40‘. Selanjutnya S22=4 adalah jumlah sampel dari kelas C2=yes di dalam subset S2 untuk ’30-40‘. Selanjutnya S13=2 adalah jumlah sampel dari kelas C1=no di dalam subset S3 untuk ’>40‘.Selanjutnya S23=3 adalah jumlah sampel dari kelas C2=yes di dalam subset S3 untuk ’>40‘. Sehingga s=s11+s21+s22+s13+s23 = 14 sampel. Kalau sj adalah jumlah sampel data pada masing-masing subset Sj, maka informasi harapan untuk masing-masing subset Sj adalah sebagai berikut:
formula7
Yang dalam hal ini, s1=s11+s21 = 3+2 dan s2=s12+s22 = 0+4 = 4 dan s3=s13+s23 = 2+3 = 5.
Entropi yang merupakan informasi harapan berdasarkan pemisahan kedalam subset-subset A dihitung sebagai:
formula8

Dengan demikian, informatian gain untuk atribut age adalah:
Gain(age) = I(s1,s2) – E(age)
= 0.94-0.694 = 0.246
Cara yang sama dilakukan terhadap atribut income, student, dan credit_rate dan diperoleh nilai masing-masing attribut adalah Gain(income)=0.029, dan Gain(student)=0.151, dan Gain(credit_rate)=0.046.
Didefinisikan sebuah nilai ambang (threshold) sebagai nilai batas untuk menentukan atibut-atribut apa saja yang akan digunakan. Atribut yang akan digunakan adalah atribut yang memiliki nilai Gain(atribut) >= threshold. Sebagai contoh, bila nilai threshold yang diberikan adalah 0.1 maka atribut yang akan digunakan adalah age dan student, berurutan memiliki gain sebesar 0.246 dan 0.151. Hasilnya seperti decicion tree gambar berikut.
gambar3

Gambar 3. Decision Tree

 Proses penghitungan Information Gain perlu dilakukan untuk mereduksi atribut yang tidak perlu. Web mining dapat digunakan untuk menganalisis data-data transaksi yang dilakukan oleh pengunjung web, untuk selanjutnya memanfaatkan hasilnya untuk peningkatan efisiensi aktivitas perusahaan.


Tidak ada komentar:

Posting Komentar