modul 4
DESCRIPTION
terTRANSCRIPT
![Page 1: Modul 4](https://reader036.vdocuments.net/reader036/viewer/2022082215/55cf8f5f550346703b9bafdb/html5/thumbnails/1.jpg)
Training of Image Processing Aplication in Control System Institut Teknologi Sepuluh Nopember Surabaya
Modul 4 : Klasifikasi 1
Modul 4
Klasifikasi
1. Pendahuluan
Pada disiplin ilmu pengolahan citra dibatasi oleh penggunaan citra sebagai masukan
maupun keluarannya. Hal ini berbeda dengan aplikasi pengenalan pola yang bertujuan untuk
melakukan proses pengenalan terhadap suatu obyek, misalnya citra, ke dalam suatu kelas
tertentu berdasarkan pola yang dimilikinya.
Secara umum, proses pengenalan pola ini dapat digambarkan dalam diagram blok
sederhana berikut :
Gambar 1 Diagram blok sistem pengenalan pola
Pola (pattern) memiliki pengertian yang berbeda dengan istilah fitur/ciri (feature). Pola
(pattern) merupakan segala jenis aspek pembeda, kualitas, maupun karakteristik pada suatu
benda. Sedangkan fitur/ciri (feature) merupakan komposit/gabungan dari fitur yang merupakan
sifat dari sebuah objek.
Kualitas dari suatu vektor fitur dapat dilihat dari kemampuannya dalam melakukan
pemilahan objek berdasarkan keanggotaan kelasnya:
• Objek dari kelas yang sama harus memiliki vektor fitur yang sama
• Objek dari kelas yang berbeda harus memiliki vektor fitur yang berlainan
Pemilah (classifier) memiliki tugas untuk menyekat ruang fitur ke dalam daerah-daerah
yang dilabeli sebagai kelas yang berbeda.
Gambar 2 Contoh klasifikasi atlet berdasarkan vektor fitur tinggi dan berat badan
![Page 2: Modul 4](https://reader036.vdocuments.net/reader036/viewer/2022082215/55cf8f5f550346703b9bafdb/html5/thumbnails/2.jpg)
Training of Image Processing Aplication in Control System Institut Teknologi Sepuluh Nopember Surabaya
Modul 4 : Klasifikasi 2
2. Pengenalan Pola Secara Statistik
Pembahasan metoda statistik dalam pengenalan pola berkaitan erat dengan Teorema
Bayes. Teorema Bayes dapat ditulis dalam persamaan matematis
Pemilihan dilakukan dengan memilih kelas yang mungkin apabila diketahui vektor
fitur . Dengan kata lain, pemilihan vektor ciri satu dimensi ke dalam dua kelas dan
berlaku,
“Apabila , pilih kelas . Jika sebaliknya pilih kelas ”
yang secara matematis dapat ditulis
atau
disebut likehood.
Persamaan di atas dapat diperluas dengan memasukkan parameter fungsi biaya yang
berupa kesalahan dalam pemilihan kelas yang seharusnya memilih kelas . Dengan demikian
persamaan tersebut berubah menjadi
Persamaan ini dikenal dengan nama Kriteria Bayes, yaitu aturan Uji Nisbah Likehood (UNL) yang
meminimumkan Resiko Bayes secara umum. Terdapat dua macam bentuk khusus dari
persamaan ini. Bentuk khusus tersebut adalah Kriteria A-Posteriori Maksimum (MAP) dan
Kriteria Likelihood Maksimum (ML).
2.1 Kriteria MAP
Penerapan kriteria MAP dilakukan pada proses klasifikasi di mana kedua kelas yang
diasumsikan memiliki fungsi biaya yang satu-nol.
Sehingga UNL yang berlaku
2.2 Kriteria ML
Kriteria ini merupakan penyederhanaan dari kriteria MAP dengan menarik asumsi
bahwa peluang prior dari kedua kelas sama besar :
![Page 3: Modul 4](https://reader036.vdocuments.net/reader036/viewer/2022082215/55cf8f5f550346703b9bafdb/html5/thumbnails/3.jpg)
Training of Image Processing Aplication in Control System Institut Teknologi Sepuluh Nopember Surabaya
Modul 4 : Klasifikasi 3
sehingga
3. Jaringan Syaraf Tiruan (JST)
Jaringan saraf tiruan (JST) (Bahasa Inggris: artificial neural network (ANN), atau juga
disebut simulated neural network (SNN), atau umumnya hanya disebut neural network (NN)),
adalah jaringan dari sekelompok unit pemroses kecil yang dimodelkan berdasarkan jaringan
saraf manusia. JST merupakan sistem adaptif yang dapat mengubah strukturnya untuk
memecahkan masalah berdasarkan informasi eksternal maupun internal yang mengalir melalui
jaringan tersebut.
Pengembangan JST dipicu oleh adanya pemikiran bahwa otak manusia melakukan
komputasi dalam cara yang sama sekali berbeda dengan pada komputer digital. Oleh karena itu,
JST didesain untuk memiliki beberapa persamaan sifat dengan otak, yaitu dalam hal :
Pengetahuan yang dimiliki diperoleh dari suatu proses belajar.
Pengetahuan disimpan dalam bentuk bobot koneksi antar neuron.
Pemodelan struktur pemrosesan informasi terdistribusi dilakukan dengan menentukan
pola hubungan antar neuron tiruan (arsitektur). Pola hubungan yang umum adalah hubungan
antar lapisan (layer). Setiap lapisan terdiri dari sekumpulan neuron tiruan (unit) yang memiliki
fungsi tertentu, misalnya fungsi masukan atau fungsi keluaran. Ada tiga tipe arsitektur jaringan
syaraf tiruan :
a) Single-layer Feedforward Network
Tipe jaringan paling sederhana, dibangun oleh lapisan masukan yang berkoneksi
dengan lapisan keluaran yang berjalan satu arah (feedforward). Proses komputasi hanya
terjadi pada lapisan keluaran. Tipe ini ditunjukkan dengan Gambar 3.
b) Multilayer Feedforward Network
Pada tipe ini, di antara lapisan masukan dan keluaran, terdapat satu atau lebih lapisan
tersembunyi (hidden layer). Hubungan antar lapisan berlangsung satu arah. Arsitektur tipe
ini dapat dilihat pada gambar 4.
c) Reccurent Network
Tipe recurrent berbeda dengan kedua tipe sebelumnya. Pada recurrent, sedikitnya
memiliki satu koneksi umpan balik (feedback).
Gambar 3 Single-layer Feedforward Network
![Page 4: Modul 4](https://reader036.vdocuments.net/reader036/viewer/2022082215/55cf8f5f550346703b9bafdb/html5/thumbnails/4.jpg)
Training of Image Processing Aplication in Control System Institut Teknologi Sepuluh Nopember Surabaya
Modul 4 : Klasifikasi 4
Gambar 4 Multilayer Feedforward Network
Salah satu algoritma pelatihan jaringan syaraf tiruan yang banyak dimanfaatkan dalam
bidang pengenalan pola adalah backpropagation. Algoritma ini umumnya digunakan pada
jaringan syaraf tiruan yang berjenis multi-layer feed-forward, yang tersusun dari beberapa
lapisan dan sinyal dialirkan secara searah dari input menuju output.
Propagasi maju dikerjakan pada vektor input setahap demi setahap, hingga dihasilkan
nilai pada layer output. Pada iterasi ke n, nilai dari masing-masing variabel jaringan adalah
:
Respon aktual dari jaringan tersebut diberikan oleh Dk. Apabila diinginkan vektor target
(label numerik dari masing-masing kelas) adalah Tk, maka besar error yang terjadi pada iterasi
ke-n tersebut adalah :
Sum of squared error jaringan untuk iterasi ke-n adalah jumlah dari squared error untuk seluruh
neuron pada layer 2 :
Dengan vektor target, diperoleh nilai , sebabai rata-rata squared error jaringan sebeasar
Propagasi balik bekerja dengan menggunakan faktor koreksi untuk bobot
, yang nilainya sebanding dengan gradien
Nilai
ini selanjutnya akan diamati
untuk menentukan arah pencarian dalam ruang bobot bagi .
Apabila nilai yang diperoleh hingga iterasi tertentu belum memenuhi kriteria error
yang diharapkan, maka proses training dapat diulangi kembali dengan menggunakan data yang
sama.
![Page 5: Modul 4](https://reader036.vdocuments.net/reader036/viewer/2022082215/55cf8f5f550346703b9bafdb/html5/thumbnails/5.jpg)
Training of Image Processing Aplication in Control System Institut Teknologi Sepuluh Nopember Surabaya
Modul 4 : Klasifikasi 5
4. Tugas
A. Latar Belakang
Perusahaan pengalengan ikan hendak mengautomasikan proses pemilahan ikan
menurut spesiesnya yaitu ikan salmon dan ikan sea-bass.
Dari pengamatan terhadap 50 sampel ikan, diperoleh data sebagai berikut :
Ikan Salmon
Panjang (cm) Jumlah Sampel
17 18 19 20 21 22 23
1 4 5 6 4 3 2
Ikan Sea-Bass
Panjang (cm) Jumlah Sampel
20 21 22 23 24 25 26 27 28 29 30
2 1 2 2 3 4 4 2 2 2 1
Dari hasil pengamatan tersebut, ternyata kita dapat mengetahui bahwa ukuran
rata-rata dari ikan sea-bass ternyata lebih besar daripada ikan salmon. Fitur panjang ikan
ini selanjutnya diklasifikasi dengan menggunakan beberapa metoda yang telah dijelaskan.
B. Pertanyaan
1. Dengan mengasumsikan bahwa sampel yang diambil cukup representatif, maka
berapakah rata-rata dan deviasi standar dari panjang setiap jenis ikan?
Ikan Salmon Ikan Sea-Bass
Rata-Rata ………………… cm ………………… cm
Deviasi Standar ………………… cm ………………… cm
2. Apabila diasumsikan kerapatan peluang dari masing-masing jenis ikan terdistribusi
secara normal :
![Page 6: Modul 4](https://reader036.vdocuments.net/reader036/viewer/2022082215/55cf8f5f550346703b9bafdb/html5/thumbnails/6.jpg)
Training of Image Processing Aplication in Control System Institut Teknologi Sepuluh Nopember Surabaya
Modul 4 : Klasifikasi 6
dan peluang masing-masing prior adalah
serta untuk menjaga kepuasan pelanggan, dipertimbangkan penggunaan parameter
biaya salah pilah sebagai berikut :
Biaya salah pilah sea-bass menjadi salmon
Pelanggan yang menemukan rasa lezat ikan salmon padahal ia memesan ikan sea
bass
Pelanggan kecewa ketika merasakan ikan sea-bass
Pelanggan kecewa ketika merasakan ikan sea bass padahal ia membeli ikan
salmon
Biaya benar pilah
Maka tentukanlah persamaan klasifikasi :
Menurut :
a. Kriteria Bayes
b. Kriteria MAP
c. Kriteria ML
d. Jaringan Syaraf Tiruan
3. Persamaan klasifikasi tersebut diterapkan ke 100 sampel uji berikut :
Panjang (cm)
Jumlah Sampel
Salmon Sea-Bass
17 18 19 20 21 22 23
1 3 5 8 6 4 3
0 2 3 3 5 4 4
Panjang (cm)
Jumlah Sampel
Salmon Sea-Bass
24 25 26 27 28 29 30
2 1 0 0 0 0 0
7 8
11 9 5 4 2
Lengkapi tabel berikut untuk masing-masing metoda
Hasil Klasifikasi
Total Ikan Salmon Ikan Sea-Bass
Jenis Ikan Ikan Salmon ………… ………… 25
Ikan Sea-Bass ………… ………… 25
Total ………… ………… 50
![Page 7: Modul 4](https://reader036.vdocuments.net/reader036/viewer/2022082215/55cf8f5f550346703b9bafdb/html5/thumbnails/7.jpg)
Training of Image Processing Aplication in Control System Institut Teknologi Sepuluh Nopember Surabaya
Modul 4 : Klasifikasi 7
Peluang ikan salmon diklasifikasi benar = ………….. %
Peluang ikan sea-bass diklasifikasi benar = ………….. %
Peluang benarnya keputusan klasifikasi ikan salmon = ………….. %
Peluang benarnya keputusan klasifikasi ikan sea bass = ………….. %
Metoda manakah yang memberikan akurasi klasifikasi tertinggi? Berikan analisis
mengapa metoda tersebut lebih baik daripada metoda lainnya.
C. Kode MATLAB®
%IKAN Program klasifikasi ikan
% Program untuk mengklasifikasi vektor input (panjang ikan) ke dalam 2
% kelas output (salon dan seabass)
clear;clc;close all;
salmon= ...
[17 18 18 18 18 19 19 19 19 19 20 20 20 20 20 20 21 21 21 21 22 22 22
23 23];
seabass= ...
[20 20 21 22 22 23 23 24 24 24 25 25 25 25 26 26 26 26 27 27 28 28 29
29 30];
u1=mean(salmon); u2=mean(seabass);
o1=std(salmon) ; o2=std(seabass);
c11=0; c21=1; c22=0; c12=2.5;
pw1=0.35; pw2=1-pw1;
d1=ikanstat([pw1,pw2],[u1,u2],[o1,o2],[c11,c21,c12,c22],'Kriteria
Bayes');
d2=ikanstat([pw1,pw2],[u1,u2],[o1,o2],[ 0, 1, 1, 0],'Kriteria MAP' );
d3=ikanstat([0.5,0.5],[u1,u2],[o1,o2],[ 0, 1, 1, 0],'Kriteria ML' );
d4=ikanjst (salmon,seabass);
%IKANSTAT Program klasifikasi ikan
% Program untuk mengklasifikasi vektor input (panjang ikan) ke dalam 2
% kelas output (salon dan seabass) dengan menggunakan metoda
statistikal
function Disk=ikanstat(p,u,o,c,t)
figure,title(t),hold on,syms x;
xlabel('Panjang (cm)');ylabel('Rapat peluang');
pxw1=((o(1)^2*2*pi).^-0.5)*exp(-0.5*(x-u(1)).^2/o(1)^2);
pxw2=((o(2)^2*2*pi).^-0.5)*exp(-0.5*(x-u(2)).^2/o(2)^2);
Disk=double(solve(p(1)*(c(2)-c(1))*pxw1-p(2)*(c(3)-c(4))*pxw2));
JumlahDisk=size(Disk);
x=min(u(1)-4*o(1),u(2)-4*o(2)):0.01:max(u(1)+3*o(1),u(2)+3*o(2));
pxw1=(o(1)^2*2*pi).^-0.5*exp(-0.5*(x-u(1)).^2/o(1)^2);
pxw2=(o(2)^2*2*pi).^-0.5*exp(-0.5*(x-u(2)).^2/o(2)^2);
Gauss1 = line(x,pxw1,'LineWidth',3,'Color','b');
Gauss2 = line(x,pxw2,'LineWidth',3,'Color','r');
text(floor(u(1)-o(1)-1),pxw1(floor(100*(u(1)-o(1)-u(1)+4*o(1)))),...
'Salmon','horizontalalignment','right');
text(floor(u(2)+o(2)+1),pxw2(floor(100*(u(2)+o(2)-u(2)+4*o(2)))),...
'Sea Bass','horizontalalignment','left');
set(gca,'userdata',[Gauss1 Gauss2]);
t=0:0.001:1.0*max(max(pxw1),max(pxw2));
plot(Disk(1),t,':k');
if JumlahDisk(1)>1
plot(Disk(2),t,':k');
end
![Page 8: Modul 4](https://reader036.vdocuments.net/reader036/viewer/2022082215/55cf8f5f550346703b9bafdb/html5/thumbnails/8.jpg)
Training of Image Processing Aplication in Control System Institut Teknologi Sepuluh Nopember Surabaya
Modul 4 : Klasifikasi 8
%IKANSTAT Program klasifikasi ikan
% Program untuk mengklasifikasi vektor input (panjang ikan) ke dalam 2
% kelas output (salon dan seabass) dengan menggunakan metoda
statistikal
function Disk=ikanstat(p,u,o,c,t)
figure,title(t),hold on,syms x;
xlabel('Panjang (cm)');ylabel('Rapat peluang');
pxw1=((o(1)^2*2*pi).^-0.5)*exp(-0.5*(x-u(1)).^2/o(1)^2);
pxw2=((o(2)^2*2*pi).^-0.5)*exp(-0.5*(x-u(2)).^2/o(2)^2);
Disk=double(solve(p(1)*(c(2)-c(1))*pxw1-p(2)*(c(3)-c(4))*pxw2));
JumlahDisk=size(Disk);
x=min(u(1)-4*o(1),u(2)-4*o(2)):0.01:max(u(1)+3*o(1),u(2)+3*o(2));
pxw1=(o(1)^2*2*pi).^-0.5*exp(-0.5*(x-u(1)).^2/o(1)^2);
pxw2=(o(2)^2*2*pi).^-0.5*exp(-0.5*(x-u(2)).^2/o(2)^2);
Gauss1 = line(x,pxw1,'LineWidth',3,'Color','b');
Gauss2 = line(x,pxw2,'LineWidth',3,'Color','r');
text(floor(u(1)-o(1)-1),pxw1(floor(100*(u(1)-o(1)-u(1)+4*o(1)))),...
'Salmon','horizontalalignment','right');
text(floor(u(2)+o(2)+1),pxw2(floor(100*(u(2)+o(2)-u(2)+4*o(2)))),...
'Sea Bass','horizontalalignment','left');
set(gca,'userdata',[Gauss1 Gauss2]);
t=0:0.001:1.0*max(max(pxw1),max(pxw2));
plot(Disk(1),t,':k');
if JumlahDisk(1)>1
plot(Disk(2),t,':k');
end