perbandingan metode seleksi fitur pada spam … · bagian akhir skripsi ini. dengan ini saya...
TRANSCRIPT
![Page 1: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/1.jpg)
PERBANDINGAN METODE SELEKSI FITUR
PADA SPAM FILTER MENGGUNAKAN KLASIFIKASI
MULTINOMIAL NAÏVE BAYES
JULIUS GIGIH DIMASTYO
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2014
![Page 2: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/2.jpg)
![Page 3: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/3.jpg)
PERNYATAAN MENGENAI SKRIPSI DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA
Dengan ini saya menyatakan bahwa skripsi berjudul Perbandingan Metode Seleksi
Fitur pada Spam Filter Menggunakan Klasifikasi Multinomial Naïve Bayes adalah
benar karya saya dengan arahan dari komisi pembimbing dan belum diajukan
dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber informasi yang
berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari
penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di
bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut
Pertanian Bogor.
Bogor, Desember 2014
Julius Gigih Dimastyo
NIM G64124021
![Page 4: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/4.jpg)
ABSTRAK
JULIUS GIGIH DIMASTYO. Perbandingan Metode Seleksi Fitur pada Spam
Filter Menggunakan Klasifikasi Multinomial Naïve Bayes. Dibimbing oleh
JULIO ADISANTOSO.
Saat ini banyak email yang tidak diinginkan masuk pada inbox, yang
dikenal dengan spam. Oleh karena itu dibuatlah piranti lunak spam filter untuk
mengklasifikasikan email spam dan bukan spam (ham) secara otomatis. Naïve
Bayes saat ini banyak digunakan dalam metode klasifikasi karena sederhana dan
mudah untuk diimplementasikan. Dalam klasifikasi dokumen, multinomial Naïve
Bayes kinerjanya lebih bagus dibandingkan multivariate Bernoulli untuk kasus
vocabulary yang besar. Untuk meningkatkan akurasi model klasifikasi dan
mempercepat proses komputasi dengan jumlah fitur yang minimal maka perlu
melakukan seleksi fitur. Ada tiga metode seleksi fitur yang digunakan yaitu
inverse document frequency (IDF), mutual information (MI) dan chi-square. Hasil
akhir menunjukan bahwa metode seleksi fitur yang terbaik berdasarkan tingkat
akurasi yang dihasilkan adalah MI dengan akurasi 93.77% dan jumlah vocabulary
sebanyak 9507 sebagai penciri.
Kata kunci : multinomial Naïve Bayes, seleksi fitur, spam filter
ABSTRACT
JULIUS GIGIH DIMASTYO. Comparison of Feature Selection Methods in Spam
Filter Using Multinomial Naïve Bayes Classification. Supervised by JULIO
ADISANTOSO.
Nowadays lots of unwanted email called spam may freely get into the
inbox entry. Therefore spam filter software made to classify spam and non-spam
email (ham) automatically. Naïve Bayes frequently used today as classification
method for it simple and easy to be implemented. Naïve bayes has a good
performance to classify multinomial document compared to multivariate Bernoulli
when it comes to large vocabulary. Feature selection needed to improve
classification model accuracy and make computation process more efficient.
There are three feature selection methods used such as inverse document
frequency (IDF), mutual information (MI), and chi-square. Based on accuracy
level, the result of this study shows that MI is the best feature selection method
with 93.77% accuracy and 9507 vocabulary as an identifier.
Keywords : feature selection, multinomial Naïve Bayes, spam filter
![Page 5: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/5.jpg)
JULIUS GIGIH DIMASTYO
Skripsi
sebagai salah satu syarat untuk memperoleh gelar
Sarjana Komputer
pada
Departemen Ilmu Komputer
PERBANDINGAN METODE SELEKSI FITUR
PADA SPAM FILTER MENG
GUNAKAN KLASIFIKASI MULTINOMIAL NAÏVE BAYES
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2014
![Page 6: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/6.jpg)
Penguji:
1 Ahmad Ridha, SKom MS
2 Dr Imas Sukaesih Sitanggang, SSi MKom
![Page 7: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/7.jpg)
Judul Skripsi: Perbandingan Metode Seleksi Fitur pada Spam Filter Menggunakan
Klasifikasi Multinomial Naïve Bayes
Nama : Julius Gigih Dimastyo
NIM : G64124021
Disetujui oleh
Ir Julio Adisantoso, MKom
Pembimbing
Diketahui oleh
Dr Ir Agus Buono, Msi MKom
Ketua Departemen
Tanggal Lulus:
![Page 8: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/8.jpg)
PRAKATA
Puji dan syukur penulis panjatkan kepada Allah subhanahu wa ta’ala atas segala
karunia-Nya sehingga karya ilmiah ini berhasil diselesaikan. Tema yang dipilih
dalam penelitian yang dilaksanakan sejak bulan Juni 2014 ini ialah Perbandingan
Metode Seleksi Fitur pada Spam Filter Menggunakan Klasifikasi Multinomial
Naïve Bayes
Terima kasih penulis ucapkan kepada Bapak Ir. Julio Adisantoso MKom
selaku pembimbing. Ungkapan terima kasih juga disampaikan kepada kedua
orang tua saya. Terimkasih juga disampaikan kepada teman satu bimbingan
Mutia, Denis dan Lutfi serta teman-teman ekstensi Ilkom IPB angkatan 7 yang
telah membantu dalam menyelesaikan penelitian ini.
Semoga karya ilmiah ini bermanfaat.
Bogor, Desember 2014
Julius Gigih Dimastyo
![Page 9: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/9.jpg)
DAFTAR ISI
DAFTAR TABEL vi
DAFTAR GAMBAR vi
DAFTAR LAMPIRAN vi
PENDAHULUAN 1
Latar Belakang 1
Perumusan Masalah 2
Tujuan Penelitian 2
Manfaat Penelitian 2
Ruang Lingkup Penelitian 2
METODE 2
Pengumpulan Data 3
Praproses Data 3
Fungsi Klasifikasi 8
Evaluasi Model Klasifikasi 9
Lingkungan Pengembangan 10
HASIL DAN PEMBAHASAN 10
Pengumpulan Data 10
Praproses Data 11
Seleksi Fitur 11
Pengujian Model Klasifikasi 13
Evaluasi Model Klasifikasi 14
SIMPULAN DAN SARAN 17
Simpulan 17
Saran 17
DAFTAR PUSTAKA 18
RIWAYAT HIDUP 22
![Page 10: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/10.jpg)
DAFTAR TABEL
1. Komponen header dan body 5
2. Tabel kontingensi antara kata dan kelas 6
3. Nilai kritis untuk taraf nyata dengan derajat bebas (Walpole 1968) 8
4. Confusion matrix kelas prediksi dan kelas sebenarnya 9
5. Jumlah vocabulary berdasarkan taraf nyata α 12
6. Batas nilai masing-masih seleksi fitur 12
7. Perbandingan waktu komputasi klasifikasi antar seleksi fitur 13
8. Confusion matrix tanpa seleksi fitur 13
9. Perbandingan tingkat akurasi setiap seleksi fitur 14
DAFTAR GAMBAR
1. Tahapan penelitian 3 2. Header email 4
3. Body email 4
4. Tingkat akurasi berdasarkan jumlah vocabulary pada MI 14
5. Grafik tingkat akurasi dari ketiga seleksi fitur 15
6. Grafik tingkat akurasi ham dari ketiga seleksi fitur 16
7. Grafik tingkat akurasi spam dari ketiga seleksi fitur 16
8. Grafik perbandingan waktu komputasi klasifikasi setiap seleksi fitur 17
DAFTAR LAMPIRAN
1. Pseudocode perhitungan seleksi fitur chi square 19
2. Pseudocode perhitungan seleksi fitur MI 19
3. Pseudocode perhitungan seleksi fitur IDF 19
4. Daftar kata stopwords 20
![Page 11: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/11.jpg)
PENDAHULUAN
Latar Belakang
Saat ini banyak email yang tidak diinginkan masuk pada inbox, yang
dikenal dengan spam. Perusahaan keamanan McAfee (2008) dalam laporannya
menyatakan bahwa pada tahun 2008, terdapat sekitar 62 triliun spam yang dikirim
ke seluruh dunia.
Menyaring spam secara manual sulit dilakukan untuk ukuran dokumen
email yang sangat besar. Oleh karena itu muncul piranti lunak spam filter untuk
mengklasifikasikan email spam dan bukan spam (ham) secara otomatis. Metode
Naive Bayes classifier dapat digunakan sebagai fungsi klasifikasi, meskipun
beberapa algoritme yang lain telah bekerja dalam pengembangan spam filter.
Naïve Bayes banyak digunakan dalam pengembangan spam filter, karena
sederhana dan mudah untuk diimplementasikan (Metsis et al. 2006).
Secara umum Naïve Bayes classifier dapat dibagi menjadi dua, yaitu
multivariate Bernoulli dan multinomial Naïve Bayes (Manning et al. 2009).
Dalam penelitian ini Naïve Bayes classifier yang digunakan adalah multinomial
Naïve Bayes. Multinomial Naïve Bayes mampu menurunkan kesalahan pada
klasifikasi dokumen dengan nilai rata 27% bahkan mencapai 50% dari percobaan
menggunakan multivariate Bernoulli (McCallum & Nigam 1998). Penelitian Rachman (2011) mengukur kinerja spam filter menggunakan dua
metode training TEFT dan TOE, serta metode Naïve Bayes Multinomial dan Graham
sebagai classifier. Penelitian tersebut menghasilkan nilai maksimum pada evaluasi
spam recall sebesar 97.65% yang dihasilkan dari metode training TOE dan classifier
Naïve Bayes Multinomial. Penelitian tersebut tidak membahas mengenai seleksi fitur
dalam mengambil penciri. Tidak semua term dapat dijadikan sebagai penciri dalam
klasifikasi, sehingga perlu dilakukan seleksi fitur. Menurut Manning et al. (2009)
tujuan utama dari seleksi fitur adalah mempercepat proses komputasi dengan
jumlah term yang minimal sebagai penciri dan meningkatkan akurasi model
klasifikasi.
Metode seleksi fitur yang paling banyak digunakan dalam klasifikasi teks
adalah inverse document frequency (IDF), Mutual information (MI), dan chi-
square ( ) (Manning et al. 2009). IDF adalah metode yang sederhana dalam
seleksi fitur namun menghasilkan fitur yang efektif untuk mengkategorikan
dokumen teks (Yang dan Pedersen 1997). MI mengukur hubungan acak antar
variabel, sehingga sesuai untuk menilai term dari sebagai penciri dalam klasifikasi
(Battiti 1994). Chi-square ( ) dalam seleksi fitur digunakan untuk mengukur
hubungan antara kata terhadap kelas. Manning et al. (2009) menyebutkan bahwa
menghasilkan fitur sebagai penciri dalam klasifikasi yang bagus. Ketiga
seleksi fitur tersebut diharapkan mampu meningkatkan akurasi di dalam
klasifikasi spam filtering dan dibandingkan tingkat akurasinya, sehingga bisa
mengetahui seleksi fitur mana yang baik untuk pengembangan spam filtering.
![Page 12: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/12.jpg)
2
Perumusan Masalah
Perumusan masalah pada penelitian ini adalah:
1 Bagaimana memodelkan klasifikasi multinomial Naïve Bayes di dalam spam
filter?
2 Bagaimana pengaruh seleksi fitur IDF, MI dan chi-square dalam meningkatkan
akurasi klasifikasi?
Tujuan Penelitian
Tujuan dari penelitian ini adalah:
1 Mengimplementasikan fungsi klasifikasi dengan metode multinomial Naïve
Bayes.
2 Membandingkan akurasi spam filter dengan melihat pemilihan seleksi fitur
IDF, MI dan
Manfaat Penelitian
Manfaat dari penelitian ini adalah mendapatkan metode seleksi fitur yang
terbaik dalam meningkatkan akurasi spam filter dengan fungsi klasifikasi
multinomial Naïve Bayes.
Ruang Lingkup Penelitian
Korpus yang digunakan adalah dokumen email dengan standar
Multipurpose Internet Mail Extensions (MIME) dalam format raw. Korpus email
ini dibagi ke dalam 2 kelas yang berbeda yaitu kelas spam dan ham. Dalam
praproses tidak dilakukan proses stemming karena dapat menurunkan kinerja
klasifikasi (Manning et al. 2009).
METODE
Penelitian ini terdiri atas 5 tahap yaitu pengumpulan data, praproses data,
pengambilan data latih dan data uji, fungsi klasifikasi, dan evaluasi (Gambar 1).
Seleksi fitur terdapat pada tahapan praproses data.
![Page 13: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/13.jpg)
3
Pengumpulan
dokumen
Praproses data
Selaksi fitur
Ekstraksi dokumen
Tokenisasi
Pembuangan
stopwords
Inverse document
frequency
Mutual information
Chi-square
Fungsi klasifikasi
multinomial
Naïve Bayes
Evaluasi
Data laih
Data uji
Gambar 1 Tahapan penelitian
Pengumpulan Data
Tahap pertama dalam melakukan penelitian adalah pengumpulan data. Data
yang dikumpulkan berupa corpus email yang diunduh dari
www.spamassassin/public_corpus dengan kode prefix “20030228” sebanyak 6047
dokumen email. Email yang telah diunduh tersebut terdiri atas 1897 spam, 250
hard ham, dan 3900 easy ham. Hard ham adalah email ham namun banyak
mengandung ciri pada spam sedangkan easy ham adalah email ham yang tidak
mengandung ciri pesan spam.
Praproses Data
Sebelum dilakukan klasifikasi, data email diolah terlebih dahulu untuk
menghasilkan penciri yang berupa term. Tahapan tersebut adalah ekstraksi
dokumen, tokenisasi, membuang stopwords, dan seleksi fitur.
Ekstraksi Dokumen
Dokumen yang diperoleh melalui tahap pengumpulan data berupa email
dengan standar MIME dalam format raw. Email yang akan diproses
didekomposisi terlebih dahulu struktur email-nya menjadi bagian yang lebih kecil.
Secara umum struktur email dapat dibagi menjadi 2 bagian utama yaitu header
dan body.
Berdasarkan MIME bagian header email berisi komponen-komponen
informasi seperti from, subject, date, MIME-version, received, message-id,
delivered-to, to, Content-type, dan content-transfer-encoding. Untuk lebih
jelasnya komponen header dapat dilihat pada Gambar 2. Header dari email
tersebut dipecah menjadi bagian-bagian yang lebih kecil sesuai dengan informasi
yang dikandungnya.
![Page 14: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/14.jpg)
4
Gambar 2 Header email
Isi dari sebuah pesan email terdapat pada bagian body. Terkadang pada body
tidak hanya memiliki satu part, namun ada email yang mengandung body
multipart. Bagian body yang memiliki informasi file attachment terdapat pada
body multipart. Email yang mengandung multipart akan digabungkan menjadi
satu. Gambar 3 adalah contoh body pada email yang belum diproses.
Gambar 3 Body email
Bagian header dan body diekstrak menjadi dokumen email yang siap untuk
dilakukan proses tokenisasi. Hasil dari ektraksi dokumen ini berupa informasi
yang terdapat pada email seperti yang terlihat pada Tabel 1. Bagian header yang
digunakan untuk proses tokensisasi adalah subject saja, sedangkan pada bagian
body adalah plain text dan HTML text.
![Page 15: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/15.jpg)
5
Tabel 1 Komponen header dan body
Bagian Komponen Keterangan
Header
MIME-version Menunjukan versi MIME yang
digunakan
Form Orang yang menulis pesan
Received Daftar semua server / komputer dimana
pesan dapat sampai kepada penerimanya
Date Menunjukkan tanggal dan waktu pesan
email dibuat
Delivered-To Alamat penerima email
Message-ID Sebuah string unik yang diberikan oleh
sistem email saat pesan tersebut pertama
kali dibuat
Subject Subject dari pesan
To menunjukkan kepada siapa pesan itu
ditujukan, tapi mungkin tidak berisi
alamat penerima
Body
Plain text Isi pesan dengan format penulisan dalam
teks ASCII biasa
HTML text Isi pesan yang mengandung tag HTML
Attachment Informasi yang memberikan lampiran
dari sebuah pesan.
Tokenisasi
Tokenisasi adalah proses pemotongan teks menjadi bagian-bagian yang
disebut token (Manning et al. 2009). Tokenisasi juga bertujuan membuang
karakter tertentu, seperti tanda baca. Token yang dihasilkan berupa kata tunggal
yang nantinya akan menjadi sebuah term yang akan digunakan sebagai penciri
untuk klasifikasi antara email spam dan ham. Hasil akhir dari proses tokenisasi
adalah inverted index dalam bentuk matriks term-dokumen.
Membuang Stopwords
Stopwords adalah kata yang sangat umum dan sering muncul dengan
frekuensi tinggi (Manning et al. 2009). Token didalam stopwords tidak dapat
digunakan sebagai penciri dalam melakukan klasifikasi. Daftar stopwords yang
digunakan adalah kata dalam bahasa Inggris yang diunduh dari
http://jmlr.org/papers/volume5/lewis04a/a11-smart-stop-list/english.stop. yang
memiliki 571 kata (Lampiran 4). Membuang stopwords juga bertujuan untuk
memperkecil daftar token dari inverted index.
Seleksi Fitur
Seleksi fitur adalah proses pemilihan subset dari term pada training set dan
digunakan dalam klasifikasi teks. Seleksi fitur mempunyai 2 tujuan utama yaitu,
membuat data latih yang digunakan untuk classifier lebih efisien dengan cara
mengurangi ukuran kosakata, dan untuk meningkatkan akurasi klasifikasi dengan
menghilangkan fitur noise (Manning et al. 2009).
![Page 16: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/16.jpg)
6
Menurut Garnes (2009) seleksi fitur secara umum dibagi menjadi 2 metode,
yaitu unsupervised feature selection dan supervised feature selection.
Unsupervised feature selection adalah sebuah metode seleksi fitur yang tidak
menggunakan informasi kelas dalam data latih ketika memilih fitur untuk
classifier. Manning et al. (2009) unsupervised feature selection adalah seleksi
fitur berbasis frekuensi. IDF adalah salah satu contoh seleksi fitur yang tidak
menggunakan informasi kelas dalam pemilihan fiturnya.
Supervised feature selection adalah metode seleksi fitur yang menggunakan
informasi kelas dalam data latih, sehingga untuk menggunakan seleksi fitur ini
harus tersedia sebuah data latih yang sudah terklasifikasi. MI dan chi-square
adalah contoh dari supervised feature selection.
i) Inverse document frequency (IDF)
Document frequency ( ) adalah banyaknya dokumen yang mengandung
kata tertentu. Ukuran ketidakpentingan suatu term t dari dokumen yang digunakan
sebagai penciri adalah kata yang sering muncul di seluruh dokumen. IDF adalah
banyaknya dokumen dimana suatu term t muncul yang dikoreksi dengan
banyaknya seluruh dokumen latih N. Nilai dari IDF disimbolkan dengan yang ditulis dengan formula (Manning et al. 2009)
(
) (1)
ii) Mutual information (MI)
MI menunjukkan seberapa banyak informasi sebuah term memberikan
konstribusi dalam membuat keputusan klasifikasi secara benar atau salah. Nilai
dari MI menurut Manning et al. (2009) adalah
( ) ∑ ∑ ( ) ( )
( ) ( ) * + * + (2)
sedangkan U adalah variabel acak dengan nilai-nilai = 1 (dokumen berisi kata
t) dan = 0 (dokumen tidak mengandung kata t), dan C adalah variabel acak
dengan nilai-nilai = 1 (dokumen di kelas c ) dan = 0 (dokumen tidak di kelas c). Perhitungan nilai MI pada setiap kata t yang muncul pada setipa kelas c
dapat dibantu dengan menggunakan tabel kontingensi (Tabel 2).
Tabel 2 Tabel kontingensi antara kata dan kelas
Kata Kelas
Jumlah c ⌐c
t
⌐t
Jumlah
Perhitungan nilai MI berdasarkan Tabel 2 dapat disederhanakan menjadi
(Manning et al. 2009)
( )
(3)
![Page 17: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/17.jpg)
7
dengan adalah jumlah seluruh dokumen latih, adalah banyaknya dokumen
kelas c yang memuat kata t, adalah banyaknya dokumen bukan kelas c yang
memuat kata t, adalah banyaknya dokumen kelas c yang tidak memuat kata t,
adalah banyaknya dokumen bukan kelas c yang tidak memuat kata t.
iii) Chi-square ( )
Chi-square ( ) biasanya digunakan dalam menguji independensi dari dua
variabel yang berbeda. Hipotesis nol (H0) jika kedua variabel saling bebas satu
sama lain. H0 diterima jika nilai penghitungan < nilai kritis pada derajat bebas
dan taraf nyata tertentu.
Dalam seleksi fitur digunakan untuk mengukur independensi term t dan
kelas c. H0 yang diuji adalah term dan kelas benar-benar independen, artinya fitur
ini tidak berguna untuk mengelompokkan dokumen. Jika nilai dari term t >
nilai kritis pada derajat bebas dan taraf nyata tertentu maka tolak H0, artinya term t
tersebut dapat digunakan sebagai penciri. Persamaan dari (Manning et al.
2009) dapat ditulis sebagai
( ) ∑ ∑(
)
* + * + (4)
dengan D adalah variabel acak dengan nilai-nilai = 1 adalah dokumen berisi
term t dan = 0 adalah dokumen yang tidak mengandung t, = 1 adalah
dokumen di kelas c dan = 0 adalah dokumen tidak di kelas c. N adalah
frekuensi yang diamati dalam dokumen D dan E adalah frekuensi yang diharapkan.
Dengan melihat tabel kontingensi pada Tabel 3, persamaan dapat
disederhanakan menjadi (Manning et al. 2009)
( ) ( )
( ) ( ) ( ) ( ) (5)
dengan N adalah jumlah seluruh dokumen latih yang memiliki nilai-nilai et dan ec
yang ditunjukan oleh dua subscript. Sebagai contoh, N10 adalah jumlah dokumen
yang mengandung t (et = 1) dan tidak dalam c (ec = 0). Untuk lebih jelasnya bisa
dilihat pada keterangan tabel kontingensi (Tabel 2) dalam persamaan MI.
Pengambilan keputusan dilakukan berdasarkan nilai dari masing-masing
kata. Kata yang memiliki nilai di atas nilai kritis pada taraf nyata adalah kata
yang akan dipilih sebagai penciri dokumen. Misal taraf nyata yang digunakan
adalah = 0.100 yang artinya kata yang digunakan sebagai penciri adalah kata
dengan nilai lebih besar atau sama dengan 2.71. Kata yang dipilih sebagai
penciri merupakan kata yang memiliki pengaruh terhadap kelas c. Nilai kritis
untuk taraf nyata yang digunakan dalam penelitian ini ditunjukkan pada Tabel 3.
![Page 18: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/18.jpg)
8
Tabel 3 Nilai kritis untuk taraf nyata dengan derajat bebas (Walpole 1968)
Nilai kritis
0.100 2.71
0.050 3.84
0.010 6.63
0.005 7.88
Fungsi Klasifikasi
Klasifikasi dokumen secara otomatis dilakukan menggunakan fungsi
klasifikasi yang dapat memetakan dokumen ke dalam kategori tertentu
γ : X C
dengan X adalah kumpulan dokumen dan C adalah himpunan kelas atau kategori.
Fungsi klasifikasi digunakan untuk mengelompokan email spam dan ham.
Manning et al. (2009) membagi fungsi klasifikasi menjadi dua metode yaitu
berbasis vector dan berbasis peluang. Pada fungsi klasifikasi berbasis vektor,
setiap dokumen training direpresentasikan sebagai vektor yang diberi label sesuai
dengan kelasnya. Beberapa metode yang sering digunakan untuk klasifikasi
berbasis vektor adalah kNN dan Rocchio classification. Metode kedua adalah
berbasis peluang dimana penentuan label kelas akan ditentukan dari nilai peluang
dokumen terhadap kelas. Metode berbasis peluang yang sering digunakan adalah
Naïve Bayes classifier. Nilai peluang dokumen d pada kelas c adalah (Manning et
al. 2009)
( | ) ( | ) ( )
( ) (6)
Naïve Bayes classifier terbagi menjadi 2 model, yaitu multivariate Bernoulli
dan multinomial Naïve Bayes (Manning et al. 2009). Model pertama, multivariate
Bernoulli menyatakan bahwa dokumen diwakili oleh atribut biner yang
menunjukan ada dan tidak ada term dalam dokumen. Frekuensi kemunculan term
dalam dokumen tidak ikut diperhitungkan.
Sedangkan pada model kedua multinomial Naïve Bayes, dokumen diwakili
oleh serangkaian kemunculan term dari dokumen. Pada multinomial Naïve Bayes,
dibuat suatu asumsi bahwa kemunculan masing-masing term bersifat
independen antara satu term dengan term yang lainnya. Dengan asumsi tersebut,
nilai dari P(c|d) peluang suatu dokumen di dalam kelas dapat ditulis sebagai (Manning et al. 2009)
( | ) ( )∏ ( | ) (7)
dengan ( | ) adalah peluang dari suatu term 𝑘 muncul pada dokumen d yang
diketahui memiliki kelas c. Pendugaan parameter (tk|c) dihitung dengan cara
( | )
∑ (8)
dengan 𝑇 adalah jumlah kemunculan term dalam dokumen training yang
berada di kelas c. ∑ 𝑇 adalah jumlah seluruh term yang terdapat pada seluruh dokumen di kelas c termasuk untuk term yang muncul berulang kali pada
dokumen yang sama (Manning et al. 2009).
![Page 19: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/19.jpg)
9
Terkadang term tidak muncul pada salah satu kelas saat proses klasifikasi
sehingga nilai ( | )yang dihasilkan adalah nol. Untuk mengatasi permasalahan
tersebut, digunakan laplace smoothing, yaitu menambahkan frekuensi term
sebanyak 1 sehingga perhitungan dari ( | ) menjadi (Manning et al. 2009)
( | )
∑ (9)
sedangkan 𝐵 adalah semua jumlah vocabulary (kata unik) yang terdapat dalam
data latih.
Evaluasi Model Klasifikasi
Pengujian dilakukan pada data uji terhadap fungsi klasifikasi yang sudah
dilakukan training. Token yang dihasilkan dari proses seleksi fitur, masing-
masing dihitung peluang berdasarkan kelasnya. Setelah mendapatkan nilai
peluang masing-masing token maka dapat dihitung peluang dari dokumen email
uji.
Penghitungan nilai peluang dengan mengimplementasikan pada kode
program dari persamaan (7) ternyata menghasilkan nilai peluang yang sangat kecil,
pada bahasa pemrogaman PHP nilai peluang yang sangat kecil tersebut menjadi nilai 0. Oleh karena itu hal tersebut diatasi dengan melakukan perhitungan
menggunakan logaritma untuk menghitung peluang dokumen. Persamaan diatas
diubah menjadi
log ( | )) ( ( )) ∑ log ( ( | )) . (10)
Evaluasi dilakukan dengan cara membandingkan kelas aktual dari dari data
uji dan kelas hasil prediksi dengan menggunakan confusion matrix. Confusion
matrix berisi jumlah kasus-kasus yang diklasifikasikan dengan benar dan
kasuskasus yang salah diklasifikasikan. Pada Kasus yang diklasifikasikan dengan
benar muncul pada diagonal, karena kelompok prediksi dan kelompok aktual
adalah sama. Elemen-elemen selain diagonal menunjukkan kasus yang salah
diklasifikasikan. Format dari confusion matrix dapat dilihat pada Tabel 4.
Tabel 4 Confusion matrix kelas prediksi dan kelas sebenarnya
Kelas
Sebenarnya
Kelas Prediksi
Spam Ham
Spam TP FN
Ham FP TN
TP adalah email dari kelas spam yang benar diklasifikasikan sebagai spam,
TN adalah email dari kelas ham yang benar diklasifikasikan sebagai ham, FP
adalah email dari kelas ham yang salah diklasifikasikan sebagai spam, FN adalah
email dari kelas spam yang salah diklasifikasikan sebagai ham. Evaluasi
penelitian ini dilakukan untuk menghitung akurasi dengan formula
![Page 20: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/20.jpg)
10
𝑘 𝑇 𝑇
𝑇 𝑇
Untuk mengetahui akurasi setiap kelas maka dihitung akurasi ham dan akurasi
spam dengan formula
𝑘 𝑇
𝑘 𝑇
Lingkungan Pengembangan
Spesifikasi perangkat keras dan perangkat lunak yang digunakan untuk
penelitian ini adalah sebagai berikut:
1 Perangkat keras berupa komputer personal dengan spesifikasi sebagai berikut :
a) Processor Intel core i3
b) RAM 4 GB
c) Monitor LCD 14.0” HD
d) Harddisk 500 GB HDD
2 Perangkat lunak :
a) Sistem Operasi Windows 7
b) Bahasa pemrograman PHP
c) DBMS MySQL
d) Web server Apache 2.4.4
HASIL DAN PEMBAHASAN
Pengumpulan Data
Korpus yang digunakan pada penelitian ini adalah public email corpus yang
disediakan oleh Spamassasin dengan kode prefix “20030228” 1. Korpus ini terdiri
atas 6047 pesan email yang sudah diklasifikasikan sebelumnya secara manual.
Pesan yang memiliki label easy-ham dan hard-ham tidak dibedakan secara khusus
dan digabungkan ke dalam satu kategori yaitu “ham”. Dari total korpus dibagi
masing-masing 70% sebagai data latih dan 30% data uji. Data latih spam
sebanyak 1328 dan data latih ham 2905 sedangkan data uji spam sebanyak 569
dan data uji ham 1245. Jadi total data latih 4233 atau 70% dari total korpus dan
total data uji 1814 atau 30% dari total korpus.
1 Korpus email dari Spamassasin dapat diunduh di alamat http://www.spamassassin.org/publiccorpus/.
![Page 21: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/21.jpg)
11
Praproses Data
Ekstraksi Dokumen
Dokumen yang diperoleh melalui tahap pengumpulan dokumen berupa
email mentah. Email yang diunduh pada bagian file extension tidak memiliki
nama yang sama sehingga harus dilakukan perubahan nama pada file extension
yang seragam menjadi “.mail”. Serta pada nama file dilakukan penamaan berurut
mulai dari “1.mail” untuk mempermudah looping pada program.
Ekstraksi dokumen dilakukan untuk memecah dokumen email menjadi
bagian-bagian yang lebih kecil menggunakan library MIME mailparse. Informasi
subject pada header dan plain text serta HTML text pada body hasil ekstraksi
digabungkan menjadi satu untuk dilakukan tokenisasi. Isi dari subject dan plain
text berupa teks biasa subject biasanya menggambarkan informasi yang
terkandung pada bagian body. plain text paling banyak terdapat pada easy ham
sedangkan HTML text paling banyak terdapat pada spam dan hard ham. Pada
dokumen easy-ham sebanyak 2708 mempunyai plain text sedangkan pada
dokumen hard-ham dan spam masing-masing sebanyak 64 dan 771. HTML text
pada dokumen easy-ham sebanyak 20 sedangkan pada dokumen hard-ham dan
spam masing-masing sebanyak 136 dan 671.
Tokenisasi
Proses tokenisasi secara bertahap dilakukan sebagai berikut:
1 Tanda baca serta dihilangkan dan menggantinya dengan spasi. Tanda baca
tersebut diantaranya ' - ) ( \ / = . , : ; ! ?
2 Proses pemotongan dokumen menjadi token -token berdasarkan white space
serta menghilangkan kata numerik
3 Penyeragaman token menjadi huruf kecil semua (lower case).
Pada bagian subject tokenisasi dilakukan seperti halnya pada plain text.
Semua kata pada subject akan dipotong menjadi token. Proses tokenisasi ini juga
dilakukan terhadap seluruh tag html yang terdapat pada dokumen email.
Termasuk seluruh atribut yang terdapat pada tag html seperti “width”, “color” dan
lain sebagainya. Sebelum disimpan dalam basis data token-token yang dihasilkan
harus terlebih dahulu dibuang kata-kata yang termasuk dalam stopwords. Token
yang sudah bersih dari stopwords akan diproses melalui seleksi fitur untuk
menghasilkan term yang nantinya akan digunakan sebagai penciri.
Seleksi Fitur
Seleksi fitur ini bertujuan agar akurasi yang dihasilkan dari proses
klasifikasi email dapat meningkat, serta yang terpenting adalah untuk efisiensi
dari token yang digunakan sebagai penciri. Hasil dari pembuangan stopwords
sebelum dilakukan proses seleksi fitur menghasilkan jumlah token unik atau
vocabulary sebanyak 50419. Setiap token yang ada akan diberikan bobot sesuai
dengan nilai seleksi fitur yaitu dengan menggunakan IDF, MI atau chi-square.
Setelah memiliki bobot maka dipilihlah token dengan bobot tertentu sesuai
dengan batas pemotongannya. Untuk masing-masing seleksi fitur kami
menggunakan tiga batasan nilai untuk melakukan pemotongan jumlah vocabulary.
![Page 22: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/22.jpg)
12
Seleksi fitur yang pertama adalah chi-square. Pada metode diperlukan
taraf nyata α yang merupakan kesalahan yang dibuat pada waktu menguji H0 dan
H1 saling bebas atau tidak, dengan kata lain untuk mengetahui hubungan antara
token dengan kelas. Jika menggunakan batas taraf nyata α = 0.01 maka token
dengan bobot nilai lebih besar sama dengan 6.63 yang diambil sebagai penciri.
Jumlah dari masing-masing vocabulary berdasarkan taraf nyata α dapat dilihat
pada Tabel 5. Pseudocode program dalam implementasi penghitungan nilai
terdapat pada Lampiran 1.
Tabel 5 Jumlah vocabulary berdasarkan taraf nyata α
Taraf nyata
α Nilai kritis Jumlah vocabulary
Persentase dari
data awal
0.100 2.71 9361 18.6%
0.050 3.84 7733 15.3%
0.010 6.63 3851 7.6%
0.005 7.88 3390 6.7%
Seleksi fitur yang kedua adalah Mutual Information (MI). MI merupakan
supervised feature selection sama seperti yang merupakan metode seleksi fitur
yang menggunakan informasi kelas dalam data pelatihan ketika memilih fitur
untuk classifier. Sama seperti ada tiga nilai untuk melakukan batasan seleksi fitur. Nilai yang diambil dalam MI tidak ada taraf nyata tetapi menggunakan
batasan sesuai yang kita inginkan. Dalam penelitian ini batasan yang diambil
disamakan atau mendekati dengan jumlah vocabulary yang dihasilkan dari seleksi
fitur agar bisa terlihat perbedaan dari masing-masing seleksi fitur untuk
dibandingkan. Pseudocode program dalam implementasi penghitungan nilai MI
terdapat pada Lampiran 2.
Seleksi fitur yang terakhir adalah IDF. Proses pemilihan token dengan
menggunakan seleksi fitur IDF juga dilakukan percobaan empat kali, dengan
pengambilan jumlah vocabulary mendekati hasil seleksi fitur . Pseudocode
program dalam implementasi penghitungan nilai IDF terdapat pada Lampiran 3.
Dalam seleksi fitur IDF pemotongan jumlah vocabulary atau proses seleksi fitur
tidak ada batasan khusus, sama halnya dengan MI. Nilai IDF dan MI yang
digunakan dalam seleksi fitur dapat dilihat pada Tabel 6.
Tabel 6 Batas nilai masing-masih seleksi fitur
α MI IDF
0.100 2.71 0.0004 3.62660
0.050 3.84 0.0005 3.62660
0.0
10 6.63 0.0010
3.62660
0.0
05 7.88 0.0011
3.62660
Jika kita bandingkan dari ketiga seleksi fitur tersebut IDF memiliki tingkat
kecepatan komputasi yang paling cepat. Ini sesuai dengan cara penghitungannya
yang memang lebih mudah dibandingkan MI dan . MI memiliki waktu
![Page 23: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/23.jpg)
13
komputasi yang paling lama. Hasil perbandingan waktu komputasi dapat dilihat
pada Tabel 7. Cara pencatatan waktu komputasi tersebut untuk masing-masing
seleksi fitur dilakukan tiga kali percobaan kemudian ketiga waktu komputasi
dicatat dan diambil rataannya.
Tabel 7 Perbandingan waktu komputasi klasifikasi antar seleksi fitur
Seleksi
fitur
Jumlah
vocabulary
Waktu
komputasi
seleksi fitur
Waktu
komputasi
klasifikasi
Total
waktu Akurasi %
Chi-square
9361
16.9
409.5 426.4 93.55
7733 337.2 354.1 93.44
3851 170.1 187.0 93.16
3390 146.9 163.8 92.89
Mutual
Information
9507
17.5
412.2 429.7 93.77
8220 355.2 372.7 93.55
3799 168.3 185.8 93.22
3237 140.2 157.7 93.44
Inverse
document
frequency
9361
3.0
316.8 319.8 40.90
7733 258.4 261.4 36.83
3851 146.6 149.6 23.59
3390 130.0 133.0 21.83
Tanpa
seleksi fitur 50419 0 2151.0 2151.0 94.54
Pengujian Model Klasifikasi
Sebelum melakukan pengujian klasifikasi menggunakan token hasil reduksi
dari seleksi fitur, penelitian ini mencoba melakukan klasifikasi dokumen email
tanpa melakukan seleksi fitur dengan jumlah vocabulary 50419. Proses pengujian
klasifikasi dilakukan menggunakan 1814 data uji yang terdiri dari 1245 dokumen
ham dan 569 dokumen spam. Hasil akurasi total dari percobaan ini adalah 94.54%
dengan akurasi ham sebesar 98.23% dan akurasi spam sebesar 86.47%. Nilai
detail dari klasifikasi tersebut dapat dilihat pada tabel confusion matrix pada Tabel
8.
Tabel 8 Confusion matrix tanpa seleksi fitur
Spam Ham Total
Spam 492 77 569
Ham 22 1223 1245
Total 514 1300 1814
Pengujian selanjutnya dengan dokumen yang sama namun menggunakan
token yang sebelumnya sudah dilakukan proses seleksi fitur. Untuk setiap seleksi
fitur dilakukan empat kali percobaan dengan membandingkan jumlah vocabulary
yang digunakan. Hasil yang dicatat berupa akurasi ham, akurasi spam dan akurasi
total. Hasil klasifikasi masing-masing seleksi fitur dapat dilihat pada Tabel 9.
![Page 24: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/24.jpg)
14
Tabel 9 Perbandingan tingkat akurasi setiap seleksi fitur
akurasi % akurasi spam % akurasi ham %
chi MI IDF chi MI IDF chi MI IDF
93.55 93.77 40.90 84.53 85.06 25.13 97.67 97.75 48.11
93.44 93.55 36.83 84.36 84.53 22.67 97.59 97.67 43.29
93.16 93.22 23.59 84.53 84.53 14.41 97.11 97.19 27.79
92.89 93.44 21.83 84.53 85.41 13.36 96.71 97.11 25.70
Selain mencatat hasil akurasi dari setiap seleksi fitur berdasarkan jumlah
vocabulary juga dilakukan pencatatan waktu komputasinya. Cara pencatatan
untuk setiap seleksi fitur dan setiap batas nilai dilakukan tiga kali percobaan dan
diambil waktu rataannya. Hasil pencatatan waktu komputasi klasifikasi dapat
dilihat pada Tabel 7.
Evaluasi Model Klasifikasi
Dengan menggunakan seleksi fitur yang diterapkan pada multinomial Naïve
Bayes untuk klasifikasi memang memiliki sedikit penurunan. Setelah dilakukan
klasifikasi berdasarkan masing-masing seleksifitur terlihat bahwa ada sedikit
penurunan dari akurasinya. Penurunan akurasi ini disebabkan karena jumlah
vocabulary yang digunakan sebagai penciri mengalamai penurunan. Hampir pada
semua seleksi fitur semakin sedikit jumlah vocabulary maka akurasi ikut menurun
juga. Grafik pada Gambar 4 menunjukan penurunan akurasi berdasarkan jumlah
vocabulary pada seleksi fitur IDF.
Gambar 4 Tingkat akurasi berdasarkan jumlah vocabulary pada MI
Dalam proses pengujian klasifikasi tanpa menggunakan seleksi fitur
membutuhkan waktu komputasi selama 2151 detik (35.8 menit) dengan akurasi
94.54%. Jika dibandingkan dengan hasil seleksi fitur MI dengan akurasi
94.54%
93.77%
93.55% 93.22%
93.44%
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
0 10000 20000 30000 40000 50000 60000
aku
rasi
Jumlah vocabulary
![Page 25: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/25.jpg)
15
klasifikasi tertinggi 93.77% membutuhkan waktu komputasi hanya 429.7 detik
(7.2 menit) dengan jumlah vocabulary 9507. Dilihat dari penurunan akurasi yang
tidak begitu signifikan dibandingkan dengan waktu eksekusi dan jumlah
vocabulary yang sedikit, maka seleksi fitur dapat digunakan sebagai efisiensi
token sebagai penciri dalam klasifikasi.
Seperti yang sudah dijelaskan sebelumnya secara umum semakin sedikit
jumlah vocabulary yang digunakan sebagai penciri maka akurasi semakin
mengecil. Dari ketiga seleksi fitur tersebut akurasi klasifikasi tebaik terdapat pada
jumlah vocabulary terbesar atau pada nilai taraf nyata α 0.100 pada seleksi fitur
(Gambar 5). Akurasi terbaik dihasilkan dari seleksi fitur MI dengan nilai
akurasi 93.77%. Tetapi tidak semua akurasi menurun jika menggunakan jumlah
vocabulary yang sedikit. Seleksi fitur MI denga jumlah vocabulary terkecil (3237)
memiliki tingkat akurasi lebih bagus dari pada jumlah vocabulary 3799. Akurasi
tersebut mengalami peningkatan dari 93.22% menjadi 93.44%.
Gambar 5 Grafik tingkat akurasi dari ketiga seleksi fitur
Hampir sama dengan akurasi yang ditunjukan pada Gambar 5, akurasi ham
yang terbaik adalah jika mengambil jumlah vocabulary 9361 dan yang terendah
pada jumlah vocabulary 3390 dengan akurasi tertinggi pada seleksi fitur MI
dengan akurasi ham mencapai 97.75%. Semua seleksi fitur mengalami penurunan
tingkat akurasi ham-nya jika jumlah vocabulary yang digunakan sebagai penciri
diperkecil. Lebih jelasnya mengenai tingkat akurasi ham dapat dilihat pada
Gambar 6.
9361 7733 3851 3390
Chi 93.55% 93.44% 93.16% 92.89%
MI 93.77% 93.55% 93.22% 93.44%
IDF 40.90% 36.83% 23.59% 21.83%
0%10%20%30%40%50%60%70%80%90%
100%
ak
ura
si
![Page 26: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/26.jpg)
16
Gambar 6 Grafik tingkat akurasi ham dari ketiga seleksi fitur
Akurasi spam pada IDF akan menurun jika jumlah vocabulary juga
menurun. Seleksi fitur MI justru sebaliknya, akurasi tertinggi pada pengambilan
jumlah vocabulary yang paling kecil dengan tingkat akurasi 85.41%. Sedangkan
akurasinya cenderung stabil dengan akurasinya pada 84.35% baik untuk
jumlah vocabulary tertinggi ataupun terendah. Akurasi spam tertinggi terdapat
pada seleksi fitur MI pada jumlah vocabulary terkecil dengan tingkat akurasi
85.41%. Untuk lebih jelasnya bisa dilihat pada Gambar 7.
Gambar 7 Grafik tingkat akurasi spam dari ketiga seleksi fitur
Melihat dari sisi waktu komputasi dari ketiga seleksi fitur tersebut memiliki
waktu eksekusi yang cenderung sama. Ini terjadi karena jumlah vocabulary yang
digunakan juga hampir sama. semakin banyak jumlah vocabulary maka waktu
komputasi untuk melakukan klasifikasi juga semakin lama. Grafik dari lama
waktu eksekusi dari masing-masing seleksi fitur dapat dilihat pada Gambar 8.
9361 7733 3851 3390
Chi 97.67% 97.59% 97.11% 96.71%
MI 97.75% 97.67% 97.19% 97.11%
IDF 48.11% 43.29% 27.79% 25.70%
0%10%20%30%40%50%60%70%80%90%
100%
ak
ura
si
9361 7733 3851 3390
Chi 84.53% 84.36% 84.53% 84.53%
MI 85.06% 84.53% 84.53% 85.41%
IDF 25.13% 22.67% 14.41% 13.36%
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
ak
ura
si
![Page 27: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/27.jpg)
17
Gambar 8 Grafik perbandingan waktu komputasi klasifikasi setiap seleksi fitur
Melihat dari percobaan yang sudah dilakukan dalam melakukan klasifikasi
seleksi fitur MI secara umum memiliki tingkat akurasi yang terbaik. Bahkan
dalam klasifikasi dokumen spam dengan jumlah vocabulary yang sedikit mampu
menghasilkan akurasi klasifikasi terbaik. Meskipun waktu komputasi relativ
paling lama dibandingkan metode seleksi fitur yang lain. Untuk klasifikasi
dokumen spam jika ingin menggunakan jumlah vocabulary yang sedikit dan
waktu komputasi yang seminimal mungkin maka seleksi fitur MI dapat digunakan.
SIMPULAN DAN SARAN
Simpulan
Metode seleksi fitur yang terbaik berdasarkan tingkat akurasi yang
dihasilkan adalah mutual information dengan akurasi 93.77% dengan waktu
komputasi 429.7 detik dan jumlah vocabulary sebanyak 9507. MI juga lebih
bagus dalam melakukan klasifikasi dokumen spam dibandingkan dengan seleksi
fitur yang lainnya jika menggunakan jumlah vocabulary yang sedikit (sebanyak
3390).
Meskipun dalam seleksi fitur mengalami sedikit penurunan akurasi namun
efisiensi dari term yang dihasilkan sebagai penciri sangat terlihat. Tanpa
menggunakan seleksi fitur membutuhkan waktu komputasi selama 35.8 menit
dengan akurasi 94.54% dengan jumlah vocabulary 50419. Dibandingkan dengan
hasil seleksi fitur MI mampu menghasilkan akurasi 93.77%.
Saran
Menggunakan seleksi fitur banyak terjadi pembuangan token dan mungkin
merupakan penciri. Akibatnya ada beberapa penciri yang ikut terbuang,
sedangkan multinomial Naïve Bayes merupakan metode klasifikasi dengan basis
peluang sehingga pada saat data uji diuji ada token yang sebagai penciri tidak
dihitung peluangnya. Untuk mengatasi hilangnya token yang digunakan sebagai
9361 7733 3851 3390
Chi 426 354 187 164
MI 430 373 186 158
IDF 320 261 150 133
0
50
100
150
200
250
300
350
400
450
500
wa
ktu
(d
eti
k)
![Page 28: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/28.jpg)
18
penciri dapat menggunakan background smoothing, dengan memodelkan seluruh
dokumen latih sebagai collection background model.
DAFTAR PUSTAKA
Battiti R. 1994. Using Mutual Information for Selecting Features in Supervised
Neural Net Learning. IEEE Computational Intelligence Society. 5(4):537 –
550. doi: 10.1109/72.298224
Garnes Ø L. 2009. Feature Selection for Text Categorisation. Norwegia (NO):
NTNU
Manning C D, Raghavan P, Schütze H. 2009. Introduction to Information
Retrieval. Cambridge (GB): Cambridge University Press.
McAfee. 2008. The Carbon Footprint of Email Spam Report. Santa Clara (US):
McAfee, Inc.
McCallum A, Nigam K. 1998. A Comparison of Event Models for Naive Bayes
Text Classification. Didalam : AAAI-98 workshop on learning for text
categorization. hlm 41-48
Metsis V, Androutsopoulos I, Paliouras G. 2006. Spam Filtering with Naive Bayes
– Which Naive Bayes?. Didalam : CEAS 2006 - Third Conference on Email
and AntiSpam. California (US): CEAS Rachman W. 2011. Pengukuran kinerja spam filter menggunakan metode Naive
Bayes classifier graham. [Skripsi]. Bogor (ID): Fakultas Matematika dan Ilmu
Pengetahuan Alam, Institut Pertanian Bogor.
Walpole E R. 1968. Introduction to Statistics. New York (US): Macmillan
Yang Y, Pedersen J O. (1997). A comparative study on feature selection in text
categorization. Didalam: ICML '97 Proceedings of the Fourteenth
International Conference on Machine Learning. San Francisco (US): Morgan
Kaufmann Publishers Inc. hlm 412-420
![Page 29: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/29.jpg)
19
Lampiran 1 Pseudocode perhitungan seleksi fitur chi square
Lampiran 2 Pseudocode perhitungan seleksi fitur MI
Lampiran 3 Pseudocode perhitungan seleksi fitur IDF
$totalham = 2905;
$totalspam = 1328;
$N = $totalham+$totalspam;
$query = mysql_query("SELECT temp_a.token,A,B,C,D FROM temp_b, temp_a
WHERE temp_a.token = temp_b.token");
while($row3 = mysql_fetch_array($query))
{
$pow = (($row3['A']*$row3['D'])-($row3['C']*$row3['B']))
*(($row3['A']*$row3['D'])-($row3['C']*$row3['B']));
$chi = ($N*$pow)/(($row3['A']+$row3['C'])*($row3['B']+$row3['D'])
*($row3['A']+$row3['B'])*($row3['C']+$row3['D']));
}
$totalham = 2905;
$totalspam = 1328;
$N = $totalham+$totalspam;
$query = mysql_query("SELECT temp_a.token,A,B,C,D FROM temp_b,
temp_a WHERE temp_a.token = temp_b.token");
while($row3 = mysql_fetch_array($query)) {
if ($row3['A'] == 0)
$a1 = 0;
else
$a1 = ($row3['A']/$N) *
(log((($N*$row3['A'])/(($row3['A']+$row3['B'])*($row3['A']+$row3['C'])))));
if ($row3['B'] == 0)
$b1 = 0;
else
$b1 = ($row3['B']/$N) *
(log((($N*$row3['B'])/(($row3['A']+$row3['B'])*($row3['B']+$row3['D'])))));
$c1 = ($row3['C']/$N) *
(log((($N*$row3['C'])/(($row3['C']+$row3['D'])*($row3['A']+$row3['C'])))));
$d1 = ($row3['D']/$N) *
(log((($N*$row3['D'])/(($row3['C']+$row3['D'])*($row3['B']+$row3['D'])))));
$hasil = $a1+$b1+$c1+$d1;
}
$totalham = 2905;
$totalspam = 1328;
$N = $totalham+$totalspam;
$query = mysql_query("SELECT token, sum(df) as N from df group by token");
while ($row = mysql_fetch_array($query)){
$term = $row['token'];
$dft = $row['N'];
$idf = log10($N/$dft);
}
![Page 30: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/30.jpg)
20
Lampiran 4 Daftar kata stopwords
a, a's, able, about, above, according, accordingly, across, actually, after,
afterwards, again, against, ain't, all, allow, allows, almost, alone, along, already,
also, although, always, am, among, amongst, an, and, another, any, anybody,
anyhow, anyone, anything, anyway, anyways, anywhere, apart, appear, appreciate,
appropriate, are, aren't, around, as, aside, ask, asking, associated, at, available,
away, awfully, b, be, became, because, become, becomes, becoming, been, before,
beforehand, behind, being, believe, below, beside, besides, best, better, between,
beyond, both, brief, but, by, c, c'mon, c's, came, can, can't, cannot, cant, cause,
causes, certain, certainly, changes, clearly, co, com, come, comes, concerning,
consequently, consider, considering, contain, containing, contains, corresponding,
could, couldn't, course, currently, d, definitely, described, despite, did, didn't,
different, do, does, doesn't, doing, don't, done, down, downwards, during, e, each,
edu, eg, eight, either, else, elsewhere, enough, entirely, especially, et, etc, even,
ever, every, everybody, everyone, everything, everywhere, ex, exactly, example,
except, f, far, few, fifth, first, five, followed, following, follows, for, former,
formerly, forth, four, from, further, furthermore, g, get, gets, getting, given, gives,
go, goes, going, gone, got, gotten, greetings, h, had, hadn't, happens, hardly, has,
hasn't, have, haven't, having, he, he's, hello, help, hence, her, here, here's,
hereafter, hereby, herein, hereupon, hers, herself, hi, him, himself, his, hither,
hopefully, how, howbeit, however, i, i'd, i'll, i'm, i've, ie, if, ignored, immediate, in,
inasmuch, inc, indeed, indicate, indicated, indicates, inner, insofar, instead, into,
inward, is, isn't, it, it'd, it'll, it's, its, itself, j, just, k, keep, keeps, kept, know,
knows, known, l, last, lately, later, latter, latterly, least, less, lest, let, let's, like,
liked, likely, little, look, looking, looks, ltd, m, mainly, many, may, maybe, me,
mean, meanwhile, merely, might, more, moreover, most, mostly, much, must, my,
myself, n, name, namely, nd, near, nearly, necessary, need, needs, neither, never,
nevertheless, new, next, nine, no, nobody, non, none, noone, nor, normally, not,
nothing, novel, now, nowhere, o, obviously, of, off, often, oh, ok, okay, old, on,
once, one, ones, only, onto, or, other, others, otherwise, ought, our, ours, ourselves,
out, outside, over, overall, own, p, particular, particularly, per, perhaps, placed,
please, plus, possible, presumably, probably, provides, q, que, quite, qv, r, rather,
rd, re, really, reasonably, regarding, regardless, regards, relatively, respectively,
right, s, said, same, saw, say, saying, says, second, secondly, see, seeing, seem,
seemed, seeming, seems, seen, self, selves, sensible, sent, serious, seriously, seven,
several, shall, she, should, shouldn't, since, six, so, some, somebody, somehow,
someone, something, sometime, sometimes, somewhat, somewhere, soon, sorry,
specified, specify, specifying, still, sub, such, sup, sure, t, t's, take, taken, tell,
tends, th, than, thank, thanks, thanx, that, that's, thats, the, their, theirs, them,
themselves, then, thence, there, there's, thereafter, thereby, therefore, therein,
theres, thereupon, these, they, they'd, they'll, they're, they've, think, third, this,
thorough, thoroughly, those, though, three, through, throughout, thru, thus, to,
together, too, took, toward, towards, tried, tries, truly, try, trying, twice, two, u, un,
under, unfortunately, unless, unlikely, until, unto, up, upon, us, use, used, useful,
uses, using, usually, uucp, v, value, various, very, via, viz, vs, w, want, wants, was,
wasn't, way, we, we'd, we'll, we're, we've, welcome, well, went, were, weren't,
what, what's, whatever, when, whence, whenever, where, where's, whereafter,
![Page 31: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/31.jpg)
21
whereas, whereby, wherein, whereupon, wherever, whether, which, while, whither,
who, who's, whoever, whole, whom, whose, why, will, willing, wish, with, within,
without, won't, wonder, would, would, wouldn't, x, y, yes, yet, you, you'd, you'll,
you're, you've, your, yours, yourself, yourselves, z, zero.
![Page 32: PERBANDINGAN METODE SELEKSI FITUR PADA SPAM … · bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Desember](https://reader030.vdocuments.site/reader030/viewer/2022012405/5c9532db09d3f2737b8c3452/html5/thumbnails/32.jpg)
22
RIWAYAT HIDUP
Penulis dilahirkan di Sragen, Jawa Tengah pada tanggal 18 Juli 1991 di
Sragen Jawa Tengah anak pertama dari dua bersaudara pasangan Suparno dan
Partini. Tahun 2009 penulis lulus SMA Negeri 1 Gemolong dan pada tahun yang
sama diterima sebagai mahasiswa Program Diploma Institut Pertanian Bogor
melalui jalur Undangan Seleksi Masuk IPB (USMI) pada program keahlian
Manajemen Informatika dan lulus pada tahun 2012. Penulis melanjutkan
pendidikan tingkat sarjana pada program Ekstensi Ilmu Komputer IPB angkatan
ke-7 pada tahun 2012.