OPEN ACCESS Ind. Symposium on Computing
OPEN ACCESS
Sept 2016. pp. 319-334
ISSN 2460-3295 socj.telkomuniversity.ac.id/indosc
ISSN XXXX-XXXX NO. XX, SEPT 2016 SOCJ.TELKOMUNIVERSITY.AC.ID/INDOSC
doi:10.21108/indosc.2016.164
IND. SYMPOSIUMON COMPUTINGVOL. XX,
PP. XX-XX. DOI:XXX
Analisis dan Implementasi Deteksi Citra Spam Menggunakan Gray Level Co-occurences Matrix dan Naive Bayes Abdurrahman Jundullah #1, Mohammad Syahrul Mubarok#2, Adiwijaya #3 # InformaticsDepartment, Telkom University Telekomunikasi Street no. 1 Ters. Buah Batu Bandung 40257 Indonesia 1
[email protected] 2msyahrulmubarok
@telkomuniversity.ac.id
3
[email protected]
Abstract Image spam is one of spamming techniques for sending spam message through image message content. Spam messages can be used as an opportunity for cybercriminals in the process of data theft. The message will detected as a spam when the system performs data processing with feature extraction. This study uses GLCM as texture-based on image extraction with an output parameter which is contrast, correlation, energy, homogeneity and entrophy. The GLCM output parameters will be the input data for naïve bayes classification process. Naïve Bayes approach used to implement the system that already built to define a set of images into image spam class or nonspam class. Based on this research observations result, known that the system has the average of performance classification f1-measure on 93%. Keywords: Gray Level Co-Occurrence Matrix (GLCM), Image Analysis, Naive Bayes classifier
Abstrak Image Spam merupakan salah satu teknik spamming dengan mengirimkan spam melalui citra pada isi pesan. Pesan spam dapat dijadikan sebagai peluang untuk pelaku cybercrime dalam melakukan proses pencurian data. Untuk mengetahui citra pada data merupakan spam, sistem melakukan proses pengolahan data dengan ekstraksi ciri. Penelitian ini menggunakan GLCM sebagai ekstraksi citra berbasis tekstur dengan output parameter contrast, correlation, energy, homogeneity dan entrophy. Kemudian parameter output GLCM tersebut menjadi masukan untuk proses klasifikasi naivebayes. Naïve Bayes digunakan untuk mengimplementasi sistem yang dibangun agar mampu mengklasifikasikan kumpulan citra kedalam kelas imagespam atau non-spam. Berdasarkan hasil observasi, diketahui bahwa sistem yang dibangun memiliki performansi klasifikasi f1-measure rata-rata 93%. Kata Kunci: Gray Level Co-Occurences Matrix (GLCM), Analisis Citra, Naive Bayes Classifier
Received on August 2016. Accepted on Sept 2016
Abdurrahman Jundullah et.al. Analisis dan Implementasi Deteksi...
320
I.
PENDAHULUAN
P
erkembangan internet untuk memenuhi kebutuhan masyarakat semakin hari semakin cepat. Hal tersebut mempengaruhi proses komunikasi yang membuat semakin populer nya komunikasi menggunakan media digital. Email merupakan salah satu dari media komunikasi digital dengan jumlah pengguna yang sangat banyak, bahkan di sebutkan pada Email Statistic Report 2012-2016[1] pengguna email diperkirakan akan meningkat hingga 4.3 billion account di akhir tahun 2016.Proses komunikasi menggunakan media digital dapat terganggu oleh pesan-pesan yang tidak dinginkan, pesan ini biasa disebut pesan spam. Pesan spam menjadi kendala pada proses komunikasi menggunakan media digital, karena para pengirim pesan (spammers)mengirimkan pesan-pesan yang tidak dinginkan seperti penjualan produk farmasi, konten dewasa, dan directlink yang tidak berhubungan dengan kebutuhan user penerima pesan. pesan tersebut biasanya dikirimkan dalam jumlah yang cukup banyak ke beberapa email pengguna layanan. Karenanya pada email, kasus Email spam sudah menjadi sebuah penyalahgunaan sistem elektronik pada media penyiaran dan sistem pengiriman digital. Penelitian untuk membangun sistem pendeteksi email spam menggunakan learning kumpulan isi kalimat pesan sudah banyak dikembangkan oleh penyedia layanan. Oleh karena itu Image Spam menjadi hal yang baru dan menjadi salah satu teknik yang cukup popular di kalangan spammers .Image spam muncul pada akhir tahun 2005 dan mencapai puncaknya pada tahun 2006-2007 hingga lebih dari 50% spamemail[2]. Pada kasus lain pesan spam juga dapat dijadikan peluang oleh para pelaku cybercrime untuk melakukanpencurian data dengan teknik yang biasa disebut phishing. Pada teknik ini spammer mengirimkan isi pesan yang mengrahkan kan pengguna ke url tertentu untuk mendapatkan data-data penting pengguna tersebut. Penelitian pada tugas akhir ini akan melakukan proses implementasi dan analisa performansi sebuah sistem klasifikasi menggunakan fitur ekstraksi ciri berdasarkan tekstur file citra dengan metode gray level co-occurences matrix (GLCM). Metode ini berperan dalam membandingkan seberapa sering kombinasi piksel dengan ketetanggaannya terjadi pada gambar. Proses klasifikasi pada tugas akhir ini akan menggunakan naive bayes classifier, naive bayes dipilih karena hasil outputnya memiliki asumsi yang kuat (naive) terhadap ketertidakgantungan antar variable (variable independence) hal ini yang membuatnya memiliki performance yang baik namun mudah di implementasikan[3]. Proses ekstraksi GLCM akan mengahasilkan 5 variabel parameter yaitu contrast, correlation, energy, entrophy dan homogeneity. Parameter ini akan dijadikan input pada proses klasifikasi naive bayes. Lalu output klasifikasi dijadikan input pada proses evaluasi performansi sistem yang dinyatakan dalam accuracy, precision, recall dan f1-measure. II. TINJAUAN PUSTAKA A. Gray Level Co-Occurence Matrix (GLCM) Metode GLCM termasuk dalam metode statistik dimana dalam perhitungan statistiknya menggunakan distribusi derajat keabuan dengan mengukur hubungan ketetanggaan antar piksel di dalam citra. Penggunaan paradigma statistik ini tidak terbatas, sehingga sesuai untuk tekstur-tekstur alami yang tidak terstruktur dari sub pola dan himpunan aturan (mikrostruktur). Metode statistik terdiri dari ekstraksi ciri orde pertama dan ekstraksi ciri orde kedua. Ekstraksi ciri orde pertama dilakukan melalui histogram citra sedangkan ekstraksi ciri statistik orde kedua dilakukan dengan matriks kookurensi, yaitu suatu matriks yang merepresentasikan hubungan ketetanggaan antar piksel dalam citra pada berbagai arah orientasi dan jarak spasial[4]. Ilustrasi ekstraksi ciri statistik ditunjukkan pada Gambar 1.
OPEN ACCESS Ind. Symposium on Computing
Sept 2016
321
ISSN XXXX-XXXX SOCJ.TELKOMUNIVERSITY.AC.ID/INDOSC
IND. SYMPOSIUMON COMPUTINGVOL. XX, NO. XX, SEPT 2016 PP. XX-XX. DOI:XXX
Gambar 1 ilustrasi pendekatan ciri statistik
(a) (b)
Histogram citra sebagai fungsi probabilitas kemunculan nilai intensitas pada citra, Hubungan ketetanggaan antar piksel sebagai fungsi orientasi dan jarak spasial
Pada penelitian ini ciri statistik yang digunakan adalah ciri statistik orde dua. Salah satu teknik yang digunakan pada ciri ini adalah menghitung probabilitas hubungan ketetanggaan antara dua piksel pada jarak dan orientasi sudut tertentu. Kookurensi berarti kejadian bersama, yaitu jumlah kejadian nilai piksel bertetangga dengan nilai piksel lain dalam jarak (d) dan orientasi sudut (θ) tertentu dimana jarak dinyatakan dalam piksel dan orientasi dinyatakan dalam derajat. Orientasi dibentuk dalam empat arah sudut dengan interval sudut 45°, yaitu 0°, 45°, 90°, dan 135° sedangkan jarak antar piksel biasanya ditetapkan sebesar 1 piksel, 2 piksel, 3 piksel dan seterusnya. Setiap titik (i,j) pada matriks kookurensi berorientasi berisi peluang kejadian piksel bernilai i bertetangga dengan piksel bernilai j pada jarak d serta orientasi dan (180−θ). Sebagai contoh matriks 5×5 memiliki matriks GLCM dengan ukuran yang sama. Matriks kookurensi akan dihitung dengan nilai d=1 dan θ=0 derajat. Jumlah frekuensi munculnya pasangan (i,j) dihitung untuk keseluruhan matriks. Jumlah kookurensi diisikan pada matriks GLCM pada posisi sel yang bersesuaian[4]. Diberikan contoh matriks 5x5 pada tabel 1. TABEL 1 MATRIKS I
1 1 2 2 3
1 2 2 3 3
2 2 3 3 4
2 3 3 4 4
3 3 4 4 1
Dengan menggunakan contoh matriks I dan level pengelompokan warna dari 1 hingga 4 maka proses pembentukan matriks ketetanggaan dapat di jelaskan seperti pada gambar 2.
Gambar 2 pembentukan matriks kookurensi
Abdurrahman Jundullah et.al. Analisis dan Implementasi Deteksi...
322
Setelah matriks ketetanggaan terbentuk,matriks tersebut akan dijadikan input untuk mencari matriks gclm simetrisnya, proses ini dilakukan dengan menjumlah kan matriks tersebutdan matriks tranposenya[4]. Proses pembentukan matriks di jabarkan pada Gambar 3.
Gambar 3 pembentukan matriks simteris
Selanjutnya matriks simetris akan di normalisasi untuk dijadikan input dari parameter pengukuran probabilistik GLCM. Proses normalisasi matriks simetris di jelaskan pada Gambar 4.
Gambar 4 normalisasi matriks simetris
Hasil normalisasi matriks akan dijadikan input pengukuran probabilistik yang merepresentasikan ciri tekstur berdasarkan persamaan Harralick[5]. Persamaan tersebut adalah contrast, correlation, energy, entrophy dan homogeneity. 1.
Contrast/Kontras
Parameter kontras mereperesentasikan variasi level keabuan dalam sebuah file citra, biasanya kontras dijadikan sebagai parameter nilai ketergantungan linear terhadap level keabuan pixel tetangga. Kontras juga bisa disebut variansi jumlah kuadrat (sum of squares variance)[6].Rumus persamaan kontras dapat dilihat pada persamaan(1). ∑|𝑖 − 𝑗|2 𝑝(𝑖, 𝑗)
(1)
𝑖,𝑗
2.
Homogeneity/Homogenitas Homogenitas adalah kehomogenan variasi intensitas dalam citra. Persamaan ini dikatakan dapat merepresentasikan kekasaran pada bidang gambar[6]. Komputasi Homogenitas dapat dilihat pada persamaan (2). ∑ 𝑖,𝑗
𝑝(𝑖, 𝑗) 1 + |𝑖 − 𝑗|
(2)
OPEN ACCESS Ind. Symposium on Computing
Sept 2016
323
ISSN XXXX-XXXX SOCJ.TELKOMUNIVERSITY.AC.ID/INDOSC
3.
IND. SYMPOSIUMON COMPUTINGVOL. XX, NO. XX, SEPT 2016 PP. XX-XX. DOI:XXX
Energi (Angular Second Moment)
Energi merupakan fitur GLCM yang digunakan untuk mengukur konsentrasi pasangan intensitas pada matriks GLCM. Nilainya akan semakin tinggi ketika daerah citra memiliki nilai konstan atau pola yang berulang [6]. Komputasi energy dapat dilihat pada persamaan(3). ∑ 𝑝(𝑖, 𝑗)2
(3)
𝑖,𝑗
4.
Entropy Entropy merepresentasikan besar persaman dapat dilihat pada persamaan(4).
ukuran ketidakteraturan bentuk pada file citra[6].Rumus
(4)
∑ ∑ −𝑃𝑖,𝑗 (𝑙𝑜𝑔2 𝑃𝑖,𝑗 ) 𝑖
𝑗
5.
Correlation/Korelasi Korelasi menunjukkan ketergantungan linier derajat keabuan dari piksel-piksel yang saling bertetangga pada citra[6]. Persamaan korelasi dapat di lihat pada persamaan(5).
∑ ∑ 𝑃𝑖,𝑗 𝑖
𝑗
(𝑖 − µ𝑖 )(𝑗 − µ𝑗 ) [
√(𝜎𝑖2 )(𝜎𝑗2 )
(5)
]
Naïve Bayes Classifier Naïve Bayes Classifier merupakan sebuah metode klasifikasi yang berakar pada teorema Bayes. Ciri utama dari Naïve Bayes Classifier ini adalah asumsi yang sangat kuat (naïf) akan independensi dari masing-masing kondisi/kejadian. Sebelum menjelaskan Naïve Bayes Classifier ini, dijelaskan terlebih dahulu Teorema Bayes yang menjadi dasar dari metode tersebut. Pada teorema Bayes, bila terdapat dua kejadian yang terpisah (misalkan c dan d) [7], maka teorema Bayes dirumuskan seperti pada persamaan (6). 𝑃(𝑐|𝑑) =
𝑃(𝑑|𝑐)𝑃(𝑐) 𝑃(𝑑)
(6)
Peluang kejadian c sebagai d ditentukan dari peluang d ketika c, peluang c, dan peluang d. Untuk menjelaskan teorema Naïve Bayes, perlu diketahui bahwa proses klasifikasi memerlukan sejumlah petunjuk untuk menentukan kelas apa yang cocok bagi sampel yang dianalisis tersebut. Karena itu, teorema Bayes di atas disesuaikan menjadi seperti pada persamaan(7). 𝑃(𝐶|𝐹1 . . . 𝐹𝑛 ) =
𝑃(𝐶)𝑃(𝐹1 . . . 𝐹𝑛 |𝐶) 𝑃(𝐹1 . . . 𝐹𝑛 )
(7)
Variabel C merepresentasikan kelas, sementara variabel F1 ... Fn merepresentasikan karakteristikkarakteristik petunjuk yang dibutuhkan untuk melakukan klasifikasi. Rumus tersebut menjelaskan bahwa peluang masuknya sampel dengan karakteristik tertentu dalam kelas C (posterior) adalah peluang munculnya kelas C (sebelum masuknya sampel tersebut, seringkali disebut prior), dikalikan dengan peluang kemunculan karakteristik-karakteristik sampel pada kelas C (disebut juga likelihood), dibagi dengan peluang kemunculan karakteristik-karakteristik sampel secara global (disebut juga evidence) [7]. Perumusan dapat ditulis secara sederhana seperti persamaan (8).
Abdurrahman Jundullah et.al. Analisis dan Implementasi Deteksi...
324
𝑃𝑜𝑠𝑡𝑒𝑟𝑖𝑜𝑟 =
(𝑃𝑟𝑖𝑜𝑟)(𝐿𝑖𝑘𝑒𝑙𝑖ℎ𝑜𝑜𝑑) 𝐸𝑣𝑖𝑑𝑎𝑛𝑐𝑒
(8)
Nilai evidence selalu tetap untuk setiap kelas pada satu sampel. Nilai dari Posterior tersebut yang nantinya akan dibandingkan dengan nilai-nilai Posterior kelas lainnya untuk menentukan ke kelas apa suatu sampel akan diklasifikasikan. Penentuan kelas yang cocok bagi suatu sampel dilakukan dengan cara membandingkan nilai Posterior untuk masing-masing kelas, dan mengambil kelas dengan nilai Posterior yang tinggi. Secara matematis klasifikasi dirumuskan dengan persamaan(9): 𝑛
(9)
𝑐𝑁𝐵 = arg max 𝑃(𝑐) ∏ 𝑃(𝑓𝑖 |𝑐) 𝑐∈𝐶
𝑖=1
Persamaan (9) dinyatakan c adalah variabel kelas yang tergabung dalam suatu himpunan kelas C. Dapat dilihat bahwa rumusan di atas tidak memuat nilai Evidence. Hal ini disebabkan karena evidence memiliki nilai yang positif dan tetap untuk semua kelas sehingga tidak mempengaruhi perbandingan nilai Posterior, sehingga faktor Evidence ini dapat dihilangkan. Perlu menjadi perhatian pula bahwa metode Naïve Bayes Classifier ini dapat digunakan bila sebelumnya telah tersedia data yang dijadikan acuan untuk melakukan klasifikasi [7]. III. PERANCANGAN SISTEM A. Gambaran Umum Sistem Sistem akan menerima dataset berisi kombinasi dari citra spam dan non-spam yang akan diekstrak menggunakan fitur ekstraksi GLCM. keluaran dari fitur ekstraksi GLCM dijadikan masukan pada proses klasifikasi mengunakan naïvebayes. Proses klasifikasi akan menentukan data testing ke kelas spam atau kelas non-spam. Gambaran umum sistem yang telah dibangun dijelaskan pada Gambar 5. Start
Dataset
Classification Result
Splitting Dataset
Training Data
Testing Data
Preprocessing
GLCM extraction fitur
Parameter
Parameter Learning
Learning Extraction Result
Classification
Testing Extraction Result
End
Gambar 5 gambaran umum sistem
OPEN ACCESS Ind. Symposium on Computing
Sept 2016
ISSN XXXX-XXXX SOCJ.TELKOMUNIVERSITY.AC.ID/INDOSC
325
IND. SYMPOSIUMON COMPUTINGVOL. XX, NO. XX, SEPT 2016 PP. XX-XX. DOI:XXX
1) Splitting Dataset :Setelah sampling data dilakukan, kumpulan data balance akan di bagi menjadi dua bagian yaitu kumpulan data training dan kumpulan data testing. Data training merupakan kumpulan data yang digunakan untuk membuat parameter classifier, sedangkan data testing merupakan kumpulan data yang digunakan untuk menguji performansi sistem saat melakukan proses klasifikasi. Proses splitting dataset pada penelitian ini menggunakan 3 skenario yaitu 75% data training - 25% data testing, 50% data training - 50% data testing dan 25% data training - 75% data testing. 2) Preprocessing :Setiap data pada kumpulan data training dan data testing di lakukan preprocessing. Pada tahap ini, setiap citra akan dilakukan proses grayscaling agar nantinya dapat dijadikan input proses ekstraksi ciri. Proses ini merubah setiap piksel pada citra RGB yang merupakan kombinasi tiga layer warna, Red, Green dan Blue menjadi citra yang memiliki derajat ke abuan. Proses ini menggunakan average grayscaling. Diberikan contoh pada Gambar 6 dan 7 berupa salah satu tampilan citra spam sebelum dan sesudah proses grayscaling.
Gambar 6 citra rgb
Gambar 7 citra grayscale
3) GLCM Extraction Fitur :pada tahap ini sistem melakukan proses ekstraksi fitur dari setiap citra grayscale menggunakan GLCM. Metode GLCM merupakan fitur ekstraksi yang menganalisa pola tekstur pada citra keabuan. Alur proses fitur GLCM djelaskan pada Gambar 8.
Start
Quantization
CoOccurences Matrix
Symetrical Matrix
Vectorize Feature
End
Gambar 8 alur proses GLCM
a) Quantization : Citra grayscale akan masuk kedalam tahap Quantization. Proses ini mengelompokan nilai piksel keabuan dalam tingkatan level tertentu. Derajat keabuan ini terdapat 256 variasi warna (0 - 255). Pada table 2 dijelaskan range variasi warna yang akan dikuantisasi menjadi 8 pengelompokan.
Abdurrahman Jundullah et.al. Analisis dan Implementasi Deteksi...
326
Tabel 2 pengelompokan level warna
Level
Nilai
1
0 – 31
2
32 – 63
3
64 – 95
4
96 – 127
5
128 – 159
6
160 – 191
7
192 – 223
8
224 – 256
Contoh proses preprosesing sebuah citra menghasilkan matriks 4x5. Matriks tersebut akan di lakukan kuantisasi. Maka nilai derajat keabuan dari proses greyscaling akan diubah sesuai dengan pengelompokan pada Tabel 2. Pada tabel 3 dan 4 dijelaskan perubahan matriks 4x5 tersebut. Tabel 3 mariks input 10 50 121 230
5 75 130 143
134 140 200 30
Tabel 4 matriks kuantisasi 170 200 20 60
225 5 55 122
1 2 4 8
1 3 5 5
5 5 7 1
6 7 1 2
8 1 2 4
b) Co-Occurrence Matrix : matriks yang terdiri dari 8 level variasi tersebut akan dihitung ke tetanggaan antar pikselnya. Pada penelitian ini digunakan 4 macam sudut derajat ketetanggaan dengan jarak masingmasing 1 piksel ketetanggaan. Pada Gambar 9 berikut dijelaskan bagaimana contoh proses perhitungan ketetanggaan antar piksel dengan sudut 0 derajat dan 1 piksel jarak ketetanggaan.
Gambar 9 matriks ketetanggaan
c) Matrix Simetris :Setelah mendapatkan matriks ketetanggaan (Co Occurences Matrix), matriks tersebut dijumlahkan dengan matriks transpose-nya agar menghasilkan matriks yang simestris.
OPEN ACCESS Ind. Symposium on Computing
Sept 2016
327
ISSN XXXX-XXXX SOCJ.TELKOMUNIVERSITY.AC.ID/INDOSC
IND. SYMPOSIUMON COMPUTINGVOL. XX, NO. XX, SEPT 2016 PP. XX-XX. DOI:XXX Tabel 5 matriks simetris
4 4 0 0 4 0 4 0
4 0 2 2 0 0 0 0
0 2 0 0 2 0 0 0
0 2 0 0 2 0 0 0
4 0 2 2 0 2 4 2
0 0 0 0 2 0 0 2
4 0 0 0 4 0 0 0
0 0 0 0 2 2 0 0
d) Vectorize Feature :Tahapan terakhir adalah vectorize feature. Pada proses ini dilakukan perhitungan fitur parameter GLCM yang akan digunakan sebagai input proses selanjutnya. Matriks simetris yang telah di buat akan di normalisasi dengan cara membagi setiap elemen matriks dengan jumlah total isi matriks simetris. Tabel 6 matriks normalisasi
4/64 4/64 0 0 4/64 0 4/64 0
4/64 0 2/64 2/64 0 0 0 0
0 2/64 0 0 2/64 0 0 0
0 2/64 0 0 2/64 0 0 0
4/64 0 2/64 2/64 0 2/64 4/64 2/64
0 0 0 0 2/64 0 0 2/64
4/64 0 0 0 4/64 0 0 0
0 0 0 0 2/64 2/64 0 0
Setelah mendapatkan matriks normalisasi, data tersebut dihitung sesuai dengan parameter-parameter GLCM yaitu contrast, correlation, energy, homogeneity dan entrophy. Contoh dari perhitungan parameter GLCM menggunakan masukan symmetricalmatrix ditunjukan pada table 6. Tabel 7 komputasi output parameter
No.
1
Ciri Statistik
Rumus
Nilai
∑|𝑖 − 𝑗|2 𝑝(𝑖, 𝑗)
Contrast
8.6250
𝑖,𝑗
2
Correlation
𝑖
3
(𝑖 − µ𝑖 )(𝑗 − µ𝑗 )
∑ ∑ 𝑃𝑖,𝑗 𝑗
[
√(𝜎𝑖2 )(𝜎𝑗2 )
∑ 𝑝(𝑖, 𝑗)2
Energy
0.2063
] 0.0488
𝑖,𝑗
4
∑
Homogeneity
𝑖,𝑗
5
Entrophy
𝑝(𝑖, 𝑗) 1 + |𝑖 − 𝑗|
∑ ∑ 𝑃𝑖,𝑗 (−𝑙𝑛 𝑃𝑖,𝑗 ) 𝑖
𝑗
0.3814
0.9422
Abdurrahman Jundullah et.al. Analisis dan Implementasi Deteksi...
328
4) Classification :Sebelum dapat melakukan proses klasifikasi, naïve bayes harus dibangun dengan masukan parameter dari ekstraksi data training Alur proses klasifikasi menggunakan naïve bayes ditunjukan pada gambar 10. Start
Extraction Result
Learning Extraction Result
Testing Extraction Result
Parameter Learning
Parameter
Classification
End
Gambar 10 proses klasifikasi Naive Bayes
Data training yang telah melalui proses ekstraksi fitur akan dihitung nilai prior probability𝑃(𝑐), mean, dan standart deviasi untuk setiap kelas. Parameter-parameter tersebut akan menjadi acuan pada proses pembentukan model klasifikasi.. perhitungan prior probability P(c) dilakukan dengan menggunakan persamaan (10). 𝑃(𝑐) =
𝑁𝑐 𝑁
(10)
Mean dan standart deviasi merupakan output learning pada data training dari setiap kelas. perhitungan parameter Mean dilakukan dengan menggunakan persamaan (11), 𝑛
1 µ = ∑ X𝑖 𝑛
(11)
𝑖=1
Sedangkan perhitungan standart deviasidilakukan dengan menggunakan persamaan (12),
σ= √
∑𝑛𝑖=1(X𝑖 − µ)2 𝑛−1
(12)
Conditional probabilityP( X | C ) merupakan kondisi jumlah besar kemungkinan nilai parameter X yang ada di kelas C. Dijelaskan Chen bahwa jika naïve bayes menggunakan continuous-valued feature sebagai input, parameter perhitungan pembentukan likelihood alaminya menggunakan distribusi gaussian (Gaussian distribution). Perhitungan distribusi Gaussian dilakukan dengan menggunakan persamaan (13). P( X | c ) =
1 √2µ𝜎
exp (−
(𝑋 − µ)2 ) 2𝜎 2
(13)
OPEN ACCESS Ind. Symposium on Computing
Sept 2016
ISSN XXXX-XXXX SOCJ.TELKOMUNIVERSITY.AC.ID/INDOSC
329
IND. SYMPOSIUMON COMPUTINGVOL. XX, NO. XX, SEPT 2016 PP. XX-XX. DOI:XXX
5) Classification Result :Dalam penelitian ini proses klasifikasi menggunakan dua kelas yaitu kelas Spam dan Non-Spam, dengan parameter learning yang sudah didapatkan maka perhitungan probabilitas sebuah citra testing dapat dihitung sebagai berikut (14). 𝑐𝑚𝑎𝑝 = arg max 𝑃(𝑐1 , 𝑐2 |X1 , X2 , X2 , X2 , X5 ) 𝑐∈𝐶
𝑃( 𝑐 |X … X5 ) =
𝑃( X … X5 | 𝑐 ) 𝑃(𝑐) 𝑃(X … X5 )
(14)
Pada penelitian ini pendekatan bayes digunakan untuk menemukan kelas terbaik dari hasil posterior probability. Kelas terbaik dalam naïve bayes classifier adalah kelas yang memiliki probabilitas tertinggi atau maximum a posterior (MAP). B. Evaluasi Sistem Untuk mengukur evaluasi performansi sistem parameter acuan yang digunakan adalah accuracy, precision, recall dan f1-measure. IV. HASIL DAN PEMBAHASAN 1) Analisis Pengaruh Sampling Data : analisis observasi pertama dilakukan dengan menghitung besar perbandingan performansi sistem terhadap pengambilan data undersampling (balance data) dan dataset tanpa undersampling (imbalance data). Output analisa ini merupakan perbandingan besar persantase performansi sistem yang meliputi nilai accuracy dan f1-measure. Perbandingan besar rata-rata performansi sistem dari observasi sampling dataset tersebut ditunjukan pada gambar 11.
0.9436
0.9440 0.9420 0.9402
0.9400
0.9400
0.9391
0.9380 0.9360 akurasi
Sampling
f1-score
Without Sampling
Gambar 11 perbandingan evaluasi sistem observasi pada proses observasi sampling dataset
Proses analisa pada tahap ini didukung oleh asumsi parameter-parameter lain yang akan dianalisa pada tahap selanjutnya. Yaitu pembagian dataset menggunakan 75% data training - 25% data testing, parameter sudut GLCM yang digunakan adalah empat sudut dan pembentukan likelihood menggunakan Gaussian Distribution. Diagram pada gambar 11 menunjukan bahwa pada penelitian ini penggunaan dataset tanpa undersampling menghasilkan rata-rata f1-measure lebih besar dibandingkan dataset yang telah di undersampling. Hal ini dikarenakan semakin banyaknya data yang digunakan pada dataset tanpa undersampling memungkinkan banyak nya variasi data pada proses klasifikasi sehingga menghasilkan besar performansi yang lebih baik dibandingkan kumpulan data undersampling.
Abdurrahman Jundullah et.al. Analisis dan Implementasi Deteksi...
330
percentage (%)
2) Analisis Pengaruh Observasi Pembagian Data : analisis observasi kedua melakukan besar perbandingan performansi sistem terhadap observasi Pembagian dataset. Pada analisa sebelumnya diketahui bahwa dataset yang memiliki output performansi paling baik adalah dataset tanpa undersampling. Karenanya pada tahap ini parameter-parameter yang digunakan adalah, dataset tanapa undersampling, parameter sudut yang digunakan adalah empat sudut dan pembentukan likelihood menggunakan Gaussian Distribution.Keluaran dari analisa ini merupakan perbandingan besar persantase performansi istem yang meliputi nilai Accuracy dan F1Measure. Pada gambar 12 adalah perbandingan nilai performansi dari observasi dataset. 93.8
93.7
93.6
93.6 93.4
93.4 93.2
93.3 93.1
93.2 93.0 92.8 f1-score 1490 Training
accuracy 1000 training
500 training
Gambar 12 perbandingan evaluasi sistem pada observasi splitting dataset
Gambar 12menjelaskan bahwa pada penelitian ini penggunaan dataset dengan pembagian data 1420 file training – 1000 file testing lebih baik dibandingkan pembagian data lainnya. Hal ini dikarenakan sistem akan memiliki wawasan tentang ciri dari dataset yang banyak jika semakin banyak data yang di pelajari oleh sistem. 3) Analisis Pengaruh Parameter Sudut Pada Proses Ekstraksi GLCM :Analisis observasi ketiga melakukan perbandingan besar performansi pada observasi parameter sudut di proses ekstraksi GLCM. Pada analisa sebelummnya diketahui bahwa pembagian data paling baik dengan menggunakan 1490 data training. Semakin banyak data yang dilearning oleh sistem semakin baik sistem output klasifikasi sistem. Pada tahap ini pembagian dataset training dan testing dilakukan dengan banyak data 75% data training dan 25% data testing. parameter-parameter yang digunakan adalah, dataset tanpa undersampling, menggunakan 75% data training – 25% data testing dan pembentukan likelihood menggunakan Gaussian Distribution. Output analisa ini merupakan perbandingan besar persantase performansi istem yang meliputi nilai Accuracy dan F1Measure. Pada gambar 13 dijelaskan perbandingan nilai performansi dari observasi parameter GLCM tersebut.
OPEN ACCESS Ind. Symposium on Computing
Sept 2016
331
ISSN XXXX-XXXX SOCJ.TELKOMUNIVERSITY.AC.ID/INDOSC
IND. SYMPOSIUMON COMPUTINGVOL. XX, NO. XX, SEPT 2016 PP. XX-XX. DOI:XXX
0.9420 0.9400 0.9380
0.9408 0.9400
0.9406
0.9388 0.9375
0.9371
0.9365 0.9353
0.9360 0.9340 0.9320
akurasi
Satu Sudut
Dua Sudut
f1-score
Tiga Sudut
Empat Sudut
Gambar 13 perbandingan evaluasi sistem dengan observasi parameter GLCM
Gambar 13 menjelaskan bahwa pada penelitian ini penggunaan empat sudut pada parameter ekstraksi GLCM lebih baik dibandingkan observasi sudut lainnya. Banyak parameter sudut yang digunakan, akan mempengaruhi hasil performansi sistem. Pada skenario observasi ini ditujukan bahwa banyak jumlah parameter sudut yang digunakan pada ekstraksi ciri GLCM tidak mempengaruhi besar performansi sistem. Pengaruh penggunaan parameter sudut bergantung dari dataset yang digunakan. 4) Analisis Pengaruh Observasi Pembentukan Likelihood :Analisis observasi terakhir adalah melakukan perbandingan besar performansi pada observasi pembentukan likelihood. Observasi membandingkan antara pembentukan likelihood menggunakan Gaussian distribution dan diskritisasi menggunakan K-means. Pada analisa sebelummnya diketahui bahwa penggunaan empat sudut pada parameter ekstraksi GLCM menghasilkan besar performansi yang paling baik Karenanya pada tahap ini parameter-parameter yang digunakan adalah, dataset tanpa undersampling, menggunakan 75% data training – 25% data testing dan empat sudut parameter ekstraksi. Output analisa ini merupakan perbandingan besar persantase performansi sistem yang meliputi nilai Accuracy dan F1Measure. Berikut pada Gambar 14 dijelaskan perbandingan nilai performansi dari observasi pembentukan likelihood. 0.944
0.942
0.942 0.940
0.938 0.937
0.938 0.936 0.934
0.933
0.932 0.930 0.928 akurasi
Gaussian Distribution
f1-score
k-means
Gambar 14 perbandingan evaluasi sistem dengan observasi pembentukan likelihood pada naive bayes
Abdurrahman Jundullah et.al. Analisis dan Implementasi Deteksi...
332
Gambar 14 menjelaskan bahwa pada penelitian ini pembentukan likelihood menggunakan GaussianDistribution menghasilkan besar perfomansi lebih baik dibandingkan diskritisasi menggunakan kmeans. Hal ini dikarenakan output dari ekstraksi GLCM merupakan bilangan kontinu dan distribusi Gaussian merupakan teknik pendistribusian probabilitas data untuk kumpulan data kontinu. Sedangkan K-means merupakan teknik diskritisasi dengan K tertentu, pada analisa ini K yang digunakan sebanyak 5 namun menghasilkan hasil yang tidak lebih baik dibanding menggunakan distribusi Gaussian.
V. KESIMPULAN Berdasarkan penelitian yang telah dilakukan, penulis menarik kesimpulan sebagai berikut : 1) Penggunaan Naïve bayes classifier pada penelitian ini terbukti dapat melakukan proses klasifikasi dengan besar rata-rata nilai f1-measure 93%. pada distribusi data 75% training dan 25% testing dengan menggunakan kumpulan data tanpa undersampling (imbalance). 2) Pada penelitian ini performansi sistem akan lebih baik jika menggunakan dataset tanpa undersampling dengan selisih besar akurasi 0.11% dan f1-measure 0.36%. 3) Banyak nya sudut pada parameter ekstraksi GLCM mampu mempengaruhi besar nilai f1-measure pada proses klasifikasi. Pada penelitian ini penggunaan 4 parameter sudut menghasilkan performansi sistem terbaik dengan besar rata-rata f1-measure 94.08%. 4) Pada penelitian ini penggunaan Gaussian distribution dalam proses pembentukan likelihood menghasilkan besar performansi yang lebih baik dibandingkan dengan menggunakan diskritisasi via K-means dengan selisih f1-measure sebesar 0.5%.
OPEN ACCESS Ind. Symposium on Computing
ISSN XXXX-XXXX SOCJ.TELKOMUNIVERSITY.AC.ID/INDOSC
Sept 2016
333
IND. SYMPOSIUMON COMPUTINGVOL. XX, NO. XX, SEPT 2016 PP. XX-XX. DOI:XXX
REFERENCES
[1] S. Radicati, "Email Statistics Report," The Radicati Group, Inc., CA, 2012. [2] Marshal Security, "Rise and Fall of Image Spam," Mashal Inc., United Kingdom, 2008. [3] Y. Song, A. Kolez and C. L. Giles, "Better Naive Bayes Classfication for High-Precision Spam Detection," vol. 39, pp. 1003-1024, 2009. [4] I. P. G. S. PRADNYANA, PERANCANGAN SISTEM PENDETEKSI GENANGAN AIR POTENSI PERKEMBANGBIAKAN NYAMUK MELALUI FOTO CITRA UDARA DENGAN METODE GRAY LEVEL CO-OCCURRENCE MATRIX (GLCM), Bandung: Telkom University, 2015. [5] R. M. Haralick, K. Shanmugam and I. Dinstein, "Textural Features for Image Classification," IEEE Transactions On Systems, Man and Cybernetics, vol. 3, pp. 610-621, 1973. [6] microimages, "http://www.microimages.com," [Online]. Available: http://www.microimages.com/documentation/TechGuides/81GLCM_Filters.pdf. [Accessed 5 08 2016]. [7] S. Natalius, "Metoda Naive Bayes Classifier dan Penggunaannya pada Klasifikasi Dokumen," 2011.
334