“模式识别(三).PDF”课件课后上机选做作业参考解答 (武大计算机学院 袁志勇, Email: yuanzywhu@http://doc.docsou.com)

上机题目:

两类问题,已知四个训练样本ω1={(0,0)T,(0,1)T};ω2={(1,0)T,(1,1)T} 使用感知器固定增量法求判别函数。 设w1=(1,1,1)T ρk=1

试编写程序上机运行(使用MATLAB、 C/C++、C#、JAVA、DELPHI、PYTHON等任意一种语言编写),写出判别函数,并给出程序运行的相关运行图表。

这里采用MATLAB编写感知器固定增量算法程序。 一、感知器固定增量法的MATLAB函数编写

感知器固定增量法的具体内容请参考“模式识别(三).PDF”课件中的算法描述,可将该算法编写一个可以调用的自定义MATLAB函数:

% perceptronclassify.m %

% Caculate the optimal W by Perceptron %

% W1-3x1 vector, initial weight vector % Pk-scalar, learning rate

% W -3x1 vector, optimal weight vector % iters - scalar, the number of iterations %

% Created: May 17, 2010

function [W iters] = perceptronclassify(W1,Pk) x1 = [0 0 1]'; x2 = [0 1 1]'; x3 = [1 0 1]';

x4 = [1 1 1]';% the training sample Wk = W1;

FLAG = 0;% iteration flages iters = 0;

if Wk'*x1 <= 0 Wk = Wk + x1; FLAG = 1; end

if Wk'*x2 <= 0 Wk = Wk + x2; FLAG = 1; end

if Wk'*x3 >= 0 Wk=Wk-x3;

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐