Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ABSTRACT
Many user are annoyed by the amount of time spent on deleting spam emails, the costs to be
incurred , and the amount of network bandwidth. By it is necessary to email spam classification
is useful to save time and cost are used to delete spam email in your inbox.C4.5 algorithm is one
method that can be used for classification of email spam. This study aims to apply the C4.5
algorithm with feature selection in order to improve the accuracy of spam email classification. In
this study using data from the UCI repository of machine learning databases. The method used is
the data preprocessing, classification with C4.5 algorithms, training, and measure the level of
accuracy with the confusion matrix and ROC curves. After the experiment by using the algorithm
C4.5 gain ratio criterion model, information gain and Gini index, the highest accuracy results on
the model Gini index criterion ie 92.18 with 30 fold cross validation. Further experiments
performed with chi-square feature selection, information gain and information ratio again using
p = 0.2 to p = 0.8. Of the Gini index criterion model of feature selection is then performed and
the result is information gain ratio feature selection on the value of p = 0.6 has a 92.46 %
accuracy rate. The results of this study indicate that the algorithm C4.5 with feature selection has
higher accuracy when compared with the ID3 73.20 % .
Keywords : internet , spam , email , C4.5 , Chi Square
1. PENDAHULUAN
1.1. Latar Belakang
Spam messages membanjiri internet dengan mengirimkan salinan pesan-pesan yang sama untuk memaksa
agar pesan-pesan tersebut sampai kepada pemakai yang tidak memilih untuk menerimanya. Akibatnya
banyak pemakai yang merasa terganggu oleh banyaknya waktu yang dihabiskan untuk menghapus pesan
spam, besarnya biaya yang harus dikeluarkan, dan besarnya bandwidth jaringan [1]. Untuk mengatasi hal
tersebut, diperlukan suatu filter antispam dengan algoritma tertentu yang dapat memisahkan antara spam
mail dengan non spam mail (atau yang biasa disebut ham atau legitimate mail). Banyak algoritma
antispam filter yang tersedia, diantaranya adalah algoritma decision tree, nave bayes, support vector
machine (SVM), neural network dan lain-lain [2] .
Untuk mengatasi hal ini, diperlukan suatu filter antispam dengan algoritma tertentu yang dapat
memisahkan antara spam-mail dengan non spam mail (atau yang biasa disebut ham atau legitimate mail).
Banyak algoritma antispam filter yang tersedia, diantaranya adalah algoritma decision tree, nave bayes,
support vector machine (SVM), neural network dan lain-lain. Dari penelitian lain yang dilakukan oleh JyhJian Sheu diperoleh hasil bahwa metode Iteratve Dichotomiser 3 (ID3) dari decision tree merupakan
metode yang paling baik jika dibandingkan dengan nave bayes dan k-nearest neighbors (KNN) [4]. Dari
penelitian tersebut diketahui bahwa ID3 mempunyai precision dan accurancy lebih baik dari pada naive
bayes dan KNN.
http://research.pps.dinus.ac.id
19
20
http://research.pps.dinus.ac.id
2.2.2
Spam Email
Pendefinisian spam e-mail berbeda-beda. Undang-undang CAN-SPAM memberikan definisi utama spam
dengan menjelaskan apa yang (dan apa yang tidak) diperbolehkan bila mengirim e-mail komersial
pemasaran. Undang-undang tersebut disahkan pada tahun 2004 oleh Federal Trade Commission, yang
diperbarui tahun 2008. Selain FTC terdapat badan-badan lain yang mengklasifikasikan spam, yaitu
Internet Service Provider (ISP). Internet Service Provider juga memiliki bagian besar dalam menentukan
apa yang dianggap spam. ISP tidak mengandalkan CAN-SPAM sendirian untuk mendefinisikan spam
karena di mata mereka spam .didefinisikan oleh pengguna. Jika penerima e-mail mengelompokkan pesan
e-mail sebagai spam dengan cara meletakkan di daftar pengirim yang diblokir mereka, menjatuhkannya di
folder spam atau sekadar tidak konsisten membukanya, maka itu dianggap spam oleh ISP terlepas dari
apakah itu melekat pada masing-masing dan setiap CAN-SPAM aturan. Berikut adalah tipe-tipe e-mail
spam [3]:
1. Untuk Iklan: Spam dapat digunakan untuk mempromosikan suatu produk ataupun layanan, mulai dari
produk software, perumahan real estate hingga produk kesehatan dan produk vitamin.
2. Untuk Mengirimkan Malware: Spam adalah salah satu cara utama untuk mendistribusikan virus dan
malware. Dengan target yang bersifat individual, akan memperdaya korban untuk mempercayai
bahwa mereka menerima dokumen penting atau file tertentu, yang sebenarnya mengandung malware.
3. Phishing: Bersembunyi dibalik namanama besar perusahaan besar, lembaga keuangan, lembaga
pemerintah, lembaga amal, para phisher mencoba memikat korban untuk mengunjungi website palsu,
dimana melalui website tersebut mereka dapat mencuri data keuangan pribadi atau informasi dengan
mengenai identitas korbannya.
4. Scam: Mengirimkan e-mail sebagai pangeran dari Nigeria, pegawai bank dari Swiss, seorang anak
kecil yang sakit keras, dan beberapa tipe lainnya, para scammer berusaha memperoleh simpati.
5. Pesan yang tak berarti: Sebuah potongan pesan sampah seperti ini dapat memenuhi inbox mail kita.
Bahkan beberapa pesan seperti ini dapat mengkelabui teknologi spam filter, banyak pesan tak berarti
ini dikirimkan tanpa tujuan yang jelas. Perbedaan Spam dan Ham (bukan spam) berdasarkan struktur
e-mail dapat diklasifikasikan sebagai berikut.
http://research.pps.dinus.ac.id
21
Header
Email header menunjukkan informasi perjalanan setiap email. Secara umum, email header terdiri
dari pengirim, jaringan dan penerima email .
Subject
Subject suatu e-mail merupakan suatu judul topic yang mewakili isi pada e-mail mail dapat
dijumpai pada header setiap e-mail. Maka dapat dilihat pada gambar header spam esuatu kata
.VIAGRA.. Kata tersebut sering dijumpai pada subjek spam e-mail.
Body
Pada e-mail, body adalah isi dari suatu pesan e-mail, dan dengan adanya body e-mail, pengirim
(sender) menyampaikan maksud yang akan disampaikan kepada penerima. Pada proyek akhir ini
selain mengklasifikasikan e-mail header, dapat pula diklasifikasikan melalui bodynya. Karena
dengan body e-mail, dapat ditentukan bahwa tersebut e-mail yang penting atau tidak.
.............................................
(2.1)
Dengan Pi adalah proporsi data S dengan kelas i, dan k adalah jumlah kelas pada output S. Nilai
entropy setelah pemisahan adalah sebagai berikut:
............................................
(2.2)
Dengan v adalah semua nilai yang mungkin dari atribut A, dan Sv adalah subset dari S dimana atribut
A bernilai v. information gain adalah sebegai berikut :
.............................................
(2.3)
Besarnya nilai information gain menunjukkan seberapa besar pengaruh suatu atribut terhadap
pengklasifikasian data.
2.2.3 Seleksi Fitur
Seleksi fitur adalah salah satu tahapan praproses yang berguna terutama dalam mengurangi dimensi data,
menghilangkan data yang tidak relevan, serta meningkatkan hasil akurasi [13]. Definisi masalah seleksi
fitur sebagai berikut: diberikan sekumpulan fitur lalu dipilih beberapa fitur yang mampu memberikan hasil
yang terbaik pada klasifikasi [14]. Ada dua titik berat seleksi fitur dengan pendekatan machine learning
yaitu memilih fitur yang akan digunakan dan menjelaskan secara konsep bagaimana mengkombinasikan
fitur-fitur tersebut untuk menghasilkan konsep induksi yang benar atau hasil yang sesuai[15]. Seleksi fitur
digunakan memberikan karakterisik dari data. Seleksi fitur merupakan salah satu penelitian yang banyak
dilakukan di berbagai bidang seperti pattern recognition, process identification, dan time series modelling.
a. Chi-Square
Seleksi fitur adalah proses menghilangkan beberapa fitur atau term yang kurang relevan untuk penentuan
topik suatu dokumen. Terdapat 2 pembagian dalam seleksi fitur yaitu seleksi fitur supervised dan
unsupervised. Seleksi fitur yang termasuk ke dalam kategori supervised adalah Chi-Square (CS),
Information Gain (IG) dan Mutual Information (MI), sedangkan seleksi fitur yang termasuk kedalam
kategori unsupervised adalah Term Strength (TS), Term Contribution (TC), Entropy-based Ranking (En)
dan document frequency (DF) [16]. Perbedaan antara keduanya adalah keberadaan informasi awal tentang
kategori dari suatu dokumen. Dalam pengklasifikasian sebuah dokumen, Chi-square adalah salah satu
supervised seleksi fitur yang mampu menghilangkan banyak fitur tanpa mengurangi tingkat akurasi [17].
Ukur dependence dari dua variabel dengan rumus :
22
http://research.pps.dinus.ac.id
Keterangan:
A : jumlah kali fitur t dan kategori c co terjadi
B : berapa kali t terjadi tanpa c
C : berapa kali c terjadi tanpa t
D : jumlah kali tidak c atau t terjadi
N : jumlah kasus
b.
Information Gain
Pengurangan entropy disebabkan oleh partisi sesuai dengan atribut, dengan rumus sebagai berikut:
c.
Gain Ratio
EntropyY diberikan X tidak Pernah lebih dari entropy Y saja, karena ini mengetahui X dan memiliki lebih
banyak informasi dalam menentukan Y. Keuntungan informasi di definisikan perbedaan antara dua nilai:
GAIN (Y / X ) = H (Y ) H (Y / X )
Bersama dengan ini gain informasi dapat menentukan rasio keuntungan:
GainRatio(Y / X ) =
d.
IGAIN (Y / X )
H (Y )
Gini Index
Untuk lebih spesifik, setelah seleksi fitur teks, akan mencari kemungkinan terjadinya masing-masing
kelas di set data yang menunjukan fitur t. Kemudian menghitung Gini Index dengan rumus:
n
Gini (t ) = P (ci t ) 2
i =1
http://research.pps.dinus.ac.id
23
Predication
True
False
Negatif
FN
TN
Pada confusion matrix sendiri, untuk menentukan akurasi pengujian digunakan persamaan [20].
Keterangan:
TP : True posistif
TN : True negatif
FP : False positif
FN : False negatif
Recall dan Precision adalah dua kriteria yang digunakan untuk mengevaluasi tingkat efektifitas kinerja
sistem temu kembali informasi.
1. Precision
Precision adalah bagian data yang di ambil sesuai dengan informasi yang dibutuhkan. Rumus precision
adalah :
precision( p ) =
TP
TP + FP
....................................................................................(3.1)
2. Recall
Recall adalah pengambilan data yang berhasil dilakukan terhadap bagian data yang relevan dengan query.
Rumus Recall adalah :
recall (r ) =
TP
TP + FN
............................................................................................(3.2)
3. Accuracy
Accuracy adalah persentase dari total e-mail yang benar diidentifikasi. Rumus Accurasy adalah :
acurasy =
TP + TN
TP + FP + TN + FN
............................................................................(3.3)
Untuk membandingkan dua model klasifikasi digun akan kurva ROC. ROC kepanjangan dari
Receiver Operating Characteristic. Kurva ROC menunjukkan trade-off antara true positive rate (proporsi
24
http://research.pps.dinus.ac.id
address
Internet
Report
Credit
Hpl
857
Parts
Project
all
Order
Addresses
Your
George
Data
Pm
Re
3d
mail
Free
Font
650
415
Direct
Edu
Our
Receive
Business
000
Lab
85
Cs
Table
Over
Will
Email
Money
Labs
Technology
Meeting
Conference
x100%
2. 6 atribut bertipe continuous [0,100] yang beranggotakan karakter :
;"
x100%
3. 1 atribut bertipe continous real [1,...] yang berisi rata-rata deret huruf kapital yang tidak bisa
dipecahkan.
4. 1 atribut bertipe continous real [1,...] yang berisi nilai terpanjang deret huruf kapital yang tidak bisa
dipecahkan.
5. 1 atribut bertipe continous real [1,...] yang berisi nilai jumlah deret huruf kapital yang tidak bisa
dipecahkan.
Untuk klasifikasi data mining, nilai Area Under Curve (AUC) dapat dibagi menjadi beberapa kelompok
[21].
http://research.pps.dinus.ac.id
25
Tabel 4.3. Komparasi akurasi berdasarkan kriteria dengan 30-fold cross validation
Gain Ratio
Information Gain
Gini Index
30
90,59
91,74
92,18
Dari ketiga tabel penerapan algoritma C4.5 tanpa seleksi fitur dari ketiga model kriteria yakni gain ratio,
information gain dan gini index menunjukan bahwa model kriteria gini index memiliki akurasi yang
paling tinggi yakni 92,18% dengan 30 fold cross validation.
4.2 Seleksi Fitur
a. Chi square
Tabel 4.16. . Model confusion matrix pada kriteria gini index
dengan seleksi fitur chi square pada p=0,8
Predicated
Class
Actual Class
Spam
1633
180
Spam
Non Spam
Pr ecision =
Re call =
26
Non Spam
197
2591
(1633)
x100% = 89,23%
(1633 + 197)
(1633)
x100%
(1633 + 180)
= 90,07%
http://research.pps.dinus.ac.id
Accurasy =
(1633 + 2591)
x100% = 91,81%
(4601)
Berdasarkan tabel tersebut di atas dapat dijelaskan bahwa 197 data email non spam adalah hasil prediksi
dari data email spam. Sedangkan 1633 data email spam diprediksi sudah sesui metode C4.5 dengan
kriterian gini index yakni data email spam. 180 data email non spam di prediksi hasilnya menjadi email
spam. Sedangkan 2591 data email non spam diprediksi sudah sesui yakni tetap data email non spam.
Gambar 4.4. Kurva ROC dengan dengan seleksi fitur chi square nilai p=0,8
Setelah memperhatikan nilai akurasi dengan menggunakan seleksi fitur chi square pada kriteria gini
index yakni 91,81%, namun nilai AUC rendah dibandingkan dengan nilai p=0,6. Namun secara
keseluruuhan nilai AUC pada kriteria gini index dengan seleksi fitur chi square masih tergolong
klasifikasi sangat baik, karena nilainya masih di interval 0,9-1.0. Selengkapnya nilai AUC pada masing
nilai P dapat dilihat pada Gambar 4.4.
Tabel 4.17. Perbandingan nilai AUC pada seleksi
fitur chi square pada kriteria gini index
Nilai P
0,2
0,4
0,6
0,8
AUC
0,912
0,942
0,951
0,941
b. Information gain
Tabel 4.21. Model confusion matrix pada kriteria gini index
dengan seleksi fitur informtion gain pada p=0,8
Predicated
Class
Actual Class
Spam
1634
179
Spam
Non Spam
Pr ecision =
Re call =
(1634)
x100%
(1634 + 179)
Accurasy =
http://research.pps.dinus.ac.id
(1634)
x100%
(1634 + 189)
(1634 + 2602)
x100%
(4601)
Non Spam
189
4601
= 89,63%
= 90,13%
= 92,07%
27
Berdasarkan tabel tersebut di atas dapat dijelaskan bahwa 189 data email non spam adalah hasil prediksi
dari data email spam. Sedangkan 1634 data email spam diprediksi sudah sesui metode C4.5 dengan
kriterian gini index yakni data email spam. 179 data email non spam di prediksi hasilnya menjadi email
spam. Sedangkan 4601 data email non spam diprediksi sudah sesui yakni tetap data email non spam.
Gambar 4.5. Kurva ROC dengan seleki fitur information gain pada p=0,8
Nilai akurasi dengan menggunakan seleksi information gain pada model kriteria gini index yakni
92,07% yang paling, namun nilai AUC rendah dibandingkan dengan nilai p=0,6. Secara keseluruhan nilai
AUC dengan seleksi fitur information gain pada model kriteria gini index tergolong klasifikasi sangat
baik, karena nilainya masih di interval 0,9-1.0. Selengkapnya nilai AUC pada masing-masing nilai P
dapat dilihat pada Gambar 4.22.
Tabel 4.22. Perbandingan nilai AUC pada seleksi fitur
Information gain pada model kriteria gini index
Nilai P
0,2
0,4
0,6
0,8
AUC
0,94
0,95
0,96
0,95
c. Information Gain Ratio
Predicated
Class
Actual Class
Spam
1634
179
Spam
Non Spam
Pr ecision =
Re call =
(1634)
x100%
(1634 + 179)
Accurasy =
28
(1634)
x100%
(1634 + 168)
(1634 + 2620)
x100%
(4601)
Non Spam
168
2620
= 90,68%
= 90,13%
= 92,46%
http://research.pps.dinus.ac.id
0,2
0,4
0,6
0,8
AUC
0,94
0,96
0,95
0,95
5. PENUTUP
5.1 Kesimpulan
Berdasarkan hasil eksperimen, mulai tahap awal hingga evaluasi, dapat ditarik kesimpulan bahwa
algoritma algoritma C4.5 dengan menggunakan tiga model kriteria yakni gain ratio, information gain dan
gini index, hasil akurasi yang paling tinggi terdapat pada model kriteria gini index yakni 92,18% .
Selanjutnya model kriteria gini index dilakukan seleksi fitur chi square, information gain, information
gain ratio dan untuk meningkatkan hasil akurasi. Hasil yang paling tinggi dari ketiga seleksi fitur yakni
information gain ratio deng nilai p=0,6 dan hasil akurasinya menjadi 92,46. Serta memilikiti nilai AUC
rata-rata antara 0,9-1,0 dan ini termasuk klasifikasi sangat baik.
5.2 Saran
Pengukuran kinerja sebuah algoritma data mining dapat dilakukan berdasarkan beberapa kriteria antar lain
seperti keakuratan prediksi, kecepatan/efisiensi, kehandalan, skalabilitas dan interpretabilitas. Penelitian
ini menggunakan satu kriteria yaitu berdasarkan akurasi klasifikasi. Dengan demikian penelitiasn lain
dengan menggunakan kriteria lain dapat dilakukan.
DAFTAR PUSTAKA
[1] Sofi Defiyanti dan D. L. Crispina Pardede 2008, Perbandingan Kinerja Algoritma Id3 Dan C4.5
Dalam Klasifikasi Spam-Mail, Universitas Gunadharma, Jakarta
http://research.pps.dinus.ac.id
29
[21]
30
Prasetyo Anugroho, Idris Winarno., Nur Rosyid M, Klasifikasi Email Spam Dengan Metode
Nave Bay es Classifier Menggunakan Java Programming, ITS Surabaya
Prasetyo Anugroho, dkk, 2010, Klasifikasi Email Spam Dengan Metode Naive Bayes Classifier
Menggunakan Java Programming, Surabaya.
Sheu, Jyh-Jian. An Efficient Two-phase Spam Filtering Methode Based on E-mails categorization.
International Journal of Network Security, Vol. 8, No. 3, PP.334-343, Taiwan, May 2008
Lambert, Anselm, Analysis of Spam, A dissertation in Computer Science at University of Dublin,
2003.
Anyanwu, Matthew N., and Shiva Sajjan G. Comparative Analysis of Serial Decision Tree
Classification Algorithms. International Journal of Computer Science and Security, (IJCSS)
Volume (3) : Issue (3). 1: 2-4. Tanpa Tahun.
Santosa, B. 2007. Data Mining: Teknik Pemanfaatan Data untuk Keperluan Bisnis. Graha Ilmu.
Yogyakarta.
Larose, D.T. 2005. Discovering Knowledge in Data: An Introduction to Data Mining. John Willey
& Sons, Inc.
Han, J. dan M. Kamber. 2006. Data Mining: Concepts and Techniques, Second Edition. Morgan
Kaufmann Publishers. San Francisco.
Basuki, Achmad., dan Syarif, Iwan. Pohon keputusan. 2003. URL:http://lecturer.eepisits.edu/~basuki/lecture/DecisionTree.pdf, diakses tanggal 20 November 2011.
Nugroho, Fanuel., Kristanto, Harianto., dan Oslan, Yetli. Validitas Suatu Alamat menggunakan
Pohon keputusan dengan Algoritma ID3. Jurnal Informatika, Volume 3 Nomor 2 April 2007. 1: 2.
2007.
Romansyah, F., Sitanggang I. S., dan Nurdiati, S. Fuzzy Decision Tree dengan Algoritma
ID3 pada Data Diabetes. Internetworking Indonesia Journal Vol. 1/No. 2 (2009). 1: 2.
2009.
Yu, L., dan H Liu. 2003. Feature Selection for High Dimensional Data: A FastCorrelation-Based
Filter Solution. www.hpl.hp.com/conferences/icml2003 /papers/144.pdf
Jain, A., dan D Zongker. 1997. Selection Feature: Evaluation, Application, and Small Sample
Performance. IEEE Transaction on Pattern Analysis and Machine Intteligence : 153-158.
Portinale, L., dan L Saitta. 2002. Feature Selection. http://citeseer.ist.psu.edu.
Z. Chen and W.M. Com, "An Evaluation on Feature Selection for Text Clustering," Proc. of ICML
2003, Washington DC: 2003.
C. Sun, X. Wang, and J. Xu, "Study on Feature Selection in Finance Text Categorization," Science
And Technology, 2009, pp. 5077-5082.
UCI repository of machine learning database (http://archive.ics.uci.edu/ml/machine-learningdatabases/spambase/) diakses pada tanggal 4 april 2013.
H. Eyke, 2008, Granular Computation in machine learning and data mining. In P. Witold, S.
Andrzej, K Vladik, (editors), handbook of Granular computing, John Wiley & Sons, pages 889-907.
Y.C. Tang, 2006, Granular Support Vector Machines Based On Granular Computing, Soft
Computing and Statistical Learning A Disertation Submitted in Partial Fulfillment of Requerments
for the degree of Doctor Of Philosophy in the College of Arts and Sciences, Georgeia State
University.
Gorunescu, Florin, 2011. Data Mining: Concepts, Models, and Techniques. Verlag Berlin
Heidelberg: Springer
http://research.pps.dinus.ac.id