感知器算法----Matlab实现
来源:互联网 发布:抓阄软件 编辑:程序博客网 时间:2024/05/21 09:40
data=[0 0 -1;0 1 1 ; -1 0 1 ; 1 1 -1];X = data(:, [1, 2]); y = data(:, 3);m = size(X,1); plotData2(X,y);X = [ones(m,1) X];error = 1;W=[0;0;0];first = 1;tim=0;alph=0.1;hold onaxis([-2 2 -2 2]);x1=-2:0.2:2;while error>0 error=0; for i = 1:m if ( ((W'*(X(i,:)'))*y(i) <= 0 )|| (first == 1) ) first=0; error=error+1; tim=tim+1; W = W + alph*(X(i,:))'*y(i); fprintf('%d\n',tim); if W(3)~=0 && W(2)~=0 y1=-(W(1)/W(3)+W(2)*x1/W(3)); plot(x1,y1,'-b'); end; end; end; end; if W(3)~=0 && W(2)~=0 y1=-(W(1)/W(3)+W(2)*x1/W(3)); plot(x1,y1,'r'); end; hold off function plotData2(X, y)figure; hold on;pos = find(y==1) ;neg = find(y==-1);fprintf('%d\n\n',pos);fprintf('%d\n',neg);% Plot Examplesplot(X(pos, 1), X(pos, 2), 'k+','LineWidth', 2, ... 'MarkerSize', 9);plot(X(neg, 1), X(neg, 2), 'ko', 'MarkerFaceColor', 'r', ... 'MarkerSize', 7);hold off;end
效果是这样的:
权值为:
-0.100000000000000
-0.300000000000000
0.200000000000000
阅读全文
1 0
- 感知器算法----Matlab实现
- matlab实现感知器学习算法
- Fisher线性判别与感知器算法Matlab实现
- Fisher线性判别与感知器算法Matlab实现
- 基于简单感知器分类算法(matlab实现)
- 感知机算法的matlab实现
- 单层感知器的MATLAB实现
- 单层感知器的MATLAB实现
- matlab实现简单的感知器分类
- 感知器算法及其实现
- python实现感知器算法
- 用matlab实现感知机学习算法,训练分类器并解决井字游戏
- 用matlab实现感知机学习算法,训练分类器并解决井字游戏
- 神经网络之感知器算法简单介绍和MATLAB简单实现
- 感知机(perceptron)算法与MATLAB实现
- MATLAB 感知机简单实现
- 感知机的matlab实现
- 感知器算法——C++实现
- 图文演示关于系统流程图如何制作的使用方法
- WIN10 FOR mysql-5.7.18安装,MySQL服务无法启动
- Java static{} 语句详解
- 什么是BI、ETL、DW
- Java Web 3.2.3课后思考
- 感知器算法----Matlab实现
- Codeforces 474F(分块)
- Hadoop2.6.4运行Wordcount程序
- 属性动画AnimatorDemo
- Android基于线性加速度计的惯性导航
- 什么是手机App界面设计规范?
- 框架超强辅助,逆向工程生成器
- sublime设置了build system但是使用automatic提示no build system问题
- HBase工具之BulkLoad