Buatlah implementasi algoritma pembelajaran (supervised/unsupervised) dilanjutkan
pengenalan dengan mencari objek untuk diselesaikan dengan NN som / lvq, serta ujilah
unjukkerjannya, dengan ketentuan sebagai berikut :
1. Objek dapat diambil dari salah satu data multimedia (teks/image/audio/video).
2. Pilihlah salah satu jenis learning (supervised/unsupervised) yang sesuai dengan objek
yang saudara ambil dan berikan alasannya !
3. Buatlah pengujian unjukkerja NN dalam bentuk tabel !
4. Nyatakanlah kesimpulan dari pengujian unjukkerja NN yang saudara lakukan !
Catatan : Judul dan objek tidak boleh sama, bila ada yang sama maka mahasiswa yang
demo ke dua dan seterunya harus mengganti judul dan objek diberi waktu 1 x 24 jam.
Jawaban :
Step 1 : Cari Data Multimedia
Step 1 adalah step yang mungkin membingungkan bagi mahasiswa yang belum mengambil mata kuliah multimedia, karna di sini kita akan menggunakan script dan citra dari tugas yang di kerjakan di mata kuliah multimedia. Namun di sini sekilas saya jelaskan cara mendapatkan data multimedia tersebut. Saya mencontohkan data multimedia image, untuk contoh kali ini sample yang saya gunakan adalah citra cat kayu dan cat tembok (setiap orang berbeda-beda objeknya)
kayu1.PNG
tembok1.PNG
Buatlah masing-masing 10 gambar untuk citra kayu dan citra tembok (foto masing2 10 kali, ukuran pixel harus sama semua)
*penamaan file
kayu1.PNG, kayu2.PNG, kayu3.PNG, kayu4.PNG, kayu5.PNG, kayu6.PNG, kayu7.PNG, kayu8.PNG, kayu9.PNG, kayu10.PNG,tembok1.PNG, tembok2.PNG, tembok3.PNG, tembok4.PNG, tembok5.PNG, tembok6.PNG, tembok7.PNG, tembok8.PNG, tembok9.PNG, tembok10.PNG.
clear all;
clc;
%load data
data= imread ('namafile.PNG');
%Preprosesing
R=data(:,:,1);
G=data(:,:,2);
B=data(:,:,3);
Y=0.3333*R+0.3333*B+0.3333*G;
[m,n]=size(Y);
%ekstraksi ciri
for i=1:256
H(i)=0;
end,
%Histogram
for i=1:m,
for j=1:n,
X=Y(i,j);
H(X+1)=H(X+1)+1;
end,
end,
H
jumlah=0;
jum=0;
for i=1:256
jumlah=jumlah+(i*H(i))
jum=jum+H(i)
end,
jumlah
jum
rata2=jumlah/jum
jums=0;
for i=1:256
jums=jums+(H(i)-rata2)^2;
end,
sd=sqrt(jums/jum)
%featur vektor
fv=[rata2 sd]
save data_latih.txt fv -ascii -append;
Ganti namafile.PNG satu persatu sesuai nama file citra yang tadi sudah di buat. Script di atas akan memasukan data latih ke file data_latih.txt
Setelah kita memiliki data latih, buat juga data uji dengan script berikut yang akan men save di notepad dengan nama data_uji.txt
clear all;
clc;
%load data
data = imread(namafile.PG);
%preprocessing
R=data(:,:,1);
G=data(:,:,2);
B=data(:,:,3);
%greyscale
Y=0.3333*R+0.3333*G+0.3333*B;
[m,n]=size(Y);
%histogram (extraciri)
for i=1:256
H(i)=0;
end,
for i=1:m,
for j=1:n,
X=Y(i,j);
H(X+1)=H(X+1)+1; %histogram
end,
end,
jumlah=0;
jum=0;
for i=1:256
jumlah=jumlah+(i*H(i));
jum=jum+H(i);
end,
%plot(H);
rata2=0;
rata2=jumlah/jum;
rata2;
jums=0;
for i=1:256,
jums=jums+(H(i)-rata2)^2; %varian
end,
sd=0;
sd=sqrt(jums/jum) %standart
deviasi = akar dari varian
fv=[rata2 sd]
save data_uji.txt fv -ascii -append;
Step 2 : Menerapkan Pada LVQ
Disini kita mahasiswa yang baru ambil matkul NN bisa beraksi! data multimedia yang kita dapat kita olah dengan salah 1 algoritma, boleh LVQ atau SOM. Tapi di sini saya memberikan contoh LVQ. Masukan data multimedia tadi ke script LVQ, untuk running yang pertama, setting alfanya 0.1 dan decalfanya 0.1 sehingga menjadi seperti di bawah ini :
clear all;
clc;
%input
A=[1.0268340e+002 6.2430867e+001;
1.0605637e+002 4.4035468e+001;
1.0420857e+002 4.7530232e+001;
1.0477787e+002 4.2006328e+001;
9.8396967e+001 4.9574582e+001;
9.9320000e+001 5.8655016e+001;
1.0448180e+002 4.3705126e+001;
1.0086790e+002 5.5151028e+001;
9.9524167e+001 5.4051330e+001;
1.0956017e+002 5.4150250e+001;
9.7954500e+001 4.2211307e+001;
9.0529500e+001 4.3503046e+001;
1.0171353e+002 3.9645043e+001;
8.3644967e+001 5.1684857e+001;
9.1365967e+001 4.4345647e+001;
8.6834533e+001 4.3218842e+001;
8.4182567e+001 4.8344563e+001;
9.4531500e+001 4.6269587e+001;
1.1036353e+002 5.0253160e+001;
9.5603800e+001 4.9139521e+001]
[m n]=size(A)
%target
B=[1;
1;
1;
1;
1;
1;
1;
1;
1;
1;
2;
2;
2;
2;
2;
2;
2;
2;
2;
2]
%bobot
W=[ 9.9320000e+001 5.8655016e+001;
8.3644967e+001 5.1684857e+001;]
[o p]=size(W);
%Parameter Pelatihan
alfa=0.1;
decalfa=0.1;
minalfa=0.0000001;
maxiterasi=1000;
iterasi=0;
%Jarak vektor input dengan masing - masing referensi
while (iterasi<=maxiterasi) && (alfa>=minalfa)
iterasi=iterasi+1;
for i=1:m
for c=1:o
jarak(c)=0;
for j=1:n
jarak(c)=jarak(c)+(A(i,j)-W(c,j))^2;
end,
jarak(c)=sqrt(jarak(c));
[jarakmin idx]=min(jarak);
end,
if(idx==B(i))
W(idx,:)=W(idx,:)+alfa*(A(i,j)-W(idx,:));
else
W(idx,:)=W(idx,:)-alfa*(A(i,j)-W(idx,:));
end,
end,
alfa=alfa-alfa*decalfa;
disp(strcat('iterasi= ',int2str(iterasi),' alfa = ',num2str(alfa)));
end,
W
A=[1.0268340e+002 6.2430867e+001;
1.0605637e+002 4.4035468e+001;
1.0420857e+002 4.7530232e+001;
1.0477787e+002 4.2006328e+001;
9.8396967e+001 4.9574582e+001;
9.9320000e+001 5.8655016e+001;
1.0448180e+002 4.3705126e+001;
1.0086790e+002 5.5151028e+001;
9.9524167e+001 5.4051330e+001;
1.0956017e+002 5.4150250e+001;
8.1367900e+001 5.3458141e+001;
9.2078700e+001 5.3664248e+001;
7.5791833e+001 5.2643298e+001;
7.8532633e+001 5.4369858e+001;
6.8795400e+001 5.7681692e+001;
9.2674333e+001 5.0284997e+001;
8.8861667e+001 4.6362796e+001;
7.7132033e+001 5.2787523e+001;
7.9763233e+001 5.5667793e+001;
8.2584033e+001 5.4447192e+001]
[a b]=size(A);
H=[];
Djarak=[];
for i=1:a,
for z=1:o,
d(z)=0;
for j=1:b,
d(z)=d(z)+ (A(i,j)-W(z,j))^2;
end,
d(z)=sqrt(d(z));
[jarak idx]=min(d);
end,
H=[H idx];
Djarak=[Djarak jarak];
end,
H
Setelah di run akan muncul seperti berikut (hasil masing-masing run berbeda untuk H nya, yang saya seperti di bawah ini) :
Ubah alfa dan decalfanya sehingga tabelnya terpenuhi semua
Untuk Kumulatif di isi dengan rumus :
Sehingga untuk alfa 0.1 dan decalfa 0.1 kumulatifnya : (100+30)/2 = 65.
Step 3 : Membuat Kesimpulan
Untuk kesimpulan pak dosen sudah memberikan format pokoknya, namun yang paling penting untnuk di perhatikan adalah kita mencari iterasi terkecil. Setelah semua tabel terisi, carilah iterasi terkecil, jika sudah kamu bisa membuat kesimpulan dengan mengisi format kesimpulan yang di telah di berikan seperti berikut ini :
Dari tabel uji di dapat hasil terbaik di decalfa .... dan
alfa .... dengan iterasi terkecil yakni .... dengan hasil komulatif .....% Didapat
hasil pada kelas 1 (nama objek 1) ....%, kelas 2 (nama objek 2) ....%
1 Komentar untuk "Cara Mengerjakan Soal UAS Neural Network"
kalo metode ART ada gak gan ?