modul praktikum 4 naive bayes a. tujuan praktikan...

Post on 13-Mar-2019

245 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

PRAKTIKUM DATA MINING

KEMENTRIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI UNIVERSITAS ANDALAS

FAKULTAS TEKNOLOGI INFORMASI JURUSAN SISTEM INFORMASI

LABORATORIUM BUSINESS INTELLIGENCE Kampus Universitas Andalas, Limau Manis, Padang – 25163

MODUL PRAKTIKUM 4

NAIVE BAYES

A. Tujuan

1. Praktikan mampu memahami konsep dasar naive bayes.

2. Praktikan mampu memahami langkah-langkah naive bayes.

B. Landasan Teori

Metode klasifikasi ini diturunkan dari penerapan teorema bayes dengan asumsi independence

(saling bebas). Naive Bayes Classifier (NBC) adalah metode pengklasifikasian dengan model

peluang, dimana diasumsikan bahwa setiap atribut (contoh : data sampel) bersifat saling lepas

satu sama lain berdasarkan atribut kelas.

Keuntungan penggunan NBC adalah bahwa metoda ini hanya membutuhkan jumlah data

pelatihan (training data) yang kecil untuk menentukan estimasi parameter yang diperlukan

dalam proses pengklasifikasian. Karena yang diasumsikan sebagai variable independent, maka

hanya varians dari suatu variable dalam sebuah kelas yang dibutuhkan untuk menentukan

klasifikasi, bukan keseluruhan dari matriks kovarians.

Sebelum melakukan proses klasifikasi Naive Bayes, dilakukan tahapan ekstraksi ciri tekstur

citra yang dimiliki oleh data yang ada dinamai metode Gray Level Co-Occurence Matrix

(GLCM). Proses ini merupakan melakukan perhitungan probabilitas hubungan ketetanggaan

antara dua piksel pada jarak dan orientasi sudut tertentu. Pendekatan ini bekerja dengan

membentuk sebuah matriks kookurensi dari data citra, dilanjutkan dengan menentukan ciri

sebagai fungsi dari matrik.

PRAKTIKUM DATA MINING

Kookurensi berarti kejadian bersama, yaitu jumlah kejadian satu level nilai piksel bertetangga

dengan satu level nilai piksel lain dalam jarak (d) dan orientasi sudut (θ) tertentu. 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

dapat ditetapkan sebesar 1 piksel, 2 piksel, atau lebih.

Matriks kookurensi merupakan matriks bujursangkar dengan jumlah elemen sebanyak kuadrat

jumlah level intensitas piksel pada citra. Setiap titik (p,q) pada matriks kookurensi

berorientasi berisi peluang kejadian piksel bernilai p bertetangga dengan piksel bernilai q pada

jarak d serta orientasi θ dan (180º-θ). Parameter tekstur yang dapat diekstrak dengan metode

GLCM menggunakan dua parameter yaitu contrast dan correlation. Kedua parameter tersebut

dijadikan sebagai nilai masukan dalam naive bayes.

Metode GLCM termasuk dalam metode statistik dimana dalam perhitungan statistiknya

menggunakan distribusi derajat keabuan (histogram) dengan mengukur tingkat kekontrasan,

granularitas, dan kekasaran suatu daerah dari hubungan ketetanggaan antar piksel di dalam citra.

Metode ini paling banyak digunakan untuk analisis tekstur dan diperkenalkan oleh Haralick di

tahun 1973 yang merupakan bagian dari project yang didukung olah NASA yaitu tepatnya

NASA Goddard Space Flight Center. Haralick menggunakan citra dari NASA ERTS untuk

melakukan klasifikasi dengan tingkat akurasi diatas 80%.

Tahapan dalam melakukan proses klasifikasi naive bayes:

1. Menghitung jumlah kelas/label

2. Menghitung jumlah kasus per kelas

3. Mengalikan semua variabel kelas

4. Membandingkan hasil per kelas

Model klasifikasi naive bayes

PRAKTIKUM DATA MINING

Dimana variabel C merepresentasikan kelas, sementara variabel F1 … Fn merepresentasikan

karakteristik-karakteristik petunjuk yang dibutuhkan untuk melakukan klasifikasi. Maka 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), dikali dengan peluang kemunculan karakteristik-karakteristik sampel pada kelas

C (disebut juga likelihood), dibagi dengan peluang kemunculan karakteristik-karakteristik

sampel secara global (disebut juga evidence).

Bisa diartikan dengan

CONTOH PROGRAM DAN MATLAB

Berikut ini merupakan pola tekstur citra menggunakan algoritma naive bayes classifier. Citra

yang digunakan adalah citra tekstur Brodatz sejumlah 112 buah seperti tampak pada gambar di

bawah ini:

PRAKTIKUM DATA MINING

1. Lakukan ekstraksi Gray Lecel Co-Occurence Matrix setelah memindahkan folder Original Brodatz

ke dalam tempat penyimpanan yang sama

clc;clear;close all;

image_folder = 'Original Brodatz';

filenames = dir(fullfile(image_folder, '*.gif'));

total_images = numel(filenames);

for n = 1:total_images

full_name = fullfile(image_folder, filenames(n).name);

Img = imread(full_name);

GLCM = graycomatrix(Img,'Offset',[0 1; -1 1; -1 0; -1 -1]);

stats = graycoprops(GLCM,{'contrast','correlation','energy','homogeneity'});

CON(n) = mean(stats.Contrast);

CORR(n) = mean(stats.Correlation);

X = [CON;CORR]';

end

opts = statset('Display','final');

[idx,C] = kmeans(X,3,'Distance','sqeuclidean',...

'Replicates',5,'Options',opts);

figure;

plot(X(idx==2,1),X(idx==2,2),'r.','MarkerSize',24)

hold on

plot(X(idx==1,1),X(idx==1,2),'g.','MarkerSize',24)

plot(X(idx==3,1),X(idx==3,2),'b.','MarkerSize',24)

plot(C(:,1),C(:,2),'kx',...

'MarkerSize',15,'LineWidth',3)

legend('Cluster 1','Cluster 2','Cluster 3','Centroids',...

'Location','best')

title('Cluster Assignments and Centroids')

xlabel('Contrast')

ylabel('Correlation')

h = gca;

PRAKTIKUM DATA MINING

xlim(h.XLim+.5*[-1,1])

ylim(h.YLim+.5*[-1,1])

hold off

2. Buat kodingan untuk klasifikasi Naive Bayes

Y = cell(numel(idx),1);

for n = 1:numel(Y)

if idx(n,:) == 1

Y{n,:} = 'Cluster 1';

elseif idx(n,:) == 2

Y{n,:} = 'Cluster 2';

else

Y{n,:} = 'Cluster 3';

end

end

Mdl = fitcnb(X,Y);

figure

gscatter(X(:,1),X(:,2),Y);

h = gca;

xylim = [h.XLim h.YLim]; % Get current axis limits

hold on

Params = cell2mat(Mdl.DistributionParameters);

Mu = Params(2*(1:3)-1,1:2); % Extract the means

Sigma = zeros(2,2,3);

for j = 1:3

PRAKTIKUM DATA MINING

Sigma(:,:,j) = diag(Params(2*j,:)); % Extract the standard deviations

ezcontour(@(x1,x2)mvnpdf([x1,x2],Mu(j,:),Sigma(:,:,j)),...

xylim+0.5*[-1,1,-1,1]) ...

% Draw contours for the multivariate normal distributions

end

title('Naive Bayes Classifier')

xlabel('Contrast')

ylabel('Correlation')

legend('Cluster 1','Cluster 2','Cluster 3',...

'Location','best')

hold off

isLabels = resubPredict(Mdl);

accuracy = sum(strcmp(isLabels,Y))/numel(Y)*100

3. Sehingga tampilannya akan seperti ini

PRAKTIKUM DATA MINING

C. Instruksi Praktikum

-

top related