zoukankan      html  css  js  c++  java
  • perceptron感知机 mtalab

    data=load('data.txt');
    x=[data(:,1),data(:,2)];
    y=data(:,3);
    k=length(y);
    
    %绘制散点图
    for j=1:k
        if y(j)==1
            plot(x(j,1),x(j,2),'o');
            hold on
        end
        if y(j)==-1
            plot(x(j,1),x(j,2),'x');
            hold on
        end
    end
    
    %初始化参数
    w=[0,0];
    b=0;
    r=0.5; %学习速度
    con=0;
    t=0;  %记录迭代次数
    br=[];  %记录b的变化
    wr=[];  %记录w的变化
    
    while con==0
        for i=1:k
            if (y(i)*(dot(w,x(i,:))+b))<=0  %判断是否分类错误
                w(1)=w(1)+r*y(i)*x(i,1);
                w(2)=w(2)+r*y(i)*x(i,2);
                b=b+r*y(i);
                w=[w(1),w(2)];
                wr=[wr,w];
                br=[br,b];
                t=t+1;
            end
        end
        
        for i=1:k
            con1(i)=(y(i)*(dot(w,x(i,:))+b));
        end
        con=(all(con1(:)>0));
    end
    
    xt=0:0.1:10;
    yt=(-w(1)*xt-b)/w(2);
    plot(xt,yt);
    

      

      数据:

    1.2435 4.1728 -1.0000
    1.3435 6.6935 -1.0000
    1.4435 5.6401 -1.0000
    1.5435 3.7946 -1.0000
    1.6435 4.2596 -1.0000
    1.7435 6.2168 -1.0000
    1.8435 5.1952 -1.0000
    1.9435 4.7744 -1.0000
    2.0435 3.6288 -1.0000
    2.1435 5.6932 -1.0000
    2.2435 6.1607 -1.0000
    8.2858 5.0430 1.0000
    8.3858 6.1396 1.0000
    8.4858 4.8663 1.0000
    8.5858 3.1537 1.0000
    8.6858 5.7617 1.0000
    8.7858 4.8398 1.0000
    8.8858 6.4166 1.0000
    8.9858 5.7650 1.0000
    9.0858 4.0198 1.0000
    9.1858 5.3157 1.0000
    9.2858 4.8547 1.0000

    运行结果:

     

    朝闻道
  • 相关阅读:
    byvoid
    soa文章摘抄
    也谈设计模式,架构,框架和类库的区别
    GoF设计模式三作者15年后再谈模式
    陈梓涵:我们为什么要学习设计模式
    陈梓涵:关于编程的胡扯
    hung task机制
    iscsi target tgt架构
    iscsi target IET架构
    ISCSI工作流程target和initiator
  • 原文地址:https://www.cnblogs.com/wander-clouds/p/8845876.html
Copyright © 2011-2022 走看看