Naive Bayes
March 9, 2019 | Author: AgungKessawa | Category: N/A
Short Description
Download Naive Bayes...
Description
TUGAS 3 NAIVE BAYES
NAMA : A A Gede Gede Oka Kessawa A NIM
: 0904505033
JURUSAN TEKNIK INFORMATIKA UNIVERSITAS UDAYANA 2012
Klasifikasi Naive Bayes
Teknik clasifikasi Bayes adalah sebuah bentuk klasifikasi probabilistik yang berdasarkan Teorema Bayes (dari statistik Bayesian) dengan
strong
(naive)
independence assumptions atau asusmsi bebas. Sebuah aturan yang lebih deskriptif
untuk dasar sebuah model mode l yang akan menjadi “model bercirikan kebebasan”. Dalam sebuah aturan yang mudah, sebuah klasifikasi Naive Bayes diasumsikan bahwa ada atau tidaknya ciri tertentu dari sebuah kelas tidak ada hubungannya dengan ciri dari kelas lainnya. Untuk contohnya, buah akan dianggap sebagai sebuah apel jika berwarna merah, berbentuk bulat dan berdiameter sekitar 6 cm. Walaupun jika ciri-ciri tersebut bergantung satu sama lainnya atau keberadaanya merupakan ciri dari kelas lainnya, klasifikasi Naive Bayes tetap menganggap bagian-bagian dari kelas tersebut masing-masing memberikan jawaban bahwa kelas itu adalah apel. Berdasarkan dari ciri alami dari sebuah model probabilitas, klasifikasi naive Bayes bisa dibuat lebih efisien dalam bentuk pembelajaran. Dalam beberapa bentuk praktiknya, parameter untuk perhitungan model naive bayes menggunakan metode maximum likelihood , atau kemiripan tertinggi.
Gambar 1 Ilustrasi naive Bayes
Jadi sebuah data akan dilakukan klasifikasi berdasarkan sekelompok data yang sudah mengalami proses pembelajaran untuk menentukan termasuk data yang mana jika datum tersebut diklasifikasikan. Data latih untuk Teorema Bayes membutuhkan paling tidak perkalian kartesius dari seluruh kelompok atribut yang mungkin, jika misalkan ada 16 atribut yang masingmasingnya berjenis Boolean tanpa missing value, maka data latih minimal yang dibutuhkan oleh Teorema bayes untuk digunakan dalam klasifikasi adalah 2
16
= 65.536
data, sehingga ada 3 masalah yang dihadapi untuk menggunakan teorema bayes dalam pengklasifikasian, pengklasifikasian, yaitu : 1. Kebanyakan data latih tidak memiliki varian klasifikasi sebanyak itu (oleh karenanya sering diambil sample) . 2. Jumlah atribut dalam data sample dapat berjumlah lebih l ebih banyak (lebih dari 16) – Boolean] terlebih 3. Jenis nilai atribut dapat berjumlah lebih banyak [lebih dari 2 – Boolean] lagi untuk jenis nilai atribut yang bersifat tidak terbatas 1 - ∞ seperti numeric dan kontiniu. 4. Jika suatu data X tidak ada dalam data latih, maka data X tidak dapat di klasifikasikan, karena peluang untuk data X di klasifikasikan kedalam suatu kelas adalah sama untuk tiap kelas yang ada.
Untuk
mengatasi
berbagai
permasalahan
diatas,
berbagai
varian
dari
pengklasifikasian yang menggunakan teorema bayes diajukan, salah satunya adalah Naïve Bayes, yaitu penggunaan Teorema Bayes dengan asumsi keidependenan atribut. Asumsi keidependenan atribut akan menghilangkan kebutuhan banyaknya jumlah data latih dari perkalian kartesius seluruh atribut yang dibutuhkan untuk mengklasifikasikan suatu data.
Gambar 2 : Ilustrasi Naive Bayes
Dampak negative dari asumsi naïve tersebut adalah keterkaitan yang ada antara nilai-nilai atribut diabaikan sepenuhnya. Dampak ini secara intuitif akan berpengaruh dalam pengklasifikasian, namun percobaan empiris mengatakan sebaliknya. Hal ini tentu saja cukup mengejutkan, karena dalam pengaplikasian dunia nyata, asumsi diabaikannya keterkaitan antara atribut selalu dilanggar.
Pertanyaan yang muncul adalah apakah yang menyebabkan baiknya performa yang didapatkan dari pengaplikasian asumsi naïve ini? Karena secara intuitif, asumsi keidependenan atribut dalam dunia nyata hampir tidak pernah terjadi. Seharusnya dengan asumsi tersebut performa yang dihasilkan akan buruk. Domingos dan Pazzani (1997) pada papernya untuk menjelaskan performa naïve bayes dalam fungsi zero-one loss. Fungsi zero-one loss ini mendefinisikan error hanya sebagai pengklasifikasian yang salah. Tidak seperti fungsi error yang lain seperti squared error, error, fungsi zero-one zero-one loss tidak member nilai nilai suatu kesalahan kesalahan perhitungan perhitungan peluang selama peluang maksimum di tugaskan kedalam kelas yang benar. Ini berarti bahwa naïve bayes dapat mengubah peluang posterior dari tiap kelas, tetapi kelas dengan nilai peluang posterior maksimum jarang diubah. Sebagai contoh, diasumsikan peluang sebenarnya dari
dan
dihasilkan oleh naïve bayes adalah
, sedangkan peluang yang dan
. Nilai peluang
tersebut tentu tentu saja berbeda jauh, jauh, namun pilihan kelas tetap tidak terpengaruh.
Bukti Optimal Naive Bayes
Seperti yang telah di ketahui bahwa naïve Bayes bernilai optimal ketika seluruh atribut bernilai independen terhadap atribut lainnya. Pada bagian ini akan dibandingkan dibandingkan antara nilai naïve bayes yang seluruh atribut independen terhadap atribut lainnya dan nilai naïve bayes yang tidak seluruh atributnya independen. Misalkan sebuah data latih, dengan atribut A, B dan C yang bersifat Boolean, dan kelas
dan
, dengan peluang yang sebanding untuk tiap kelas
. A dan B berkorelasi penuh (A = B), sehingga sehingga B dapat diabaikan. diabaikan. Prosedur klasifikasi optimal untuk sebuah data tuple adalah untuk menugaskan data tuple tersebut kedalam kelas positif jika :
Kelas positif :
Dan sebaliknya, sebaliknya, menugaskan kelompok kelompok atribut kepada kelas negatif negatif jika : Kelas negatif :
Kelas acak :
Sedangkan
prosedur
klasifikasi
Naïve
Bayes
yang
tidak
optimal
memperhitungkan juga nilai B seperti halnya nilai B sama sekali tidak berkorelasi dengan nilai A. hal ini sama dengan menghitung nilai A dua kali. Untuk naïve bayes rumusnya adalah : Kelas positif :
Kelas negatif :
Kelas Acak :
Dengan mengaplikasikan naïve bayes untuk pengklasifikasian yang optimal, maka dapat di representasikan sebagai
Karena
, maka nilai
dan
tidak perlu dihitung dan
dapat diabaikan dalam perhitungan, nilai P(A) dan P(C) juga mengeliminasi satu sama lainnya dalam operasi pengurangan, sehingga nilai P(A) dan nilai P(C) tidak perlu di hitung, sehingga setelah pengeliminasian perhitungan yang tidak di perlukan dan didapatkan :
Untuk perhitungan korelasi optimal. Sedangkan untuk perhitungan korelasi dengan Naïve Bayes :
Karena dalam peluang nilai peluang maksimal adalah 1, maka dapat dituliskan :
Misalkan
dan
Sehingga rumusnya menjadi :
untuk nilai peluang optimal dengan asumsi keidependenan atribut.
untuk nilai peluang naïve bayes tanpa keidependenan atribut.
Kedua kurva fungsi diatas digambarkan sebagai berikut :
Gambar 2 Kurva Perbandingan Naive Bayes
Kurva diatas memperlihatkan bahwa walaupun asumsi keidependenan atribut dilanggar, karena B=A, pengklasifikasian pengklasifikasian naïve bayes bayes dengan asumsi atribut yang yang tidak independen tidak sama dengan pengklasifikasian naive bayes optimal dengan keidependenan atribut hanya di dua bagian sempit, satu diatas kurva dan satu lagi dibawah, di tempat lain, naïve bayes menghasilkan klasifikasi yang benar, yaitu pada (0,1) ( 0.5,0.5) (1,0) ini menunjukkan bahwa penggunaan klasifikasi naïve bayes bisa lebih luas daripada yang dikira sebelumnya.
Bentuk Klasifikasi
Klasifikasi Naive Bayes merupakan bentuk klasifikasi yang melakakukan teknik pengklasifikasian dengan menghitung derajat kecocokan. Jika derajat kecocokannya tinggi, maka data tersebut akan diklasifikasikan ke dalam kelas yang bersesuaian. Jika klasifikasi Vnb memiliki atribut a1, a2, ... an, maka hasil dari V nb dapat dihitung dengan,
( | ) Atau bisa dijabarkan menjadi bentuk seperti berikut.
( )
Menurut perhitungan di atas, masing-masing atribut akan menghasilkan nilai posterior tersendiri, sehingga bisa juga dijabarkan per masing-masing atribut. Sehingga akan lebih jelas dalam jabaran berikut.
( (| )(| ) ( | )
Atau tiap masing-masing atribut yang dilambangkan dengan Dimana, P(ai|V j) dihitung dengan menggunakan estimasi-m
( | )
Dimana: n= jumlah contoh dimana v = v j nc = jumlah contoh dimana v = v j dan a = ai p = prioritas yang dihitung untuk ( | ) m = persamaan ukuran sampel v j = dimana atribut sama dengan kasus tertentu, misalnya YES atau NO, diterima atau tidak
untuk nilai m, ditentukan sewenang-wenang namun dari beberapa sumber, nilai m disesuaikan dengan banyak jenis dari atribut. Sedangkan untuk nilai p, ditentukan berdasarkan banyak kemungkinan yang muncul, perhitungan tersebut didapat dari 1 dibagi dengan banyak kemungkinan, misalkan ada 3 kemungkinan, maka nilai dari p adalah 1/3 = 0,33
Model dan Langkah-Langkah Klasifikasi Naive Bayes
Naive Bayes adalah sebuah bentuk klasifikasi yang tentu saja tujuannya adalah untuk mengklasifikasikan terhadap data yang masuk atau diuji. Klasifikasi naive Bayes adalah bentuk klasifikasi yang berdasarkan tentang pembelajaran, jadi perhitungan dan klasifikasi akan terbentuk mengikuti data-data yang sudah digunakan untuk proses pembelajaran.
Berikut adalah contoh data yang mengikuti proses pembelajaran. Tabel 1 Data Pembelajaran
no
Atribut1
Atribut2
Atribut3
Result/hasil
1
X
A
1
YA
2
X
B
2
TIDAK
3
Y
A
3
YA
4
X
B
3
TIDAK
...
...
...
...
...
n
X
B
1
YA
dari data yang digunakan untuk pembelajaran tersebut, dilakukan pengujian terhadap sebuah data, misalkan: Tabel 2 Data diuji
Atribut1
Atribut2
Atribut3
Result/hasil
X
A
2
?
Untuk mencari apakah hasil bernilai ya atau tidak, dilakukan proses penghitungan derajat kecocokan berdasarkan jumlah data bersesuaian per atributnya. Tabel 3 tabel kecocokan atribut
no
X dan YA
A dan YA
2 dan YA
1
TRUE
TRUE
FALSE
2
FALSE
FALSE
FALSE
3
FALSE
TRUE
FALSE
4
FALSE
FALSE
FALSE
TRUE
FALSE
FALSE
... n
Dari Tabel 3 tersebut, didapat data yang akan digunakan untuk mencari derajat kecocokan per atribut.
Tabel 4 tabel kecocokan per atribut
YA
TIDAK X
X
n
3
n
3
n_c
2
n_c
1
p
0,5
m
3
A
p m
0,5 3
A
n
2
n
2
n_c
2
n_c
0
p
0,5
m
3
2
p m
0,5 3
2
n
1
n
1
n_c
0
n_c
1
p
0,33
m
3
p m
0,33 3
Dari tabel tersebut, lalu dihitung nilai poseterior per atribut, per kemungkinan. 1)
2)
3)
Sehingga,
Dihitung juga untuk V(TIDAK) 1)
2)
3)
Sehingga,
V(YA) =0,0546, V(TIDAK)=0,039 Karena V(YA)>V(TIDAK) maka data yang diuji tersebut termasuk tidak.
Contoh Kasus Naive Bayes
Sebuah Perusahaan bernama perusahaan NABA memiliki beberapa anak perusahaan. Salah satu anak perusahaan tersebut sedang melakukan pencarian pegawai dan salah seorang analisis di perusahaan tersebut memiliki beberapa orang anak yang ingin dimasukkan ke dalam perusahaan perusahaan tersebut. Berikut adalah data anak tersebut: Tabel 5 Data anak diuji
jenis no
kelamin
pendidikan pengalaman kerja
biaya administrasi
1 Laki
SMA
1
100000
2 Perempuan
SMA
3
300000
3 Laki
Diploma
3
500000
4 Perempuan
Sarjana
2
100000
Kemudian bapak tersebut memiliki data salah satu anak perusahaan dan melakukan klasifikasi apakah anak-anak tersebut akan diterima atau tidak. Berikut data penerimaan pegawai tersebut Tabel 6 data penerimaan pegawai
no
Jenis Kelamin
Lama Pendidikan Pengalaman Kerja
Biaya Administrasi
status
1 Perempuan
SMA
4
100000 100000 diterima
2 Perempuan
SMA
5
300000 300000 diterima
3 Perempuan
Diploma
3
300000 diterima
4 Perempuan
SMA
2
300000 300000 tidak
5 Laki
Sarjana
3
100000 diterima
6 Laki
SMA
1
100000 tidak
7 Laki
Diploma
1
300000 tidak
8 Laki
Diploma
3
100000 diterima
9 Perempuan
Diploma
2
100000 tidak
10 Laki
Diploma
3
300000 diterima
11 Perempuan
Sarjana
4
100000 diterima
12 Perempuan
Diploma
2
300000 diterima
13 Laki
Sarjana
1
500000 diterima
14 Laki
Sarjana
1
100000 tidak
15 Perempuan
SMA
5
100000 100000 diterima
16 Perempuan
Sarjana
3
100000 diterima
17 Perempuan
Sarjana
1
100000 tidak
18 Laki
SMA
2
300000 tidak
19 Laki
SMA
3
300000 tidak
20 Laki
SMA
1
100000 tidak
Lalu perhitunganpun dilakukan Tabel 7 Pengujian Data 1
No 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Laki dan Diterima FALSE FALSE FALSE FALSE TRUE FALSE FALSE TRUE FALSE TRUE FALSE FALSE TRUE FALSE
SMA dan diterima TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
1 tahun dan diterima FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE
100ribu dan diterima TRUE FALSE FALSE FALSE TRUE FALSE FALSE TRUE FALSE FALSE TRUE FALSE FALSE FALSE
15 16 17 18 19 20
FALSE FALSE FALSE FALSE FALSE FALSE
Tabel 8
data 1
TRUE FALSE FALSE FALSE FALSE FALSE
FALSE FALSE FALSE FALSE FALSE FALSE FALSE
yes
TRUE TRUE FALSE FALSE FALSE FALSE
no Laki n n_c p m P(Laki|YES) SMA n n_c p m P(SMA|YES) 1 n n_c p m P(1|YES) 100000 n n_c p m P(100000|YES) P(100000|YES)
10 4 0,5 4 0,428571429 8 3 0,33 4 0,36 6 1 0,2 4 0,18 11 6 0,33 4 0,488
Laki n n_c p m P(LAKI|NO) SMA n n_c p m P(SMA|NO) 1 n n_c p m P(1|NO) 100000 n n_c p m P(100000|NO)
P(YES) 0,006776229 P(NO) Karena P(YES)P(NO) sehingga, data peserta uji dua diterima
10 3 0,5 4 0,35714 3 8 5 0,33 4 0,52666 7 6 1 0,2 4 0,18 8 4 0,33 4 0,44333 3 0,00750 5
Tabel 11 Pengujian Data 3
No Laki dan Diterima FALSE 1 FALSE 2 FALSE 3 FALSE 4 TRUE 5 FALSE 6 FALSE 7 TRUE 8 FALSE 9 TRUE 10 FALSE 11 FALSE 12 TRUE 13 FALSE 14 FALSE 15 FALSE 16 FALSE 17 FALSE 18 FALSE 19 FALSE 20
Diploma dan diterima FALSE FALSE TRUE FALSE FALSE FALSE FALSE TRUE FALSE TRUE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
3 tahun dan diterima FALSE FALSE TRUE FALSE TRUE FALSE FALSE TRUE FALSE TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE
500ribu dan diterima FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
Tabel 12
data 3
yes
no Laki n n_c p m P(Laki|YES) Diploma n n_c p m P(Diploma|YES ) 3 n n_c p m P(3|YES) 500000 n n_c p m P(500000|YES)
10 4 0,5 4 0,428571429 6 4 0,33 4 0,532 6 5 0,2 4 0,58 1 1 0,33 4 0,464
Laki n n_c p m P(LAKI|NO) Diploma n n_c p m P(Diploma|NO) 3 n n_c p m P(3|NO) 500000 n n_c p m P(500000|NO)
P(YES) 0,03067968 P(NO) Karena P(YES)>P(NO) sehingga, data peserta uji dua diterima
10 6 0,5 4 0,57142 9 6 2 0,33 4 0,332 6 1 0,2 4 0,18 1 0 0,33 4 0,264 0,00450 8
Tabel 13 Pengujian Data 4
No 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Perempuan dan Diterima TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE
Sarjana dan diterima FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE
2 tahun dan diterima FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
100ribu dan diterima TRUE FALSE FALSE FALSE TRUE FALSE FALSE TRUE FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE
Tabel 14
data 4
yes
no Perempuan N n_c P M P(Perempuan|YES ) SMA N n_c P M P(SMA|YES) 3 N n_c P M P(3|YES) 100000 N n_c P M P(300000|YES)
10 7 0,5 4 0,642857143 6 4 0,33 4 0,532 4 1 0,2 4 0,225 11 6 0,33 4 0,488
Perempuan n n_c p m P(Perempuan|NO ) SMA n n_c p m P(SMA|NO) 3 n n_c p m P(3|NO) 100000 n n_c p m P(300000|NO)
P(YES) 0,0187758 P(NO) Karena P(YES)>P(NO) sehingga, data peserta uji dua diterima
Dari 4 data tersebut, didapatkan kesimpulan bahwa data 1 2 3 4
Status Tidak diterima Diterima Diterima Diterima
10 3 0,5 4 0,35714 3 6 2 0,33 4 0,332 4 3 0,2 4 0,475 11 5 0,33 4 0,42133 3 0,01186 5
Daftar Pustaka
-
-
-
Wikipedia, naive bayes clasifiers, http://www.saylor.org/site/wpcontent/uploads/2011/02/Wikipedia-Naive-Bayes-Classifier.pdf ,diunduh pada 10 Mei 2012 Meisner, E. Naive Bayes example, 2003 http://www.inf.uszeged.hu/~ormandi/ai2/06-naiveBayes-example.pdf , diunduh pada 10 Mei 2012 Optimality of Naive Bayes, http://courses.ischool.berkeley.edu/i290dm/s11/SECURE/Optimality_of_Naive_Bay dm/s11/SECURE/Optima lity_of_Naive_Bayes.pdf es.pdf , diunduh pada 10 Mei 2012 Frank, E. Naive Bayes for Text Classification with Unbalanced Classes. Computer Science Department, University of Waikato, New Zealand. http://www.cs.waikato.ac.nz/~eibe/pub http://www.cs.waikato.ac.nz/~eibe/pubs/FrankAndBou s/FrankAndBouckaertPKDD06ne ckaertPKDD06new.pdf, w.pdf, diunduh pada 10 Mei 2012
View more...
Comments