• Tidak ada hasil yang ditemukan

KATA PENGANTAR

TINJAUAN PUSTAKA Spam

Spam adalah pesan atau email yang ―tidak diinginkan‖ oleh penerimanya dan dikirimkan secara massal. Makna ―tidak diinginkan‖ disini memiliki arti pihak pengirim tidak mendapatkan izin untuk mengirimkan pesan tersebut dari pihak penerima. Makna ―dikirimkan secara massal‖ berarti pesan tersebut merupakan bagian dari sekumpulan pesan yang memiliki isi yang sama atau sejenis dan dikirimkan sekaligus dalam jumlah besar (Spamhaus 2004).

Selain definisi dari Spamhaus (2004) tersebut, Drucker et al. (1999) mendefinisikan spam sebagai pesan yang tidak diinginkan penerimanya tanpa menyebutkan secara spesifik apakah pesan tersebut dikirimkan secara massal atau tidak.

Untuk merujuk pesan yang tidak termasuk dalam kategori spam pada penelitian ini digunakan istilah ―ham‖.

Klasifikasi Dokumen

Klasifikasi adalah proses untuk menentukan kelas dari suatu objek. Pada klasifikasi dokumen, permasalahannya didefinisikan sebagai berikut: diberikan sebuah deskripsi ��dari sebuah dokumen dimana � adalah ruang dokumen; dan sebuah himpunan tetap kelas ℂ = {c1,c2,c3,…,cj}, dengan menggunakan metode atau algoritme pembelajaran, dilakukan proses training terhadap fungsi klasifikasi � sehingga dapat memetakan dokumen � kepada kelas-kelas ℂ:

� ∶ � → ℂ

kelas dapat juga disebut dengan label atau kategori dan didefinisikan sendiri secara manual. Proses pelatihan suatu fungsi klasifikasi menggunakan data latih yang sudah diberikan label secara manual seperti di atas disebut dengan supervised learning (Manning et al. 2008).

Penelitian ini menggunakan email sebagai ruang dokumen yang nantinya diklasifikasikan ke dalam dua kelas yaitu email yang berisi spam dan email yang tidak bersalah (innocent mail). Email yang berisi spam selanjutnya disebut dengan ―spam‖ sementara email yang tidak bersalah selanjutnya disebut dengan ―ham‖.

Naive Bayes Classifier

Naive Bayes classifier (NB) adalah metode klasifikasi yang mengasumsikan seluruh atribut dari contoh bersifat independen satu sama lain dalam konteks kelas (McCallum & Nigam 1998). Meskipun secara umum asumsi ini adalah asumsi yang buruk, pada praktiknya metode naive Bayes menunjukkan kinerja yang sangat baik (Rish 2001).

Bedasarkan teori Bayes, peluang dokumen untuk masuk ke dalam kelas atau adalah:

= ( )

( )

dengan adalah peluang kemunculan dokumen di kelas , ( ) adalah peluang awal suatu dokumen untuk masuk ke dalam kelas , dan ( ) adalah peluang awal kemunculan dokumen .

Peluang awal kemunculan dokumen yaitu sama nilainya untuk seluruh kelas

, sehingga dapat diabaikan:

= ( )

Menurut Manning et al. (2008) kelas yang paling sesuai bagi dokumen adalah kelas yang memiliki nilai paling tinggi yaitu:

max

∈ℂ ( )

Nilai peluang awal ( ) dapat diestimasi dengan melihat jumlah dokumen yang dimiliki oleh kelas relatif terhadap jumlah seluruh dokumen yang ada. Nilai peluang awal diestimasi secara berbeda untuk setiap model NB (Metsis et al. 2006).

Multinomial NB

Pada multinomial NB, dokumen direpresentasikan sebagai sekumpulan token yang terdapat pada dokumen yaitu

1,…, ,…, dimana token yang muncul lebih dari satu kali pada dokumen yang sama ikut diperhitungkan.

Nilai dari yaitu peluang kemunculan dokumen pada kelas dapat diestimasi dengan cara:

= ( 1,…, ,…, | )

Karena banyaknya kombinasi dari

1,…, ,…, yang harus diestimasi, akan sangat sulit untuk mendapatkan nilai menggunakan model ini secara langsung.

3 Selain itu, tidak ada batasan yang jelas

mengenai panjang dari dokumen yang mungkin sehingga dapat dikatakan bahwa kombinasi dari 1,…, ,…, yang mungkin berjumlah tak hingga (Manning et al. 2008). Oleh sebab itu, dibuat suatu asumsi bahwa kemunculan masing-masing token bersifat independen antara satu token dengan token yang lainnya. Dengan asumsi tersebut, nilai dari dapat diestimasi sebagai berikut:

= ( | )

1≤ ≤

sehingga peluang suatu dokumen untuk masuk ke dalam kelas dapat diestimasi dengan cara:

∝ ( | )

1≤ ≤

dengan ( | ) adalah peluang dari suatu token muncul pada dokumen yang diketahui memiliki kelas c; sedangkan adalah peluang awal dari suatu dokumen untuk masuk ke dalam kelas c.

Nilai dari dapat diestimasi dengan melihat frekuensi kemunculan dokumen pada kelas relatif terhadap jumlah seluruh dokumen yaitu:

=

dengan adalah jumlah dokumen yang terdapat di kelas dan adalah jumlah seluruh dokumen yang ada.

Nilai untuk masing-masing token didapatkan dari proses training. Lebih sepesifik lagi, nilai diestimasi dengan melihat frekuensi token yang muncul pada kelas c relatif terhadap jumlah kemunculan seluruh token yang ada di kelas c yaitu:

=

′�

dengan adalah jumlah kemunculan token dalam dokumen training yang berada di kelas c termasuk di dalamnya kemunculan token yang berjumlah lebih dari satu kali; dan

′� adalah jumlah seluruh token yang

terdapat pada seluruh dokumen di kelas c

termasuk untuk token-token yang muncul berulang kali pada dokumen yang sama.

Permasalahan akan terjadi saat ditemukan token yang hanya muncul pada salah satu kelas saja atau tidak muncul di kelas manapun

pada proses training. Nilai ( | ) yang dihasilkan akan sama dengan nol sehingga mengacaukan perhitungan . Untuk mengatasi permasalahan tersebut, digunakan laplace smoothing yaitu menambahkan jumlah kemunculan setiap token sebanyak satu sehingga perhitungan nilai dari menjadi: = + 1 ( + 1) ′� = + 1 ′� +

dengan adalah jumlah seluruh vocabulary (kata unik) yang terdapat dalam data training.

Multi-variate Bernoulli NB

Berbeda dengan multinomial NB, multi-variate Bernoulli NB hanya mencatat indikator kemunculan suatu token tanpa menghitung term frequency-nya. Perbedaan lain yang cukup menonjol adalah multi-variate Bernoulli NB ikut memperhitungkan token-token yang tidak muncul dalam dokumen pada proses klasifikasinya.

Perbedaan ini terjadi karena perbedaan dalam cara menduga . Multi-variate Bernoulli NB menduga sebagai fraksi dari dokumen pada kelas yang mengandung token sementara multinomial NB menduga sebagai fraksi dari token pada dokumen di kelas yang mengandung token (Manning et al. 2008).

Multinomial NB dengan Atribut Boolean

Multinomial NB dengan atribut boolean hampir sama dengan multinomial NB yang menggunakan atribut term frequency (tf) termasuk dalam proses pendugaan nilai . Perbedaannya terletak pada atribut yang digunakan yaitu atribut boolean. Pada atribut boolean, token yang muncul berulang kali tetap dianggap sebagai satu kemunculan untuk setiap dokumennya.

Schneider (2004) dalam penelitiannya menyatakan bahwa term frequency bukanlah faktor yang menjadi penyebab multinomial NB memiliki kinerja yang lebih baik dibandingkan dengan multi-variate Bernoulli NB. Perbedaan kinerja antar dua metode tersebut lebih disebabkan oleh bagaimana kedua metode tersebut memperlakukan bukti yang tidak ada (negative evidence) yaitu token yang tidak muncul pada pesan. Pada metode

4 multi-variate Bernoulli, hasil dari klasifikasi

lebih banyak dipengaruhi oleh kata-kata yang tidak ada di dalam pesan.

Schneider (2004) menunjukkan bahwa multinomial NB akan memiliki kinerja yang lebih baik jika atribut term frequency digantikan dengan atribut boolean.

Penggunaan atribut term frequency menyebabkan pengaruh negative evidence menjadi lebih besar dibandingkan dengan penggunan atribut boolean. Karena kemunculan setiap term akan dibandingkan dengan jumlah kemunculan dari seluruh kata yang terdapat pada kelas tersebut, penggunaan atribut term frequency menyebabkan nilai peluang untuk setiap term akan semakin kecil. Dengan menggunakan atribut boolean, efek dari negative evidence dapat dikurangi karena kemunculan setiap kata hanya dicatat satu kali saja pada setiap dokumennya.

Spam Filtering dengan Multinomial NB

Spam Filtering adalah proses menyaring email menjadi dua buah kategori yaitu spam dan ham. Meskipun aksi pengiriman pesan dalam jumlah massal merupakan salah satu ciri utama yang menyebabkan pesan tersebut dikatakan sebagai spam, dapat dilihat bahwa kandungan bahasa yang digunakan oleh pesan spam memiliki tema tersendiri dan jarang ditemukan pada pesan biasa (ham). Dengan karakteristik seperti ini, teknik klasifikasi teks dapat diterapkan untuk permasalahan spam filtering (Androutsopoulos et al. 2000).

Jika dimisalkan sebagai kelas dari email yang termasuk ke dalam kategori spam, maka dengan teori Bayes, peluang email adalah spam yaitu dapat diestimasikan sebagai berikut:

= ( )

( )

dengan adalah peluang kemunculan email pada kelas spam, adalah peluang awal suatu email masuk ke dalam kelas spam dan ( ) adalah peluang kemunculan email

.

Dengan cara yang sama, peluang email masuk ke dalam kelas ham dapat diestimasikan dengan cara:

= ( )

( )

Pada metode multinomial NB, nilai dari dapat diestimasikan sebagai berikut:

= 1,…, |

Karena antara satu token dengan token yang lainnya diasumsikan independen, maka nilai

1,…, | dapat dihitung dengan cara: = |

=1

Lalu dengan cara yang sama, untuk :

= 1,…, |

= | =1

Sementara itu, dengan merujuk kembali pada teori NB multinomial, nilai dari | dapat dihitung dengan cara:

( | ) = + 1

′� +

dengan adalah jumlah kemunculan token pada email dengan kelas , B‘ adalah jumlah vocabulary yang terdapat dalam data training, sementara ′� adalah jumlah kemunculan seluruh token pada kelas S (Sun 2009).

Karena NB yang digunakan adalah NB multinomial dengan atribut boolean, seluruh kemunculan token dihitung satu untuk setiap dokumennya meskipun token tersebut muncul berulang kali.

Selanjutnya kelas dari email dapat ditentukan dengan membandingkan antara

dengan : = ( ) ( ) = | =1 ( ) | =1 ( ) = ( ) ( ) | | n i

Karena pada proses perhitungannya nilai-nilai di atas bisa sangat kecil dan menghasilkan kesalahan presisi (Manning et al. 2008), kedua sisi dihitung hasil log-nya sehingga menjadi:

log = log ( ) ( ) | | n i log = log ( )+ log | |

5 Jika persamaan di atas menghasilkan nilai

lebih besar daripada nol, nilai dari

lebih besar daripada sehingga

email masuk ke dalam kategori spam. Sebaliknya, jika nilainya lebih kecil daripada nol, email masuk ke dalam kategori ham.

Metode NB Graham

Graham (2002) menggunakan pendekatan yang berbeda dalam mengimplementasikan naive Bayes. Jika pada metode yang telah dibahas sebelumnya digunakan estimasi nilai

| untuk mendapatkan peluang suatu

email masuk ke dalam kategori spam, metode NB Graham menggunakan | yang diestimasikan sebagai peluang suatu pesan untuk masuk dalam kategori spam jika diketahui pesan tersebut mengandung token

yaitu:

�� | =

+

dimana dan berturut-turut adalah jumlah pesan pada kelas spam dan ham yang mengandung token i, sementara dan berturut-turut adalah jumlah pesan yang tedapat pada kelas spam dan ham. Semakin sering suatu token muncul di kelas spam, nilai peluangnya akan semakin mendekati satu. (Crossan 2009).

Graham (2002) menemukan bahwa dengan mengalikan jumlah kemunculan token-token yang ada pada ham dengan faktor dua, jumlah dari false positive dapat dikurangi. Jika suatu token hanya muncul pada kelas spam saja, token tersebut akan langsung diberikan nilai peluang 0,99 sementara jika token hanya muncul di kelas ham saja, token tersebut akan diberikan nilai peluang 0,01. Untuk token yang belum pernah muncul sebelumnya atau memiliki jumlah kemunculan lebih kecil dari lima, diberikan peluang netral 0,4. Nilai 0,4 dipilih untuk lebih mengurangi lagi tingkat false positive.

Untuk menghitung peluang suatu email masuk ke dalam kelas spam, metode NB Graham hanya menggunakan lima belas token yang paling signifikan saja. Seberapa signifikan suatu token dalam menentukan hasil klasifikasi ditentukan dengan melihat selisih nilai | token tersebut dengan nilai peluang netral 0,5.

Selanjutnya, lima belas token yang paling signifikan tersebut digunakan untuk

menghitung peluang suatu email masuk ke dalam kelas spam dengan persamaan:

| 1,…, = ( | ) 15 =1 ( | ) 15 =1 ′� ,

dengan S merupakan event saat email masuk ke dalam kelas spam. Pesan akan dikategorikan sebagai spam jika persamaan di atas bernilai lebih besar dari 0,9.

Metode Training

Sebelum dapat melakukan proses klasifikasi, spam filter perlu ditunjukkan contoh-contoh email dari masing-masing kelas. Proses ini disebut dengan training (Zdziarski 2005).

Pada penelitian ini, terdapat dua macam metode training yang diujikan yaitu Train Everything (TEFT) dan Train-On-Error (TOE).

1. Train-Everything (TEFT)

Pada metode TEFT seluruh email yang masuk akan di-training tanpa memperhatikan kebenaran hasil klasifikasinya.

Kelebihan dari metode ini adalah dataset milik spam filter akan terus menyesuaikan nilainya sesuai dengan email yang diterimanya. Sebagai contoh, jika pengguna berlangganan mailing-list tertentu, filter akan segera mengenali token-token di dalamnya sebagai bagian dari kelas ham.

Kekurangan dari metode ini adalah filter akan menjadi sangat rentan terhadap komposisi email pengguna. Sebagai contoh, jika pengguna terlalu banyak menerima email spam, metode training ini akan mengenali terlalu banyak token sebagai token spam karena kurangnya data ham. Hal ini dapat mengganggu proses klasifikasi ham yang masuk.

2. Training On Error (TOE)

Pada metode TOE, email hanya akan dimasukkan ke dalam proses training jika terjadi kesalahan klasifikasi. Kelebihan metode TOE adalah proses training hanya dilakukan seperlunya sehingga menghemat resource seperti proses disk-writing yang lambat. Metode TOE juga menyimpan lebih sedikit token sehingga dapat menghemat space.

Kelebihan metode training ini ternyata juga menjadi kelemahannya. TOE hanya akan melakukan proses training jika menemukan

6 kesalahan dalam proses klasifikasi. Hal ini

menyebabkan TOE cenderung lambat dalam mengenali token-token baru saat terjadi perubahan kebiasaan penerimaan email pengguna.

3. Metode Training Lainnya

Selain TOE dan TEFT, masih ada dua metode training lagi yang dapat digunakan dalam sistem spam filter. Metode tersebut adalah Training Until Mature (TUM) dan Training Until No Error (TUNE).

Pada metode TUM, proses training untuk token tertentu tidak akan diteruskan lagi saat filter sudah merasa ―cukup mengenal‖ token tertentu. TUM hanya akan melakukan proses training saat menemukan kesalahan.

Pada metode TUNE, proses training dilakukan beberapa kali dalam bentuk training-loop sampai tidak ditemukan error atau akurasi tidak dapat ditingkatkan lagi. Yerazunis (2004) menemukan bahwa metode training TUNE hanya sedikit lebih baik dibandingkan dengan TOE meskipun proses training yang dilakukan oleh TUNE jauh lebih lama.

Dokumen terkait