clear all;
close all;
clc;
num=4; %元素数量
k=180; %迭代次数
step=0.1; %迭代步长
w(1,:)=[-0.5 1 1]; %权值
x=[1 0 0; %输入的值,每行为一组
1 1 0;
1 0 1;
1 1 1];
d=[1 0 1 0]; %实际输出的值
y=zeros(1,num); %迭代输出的值 y=w0+w1x1+w2x2
e=zeros(1,k); %均方误差
for j=1:k
tmp_2=0;
for i=1:num
y(i)=w(j,:)*x(i,:)';
tmp_2=tmp_2+(d(i)-y(i)).^2;
end
e(j)=0.5*tmp_2;
for i=1:3
w(j+1,i)=w(j,i)+step*(d-y)*x(:,i); %迭代得到新的权值
end
end
plot(e);
参考:
1.http://read.pudn.com/downloads102/ebook/420359/chapter%203/3.doc