代码:
%输入特征向量并增广规范化
w1=input("input first feature vector:");
a([1:size(w1,1)],1)=1;%生成和特征向量相同行数的全为 1 的列向量
w1=[a w1];%将列向量加在前面
w2=input("input second feature vector:");
a([1:size(w2,1)],1)=1;
w2=[a w2];
w2=(-1)*w2;%所有元素乘以-1
p=input("input power vector:");
d=input ("input prove long:");
%输入初始权向量和步长
%进行迭代
flag = 1;%循环标志
n=size(w1,1)+size(w2,1);%得到总行数
w1=[w1;w2];%将两个矩阵纵向拼接
c=0;%表示满足条件的矩阵行数
i=1;%表示下次第几行会进行计算
while(flag)
while(i<=n&&flag)
b=p*w1(i,:)';
if(b<=0)
p=p+w1(i,:);
c=0;
else
c=c+1;
end
i=i+d;
if(i>n)
i=1;
end
if(c==n)
flag =0;
end
评论0
最新资源