Pengenalan Pola
PTIIK - 2014
Course Contents
Teori Keputusan Bayes
1
Fase Training
2
Fase Testing
3
Latihan
4
Prosedur Keputusan Bayes
Prosedur pengenalan pola dan pengambilan keputusan
X : semua data observasi menggunakan sensors dan instruments yang tersedia
x : merupakan himpunana fitur yang dipilih dari komponen X, atau fungsi linier dari X.
w : adalah inner belief/perception tentang subject dari class.
α : adalah aksi yang kita ambil untuk x.
Dari prosedur tersebut didapatkan definisi dari 3 ruang vektor sebagai berikut: subjects Features x Observables X Action a Inner belief w } ,..., , { , class index vector ) ,..., , ( α , , k 2 1 C d 2 1 α C d w w w w w adalah adalah x x x x x
Contoh Kasus
Klasifikasi Ikan
X=I adalah citra ikan,
x =(brightness, length, fin#, ….)
w merupakan tingkat kepercayaan kita bahwa tipe ikan adalah c={“sea bass”, “salmon”,
“trout”, …}
α merupakan keputusan tipe ikan, pada kasus ini c= a
a={“sea bass”, “salmon”,
“trout”, …}
Diagnosis Medis
X= semua hasil test medis, citra hasil scan x =(blood pressure, glucose level, cough,
x-ray….)
w merupakan tipe sakit yang diderita
c={“Flu”, “cold”, “TB”, “pneumonia”, “lung
cancer”…}
a merupakan keputusan untuk penanganan yang diberikan pada pasien,
Fokus Metode
Pada teori keputusan Bayes, kita perhatikan tiga langkah
terakhir yang mengasumsikan bahwa observasi telah
dilakukan dan fitur telah dipilih sebelumnya.
subjects Features x Observables X Decision a Inner belief w control sensors selecting Informative features statistical inference risk/cost minimization
Keputusan Bayes
Keputusan akan dibuat ketika semua distribusi dari probabilitas dari data diketahui, Sehingga keputusan akan menjadi optimal ketika distribusi data diketahui.
Untuk kasus dua kelas yang terdefinisi : w1 dan w2 ,
Probabilitas Prior untuk data observasi baru yang belum diketahui didefiniskan dengan:
P(w1) : probabilitas observasi data baru menjadi milik dari class 1 P(w2) : probabilitas observasi data baru menjadi milik dari class 2
P(w1 ) + P(w2 ) = 1
• Probabilitas tersebut mencerminkan pengetahuan sebelumnya. • Aturan keputusan untuk object baru :
Teori Keputusan Bayes
Tingkat kepercayaan terhadap class w dihitung menggunakan
aturan Bayes :
Tingkat resiko dihitung dengan :
Features x Decision a(x) Inner belief p(w|x) statistical Inference risk/cost minimization
Two probability tables: a). Prior p(w)
b). Likelihood p(x|w)
A risk/cost function (is a two-way table) l(a | w) ) ( ) ( ) | ( ) | ( x p p x p x p w w w
k x x R 1 j j j i i | ) ( | )p( | ) (a l a w wKeputusan Bayes
Kita mendefiniskan fitur untuk setiap object dengan :
P(x|
w
1) & P(x|
w
2) : class-specific density
Aturan Keputusan
Aturan keputudsan merupakan fungsi mapping function
dari ruang fitur ke himpunan aksi yang akan diambil
Keputusan yang acak (random) tidak optimal
Keputusan yang dibuat berdasarkan fungsi yang
meminimalkan resiko / average cost
Fungsi tersebut akan minimal ketika keputusan yang kita
ambil dibuat untuk meminimalkan cost / resiko untuk
setiap instance x
aa
d
:
)
(x
R( (x)|x)p(x) dx R a
k j j j p x x R x 1 ) | ( ) | ( min arg ) | ( min arg ) (a
l
a
w
w
a
a aBayessian Error
Pada kasus khusus, seperti klasifikasi ikan, aksi yang
diambil adalah klasifikasi yang diasumsikan eror : 0/1
Resiko klasifikasi x ke class α
iadalah,
j i j i j i j i
if
if
w
a
w
a
l
w
a
w
a
l
1
)
|
(
0
)
|
(
)
|
(
1
)
|
p(
)
|
(
i j i i jx
p
x
x
R
a
w
a
a w
Fase Data Training
Contoh Dataset (Ikan Salmon & Sea Bass) :
(Misal hanya menggunakan 1 fitur, yaitu “Width”) menggunakan konsep Risk/ Cost.
No (Width) sebagai Fitur 1 Kelas
1 9 Salmon 2 11 Sea Bass 3 9 Sea Bass 4 12 Salmon . . . . . M 15 Sea Bass
Fase Data Training
Contoh Dataset (Smurf or Troll) :
(Misal hanya menggunakan 1 fitur, yaitu “Height”) menggunakan konsep univariate normal distribution.
Jika Height = 2” , tentukan kelas Creaturenya !
Height Creature 2.70” Smurf 2.52” Smurf 2.57” Smurf 2.22” Smurf 3.16” Troll 3.58” Troll 3.16” Troll
Fase Data Training
Contoh Dataset (Smurf or Troll) :Langkah-langkah penyelesaian :
Fase Data Training
Contoh Dataset (Smurf or Troll) :
Fase Data Training
Contoh Dataset (Smurf or Troll) :
3. Menghitung Prob. Prior dari trolls dan smurfs.
4. Sehingga didapatkan Prob. Posterior berikut :
dan
Jika P(smurf | 2”) > P(troll | 2”) maka Height = 2” masuk kelas Smurf. Dan sebaliknya.
Fase Data Training
Jika fiturnya lebih dari satu, maka gunakan :
Teori Peluang Biasa : Contoh :
Fitur(R,T,D) : rash (R), temperature (T), dizzy(D). Kelas(C) : 1 atau 0. (Terdapat 40 data training)
Fase Training :
(Meringkas data training sesuai dengan frekuensi)
Fase Data Testing
Fase Testing :
Data uji x
1= (1 1 1) x
2= (1 0 0) x
3= (0 1 0)
Klasifikasi didasarkan pada penghitungan probabilitas posterior. Misalkan :
Jika P(C = 1 | X) > 0.5 maka C = 1 Jika tidak, maka C = 0.
Fase Data Training
Distribusi Normal multivariate
No (Width) sebagai Fitur ke-1 (Lightness) Sebagai Fitur ke-2 Kelas
1 9 8.4 Salmon 2 11 9.7 Sea Bass 3 9 2.6 Sea Bass 4 12 10.1 Salmon . . . . . M 15 7.2 Sea Bass
Fase Data Training
Distribusi Normal multivariate (Data Kontinyu) :
Contoh :Jika diketahui “Curvatur Chip Ring = 2.81” dan “Diameter Chip Ring = 5.46” maka, Kelas Quality Control Result-nya masuk ? (Selesaikan menggunakan teorema keputusan bayesian)
Curvature Diameter Quality Control Result
2.95 6.63 Passed 2.53 7.79 Passed 3.57 5.65 Passed 3.57 5.45 Passed 3.16 4.46 Not passed 2.58 6.22 Not passed 2.16 3.52 Not passed
Fase Data Training
Distribusi Normal multivariate (Data Kontinyu) :
Fase Training :X = features (variables independent) Y = Kelas/ Group (variables dependent)
2. Memisahkan x berdasarkan group : 1. Labeling Dataset :
Fase Data Training
Distribusi Normal multivariate (Data Kontinyu) :
Fase Training :X = features (variables independent) Y = Kelas/ Group (variables dependent)
4. Hitung (Mean Corrected) : (xi minus mean global)
3. Hitung μi = mean features dari group i dan μ = mean global
Fase Data Training
Distribusi Normal multivariate (Data Kontinyu) :
Fase Training :Fase Data Training
Distribusi Normal multivariate (Data Kontinyu) :
Fase Training :Sehingga didapat nilai p(2.81,5.46 | Passed) dan p(2.81,5.46 | Not_passed) 6. Hitung Likelihood dari Curvatur = 2.81” dan “Diameter = 5.46” :
Fase Data Testing
Distribusi Normal multivariate (Data Kontinyu) :
Fase Testing:Jika p(Passed | 2.81,5.46) > p(Not_passed | 2.81,5.46) , maka
Curvatur = 2.81” dan “Diameter = 5.46” masuk kelas “Passed”. Dan sebaliknya.
Jadi Prob. Posterior Curvatur = 2.81” dan “Diameter = 5.46” adalah sbb :
)
46
.
5
,
81
.
2
(
)
(
)
|
46
.
5
,
81
.
2
(
)
46
.
5
,
81
.
2
|
(
p
Passed
p
Passed
p
Passed
p
p(Not _ passed | 2.81,5.46)
=
p(2.81,5.46 | Not _ passed)p(Not _ Passed)
p(2.81,5.46)
Latihan 1
Perhatikan grafik distribusi pada proses klasifikasi ikan Sea Bass (ω2) dan ikan Salmon (ω1). A1 : Memberikan hasil keputusan bahwa ikan yang diuji coba adalah termasuk kelas ikan Sea Bass. A2 : Memberikan hasil keputusan bahwa ikan yang diuji coba adalah termasuk kelas ikan Salmon. Probabilitas Prior ikan Sea Bass dan Salmon masing-masing P(ω2) = 2/3 dan P(ω1) = 1/3.
Biaya/Cost jika hasil klasifikasinya adalah ikan salmon, tapi sebenarnya ikan tersebut adalah ikan sea bass sebesar λ(A2 | ω2) = $2, dan Biaya jika hasil klasifikasinya adalah ikan sea bass laut, tapi sebenarnya ikan tersebut adalah salmon sebesar λ(A1 | ω1) = $1.
Tentukan hasil keputusan klasifikasi jika input x = 13, dimana probabilitas likelihoodnya masing-masing P(x | ω1) = 0,28 dan P(x | ω2) = 0,17 dengan pertimbangan Cost/ Resiko yang ada !
Penyelesaian :
Diketahui :
ω1 Kelas Salmon ω2 Kelas Sea Bass
A1 Decide Input is Sea Bass A2 Decide Input is Salmon
λ(A2 | ω2) = $2 dan λ(A1 | ω1) = $1
) ( 0 ) | ( ) ( 0 ) | ( berbeda yang kelas pada mengarah A jika biaya satuan A sama yang kelas pada mengarah A jika biaya satuan A j i j i j i j i w w l w w l
Jawab :
Latihan 1 (Cont.)
) ( ) ( ) ( ) ( ) 3 / 2 )( 17 , 0 ( 2 2 1 1 w w w w P P x P x P ) ( ) ( ) ( ) ( 2 2 2 x P P x P x P w w w 5521 , 0 2063 , 0 1139 , 0 1139 , 0 0924 , 0 1139 , 0 )) 3 / 2 )( 17 , 0 (( )) 3 / 1 )( 28 , 0 (( ) 3 / 2 )( 17 , 0 ( ) ( ) ( ) ( ) ( 1 1 1 x P P x P x P w w w ) ( ) ( ) ( ) ( ) 3 / 1 )( 28 , 0 ( 2 2 1 1 w w w w P P x P x P 4479 , 0 2063 , 0 0924 , 0 1139 , 0 0924 , 0 0924 , 0 )) 3 / 2 )( 17 , 0 (( )) 3 / 1 )( 28 , 0 (( ) 3 / 1 )( 28 , 0 ( (Menghitung Probabilitas Posterior ) (Menghitung Risk/Cost)
) 2 ( ) ( ) ( ) ( 2 1 kelas banyaknya menyatakan x P A x A R j j j i i
w w l ) ( ) ( ) ( ) ( ) (A2 x A2 1 P 1 x A2 2 P 2 x R l w w l w w )) 5521 , 0 )( 2 (($ )) 4479 , 0 )( 0 (($ 1042 , 1 $ 1042 , 1 $ 0 $ ) ( ) ( ) ( ) ( ) (A1 x A1 1 P 1 x A1 2 P 2 x R l w w l w w )) 5521 , 0 )( 0 (($ )) 4479 , 0 )( 1 (($ 4479 , 0 $ 0 $ 4479 , 0 $ Melihat nilai biaya resiko dari
R(A1 | x) < R(A2 | x) , maka x = 13 masuk kelas Sea Bass.
) ( min arg ) (x R Ai x a
Latihan 2
Perhatikan Dataset berikut :
Tugas
Buatlah aplikasi pengenalan pola dari data UCI yang
kalian kumpulkan sebelumnya
Minimal menggunakan MS Excel (direkomendasikan
menggunakan bahasa pemrograman tertentu, baik desktop-based maupun web-desktop-based)
metode yang digunakan untuk mengenali pola adalah Teori Keputusan Bayes
Ketentuan Data yang digunakan:
25 data training untuk setiap kelas
10 data testing untuk setiap kelas
Gunakan hanya 3 fitur terbesar berdasarkan perhitungan nilai eigen value yang didapatkan dari tugas sebelumnya
Munculkan keluaran sesuai dengan tahapan-tahapan
penyelesaian dalam klasifikasi menggunakan Teori
Keputusan Bayes
Sheet1 / Form1 Data
Sheet2 / Form2 Mean, Varians, Likelihood, Prior, Posterior, dan Hasil Klasifikasi
[email protected] 081 331 834 734 / 088 160 127 40