negative, false positive, dan false negative seperti yang dapat dilihat pada Tabel 1. Tabel 1
Tabel kontingensi kelas hasil prediksi dan kelas sebenarnya Kelas Prediksi
Kelas Sebenarnya
Spam
Ham
Spam
TP
FN
Ham
FP
TN
Hasil positive merujuk pada email yang diprediksikan masuk ke dalam kategori spam dan hasil negative merujuk pada email yang diprediksikan masuk ke dalam kategori ham oleh spam filter. Keterangan selengkapnya adalah sebagai berikut: True Positive (TP), yaitu email dari kelas spam yang benar diklasifikasikan sebagai spam. True Negative (TN), yaitu email dari kelas ham yang benar diklasifikasikan sebagai ham. False Positive (FP), yaitu email dari kelas ham yang salah diklasifikasikan sebagai spam. False Negatif (FN), yaitu email dari kelas spam yang salah diklasifikasikan sebagai ham. Selanjutnya, kinerja masing-masing metode dievaluasi dengan melihat nilai dari spam recall dan ham recall-nya. Spam recall adalah proporsi dari pesan spam yang berhasil diblok oleh filter, sedangkan ham recall menunjukkan proporsi dari pesan ham yang dilewatkan oleh filter (Metsis et al. 2006). Nilai dari Spam Recall dihitung dengan membandingkan jumlah email spam yang benar diklasifikasikan sebagai spam (true positive) dengan jumlah seluruh email spam yang tedapat pada data uji yaitu: 𝑆𝑝𝑎𝑚 𝑅𝑒𝑐𝑎𝑙𝑙 =
𝑇𝑃 𝑇𝑃 + 𝐹𝑁
dengan cara yang sama, nilai dari ham recall dapat dihitung dengan cara: 𝐻𝑎𝑚 𝑅𝑒𝑐𝑎𝑙𝑙 =
𝑇𝑁 𝑇𝑁 + 𝐹𝑃
kesalahan klasifikasi. Pesan-pesan yang gagal diklasifikasikan ke dalam kelas yang benar diteliti lebih lanjut untuk dicari penyebab kegagalan klasifikasinya. Lingkungan Pengujian Perangkat lunak yang digunakan dalam pengujian sebagai berikut: Sistem Operasi Windows 7. Bahasa pemrograman PHP versi 5.2.9. EzMailParser dari EzComponent sebagai library yang digunakan untuk membaca struktur email. Web Server Apache 2.2.11 Sementara itu, perangkat keras yang digunakan untuk pengujian adalah: Prosesor intel core i5 M450 kecepatan 2.4Ghz. Memory DDR3 sebesar 2GB.
pada
Untuk mempercepat proses pengujian, data hasil training disimpan langsung dalam memori. Data hasil pengujian di-serialize lalu disimpan ke dalam file teks untuk digunakan dalam tahap analisis kesalahan klasifikasi.
HASIL DAN PEMBAHASAN Pengumpulan Data Korpus yang digunakan pada penelitian ini adalah public email corpus yang disediakan oleh Spamassasin dengan kode prefix ―20030228‖ 3. Korpus ini terdiri atas 6.047 pesan email yang sudah diklasifikasikan sebelumnya secara manual dengan komposisi: 3.900 easy-ham, yaitu pesan ham yang dapat dibedakan dengan mudah dari pesan spam karena tidak banyak mengandung ciri-ciri yang dimiliki oleh pesan spam. 250 hard-ham, yaitu pesan bertipe ham namun mengandung cukup banyak feature yang biasa terdapat pada pesan spam sehingga agak sulit diklasifikasikan. 1.897 spam, yaitu pesan yang masuk dalam kategori spam. Pesan yang memiliki label easy-ham dan hard-ham tidak dibedakan secara khusus dan digabungkan ke dalam satu kategori yaitu ―ham‖. Dengan demikian, data yang
Analisis Kesalahan Klasifikasi Setelah pengujian untuk metode training dan metode klasifikasi selesai dilakukan, penelitian selanjutnya berfokus pada analisis
3
Korpus email dari Spamassasin dapat diunduh di alamat http://www.spamassassin.org/publiccorpus/.
7
digunakan untuk penelitian mengandung spam sebanyak 31%. Detail Proses Pengujian Pengujian kinerja metode klasifikasi dilakukan dengan metode training TEFT dan TOE sementara proses pengujian metode training dilakukan dengan menggunakan metode Graham. Langkah pengujian yang dilakukan adalah sebagai berikut: Data uji yang digunakan berjumlah 6.047 email dengan proporsi spam sebesar 31%. Data uji ini diacak sebanyak sepuluh kali lalu dicatat ukuran pembacaannya. Pengukuran kinerja dilakukan dengan melihat akurasi pada saat pemrosesan 750 data terakhir. Karena pengujian dilakukan sebanyak sepuluh kali pengulangan, data awal jumlah kesalahan klasifikasi yang ditampilkan adalah jumlah kesalahan per 7.500 kali uji. Perbandingan jumlah spam dan ham untuk data testing pada masing-masing acakan dapat dilihat pada Tabel 2. Tabel 2
Proporsi pesan spam untuk masingmasing acakan pengujian
Acakan Ke
Jumlah Ham
Jumlah Spam
Persen Spam
1
529
221
29,46
2
512
238
31,73
3
514
236
31,46
4
528
222
29,60
5
518
232
30,93
6
484
266
35,46
7
518
232
30,93
8
508
242
32,26
9
529
221
29,46
10
511
239
31,86
Jumlah
5.151
2.349
31,32
Pemrosesan Dokumen Untuk fase training dan fase testing, setiap email diproses dengan teknik yang sama. Pemrosesan yang dilakukan terdiri atas empat tahap yaitu dekomposisi struktur email, pemilihan atribut, penyeragaman sistem karakter, dan tokenisasi.
1. Dekomposisi Struktur Email Tahap pemrosesan dokumen yang pertama adalah dekomposisi struktur email. Email yang hendak diproses dipecah menjadi bagianbagian yang lebih kecil. Tahapan ini diperlukan karena masing-masing komponen akan diolah secara berbeda pada saat dilakukan proses tokenisasi. Secara garis besar, tahapan dekomposisi yang dilakukan sebagai berikut: Email dipecah ke dalam dua bagian utama yaitu header dan body. Komponen header dipecah lagi menjadi komponen-komponen yang lebih kecil sesuai dengan informasi yang dikandungnya. Untuk komponen body, pesan yang terdiri atas beberapa part akan digabungkan menjadi satu. Jika pada email terdapat attachment, hanya informasi nama file dan jenisnya yang disertakan. Berdasarkan hasil pengamatan saat dilakukan proses tahap pertama ini, terlihat bahwa email dari kelas spam terkadang memiliki infomasi header yang salah ataupun rusak. Sebagai contoh, pada beberapa email, informasi waktu pengiriman email ditulis dengan format di luar standar atau waktu yang dipastikan salah, contoh tahun 2020. Saat ini belum dapat disimpulkan apakah kesalahan penulisan header tersebut merupakan suatu kesengajaan atau bukan. Bagaimanapun, kesalahan seperti ini sangat jarang ditemukan pada email ham. Untuk bagian body, mayoritas email dari kelas ham hanya menggunakan satu part saja. Lain halnya dengan email dari kelas spam dimana email dengan body multipart bukanlah hal yang jarang ditemui. 2. Pemilihan Atribut Setelah email dipecah menjadi komponenkomponen yang lebih kecil, tahapan selanjutnya adalah pemilihan komponen yang akan disertakan ke dalam proses klasifikasi. Tahapan ini berlaku terutama untuk bagian header dari email. Tidak semua komponen dari header email dimasukkan ke dalam klasifikasi. Hal ini dilakukan karena terdapat beberapa informasi pada header yang telah mengalami kerusakan
8
ataupun telah diubah sebelumnya oleh pihak Spamassasin4 sebagai penyedia data. Selain itu, terdapat komponen header yang hanya muncul di sebagian kecil dokumen saja. Komponen-komponen tersebut adalah informasi tambahan yang biasanya disertakan oleh email client atau Mail Transfer Agent yang dilalui oleh email sebelum sampai ke tujuan. Untuk bagian body, email-email yang dipecah ke dalam beberapa part akan digabungkan menjadi satu. Seluruh metadata yang terkandung dalam setiap part ikut disertakan pada proses klasifikasi. Metadata tersebut berguna untuk menglasifikasikan email yang hanya berisi attachment saja atau email yang terdiri atas beberapa part. Komponen header yang disertakan dalam proses klasifikasi serta informasi yang terkandung di dalamnya dapat dilihat pada Tabel 3. Tabel 3
Komponen header yang disertakan dalam proses klasifikasi
Nama
Keterangan
subject
Subjek dari pesan.
sender
Nama dan pengirim pesan.
return-path
Alamat pengembalian pesan jika terjadi bouncing5.
x-mailer
Aplikasi yang digunakan oleh pengguna untuk mengirimkan pesan.
reply-to
Alamat yang digunakan untuk membalas pesan.
contenttransferencoding
Metode content transfer encoding yang digunakan jika ada.
alamat
3. Penyeragaman Sistem Karakter Tahapan pemrosesan selanjutnya adalah penyeragaman sistem karakter yaitu encoding dan character set yang digunakan. Email pada data uji memiliki sistem encoding dan character set yang berbeda-beda. Perbedaan tersebut terutama terlihat pada bagian subject, nama pengirim, dan isi utamanya. Hal tersebut 4
Perubahan ini dilakukan terutama pada alamat email penerima dan jalur server yang dilalui oleh email. 5 Kondisi dimana alamat penerima tidak ditemukan.
disebabkan oleh perbedaan sistem yang digunakan oleh pengirim. Penggunaan sistem encoding khusus kadang dilakukan dengan sengaja oleh pengirim spam dengan tujuan mempersulit pemrosesan email oleh spam filter. Secara garis besar, terdapat dua jenis encoding yang digunakan oleh email: Encoding dan Character Set yang digunakan untuk penulisan karakterkarakter pada email seperti UTF-8 dan latin1. Content-Transfer-Encoding yaitu sistem encoding yang digunakan khusus untuk mengirimkan data binary dalam format 7bit ASCII text. Untuk menghindari kesalahan pembacaan terutama saat proses tokenisasi, dilakukan penyeragaman sistem encoding dan characterset yang digunakan menjadi UTF-8. Jika email menggunakan content-transferencoding tertentu seperti Base64 encoding atau Quote-printable, isinya akan dikonversi terlebih dahulu menjadi data aslinya. Jika data aslinya ternyata berbentuk file binary, isi dari file yang dihasilkan tidak disertakan, namun informasi jenis file yang dikandung (jika ada) akan ikut disertakan ke dalam klasifikasi. Dari hasil pengamatan, dapat disimpulkan bahwa penggunaan encoding dapat menjadi penciri yang baik dalam membedakan email dari kelas ham dengan email dari kelas spam. Email-email yang tidak bersalah atau email ham cenderung menggunakan sistem karakter encoding yang seragam atau sejenis seperti latin1 dan ISO-8859-1 untuk orang yang mayoritas emailnya berbahasa Inggris atau bahasa lain yang menggunakan karakter latin. Sementara itu di kelas spam, sistem encoding yang digunakan cenderung lebih bervariasi tergantung dari asal pengirimnya. Seringkali email dari kelas spam mencantumkan informasi encoding yang salah atau tidak standar. Sebagai contoh, sistem encoding ks_c_5601-19876 hanya ditemukan pada email spam. Selain sistem encoding untuk karakter, penggunaan content-transfer-encoding juga dapat membantu proses pengenalan email spam. Dari hasil pengamatan pada data, hanya email-email dari kelas spam yang menggunakan content-transfer-encoding 6
Encoding ini banyak ditemukan pada email spam yang menggunakan karakter Korea. Encoding yang benar untuk karakter korea adalah EU-KR.
9
khusus seperti Base64 maupun Quoteprintable. Pada beberapa kasus, email yang menggunakan content-transfer-encoding Base64 tidak dapat dikonversikan isinya karena terdapat kerusakan atau miss pada rangkaian karakter hasil encoding-nya. Pada kasus tersebut, proses pengklasifikasian hanya dapat mengandalkan informasi yang terdapat pada header email dan metadata yang disertakan. 4. Tokenisasi Tahapan terakhir dari pemrosesan email adalah tokenisasi. Tokenisasi adalah proses memotong teks menjadi bagian-bagian yang disebut dengan token. Selain pemotongan, tokenisasi juga mungkin diikuti dengan proses pembuangan karakter-karakter tertentu (Manning et al. 2008). Proses berikut:
tokenisasi
dilakukan
sebagai
Teks dipotong menjadi token-token. Karakter yang dianggap sebagai karakter pemisah token didefinisikan dengan ekspresi regular berikut: /[\s.;,\"':?{}\[\]()%=<>+\/*&@_-]+/
Token yang hanya terdiri atas karakter numerik saja tidak ikut disertakan. Besar kecilnya karakter dari token (case) dipertahankan. Tidak dilakukan penyeragaman. Karakter khusus yang menempel pada token dan tidak termasuk ke dalam karakter pemisah token juga dipertahankan. Karakter ‗~‘, ‗|‘ dan ‗!‘ yang menempel di awal token dibuang. Karakter ‗#‘ dan ‗$‘ yang menempel di akhir token dibuang. Jika email yang sedang dibaca mengandung tag HTML, seluruh tag yang ditemukan akan ikut diproses termasuk attribute yang terdapat di dalamnya. Tag komentar HTML tidak akan diproses sama sekali dan dibuang terlebih dahulu sebelum keseluruhan proses tokenisasi dimulai. Khusus untuk URL (Uniform Resources Locator), proses tokenisasi dilakukan sebelum proses tokenisasi pada body atau komponen header email dilakukan. Keberadaan URL pada masing-masing komponen email akan diperiksa terlebih dahulu. Jika ternyata ada, URL akan diekstrak dari teks dan ditokenisasi seperti aturan di atas. Perbedaannya, token-
token yang dihasilkan akan diberi prefix ‗URL*‘ untuk menandai bahwa token tersebut berasal dari suatu URL dan tidak bercampur dengan token-token biasa. Proses ini disebut dengan proses optimasi URL dan diduga dapat meningkatkan kinerja dari spam filter (Graham 2002). Untuk komponen header, token-token yang dihasilkan akan diberi prefix khusus (seperti halnya pada URL) untuk membedakannya dengan token biasa yang terdapat pada body. Sebagai contoh, jika suatu email memiliki subject ―Hello There‖, maka token-token yang terdapat pada subjek tersebut akan ditokenisasi menjadi ―SUBJECT*Hello‖ dan ―SUBJECT*There‖. Berdasarkan hasil pengamatan mayoritas email yang mengandung tag HTML adalah email spam. Kode-kode warna seperti #FF0000 hanya ditemukan pada email spam. Begitu pula dengan alamat URL, hampir seluruh pesan spam yang ada pada data uji mencantumkan informasi URL untuk dikunjungi oleh penerima. Hasil Pengujian Metode Training 1. Tingkat Akurasi Pengujian metode training dilakukan dengan cara memasangkan kedua metode tersebut pada spam filter yang menggunakan metode klasifikasi NB Graham. Pada metode TEFT, seluruh email yang dibaca akan di-training ke dalam kelas yang benar setelah hasil dari klasifikasi diperoleh. Proses training ini dilakukan tanpa mempedulikan apakah hasil klasifikasinya benar atau salah. Pada metode TOE, proses training hanya akan dilakukan jika terjadi kesalahan klasifikasi. Jumlah False Positive dan False Negative per 7.500 kali pengujian beserta Ham Recall dan Spam Recall dapat dilihat pada Tabel 4. Tabel 4 Hasil pengujian metode training menggunakan teknik klasifikasi Graham
False Positive False Negative Spam Recall Ham Recall
TEFT
TOE
74 50 0,9786 0,9856
475 67 0,9714 0,9079
10
Grafik perbandingan nilai spam recall dan ham recall dari kedua metode training dapat dilihat pada Gambar 1.
tersebut. Jika ternyata terjadi kesalahan pada hasil klasifikasi sistem, proses penilaian pesan selanjutnya akan ikut dipengaruhi oleh data training yang sudah terlanjur dimasukkan ke dalam kelas yang salah tersebut. 2. Waktu Pelatihan
Gambar 1 Hasil pengujian metode training.
Karena proses training dilakukan untuk seluruh email yang masuk, TEFT membutuhkan waktu pengujian lebih lama dibandingkan dengan TOE. Hasil pengujian menunjukkan TEFT menghabiskan waktu sekitar 18% lebih lama dibandingkan dengan TOE. Dengan demikian, meskipun TOE memiliki tingkat akurasi yang lebih rendah dibandingkan dengan TEFT, waktu pemrosesan yang dilakukan oleh TOE lebih sebentar.
Hasil pengujian menggunakan metode NB Graham menunjukkan metode training TEFT memiliki tingkat akurasi yang lebih tinggi dibandingkan dengan metode training TOE. Perbedaan akurasi tersebut disebabkan oleh lebih banyaknya proses training yang dilakukan oleh metode TEFT dibandingkan dengan metode TOE.
Perbedaan waktu antara kedua metode training ini dapat dibandingkan dengan perbedaan spam recall dan ham recall-nya untuk mengetahui seberapa besar peningkatan kinerja yang didapat untuk setiap tambahan waktu proses. Untuk spam recall, peningkatan kinerja per satuan waktu 𝐺𝑆 dapat dihitung dengan cara:
Proses training yang lebih banyak membuat metode TEFT menyimpan informasi yang lebih akurat mengenai karakteristik token-token dari kelas spam maupun ham dalam data hasil training-nya. Untuk spam recall, perbedaan nilainya hanya sebesar 0,0072, namun untuk ham recall perbedaan nilai antara kedua metode training tersebut cukup tinggi yaitu 0,0777. Nilai ham recall berhubungan dengan tingkat false positive. Pada spam filter, cost dari false positive lebih tinggi dibandingkan dengan cost dari false negative. Berdasarkan petimbangan tersebut perbedaan tingkat akurasi ini cukup signifikan untuk dipertimbangkan. Perlu diperhatikan bahwa pada sistem yang sebenarnya koreksi hasil klasifikasi tidak dilakukan seketika seperti pada pengujian ini. Kelas yang benar dari setiap email tidak akan diketahui oleh sistem kecuali pengguna melakukan koreksi. Untuk itu baik TEFT maupun TOE akan mengasumsikan bahwa hasil klasifikasi dari sistem merupakan hasil yang benar. Hal ini akan berpengaruh terhadap proses klasifikasi terutama pada TEFT. Pada metode TEFT, setiap email yang masuk akan di-training sebagai data untuk kelas yang dianggap benar oleh sistem
𝐺𝑆 =
𝑆𝑅𝑇𝑂𝐸 − 𝑆𝑅𝑇𝐸𝐹𝑇 𝐷𝑊
dengan 𝑆𝑅 adalah nilai spam recall dan 𝐷𝑊 adalah persentase perbedaan waktu yang dihabiskan oleh kedua metode training. Dengan cara yang sama, peningkatan ham recall 𝐺𝐻 untuk masing-masing metode training dapat dihitung dengan cara: 𝐺𝐻 =
𝐻𝑅𝑇𝑂𝐸 − 𝐻𝑅𝑇𝐸𝐹𝑇 𝐷𝑊
dengan 𝐻𝑅 adalah nilai ham recall untuk masing-masing metode training. Mengganti metode training TOE menjadi TEFT sama halnya dengan menggunakan metode training yang lebih lambat untuk mendapatkan peningkatan akurasi. Dengan perhitungan di atas, didapat bahwa penggunaan metode TEFT dibandingkan dengan TOE akan meningkatkan spam recall (𝐺𝑆) sebesar 0,0004 atau 0,04% untuk setiap 1% penambahan waktunya. Sementara untuk ham recall, peningkatan akurasi yang didapatkan adalah sebesar 0,0043 atau 0,43% untuk setiap 1% penambahan waktunya. Perlu diperhatikan bahwa pada sistem yang sebenarnya data hasil training disimpan dalam file atau database dan email yang harus diproses bisa menjadi sangat banyak. Oleh 11
karena itu, baik perbedaan waktu maupun perbedaan akurasi antara TOE dan TEFT bisa menjadi sangat signifikan. Metode training mana yang lebih baik harus disesuaikan dengan lingkungan implementasinya. Jika waktu dan resource yang dibutuhkan untuk proses training termasuk dalam faktor yang cukup dipertimbangkan, TOE yang hanya melakukan proses training seperlunya memiliki keunggulan tersendiri dibandingkan dengan TEFT dalam hal penggunaan resources. Hasil Pengujian Metode Klasifikasi Proses pengujian metode klasifikasi dilakukan dengan menggunakan mode training TEFT. Jumlah false positive dan false negative per 7.500 kali pengujian beserta nilai ham recall dan spam recall dapat dilihat pada Tabel 5.
Gambar 2 Hasil pengujian metode klasifikasi menggunakan metode training TEFT.
Tabel 5 Hasil pengujian metode klasifikasi dengan metode training TEFT
NB Graham
NB Multinomial
False Positive
475
117
67
55
Tabel 6 Hasil pengujian metode klasifikasi dengan mode training TOE
NB Graham
NB Multinomial
False Positive
74
70
False Negative
False Negative
50
67
Spam Recall
0,9714
0,9765
Spam Recall
0,9786
0,9615
Ham Recall
0,9079
0,9773
Ham Recall
0,9714
0,9864
Grafik perbandingan nilai spam recall dan ham recall dari pengujian kedua metode klasifikasi menggunakan metode training TEFT dapat dilihat pada Gambar 2.
Grafik perbandingan nilai spam recall dan ham recall dari pengujian kedua metode klasifikasi menggunakan metode training TOE dapat dilihat pada Gambar 3.
Hasil pengujian menggunakan mode training TEFT menunjukkan bahwa metode NB Graham memiliki spam recall lebih tinggi daripada metode NB Multinomial dengan perbedaan nilai sebesar 0,0171. Hasil sebaliknya terlihat pada ham recall dimana metode NB Multinomial memiliki nilai yang lebih tinggi dengan perbedaan nilai sebesar 0,0150. Pada pengujian selanjutnya dengan menggunakan metode training TOE, hasil yang diperoleh ternyata sedikit berbeda seperti yang dapat dilihat pada Tabel 6.
Gambar 3 Hasil pengujian metode klasifikasi menggunakan metode training TOE. Pengujian dengan metode training TOE menunjukkan bahwa metode klasifikasi NB Multinomial memiliki spam recall dan ham 12
recall yang lebih tinggi dibandingkan dengan metode NB Graham dengan perbedaan masing-masing sebesar 0,0051 dan 0,0694.
mengimbangi token-token spam yang ada. Akibatnya, terjadi false positive dalam proses filtering yang dilakukan.
Sementara nilai hasil pengujian yang lain menurun pada saat digunakan metode TOE, hasil yang berbeda terlihat pada tingkat spam recall. NB Multinomial yang dipasangkan dengan metode training TOE ternyata menghasilkan nilai spam recall yang lebih baik dibandingkan dengan saat dipasangkan pada metode training TEFT.
Walaupun hal ini juga akan menjadi masalah bagi NB multinomial, metode Graham akan terkena dampak yang cenderung lebih besar. Hal ini disebabkan oleh cara kerja metode Graham yang hanya memilih 15 token paling signifikan (paling jauh nilai dari peluang netral 0,5). Meski token spam yang ditemukan hanya berjumlah beberapa buah, nilai 𝑃 𝑠𝑝𝑎𝑚|𝑤 yang tinggi akan mengakibatkan peringkat token tersebut merangkak naik sampai menembus peringkat 15 besar. Jika kondisi ini tidak diikuti dengan keberadaan token-token dengan nilai 𝑃 𝑎𝑚|𝑤 yang juga tinggi, proses klasifikasi akan didominasi oleh token-token spam tersebut.
1. Analisis Kesalahan (False Positive)
Pengenalan
Ham
Meskipun dalam proses klasifikasinya metode NB Graham mengalikan jumlah kemunculan token pada kelas ham dengan faktor dua, ternyata tingkat ham recall-nya masih lebih rendah dibandingkan dengan ham recall dari metode NB Multinomial. Pada saat pengujian dengan metode training TOE, jumlah false postive yang dihasilkan metode Graham bahkan mencapai empat kali lipat dari jumlah false positive NB Multinomial. Lebih rendahnya ham recall dari metode NB Graham disebabkan oleh pemberian nilai 0,99 untuk token yang hanya pernah muncul di kelas spam. Dalam menentukan hasil klasifikasi, metode NB Graham hanya menggunakan lima belas token yang paling signifikan saja. Seberapa signifikan suatu token dilihat dengan melihat selisih nilai peluang token tersebut dengan nilai peluang netral 0,5. Jika email dari kelas ham mengandung token-token yang hanya muncul di kelas spam saja, proses klasifikasi akan didominasi oleh token-token spam karena token dengan peluang 0,99 memiliki selisih yang tinggi dari peluang netral 0,5. Walaupun demikian, false positive juga cukup banyak terjadi pada metode NB multinomial. Selanjutnya akan dibahas karakteristik-karakteristik email yang menyebabkan false positive. a. Email ham yang mengandung tag HTML Jenis pertama email ham yang salah diklasifikasikan adalah email yang mengandung token-token berpeluang spam tinggi seperti tag HTML beserta atributnya. Karakteristik seperti ini banyak ditemukan pada email yang berjenis newsletter. Karena data uji yang digunakan tidak memiliki email newsletter dalam jumlah yang cukup, tokentoken ham pada email tersebut tidak memiliki nilai 𝑃 𝑎𝑚|𝑤 yang signifikan untuk
Solusi yang dapat digunakan untuk mengatasi persoalan ini adalah pemilihan tag HTML yang dicatat pada saat training. Menurut Zdziarski (2005), tag HTML yang terlalu umum seperti table, tr, td, div,dan p tidak perlu ikut dicatat kemunculannya. Dengan demikian, email ham yang kebetulan memang menggunakan tag HTML tidak akan langsung dianggap sebagai spam. b. Newsletter resmi bertema promosi.
yang
memiliki
isi
Selain pengaruh tag HTML, false positive juga banyak dipengaruhi oleh isi dari emailnya itu sendiri. Meskipun newsletter dikirimkan dengan seizin penerimanya, isi dari newsletter tersebut seringkali berbau promosi dan menggunakan kata-kata yang digunakan pada email spam. Pada kasus seperti ini, baik metode Graham maupun metode NB multinomial sama-sama mengalami kesulitan dalam menentukan kelas yang benar. c. Email ham yang memiliki beberapa format alternative. Jenis email ham selanjutnya yang seringkali salah diklasifikasi adalah email yang menggunakan format multipartalternative. Format ini memungkinkan email dikirimkan dalam beberapa versi sekaligus. Sebagai contoh, jika aplikasi client memiliki kapabilitas untuk membaca dokumen HTML, maka akan ditampilkan versi email yang menggunakan tag HTML. Namun jika tidak, akan ditampilkan versi yang hanya menggunakan teks biasa.
13
Karena cara kerja library pembaca email yang menggabungkan email multipart menjadi satu, versi alternative yang biasanya banyak mengandung tag HTML ikut terbawa. Pada akhirnya, timbul masalah yang sama dengan email-email bertipe newsletter. d. Kesalahan Lain Selain beberapa poin yang sudah disebutkan di atas, terdapat beberapa faktor lain yang menyebabkan false positive meskipun tidak dalam jumlah banyak. Email yang menggunakan token berhuruf kapital dalam jumlah banyak, seperti email berisi peringatan cuaca buruk, kadang salah diklasifikasikan sebagai spam karena kata-kata dalam huruf kapital banyak ditemukan pada email spam. Email yang dikirimkan oleh aplikasi auto-responder beberapa kali salah diklasifikasikan sebagai spam karena isinya yang pendek dan mengandung kata-kata yang umum ditemukan pada email spam seperti ‗call‘, ‗contact‘, dan ‗respond‘. Selain itu, email pendek yang hanya berisikan URL juga kadang salah diklasifikasikan sebagai spam karena URL lebih banyak ditemukan pada email spam. 2. Analisis Kesalahan Pengenalan Spam (False Negative) Hasil pengujian terhadap kedua metode klasifikasi tidak membuahkan kesimpulan mengenai metode mana yang memiliki tingkat false negative lebih tinggi. Selanjutnya dibahas karakteristik pesan spam yang berhasil lolos dari proses filtering. a. Email spam yang kebetulan memiliki isi seperti ham Tipe email spam pertama yang berhasil lolos dari spam filter adalah email spam yang secara kebetulan memiliki karakteristik yang mirip dengan mayoritas email ham yang diterima oleh pengguna. Pesan-pesan ham pada data uji didominasi oleh pesan dari mailing list bertemakan teknologi informasi. Pesan-pesan spam yang memiliki tema sangat berbeda seperti obat ataupun judi akan mudah dikenali oleh spam filter, namun jika spam yang dikirim ternyata bertemakan teknologi informasi, kata-kata yang terkandung di dalamnya akan memiliki karakteristik yang mirip dengan mayoritas email ham. Akibatnya, filter akan salah mengira email spam tersebut sebagai ham.
b. Email yang menggunakan huruf non-latin7 Pemrosesan email berkarakter latin dan berkarakter non-latin memiliki sedikit perbedaan. Proses yang paling harus diperhatikan adalah tokenisasi. Pada pesan berhuruf latin, dengan satu karakter pemisah token saja yaitu spasi, email sudah dapat dipecahkan menjadi token-token dengan cukup baik. Pada tulisan dimana karakternya tidak menggunakan spasi sebagai pemisah token, proses tokenisasi biasa tidak akan menghasilkan token-token yang sesuai. Selain permasalahan pada tokenisasi, email dengan huruf non-latin pada data pengujian jumlahnya sangat sedikit. Kurangnya data training untuk token-token yang ada menyebabkan token tersebut memiliki nilai peluang yang cenderung netral. Khusus pada metode Graham, batas nilai peluang suatu email untuk masuk ke dalam kelas spam adalah 0,9, akibatnya, email-email yang dipenuhi dengan token netral akan masuk ke dalam kelas ham. c. Email yang isinya gagal di-decode. Beberapa email yang menggunakan character-encoding maupun content-transferencoding khusus gagal di-decode. Hal tersebut disebabkan oleh kekurangan dari library pembaca email yang digunakan atau kesalahan format pada emailnya sendiri. Kegagalan proses decode menyebabkan isi dari email hanya muncul sebagian atau tidak muncul sama sekali, akibatnya, proses klasifikasi didominasi oleh token-token dari header. Karena keterbatasan dari token yang terdapat pada header, proses klasifikasi kadang mengalami kesalahan.
KESIMPULAN DAN SARAN Kesimpulan Berdasarkan penelitian yang telah dilakukan, dapat disimpulkan beberapa hal sebagai berikut: 1. Pengujian menggunakan metode klasifikasi Graham menunjukkan metode training TEFT memiliki akurasi yang lebih tinggi dibandingkan dengan metode TOE terutama pada ham recall dimana perbedaan nilai mencapai 0,0777.
7
Contoh email seperti ini adalah email berbahasa Jepang, Arab dan Cina.
14