matlab练习程序(线性分类器<最小二乘>)

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

转载于:https://www.cnblogs.com/tiandsp/archive/2012/05/04/2483316.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值