单层感知器.docx

上传人:b****5 文档编号:6431695 上传时间:2023-01-06 格式:DOCX 页数:13 大小:95.59KB
下载 相关 举报
单层感知器.docx_第1页
第1页 / 共13页
单层感知器.docx_第2页
第2页 / 共13页
单层感知器.docx_第3页
第3页 / 共13页
单层感知器.docx_第4页
第4页 / 共13页
单层感知器.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

单层感知器.docx

《单层感知器.docx》由会员分享,可在线阅读,更多相关《单层感知器.docx(13页珍藏版)》请在冰豆网上搜索。

单层感知器.docx

单层感知器

单层感知器

一、与运算

1.程序

functionmain()

closeall

rand('state',sum(100*clock));

X=[-1,0,0;-1,0,1;-1,1,0;-1,1,1];D=[0,0,0,1];q=1;W=[0.1,rand(1,2)];

O=[0,0,0,0];ERROR=[];R2=[0,0,0,1];t=1;

forj=1:

100

forp=1:

4

ifW(t,:

)*X(p,:

)'>0

O(1,p)=1;

else

O(1,p)=0;

end

R2(1,p)=D(1,p)-O(1,p)

M=W(t,:

)+q*R2(1,p)*X(p,:

W=[W;M]

ifabs(R2(1,1))+abs(R2(1,2))+abs(R2(1,3))+abs(R2(1,4))==0,break,end

t=t+1

end

ERROR=[ERRORR2(1,1)+R2(1,2)+R2(1,3)+R2(1,4)]

ifabs(R2(1,1))+abs(R2(1,2))+abs(R2(1,3))+abs(R2(1,4))==0,break,end

end

fori=1:

3

figure

holdon

gridon

x=1:

t

y=W(x,i)

plot(x,y,'b--');

ylabel('w')

end

figure

holdon

gridon

fori=1:

4

x=X(i,2)

y=X(i,3)

plot(x,y,'*')

end

axis([-12-12])

a=0:

1

b=[W(t,1)-W(t,2)*a]/W(t,3)

plot(a,b,'b--')

figure

holdon

gridon

x=1:

j

y=ERROR(1,x);

plot(x,y,'b--')

end

2.训练结果

最终误差:

0

迭代次数:

8

最终权值:

2.64161.3022

最终阈值:

3.1000

误差收敛曲线

权值变化曲线

W1变化曲线

W2变化曲线

3样本分布及分界线

阈值=0.1时平均迭代次数

学习率

0.01

0.05

0.1

0.5

1

2

10

迭代次数

24.4

5.7

4.4

4.8

6.2

6.8

7.8

学习率=0.1时平均迭代次数

阈值

0.01

0.05

0.1

0.5

1

2

10

迭代次数

4.8

4.1

5.1

3.1

2.4

5.2

31.5

阈值=0.1学习率=0.1

变换函数

单极点二值函数

单极点Sigmoid 函数

迭代次数

4.8

1691.9

二或运算

1编程

functionmain()

closeall

rand('state',sum(100*clock));

X=[-1,0,0;-1,0,1;-1,1,0;-1,1,1];

D=[0,1,1,1];q=0.1;

W=[0.1,rand(1,2)];

O=[0,0,0,0];

ERROR=[];R2=[0,0,0,1];

t=1;

forj=1:

1000

forp=1:

4

ifW(t,:

)*X(p,:

)'>0

O(1,p)=1;

else

O(1,p)=0;

end

R2(1,p)=D(1,p)-O(1,p)

M=W(t,:

)+q*R2(1,p)*X(p,:

W=[W;M]

ifabs(R2(1,1))+abs(R2(1,2))+abs(R2(1,3))+abs(R2(1,4))==0,break,end

t=t+1

end

ERROR=[ERRORabs(R2(1,1))+abs(R2(1,2))+abs(R2(1,3))+abs(R2(1,4))]

ifabs(R2(1,1))+abs(R2(1,2))+abs(R2(1,3))+abs(R2(1,4))==0,break,end

end

fori=1:

3

figure

holdon

gridon

x=1:

t

y=W(x,i)

plot(x,y,'b--');

ylabel('w')

end

figure

holdon

gridon

fori=1:

4

x=X(i,2)

y=X(i,3)

plot(x,y,'*')

end

axis([-12-12])

a=0:

1

b=[W(t,1)-W(t,2)*a]/W(t,3)

plot(a,b,'b--')

figure

holdon

gridon

x=1:

j

y=ERROR(1,x);

plot(x,y,'b--')

end

2.训练结果

误差收敛曲线

权值变化曲线

W1变化曲线

W2变化曲线

3样本分布及分界线

三异或

1编程

functionmain()

closeall

rand('state',sum(100*clock));

X=[-1,0,0;-1,0,1;-1,1,0;-1,1,1];

D=[0,1,1,0];q=1;

W=[0.1,rand(1,2)];

O=[0,0,0,0];

ERROR=[];R2=[0,0,0,1];

t=1;

forj=1:

20

forp=1:

4

ifW(t,:

)*X(p,:

)'>0

O(1,p)=1;

else

O(1,p)=0;

end

R2(1,p)=D(1,p)-O(1,p);

M=W(t,:

)+q*R2(1,p)*X(p,:

);

W=[W;M];

ifabs(R2(1,1))+abs(R2(1,2))+abs(R2(1,3))+abs(R2(1,4))==4,break,end

t=t+1;

end

ERROR=[ERRORabs(R2(1,1))+abs(R2(1,2))+abs(R2(1,3))+abs(R2(1,4))];

ifabs(R2(1,1))+abs(R2(1,2))+abs(R2(1,3))+abs(R2(1,4))==4,break,end

end

j

ERROR

fori=1:

3

figure

holdon

gridon

x=1:

t;

y=W(x,i);

plot(x,y,'b--');

ylabel('w')

end

figure

holdon

gridon

fori=1:

4

x=X(i,2);

y=X(i,3);

plot(x,y,'*')

end

axis([-12-12])

a=0:

1;

b=[W(t,1)-W(t,2)*a]/W(t,3);

plot(a,b,'b--')

figure

holdon

gridon

x=1:

j;

y=ERROR(1,x);

plot(x,y,'b--')

end

2.训练结果

最终误差=4

误差收敛曲线

权值变化曲线

W1变化曲线

W2变化曲线

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 历史学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1