教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 初中教育 >

基于BP神经网络算法的函数逼近

来源:网络收集 时间:2026-09-05
导读: 基于BP神经网络算法的函数逼近 实验二 基于BP神经网络算法的函数逼近 自动化实验班 沈俊鹏 1、实验目的 1) 掌握Matlab子函数的编写与调用。 2) 理解BP神经网络算法的原理,并利用程序实现利用 BP算法逼近任意非线 性函数。 2、实验内容与实验要求 1) 2) 3)

基于BP神经网络算法的函数逼近

实验二 基于BP神经网络算法的函数逼近 自动化实验班

沈俊鹏

1、实验目的

1) 掌握Matlab子函数的编写与调用。

2) 理解BP神经网络算法的原理,并利用程序实现利用 BP算法逼近任意非线

性函数。

2、实验内容与实验要求

1) 2) 3)

掌握BP神经网络算法的原理。

掌握matlab子函数的编写方法及调用方法。

根据BP神经网络算法的原理,编写Matlab程序,逼近非线性函数。

3、实验要求

1) 自己编写Matlab函数。 2) 书写实验报告。 3) 分析实验结果,用图描述出非线性函数的真实曲线以及BP算法逼近的曲线。

4、实验设备

1) 计算机 2) Matlab软件

5、实验原理及步骤

1)BP神经网络算法:

神经网络由神经元和权重构成,神经元即为:输入节点,输出节点和隐层结点三部分;权重是各个神经元相互连接的强度。神经网络通过训练,从样本中学习知识,并且将知识以数值的形式存储于连接权中。神经网络的分类过程分成

基于BP神经网络算法的函数逼近

两部分,首先学习网络的权重,利用一些已知的数据训练网络得到该类数据模型的权重;接着根据现有的网络结构和权重等参数得到未知样本的类别。BP算法被称作反向传播算法,主要思想是从前向后(正向)逐层传播信息;从后向前(反向)逐层传播输出层的误差,间接算出隐层误差。 算法分为两个阶段:

第一阶段(正向过程)输入信息从输入层经隐层逐层计算各单元的输出值;根据下式计算每层的输出值。

netj wijOi

i

Oj f(netj)

第二阶段(反向传播过程)输出误差逐层向前算出隐层各个单元的误差,并用此误差修正前层的值。在BP算法中常采用梯度法修正权值,为此要求输出函数可微,通常采用Sigmoid函数作为输出函数。 (1) 计算误差:

(2)

其中 的计算公式为 (3) wij(t 1) wij(t) wij(t)

(4) 重复上述过程直到算法收敛,即误差小于给定的阈值。

2) 实验程序

w10=[0.1 0.2;0.3 0.15;0.2 0.4]; w11=[0.2 0.1;0.25 0.2;0.3 0.35]; w20=[0.2;0.25;0.3];

w21=[0.15;0.2;0.4]; q0=[0.1 0.2 0.3]; q1=[0.2 0.15 0.25];

基于BP神经网络算法的函数逼近

p0=0.2;p1=0.1; xj=[0.5;0.9]; k=5000;k1=5;k2=100; yb=0;

e0=0;e1=0;e2=0;

a1=0.18;a2=0.99;a3=0.4;a4=0.8; b1=0.2;b2=0.8;c1=0.3;c2=0.65; for s=1:72

yp1=sin(s^3/360) for k=1:k2; for i=1:3

x=w11(i,1)*xj(1,:)+w11(i,2)*xj(2,:);

z=x+q1(:,i);

o=[1-exp(-z)]/[1+exp(-z)]; m=1/[1+exp(-z)]; m1(i,:)=m; o1(i,:)=o; end for i=1:3 yb=0;

yb=yb+w21(i,:)*o1(i,:); end yi=yb+p1; n=1/[1+exp(-yi)];

y=[1-exp(-yi)]/[1+exp(-yi)]; %calculation error between aim and practice output; e0=e1; e1=e2;

e2=[(yp1-y).^2]/2; xj1=e2-e1; xj2=e2-2*e1+e0; xj=[xj1;xj2]; d2=n*(1-y)*(yp1-y); bk=d2;

%revising weighted value and threshold value in hidden layer; for i=1:3 u=w21(i,:)*bk; d1=[1-o1(i,:)]*u;

d0=m1(i,:)*d1; qw=q1(:,i)-q0(:,i); q2=q1(:,i)+0.8*d0+0.4*qw; q3(:,i)=q2; for j=1:2

dw=w11(i,j)-w10(i,j);

w12=w11(i,j)+0.8*d0*xj(j,:)+0.6*dw;

w13(i,j)=w12; end end w10=w11; w11=w13; q0=q1; q1=q3;

%revising weighted value and threshold value in output layer; for i=1:3

h=w21(i,:)-w20(i,:);

w22=w21(i,:)+0.4*d2*o1(i,:)+0.75*h;

w23(i,:)=w22; end w20=w21; w21=w23; ph=p1-p0;

p2=p1+0.9*d2+0.6*ph; p0=p1; p1=p2;

%writing error value and output value;

if e2<0.0001,break; else k=k+1; end end e(s)=e2; ya(s)=yp1; yo(s)=y; s=s+1 end w11=w13; w21=w23;

基于BP神经网络算法的函数逼近

%graphics s1=s-1; s=1:s1; grid; hold on;

plot(s,ya,s,yo,s,yo,'g.',s,e,s,e,'rx');

title('BP Algorithm');

…… 此处隐藏:446字,全部文档内容请下载后查看。喜欢就下载吧 ……
基于BP神经网络算法的函数逼近.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1564641.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)