算法实现步骤

给定一个增广的训练模式集 {y1,y2,⋅⋅⋅,yN},其中每个模式类别已知,它们分别属于w1类,w2类 \{ y_1,y_2,···,y_N \},其中每个模式类别已知,它们分别属于w_1类,w_2类:

  1. 给定初步数始值 K=0,令增量ρ=C,(C为正常数),给定初始增广权矢量W(0) K= 0,令增量\rho=C,(C为正常数),给定初始增广权矢量W(0)赋任意小的值;
  2. 输入训练模式 yK,计算判别函数值:W(K)T∗yK y_K,计算判别函数值:W(K)^T*y_K;
  3. 校正增广权矢量,校正规则是:
    若 yK∈w1和W(K)T∗yK≤0则:W(K+1)=W(K)+ρ∗yK y_K\in{w_1}和W(K)^T*y_K\le{0}则:W(K+1) = W(K)+\rho*y_K;
    若 yK∈w2和W(K)T∗yK≥0则:W(K+1)=W(K)−ρ∗yK y_K\in{w_2}和W(K)^T*y_K\ge{0}则:W(K+1) = W(K)-\rho*y_K;
    否则不需校正即: W(K+1)=W(K) W(K+1) = W(K).

    若 w2 w_2类各个分量乘 (−1), (-1),则校正规则为:
    W(K)T∗yK≤0则:W(K+1)=W(K)+ρ∗yK W(K)^T*y_K\le{0}则:W(K+1) = W(K)+\rho*y_K;

  4. 令 K=K+1 K = K+1,继续第二步,直到W对所有的样本均稳定不变,即对样本进行正确分类结束。

Matlab代码实现

clear all;
close all;
clc;%给定样本:
%w1 = (x1,x2) = {(0,0),(0,1)}
%w2 =(x3,x4)= {(1,0),(1,1)}
x1 = [0,0];x2 = [0,1];x3 = [1,0];x4 = [1,1];
%增广型训练模式集
y1 = [x1,1];y2 = [x2,1];y3 = [-x3,-1];y4 = [-x4,-1];
y = [y1;y2;y3;y4];
%给定初始权矢量,增量,步数
W = [1;1;1]; P = 1; K = 0;d = zeros(4,2000);%用来存储判别函数
for i = 1:2000for j = 1:4K = K + 1;d(j,i) = y(j,:)*W;if d(j,i) <= 0     W = W + y(j,:)';%当d<=0,需校正;d>0,不校正endendif d(:,i)>0    %迭代到所有训练样本的判别函数大于0时,结束迭代,输出解向量disp( '所求的解向量W为:');disp( num2str(W));breakend
end

结果图

感知器算法(perceptron algorithm)相关推荐

  1. 人工神经网络—感知器算法

    感知器算法 1. 回顾 2. 感知器算法 2.1 感知器算法的实现步骤 2.2 算法能停得下来吗? 2.3 基于增广向量的感知器算法 2.4 感知器算法收敛定理 3. 感知器算法收敛的MATLAB程序 ...

  2. 人工神经网络—感知器算法的意义

    感知器算法的意义 1. 回顾 2. 感知器算法的意义 2.1 机器学习算法的框架的提出 2.2 框架的介绍 2.3 感知器算法的优势 3. 结尾 参考资料 1. 回顾 在上一讲中,我们讲到了Rosen ...

  3. 感知器算法例题ppt_感知器算法.ppt

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp计算机&nbsp>&nbsp数据结构与算法 感知器算法.ppt14页 本文档一共被下载:次, ...

  4. 感知器算法例题ppt_感知器算法学习课件.ppt

    W的训练过程: 例如:x1, x2, x3∈ω1 作 x1, x3的垂直线可得解区(如图) 假设起始权向量w1=0 ρk = 1 1. x1, x2, x3三个矢量相加得矢量2,垂直于矢量2的超平面H ...

  5. Perceptron Algorithm 感知器算法及其实现

    Rosenblatt于1958年发布的感知器算法,算是机器学习鼻祖级别的算法.其算法着眼于最简单的情况,即使用单个神经元.单层网络进行监督学习(目标结果已知),并且输入数据线性可分.我们可以用该算法来 ...

  6. 感知器算法(Perceptron)

    目录 引言 感知器 Matlab代码 效果展示 Python代码 效果展示 C++代码 效果展示 引言 本专栏第二个机器学习算法:感知器算法,全部代码通过Github下载,使用Matlab,Pytho ...

  7. 感知器算法(PLA)

    PLA全称是Perceptron Linear Algorithm,简称PLA 原理 <统计学习基础> 李航 感知器是二分类的现行分类模型,其输入为实力的特征向量,输出为实例的类别,取+1 ...

  8. 【基础机器学习算法原理与实现】使用感知器算法LDA、最小二乘法LSM、Fisher线性判别分析与KNN算法实现鸢尾花数据集的二分类问题

    本文设计并实现了PerceptronLA.PseudoIA.LeastSM.LinearDA.KNN等五个算法类,以及DataProcessor的数据处理类.对感知器算法LDA.最小二乘法LSM的伪逆 ...

  9. 模式识别系列(一)感知器算法(PLA)

    目录 写在前头 1.感知器算法简介 2.Perceptron Learning Algorithm(PLA) 2.1权重向量和特征向量到分类面的距离 2.2PLA的原理和流程 2.3PLA的收敛性证明 ...

  10. 【模式识别】C++实现感知器算法

    一.问题描述 编写一个感知器算法程序,用此程序求解下列模式分类的解向量: ω1:{(0 0 0),(1 0 0),(1 0 1),(1 1 0)} ω2:{(0 0 1),(0 1 1),(0 1 0 ...

最新文章

  1. POJ Mayor's posters——线段树+离散化
  2. python序列化和反序列化
  3. python【力扣LeetCode算法题库】28-实现 strStr()
  4. 【Python基础知识-pycharm版】第一节-基础
  5. 别学了!这 5 种即将消亡的编程语言
  6. Python网络编程基础
  7. B站签约冯提莫,能否靠直播业务实现年入一百亿目标?
  8. Java Spring-注解进行属性注入
  9. 网页自动切换html css js,HTML页面自动清理js、css文件的缓存(自动添加版本号)_HTML/Xhtml_网页制作...
  10. Asp.Net 学习资源列表 [转]
  11. tracert查网络问题
  12. Mendix中Rest服务使用-调取服务器接口
  13. vue中el-calendar自定义日历控件
  14. openbsd运行Linux应用程序,OpenBSD上的服务管理程序rcctl
  15. [渝粤教育] 北京化工大学 自然辩证法概论 参考 资料
  16. C++: 猴子选大王
  17. 数值计算(三)-插值法(2)牛顿插值法
  18. 管理者的角色修炼-第一课总结
  19. hexo设置网站的图标Favicon
  20. oninput 、onpropertychange 、addEvent思考

热门文章

  1. 谷歌浏览器主页被挟持篡改2345www.dh012.com
  2. 停车还能360全方位影像_路虎(揽胜运动星脉极光发现)车主如何选购360全景安全辅助系统...
  3. 2017 ACM Arabella Collegiate Programming Contest A. Sherlock Bones GYM101350A
  4. 捷径智慧物业系统助力“书香小区”建设
  5. 摄像头拍摄视频,保存视频,并将视频保存为图片
  6. 力扣772 基本计算器 III
  7. ubuntu18.04系统中 matlab2019 和 sougou拼音冲突
  8. 双服务器架构实战飞桨部署-自动上色和老相片修复
  9. 朱善利《微观经济学》第3版课后习题答案
  10. 前端JSer装逼手册