7
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.

MODUL PRAKTIKUM 4 NAIVE BAYES A. Tujuan Praktikan …lbi.si.fti.unand.ac.id/.../2018/09/Modul-Praktikum-4-Naive-Bayes.pdf · Metode klasifikasi ini diturunkan dari penerapan teorema

Embed Size (px)

Citation preview

Page 1: MODUL PRAKTIKUM 4 NAIVE BAYES A. Tujuan Praktikan …lbi.si.fti.unand.ac.id/.../2018/09/Modul-Praktikum-4-Naive-Bayes.pdf · Metode klasifikasi ini diturunkan dari penerapan teorema

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.

Page 2: MODUL PRAKTIKUM 4 NAIVE BAYES A. Tujuan Praktikan …lbi.si.fti.unand.ac.id/.../2018/09/Modul-Praktikum-4-Naive-Bayes.pdf · Metode klasifikasi ini diturunkan dari penerapan teorema

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

Page 3: MODUL PRAKTIKUM 4 NAIVE BAYES A. Tujuan Praktikan …lbi.si.fti.unand.ac.id/.../2018/09/Modul-Praktikum-4-Naive-Bayes.pdf · Metode klasifikasi ini diturunkan dari penerapan teorema

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:

Page 4: MODUL PRAKTIKUM 4 NAIVE BAYES A. Tujuan Praktikan …lbi.si.fti.unand.ac.id/.../2018/09/Modul-Praktikum-4-Naive-Bayes.pdf · Metode klasifikasi ini diturunkan dari penerapan teorema

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;

Page 5: MODUL PRAKTIKUM 4 NAIVE BAYES A. Tujuan Praktikan …lbi.si.fti.unand.ac.id/.../2018/09/Modul-Praktikum-4-Naive-Bayes.pdf · Metode klasifikasi ini diturunkan dari penerapan teorema

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

Page 6: MODUL PRAKTIKUM 4 NAIVE BAYES A. Tujuan Praktikan …lbi.si.fti.unand.ac.id/.../2018/09/Modul-Praktikum-4-Naive-Bayes.pdf · Metode klasifikasi ini diturunkan dari penerapan teorema

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

Page 7: MODUL PRAKTIKUM 4 NAIVE BAYES A. Tujuan Praktikan …lbi.si.fti.unand.ac.id/.../2018/09/Modul-Praktikum-4-Naive-Bayes.pdf · Metode klasifikasi ini diturunkan dari penerapan teorema

PRAKTIKUM DATA MINING

C. Instruksi Praktikum

-