) ( ) | ( max arg h P h D P h
H h MAP e
=
) (
) ( ) | (
max arg
D P
h P h D P
h
H h MAP e
=
Dengan mengetahui hasil pemeriksaan seorang pasien terhadap
suatu jenis kanker, kita ingin menentukan apakah pasien tersebut
menderita jenis kanker yang dimaksud atau tidak
Kemungkinan hasil tes: (+) atau (-)
Masalahnya, tes tersebut tidak sempurna:
Dari seluruh pasien penderita jenis tersebut, tes dapat mengenali
kanker pada 98% kasus
Dari seluruh populasi yang tidak menderita kanker jenis tersebut, 97%
kasus dengan tepat dinyatakan tidak menderita kanker, sedangkan
3% didiagnosa positif terkena kanker
Diketahui bahwa dari seluruh populasi, kanker jenis tersebut
hanya diidap oleh 0,8% dari populasi
Pertanyaannya, jika ada seorang pasien yang hasil tesnya positif
mengidap kanker, apakah pasien itu dapat langsung didiagnosis
menderita kanker?
Menurut Teorema Bayes:
H = {kanker, tidak kanker}
D = apakah menurut hasil tes, pasien positif kanker atau tidak [(+)
atau (-)]
Kita memiliki data bahwa hasil tes pasien tersebut positif (+)
Jadi, kita perlu membandingkan antara:
P((+)|kanker) x P(kanker) , dengan
P((+)|tidak kanker) x P(tidak kanker)
Kita telah mengetahui bahwa:
P(kanker) = 0.8% P(tidak kanker) = 99.2%
P((+)|kanker) = 98% P((-)|kanker) = 2%
P((-)|tidak kanker) = 97% P((+)|tidak kanker) = 3%
) ( ) | ( max arg h P h D P h
H h MAP e
=
h : hipotesis nilai kelas c1, c2, c3 , cn
H : himpunan hipotesis C
D : data berupa kumpulan nilai atribut A1, A2, A3, , An
Jadi, dengan menerapkan Bayes Theorem, kita mencari nilai
kelas yang paling tinggi probabilitasnya, jika diketahui nilai-
nilai atributnya
Masalahnya:
Bagaimana kita mengestimasi
) ( ) | ,..., , , ( max arg
3 2 1 i i n C c MAP
c P c A A A A P h
i
e
=
? ) | ,..., , , (
3 2 1 i n
c A A A A P
Misalkan probabilitas suatu kejadian A adalah P(A)
Probabilitas kejadian A dan B muncul secara bersamaan
adalah P(A, B)
Bisa jadi, munculnya kejadian A dan B saling mempengaruhi
Kemunculan suatu kejadian mungkin berimplikasi bahwa
kejadian yang satu lagi lebih mungkin atau lebih tidak mungkin
muncul
Namun, bila diasumsikan bahwa kemunculan A dan B saling
independen, maka:
Asumsi Independensi
) ( ) ( ) , ( B xP A P B A P =
Nave Bayes memanfaatkan asumsi independensi
(independence assumption) untuk mengestimasi
nilai
Dengan asumsi independensi tersebut:
) | ,..., , , (
3 2 1 i n
c A A A A P
[
=
~
j
i j
i n i i i
i n
c A P
c A P c A P c A P c A P
c A A A A P
) | (
) | ( ... ) | ( ) | ( ) | (
) | ,..., , , (
3 2 1
3 2 1
Maka, untuk Nave Bayes Classifier:
Sehingga:
Nave Bayes Classifier
) | ,..., , , ( ) ( max arg
) ( ) | ,..., , , ( max arg
3 2 1
3 2 1
i n i C c MAP
i i n C c MAP
c A A A A P c P h
c P c A A A A P h
i
i
=
=
e
e
[ e
=
j
i j i C c MAP
c A P c P h
i
) | ( ) ( max arg
Sekarang, kita telah mengetahui bahwa:
Pertanyaan berikutnya: bagaimana cara mengestimasi nilai-
nilai probabilitas berikut ini?
1.
2.
Jawab: nilai probabilitas tersebut dapat diestimasi dari data
[ e
=
j
i j i C c MAP
c A P c P h
i
) | ( ) ( max arg
) | (
) (
i j
i
c A P
c P
1. adalah probabilitas a priori dari masing-masing
kelas pada data
Hitung proporsi objek dengan kelas tersebut pada
data
2. adalah probabilitas kondisional, bahwa
suatu objek dengan kelas akan memiliki atribut
bernilai tertentu
bisa jadi bertipe nilai diskret, bisa jadi bertipe nilai
kontinu
) | (
i j
c A P
) (
i
c P
i
c
i
c
j
A
j
A
Class: P(C) = N
c
/N
e.g., P(No) = 7/10,
P(Yes) = 3/10
For discrete attributes:
P(A
i
| C
k
) = |A
ik
|/ N
c
where |A
ik
| is number of
instances having attribute A
i
and belongs to class C
k
Examples:
P(Status=Married|No) = 4/7
P(Refund=Yes|Yes)=0
k
Tid Refund Marital
Status
Taxable
Income
Evade
1 Yes Single 125K No
2 No Married 100K No
3 No Single 70K No
4 Yes Married 120K No
5 No Divorced 95K Yes
6 No Married 60K No
7 Yes Divorced 220K No
8 No Single 85K Yes
9 No Married 75K No
10 No Single 90K Yes
10
c
a
t
e
g
o
r
i
c
a
l
c
a
t
e
g
o
r
i
c
a
l
c
o
n
t
i
n
u
o
u
s
c
l
a
s
s
Untuk atribut kontinu:
Diskretisasi range kemungkinan nilai yang ada menjadi
kelompok-kelompok nilai
masing-masing kelompok mewakili satu atribut ordinal
Two-way split: (A < v) or (A > v)
pilih salah satu dari kedua split tersebut sebagai atribut
Asumsikan berdasarkan densitas probabilitas:
Asumsikan atribut mengikuti distribusi
Gunakan data untuk melakukan estimasi parameter distribusi
(misalnya, mean and standard deviation)
Setelah distribusi probabilitas diketahui, distribusi tersebut dapat
dipergunakan untuk mengestimasi probabilitas bersyarat P(A
i
|c)
Distribusi normal:
Lakukan perhitungan untuk
setiap pasang (A
i
,c
i
)
Untuk (Income, Class=No):
Jika Class=No
sample mean = 110
sample variance = 2975
Tid Refund Marital
Status
Taxable
Income
Evade
1 Yes Single 125K No
2 No Married 100K No
3 No Single 70K No
4 Yes Married 120K No
5 No Divorced 95K Yes
6 No Married 60K No
7 Yes Divorced 220K No
8 No Single 85K Yes
9 No Married 75K No
10 No Single 90K Yes
10
c
a
t
e
g
o
r
i
c
a
l
c
a
t
e
g
o
r
i
c
a
l
c
o
n
t
i
n
u
o
u
s
c
l
a
s
s
2
2
2
) (
2
2
1
) | (
ij
ij i
A
ij
j i
e c A P
o
to
=
0072 . 0
) 54 . 54 ( 2
1
) | 120 (
) 2975 ( 2
) 110 120 (
2
= = =
e No Income P
t
Name Give Birth Can Fly Live in Water Have Legs Class
human yes no no yes mammals
python no no no no non-mammals
salmon no no yes no non-mammals
whale yes no yes no mammals
frog no no sometimes yes non-mammals
komodo no no no yes non-mammals
bat yes yes no yes mammals
pigeon no yes no yes non-mammals
cat yes no no yes mammals
leopard shark yes no yes no non-mammals
turtle no no sometimes yes non-mammals
penguin no no sometimes yes non-mammals
porcupine yes no no yes mammals
eel no no yes no non-mammals
salamander no no sometimes yes non-mammals
gila monster no no no yes non-mammals
platypus no no no yes mammals
owl no yes no yes non-mammals
dolphin yes no yes no mammals
eagle no yes no yes non-mammals
Give Birth Can Fly Live in Water Have Legs Class
yes no yes no ?
1. T. M. Mitchell, Machine Learning, Mc-Graw Hill, 1997, ch. 6.
2. P. N. Tan, M. Steinbach, V. Kumar, Introduction to Data
Mining, Addison-Wesley, 2006, ch. 5.