首页 > 编程知识 正文

matlab神经网络原理与实例精解pdf,单层神经网络原理

时间:2023-05-05 08:31:52 阅读:110415 作者:1811

目录

单层传感器的基础理论知识

MATLAB神经网络工具箱使用例程

算法实现

参考文献

单层传感器的基础理论知识

关于单层感知器的理论知识和MATLAB中单层感知器的关联函数,单层感知器——MATLAB神经网络一文有详细的说明。

MATLAB神经网络工具箱使用例程

例:在下图中,o点的输出值为1,*点的输出值为0。 我想要一个输入坐标就能得到对应输出值的神经网络。

根据理论知识,结果为直线(x1*w1 x2*w2 b=0)。 他将平面分割为输出值0和输出值1两个区域。 要使用MATLAB神经网络工具箱求解代码,请执行以下操作:

net=newp([01; 0 )建立1 )、1 ) %单层传感器(NEW Perceptron ),两个输入节点(假设为x1和x2 ),x1的取值范围为0~1,x2,具有0~1,1个节点。

P=[0 0 1 1; 0 1 0 1]); 输入%样品。 这里是2X4的矩阵,矩阵的每列表示采样点

T=[0 1 1 1]; %期望值(输出值),对应输入样本

net.trainParam.epochs=20; %net是已经创建的神经网络,本质上是对象。 如果将trainParam的epochs值更改为20,则最大训练迭代次数为20次

net=train(net,p,t ); %神经网络的训练

%以下是为了理解《单感知器》而可视化的部分,为了解决问题必须是代码

y=sim(net,p ); %针对训练的神经网络仿真(simulate ),将样本值输入神经网络,观察输出结果是否与原始结果一致

b=net.b { 1,1 }; %我们的目的实际上是得到直线(x1*w1 x2*w2 b=0),在这里是取得b值(这是存储在net对象的b参数值中) )。

w1=net.iw { 1,1 } ((1); 获取%w1的值

w2=net.iw { 1,1 } ()2); 获取%w2值

%图

x1=-1:0.1:2;

x2=-w1/w2*x1-b;

plot(x1,x2,' k ' ) ) ) )。

霍尔德on

plot(p ) 1,2: end )、p ) 2,2: end )、' ko ' );

plot(p ) 1,1 )、p ) 2,1 )、' r* ' );

axis ([-1,2,- 1,2 ]

legend (“分类直线”、“值1”、“值0”)

结果如下

对神经网络进行了测试,过程如下(准确性可以从上图中观察到)。

sim(net,[0.1; 0.1 ) )

ans=

0

sim(net,[0.5; 0.5 ) )

ans=

1

算法实现

单层传感器- -根据MATLAB神经网络文中的“二、学习算法步骤”,上述问题可以通过算法步骤,用以下MATLAB码实现: (不使用MATLAB神经网络工具箱)。

n=0.2; %学习率

w=[ 0,0,0 ];

P=[0 0 1 1; 0 1 0 1]);

d=[0 1 1 1]; %期待输出

p=[ ones (1,4 ); P];

MAX=20; %最大迭代次数为20次

i=0;

while 1

v=w*P;

x2=hardlim(v ); %实际输出

%更新

e=(d-x2 );

EE(I1 )=mae(e ) e;

if(EE ) I1 ) 0.001 ) %判断

DISP(wehavegotit: );

DISP(w;

布雷克;

结束

更新%权重和偏移

w=wn*(d-x2 ) p ';

if(I=max ) %达到最大迭代次数并结束

最大快照(disp );

DISP(w;

DISP(ee ) I1 );

布雷克;

结束

i=i 1;

结束

图形;

subplot (2,1,1 ); %显示要分类的点和分类结果

plot(p ) 2,2: end ),p ) 3,2: end ),' ko ' );

霍尔德on

plot(p ) 2,1 )、p ) 3,1 )、' r* ' );

axis ([-1,2,- 1,2 ]

x1=-1:1:2;

x2=x1*(-w(2)/w )3)-w )1)/w ) 3;

plot(x1,x2 );

legend (值1 )、值0 )、分类直线);

霍尔德关闭

subplot (2,1,2 ); %表示mae值的变化

x1=0:i;

plot(x1,ee,' o-';

s=sprintf(Mae的值)重复次数:%d )、i 1 );

是title(s )

参考文献

bmdhxc.MATLAB神经网络原理及实例阐明

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。