LVQ Neural Network
clear all;
clc;
X=[20 31;
15 21;
40 43;
21 33;
99 91;
56 61;
82 71;
71 61]
T=[1;1;1;1;2;2;2;2];
W=[20 31;
10 9]
[m, n]=size(X);
[m1, n1]=size(W);
alfa=0.01;
decalfa=0.1;
minalfa=0.0000001;
maksiterasi=1000;
iterasi=0;
while ((iterasi <= maksiterasi) && (alfa>=minalfa)),
iterasi=iterasi+1;
for i=1:m,
for j=1:m1,
d(j)=0;
for k=1:n,
d(j)=d(j)+(X(i,k)-W(j,k))^2;
end,
d(j)=sqrt(d(j));
[jmin idx]=min(d);
if(idx==T(i))
W(idx,:)=W(idx,:)+alfa*(X(i,:)-W(idx,:));
else
W(idx,:)=W(idx,:)-alfa*(X(i,:)-W(idx,:));
end,
end,
end,
alfa=alfa-alfa*decalfa;
disp(strcat('Iterasi = ',int2str(iterasi),' Alfa = ',num2str(alfa)));
end,
W
P=[2 2;
1 1;
4 1;
3 2;
5 5;
4 6;
7 9;
11 9;
10 8;
9 11]
[m2, n2]=size(P);
H=[];
for i=1:m2,
for j=1:m1,
d(j)=0;
for k=1:n,
d(j)=d(j)+alfa*(P(i,k)-W(j,k))^2;
end,
d(j)=sqrt(d(j));
[jmin idx]=min(d);
end,
H=[H idx];
end,
H
0 Komentar untuk "LVQ Neural Network"