模式识别第三章-感知器算法
模式识别复习资料答案

一、感知器算法流程图:二、矩阵分解的方法:所谓矩阵分解,就是将一个矩阵写成结构比较简单的或性质比较熟悉的另一些矩阵的乘积。
其分解的方法有很多种,常用的有三角分解、QR 分解、奇异值分解。
三角分解定义:如果方阵A 可分解成一个下三角形矩阵L 和上三角形矩阵U 的的乘积,则称A 可作三角分解或LU 分解。
QR 分解(正交分解)定义:如果实(复)非奇异矩阵A 能化成正交(酉)矩阵Q 与实(复)非奇异上三角矩阵R 的乘积,即A=QR ,则称上式为A 的QR 分解。
奇异值分解定理:设A 是一个m n ⨯的矩阵, 且()r A r =,则存在m 阶酉矩阵U 和n 阶酉矩阵V ,使得000H U AV ⎛⎫⎪= ⎪ ⎪⎝⎭∑ (2), 其中,1()rdiag σσ=∑L ,且120r σσσ≥≥≥≥L 。
由(2)知000H A U V ⎛⎫⎪= ⎪ ⎪⎝⎭∑ (3), 该式称为A 的奇异值分解,(1,2,)i i r σ=L ,称为A 的奇异值,U 的第i 列称为A 对应i σ的左奇异向量,V 的第i 列称为A 对应的i σ右奇异向量。
三、非负矩阵分解:在NMF 中要求原始的矩阵V 的所有元素的均是非负的,那么矩阵V 可以分解为两个更小的非负矩阵的乘积,这个矩阵V 有且仅有一个这样的分解,即满足存在性和唯一性。
分解方法:已知数据举矩阵V 和所能忍受的误差e ,求非负分解矩阵W ,H 。
(1) 随机初始化矩阵,要求非负;(2) 应用迭代公式进行迭代。
如果噪声服从高斯分布,则根据式()()Tik ik ikTikVH W W WHH ←g和式()()T kjkj kj TkjW V H H W WH ←g进行,如果噪声服从Poisson 分布,则根据式()kj ijij jik ik kjjH VWH W W H⎡⎤⎣⎦←∑∑g和 ()ik ikijikj kjik iW V WH H H W⎡⎤⎣⎦←∑∑g进行;(3)当||||V WH -误差小于e 时,或者达到最大迭代次数时,停止迭代。
感知器算法的基本原理与应用

感知器算法的基本原理与应用感知器算法是一种简单而有效的机器学习算法,于1957年被Frank Rosenblatt所提出。
在过去几十年里,感知器算法一直被广泛应用在识别模式,分类数据和垃圾邮件过滤等领域。
本文将会介绍感知器算法的基本原理,如何使用感知器完成模式分类,以及如何优化感知器算法。
感知器算法的基本原理感知器算法基于神经元(Perceptron)模型构建,神经元模型的基本原理是对输入信号进行加权,然后通过激活函数的计算输出结果。
通常情况下,神经元被认为是一个输入层节点,一个或多个输入是接收的,以及一个输出层。
感知器算法的核心思想是,给定一组输入和对应的输出(通常成为标签),通过多个迭代来调整模型中的权重,以最大限度地减少模型的误差,并尽可能准确地预测未知输入的输出。
感知器算法的主要流程如下:1. 初始化感知器参数,包括权重(最初为随机值)和偏置(通常为零)。
2. 对于每个输入,计算预测输出,并将预测输出与实际标签进行比较。
3. 如果预测输出与实际标签不同,则更新权重和偏置。
更新规则为$\omega_{j} \leftarrow \omega_{j} + \alpha(y-\hat{y})x_{j}$,其中$x_{j}$是输入的第$j$个特征,$\alpha$是学习率(控制权重和偏置的更新量),$y$是实际标签,而$\hat{y}$是预测输出。
4. 重复步骤2和步骤3,直到满足停止条件(例如,经过N次重复迭代后误差不再显著降低)。
如何使用感知器完成分类让我们考虑一个简单的情况:我们要学习使用感知器进行两类别(正面和负面)的文本情感分类。
我们可以将文本转换为一组数字特征,例如文本中出现特定单词的频率或数量,并将每个文本的情感作为输入,正面或负面情感被记为1或0。
我们可以将感知器视为一个二元分类器,用它来预测每个输入文本的情感值。
对于每个输入,我们计算出感知器的输出,并将其与实际情感进行比较。
如果它们没有匹配,那么我们将使用上面提到的更新规则调整每个特征的权重,重复该过程,直到达到收敛为止。
模式识别例题

1.感知器算法已知两类训练样本,(0,0),(0,1)属于w1,(1,0),(1,1)属于w2,试用感知器算法求解w*训练样本分量增广化以及符号规范化。
将训练样本增加一个分量1,且把来自w2的样本各分量乘以-1,得到训练模式集x1=(0,0,1), x2=(0,1,1), x3=(-1,0,-1), x4=(-1,-1,-1)运用训练算法,给权向量赋初值w(1)=(1,1,1)T,取增量c=1,置迭代步数k=1,下面是迭代过程K=1,x m=x1,w(k)T x m=1>0,w(2)=w(1)K=2, x m=x2,w(k)T x m=2>0,w(3)=w(2)K=3, x m=x3,w(k)T x m=-2<0,w(4)=w(3)+ x3=(0,1,0)TK=4, x m=x4,w(k)T x m=-1<0,w(5)=w(4)+ x4=(-1,0,-1)TK=5, x m=x1,w(k)T x m=-1<0,w(6)=w(5)+ x1=(-1,0,0)TK=6, x m=x2,w(k)T x m=0,w(7)=w(6)+ x2=(-1,1,1)TK=7, x m=x3,w(k)T x m=0,w(8)=w(7)+ x3=(-2,1,0)TK=8, x m=x4,w(k)T x m=1>0,w(9)=w(8)K=9,x m=x1,w(k)T x m=0,w(10)=w(9) + x1=(-2,1,1)TK=10, x m=x2,w(k)T x m=2>0,w(11)=w(10)K=11, x m=x3,w(k)T x m=1>0,w(12)=w(11)K=12, x m=x4,w(k)T x m=0,w(13)=w(12)+ x4=(-3,0,0)TK=13, x m=x1,w(k)T x m=0,w(14)=w(13)+ x1=(-3,0,1)TK=14, x m=x2,w(k)T x m=1>0,w(15)=w(14)K=15, x m=x3,w(k)T x m=2>0,w(16)=w(15)K=16, x m=x4,w(k)T x m=2>0,w(17)=w(16)K=17, x m=x1,w(k)T x m=1>0,w(18)=w(17)通过上面的结果可以看出,经过对x1, x2, x3, x4一轮迭代后,使用w(14)已经能够对所有训练样本正确分类,增广权矢量的值不再发生变化,所以算法收敛于w(14),w(14)就是所求的解向量,即w*=(-3,0,1)T。
感知器算法

武汉理工大学理学院统计学系课程实验报告米用上面(5)中①②③的步骤,利用 MATLAB®程即可以实现感知器算法。
这里以一组二维的数据点为例。
随机生成 15个横纵坐标均在(0,1)之间的 点,与15个横纵坐标都在(2, 3)之间的点,共30个数据点,显然这两类点 是线性可分的,故可以采用感知器算法进行分类。
MATLAB^码如下: %感知器实 验 结 果及 分 析plot(x,y,'k'); %做出分界的直线xlabel('X');ylabel('Y');title('两类样本点');legend(第一类','第二类','分界直线'); 其中几次运算的结果如下:alpha =4.0000 -1.3939 -2.5368即直线的方程为:4 - 1.3939X - 2.5368y = 0迭代的次数为:8两类样本点alpha =4.0000 -1.4657 -1.4105即直线的方程为:4.0000 -1.4657X T.4105y = 0迭代的次数为:8从得到的结果来,对于线性可分的情形,感知器算法分类的效果还是比较好的,可以较为明显地把两类样本分开,而且迭代的次数为8,说明算法的收敛速度还是比较快的。
但是值得注意的是,感知器仅仅可以用于线性可分的样本的分类,对于线性不可分的情形,它是无能为力的。
所以在实际应用中,直接使用感知器算法的场合并不多,但是,它是很多复杂的算法的基础,比如支持向量机、人工神经网络等,所以从这这一点上来说,理解并掌握感知器算法还是十分有必要且重要的。
模式识别感知器算法求判别函数

模式识别感知器算法求判别函数
y = sign(w · x + b)
其中,y表示分类结果(1代表一个类别,-1代表另一个类别),x 表示输入特征向量,w表示权重向量,b表示偏置项,sign表示取符号函数。
判别函数的求解过程主要包括以下几个步骤:
1.初始化权重向量和偏置项。
一般可以将它们设置为0向量或者随机向量。
2.遍历训练集中的所有样本。
对于每个样本,计算判别函数的值。
4.如果分类错误,需要调整权重和偏置项。
具体做法是使用梯度下降法,通过最小化误分类样本到超平面的距离来更新权重和偏置项。
对于权重向量的更新,可以使用如下公式:
w(t+1)=w(t)+η*y*x
对于偏置项的更新,可以使用如下公式:
b(t+1)=b(t)+η*y
5.重复步骤2和步骤4,直到所有样本都分类正确或达到停止条件。
需要注意的是,如果训练集中的样本不是线性可分的,则判别函数可能无法达到100%的分类准确率。
此时,可以通过增加特征维度、使用非线性变换等方法来提高分类效果。
总结起来,模式识别感知器算法通过判别函数将输入数据分类为两个类别。
判别函数的求解过程是通过调整权重向量和偏置项,使用梯度下降法最小化误分类样本到超平面的距离。
这个过程是一个迭代的过程,直到所有样本都分类正确或达到停止条件。
模式识别习题解答第三章

题1:在一个10类的模式识别问题中,有3类单独满足多类情况1,其余的类别满足多类情况2。
问该模式识别问题所需判别函数的最少数目是多少?答:将10类问题可看作4类满足多类情况1的问题,可将3类单独满足多类情况1的类找出来,剩下的7类全部划到4类中剩下的一个子类中。
再在此子类中,运用多类情况2的判别法则进行分类,此时需要7*(7-1)/2=21个判别函数。
故共需要4+21=25个判别函数。
题2:一个三类问题,其判别函数如下:d1(x)=-x1, d2(x)=x1+x2-1, d3(x)=x1-x2-11.设这些函数是在多类情况1条件下确定的,绘出其判别界面和每一个模式类别的区域。
2.设为多类情况2,并使:d12(x)= d1(x), d13(x)= d2(x), d23(x)= d3(x)。
绘出其判别界面和多类情况2的区域。
3.设d1(x), d2(x)和d3(x)是在多类情况3的条件下确定的,绘出其判别界面和每类的区域。
答:三种情况分别如下图所示:1.2.3.题3:两类模式,每类包括5个3维不同的模式,且良好分布。
如果它们是线性可分的,问权向量至少需要几个系数分量?假如要建立二次的多项式判别函数,又至少需要几个系数分量?(设模式的良好分布不因模式变化而改变。
)答:(1)若是线性可分的,则权向量至少需要14N n =+=个系数分量; (2)若要建立二次的多项式判别函数,则至少需要5!102!3!N ==个系数分量。
题4:用感知器算法求下列模式分类的解向量w : ω1: {(0 0 0)T, (1 0 0)T, (1 0 1)T, (1 1 0)T} ω2: {(0 0 1)T, (0 1 1)T, (0 1 0)T, (1 1 1)T}解:将属于2w 的训练样本乘以(1)-,并写成增广向量的形式x1=[0 0 0 1]',x2=[1 0 0 1]',x3=[1 0 1 1]',x4=[1 1 0 1]';x5=[0 0 -1 -1]',x6=[0 -1 -1 -1]',x7=[0 -1 0 -1]',x8=[-1 -1 -1 -1]';迭代选取1C =,(1)(0,0,0,0)w '=,则迭代过程中权向量w 变化如下:(2)(0 0 0 1)w '=;(3)(0 0 -1 0)w '=;(4)(0 -1 -1 -1)w '=;(5)(0 -1 -1 0)w '=;(6)(1 -1 -1 1)w '=;(7)(1 -1 -2 0)w '=;(8)(1 -1 -2 1)w '=;(9)(2 -1 -1 2)w '=; (10)(2 -1 -2 1)w '=;(11)(2 -2 -2 0)w '=;(12)(2 -2 -2 1)w '=;收敛所以最终得到解向量(2 -2 -2 1)w '=,相应的判别函数为123()2221d x x x x =--+。
(完整word版)模式识别习题解答第三章(word文档良心出品)

题1:在一个10类的模式识别问题中,有3类单独满足多类情况1,其余的类别满足多类情况2。
问该模式识别问题所需判别函数的最少数目是多少?答:将10类问题可看作4类满足多类情况1的问题,可将3类单独满足多类情况1的类找出来,剩下的7类全部划到4类中剩下的一个子类中。
再在此子类中,运用多类情况2的判别法则进行分类,此时需要7*(7-1)/2=21个判别函数。
故共需要4+21=25个判别函数。
题2:一个三类问题,其判别函数如下:d1(x)=-x1, d2(x)=x1+x2-1, d3(x)=x1-x2-11.设这些函数是在多类情况1条件下确定的,绘出其判别界面和每一个模式类别的区域。
2.设为多类情况2,并使:d12(x)= d1(x), d13(x)= d2(x), d23(x)= d3(x)。
绘出其判别界面和多类情况2的区域。
3.设d1(x), d2(x)和d3(x)是在多类情况3的条件下确定的,绘出其判别界面和每类的区域。
答:三种情况分别如下图所示:1.2.3.题3:两类模式,每类包括5个3维不同的模式,且良好分布。
如果它们是线性可分的,问权向量至少需要几个系数分量?假如要建立二次的多项式判别函数,又至少需要几个系数分量?(设模式的良好分布不因模式变化而改变。
)答:(1)若是线性可分的,则权向量至少需要14N n =+=个系数分量; (2)若要建立二次的多项式判别函数,则至少需要5!102!3!N ==个系数分量。
题4:用感知器算法求下列模式分类的解向量w : ω1: {(0 0 0)T, (1 0 0)T, (1 0 1)T, (1 1 0)T} ω2: {(0 0 1)T, (0 1 1)T, (0 1 0)T, (1 1 1)T}解:将属于2w 的训练样本乘以(1)-,并写成增广向量的形式x1=[0 0 0 1]',x2=[1 0 0 1]',x3=[1 0 1 1]',x4=[1 1 0 1]';x5=[0 0 -1 -1]',x6=[0 -1 -1 -1]',x7=[0 -1 0 -1]',x8=[-1 -1 -1 -1]';迭代选取1C =,(1)(0,0,0,0)w '=,则迭代过程中权向量w 变化如下:(2)(0 0 0 1)w '=;(3)(0 0 -1 0)w '=;(4)(0 -1 -1 -1)w '=;(5)(0 -1 -1 0)w '=;(6)(1 -1 -1 1)w '=;(7)(1 -1 -2 0)w '=;(8)(1 -1 -2 1)w '=;(9)(2 -1 -1 2)w '=; (10)(2 -1 -2 1)w '=;(11)(2 -2 -2 0)w '=;(12)(2 -2 -2 1)w '=;收敛所以最终得到解向量(2 -2 -2 1)w '=,相应的判别函数为123()2221d x x x x =--+。
模式识别作业第三章2

第三章作业3.5 已知两类训练样本为设,用感知器算法求解判别函数,并绘出判别界面。
解:matlab程序如下:clear%感知器算法求解判别函数x1=[0 0 0]';x2=[1 0 0]';x3=[1 0 1]';x4=[1 1 0]';x5=[0 0 1]';x6=[0 1 1]';x7=[0 1 0]';x8=[1 1 1]';%构成增广向量形式,并进行规范化处理x=[0 1 1 1 0 0 0 -1;0 0 0 1 0 -1 -1 -1;0 0 1 0 -1 -1 0 -1;1 1 1 1 -1 -1 -1 -1];plot3(x1(1),x1(2),x1(3),'ro',x2(1),x2(2),x2(3),'ro',x3(1),x3(2),x3( 3),'ro',x4(1),x4(2),x4(3),'ro');hold on;plot3(x5(1),x5(2),x5(3),'rx',x6(1),x6(2),x6(3),'rx',x7(1),x7(2),x7( 3),'rx',x8(1),x8(2),x8(3),'rx');grid on;w=[-1,-2,-2,0]';c=1;N=2000;for k=1:Nt=[];for i=1:8d=w'*x(:,i);if d>0w=w;t=[t 1];elsew=w+c*x(:,i);t=[t -1];endendif i==8&t==ones(1,8)w=wsyms x yz=-w(1)/w(3)*x-w(2)/w(3)*y-1/w(3);ezmesh(x,y,z,[0.5 1 2]);axis([-0.5,1.5,-0.5,1.5,-0.5,1.5]); title('感知器算法')break;elseendend运行结果:w =3-2-31判别界面如下图所示:若有样本;其增广;则判别函数可写成:若,则,否则3.6 已知三类问题的训练样本为试用多类感知器算法求解判别函数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
模式识别第三章
感知器算法
一.用感知器算法求下列模式分类的解向量w :
})0,1,1(,)1,0,1(,)0,0,1(,)0,0,0{(:1T T T T ω
})1,1,1(,)0,1,0(,)1,1,0(,)1,0,0{(:2T T T T ω
将属于2ω的训练样本乘以(-1),并写成增广向量的形式:
T x )1,0,0,0(1 =,T x )1,0,0,1(2=,T x )1,1,0,1(3=,T x )1,0,1,1(4 =
T x )1,1-,0,0(5-=,T x )1,1-,1-,0(6-=,T x )1,0,1-,0(7-=,T x )1,1-,1-,1-(8-= 第一轮迭代:取1=C ,T )0,0,0,0()1(=ω
因0)1,0,0,0)(0,0,0,0()1(1==T T x ω不大于0,故T x )1,0,0,0()1()2(1=+=ωω 因1)1,0,0,1)(1,0,0,0()2(2==T T x ω大于0,故T )1,0,0,0()2()3(==ωω 因1)1,1,0,1)(1,0,0,0()3(3==T T x ω大于0,故T )1,0,0,0()3()4(==ωω 因1)1,0,1,1)(1,0,0,0()4(4==T T x ω大于0,故T )1,0,0,0()4()5(==ωω 因1)1,1-,0,0)(1,0,0,0()5(5-=-=T T x ω不大于0,故T x )0,1-,0,0()5()6(5 =+=ωω 因1)1,1-,1-,0)(0,1-,0,0()6(6=-=T T x ω大于0,故T )0,1-,0,0()6()7(==ωω 因0)1,0,1-,0)(0,1-,0,0()7(7=-=T T x ω不大于0,故T x )1-,1-,1,0()7()8(7-=+=ωω 因3)1,1-,1-,1-)(1-,1-,1,0()8(8=--=T T x ω大于0,故T )1-,1-,1,0()8()9(-==ωω 第二轮迭代:
因1)1,0,0,0)(1-,1-,1,0()9(1-=-=T T x ω不大于0,故T x )0,1-,1,0()9()10(1-=+=ωω 因0)1,0,0,1)(0,1-,1-,0()10(2==T T x ω不大于0,故T x )1,1,1,1()10()11(2--=+=ωω 因1)1,1,0,1)(1,1,1,1()11(3=--=T T x ω大于0,故T )1,1,1,1()11()12(--==ωω 因1)1,0,1,1)(1,1,1,1()12(4=--=T T x ω大于0,故T
)1,1,1,1()12()13(--==ωω
因0)1,1-,0,0)(1,1,1,1()13(5=---=T T x ω不大于0,故T x )0,2,1,1()13()14(5--=+=ωω 因3)1,1-,1-,0)(0,2,1,1()14(6=---=T T x ω大于0,故T )0,2,1,1()14()15(--==ωω
因1)1,0,1-,0)(0,2,1,1()15(7=---=T T x ω大于0,故T )0,2-,1-,1()15()16(==ωω
因2)1,1-,1-,1-)(0,2-,1-,1()16(8=-=T T x ω大于0,故T )0,2-,1-,1()16()17(==ωω
第三轮迭代:
因0)1,0,0,0)(0,2-,1,1()17(1=-=T T x ω不大于0,故T x )1,2,1,1()17()18(1--=+=ωω 因2)1,0,0,1)(1,2-,1-,1()18(2==T T x ω大于0,故T )1,2,1,1()18()19(--==ωω
因0)1,1,0,1)(1,2,1,1()19(3=--=T T x ω不大于0,故T x )2,1,1,2()19()20(3--=+=ωω 因3)1,0,1,1)(2,1,1,2()20(4=--=T T x ω大于0,故T
)2,1,1,2()20()21(--==ωω
因1)1,1-,0,0)(2,1,1,2()21(5-=---=T T x ω不大于0,故T x )1,2,1,2()21()22(5--=+=ωω
因2)1,1-,1-,0)(1,2,1,2()22(6=---=T T x ω大于0,故T )1,2,1,2()22()23(--==ωω
因0)1,0,1-,0)(1,2,1,2()23(7=---=T T x ω不大于0,故T x )0,2-,2-,2()23()24(7=+=ωω 因2)1,1-,1-,1-)(0,2-,2-,2()24(8=-=T T x ω大于0,故T )0,2-,2-,2()24()25(==ωω 第四轮迭代:
因0)1,0,0,0)(0,2-,2,2()25(1=-=T T x ω不大于0,故T x )1,2,2,2()25()26(1--=+=ωω 因3)1,0,0,1)(1,2-,2-,2()26(2==T T x ω大于0,故T
)1,2,2,2()26()27(--==ωω
因1)1,1,0,1)(1,2,2,2()27(3=--=T T x ω大于0,故T )1,2,2,2()27()28(--==ωω 因1)1,0,1,1)(1,2,2,2()28(4=--=T T x ω大于0,故T )1,2,2,2()28()29(--==ωω
因1)1,1-,0,0)(1,2,2,2()29(5=---=T T x ω大于0,故T
)1,2,2,2()29()30(--==ωω
因3)1,1-,1-,0)(1,2,2,2()30(6=---=T T x ω大于0,故T )1,2,2,2()20()31(--==ωω
因1)1,0,1-,0)(1,2,2,2()31(7=---=T T x ω大于0,故T )1,2-,2-,2()31()32(==ωω 因大于0,故T
)1,2-,2-,2()32()33(==ωω
第五轮迭代:
因1)1,0,0,0)(1,2-,2,2()33(1=-=T T x ω大于0,故T )1,2,2,2()33()34(--==ωω
因3)1,0,0,1)(1,2-,2-,2()34(2==T T x ω大于0,故T
)1,2,2,2()34()35(--==ωω
因1)1,1,0,1)(1,2,2,2()35(3=--=T T x ω大于0,故T )1,2,2,2()35()36(--==ωω 因1)1,0,1,1)(1,2,2,2()36(4=--=T T x ω大于0,故T )1,2,2,2()36()37(--==ωω 因1)1,1-,0,0)(1,2,2,2()37(5=---=T T x ω大于0,故T )1,2,2,2()37()38(--==ωω
因3)1,1-,1-,0)(1,2,2,2()38(6=---=T T x ω大于0,故T )1,2,2,2()38()39(--==ωω 因1)1,0,1-,0)(1,2,2,2()39(7=---=T T x ω大于0,故T )1,2-,2-,2()39()40(==ωω 因1)1,1-,1-,1-)(1,2-,2-,2()40(8=-=T T x ω大于0,故T )1,2-,2-,2()40()41(==ωω 该轮迭代全部正确,因此解向量T
)1,2,2,2(--=ω,相应的判别函数为: 1222)(321+--=x x x x d
二.编写求解上述问题的感知器算法程序
1. 实验结果截图
2. 程序代码
%程序功能:实现感知器算法
%作者:赵晓梅 2066
%时间:2014.10.5
clc;
clear all ;
fprintf('感知器算法\n');
%输入模式样本
x=[0,0,0,1;1,0,0,1;1,0,1,1;1,1,0,1;0,0,-1,-1;0,-1,-1,-1;0,-1,0,-1;-1,-1,-1,-1];
[N,n]=size(x);%获取样本数目和维数;N 为样本数目;n 为样本维数
C=1;
w0=[0,0,0,0]';%初始化解向量
w=w0;
flag=1;%迭代继续标志,当迭代全部正确时,flag=0,迭代结束
k=0;%记录迭代次数
while (flag)
flag=0;
k=k+1;
for i=1:N
if w'*x(i,:)'<=0%当迭代错误,w加上相应的x w=w+x(i,:)';
flag=1;
end
end
end
fprintf('迭代次数%d\n',k);
fprintf('解向量为w=(');
for j=1:n
fprintf('%d ',w(j));
end
fprintf(')\n');
fprintf('相应的判别函数为d(x)=');
for j=1:n-1
fprintf('(%d)x%d+',w(j),j);
end
fprintf('(%d)\n',w(j));。