Matlab 神经网络工具箱应用

Matlab 神经网络工具箱应用

人工神经网络(Artificial Neural Networks,ANN)是由大量的、简单的处理单元(称为神经元)广泛地互相连接而形成的非线性动力学系统,具有非线性自适应的信息处理能力,在模式识别、智能控制、组合优化、预测等领域得到广泛应用。
MATLAB是一种科学与工程计算的高级语言,广泛地运用于包括信号与图像处理,控制系统设计,系统仿真等诸多领域。为了解决神经网络问题中的研究工作量和编程计算工作量问题,MATLAB提供了现成的神经网络工具箱,为解决这个矛盾提供了便利条件。神经网络工具箱提供了很多经典的学习算法,使用它能够快速实现对实际问题的建模求解。

BP神经网络及其原理

BP神经网络是目前应用最为广泛和成熟的神经网络之一,它是一个包含输入层、隐含层和输出层三层结构的多层前馈型神经网络,层与层之间通过权值连接,每层各个神经元之间相互独立,互不影响。网络学习过程包括信号的前向传播和误差的反向传播,核心内容是采用梯度下降法,通过误差的反向传播及修正误差的方向不断调整各层权值和阈值,以期达到输出数据与期望数据的误差性能函数最小的目的。
误差反向传播算法作为神经网络训练的基本算法,存在收敛速度慢、容易陷入局部最小以及出现“过拟合”等问题。为克服BP神经网络的这些不足,相关研究人员提出了许多改进算法,例如附加动量法、牛顿法、自适应学习率法以及Levenberg-Marquardt(L-M)算法等。其中L-M算法在使用时不需要过多调整参数,具有很快的网络收敛速度和较高的网络训练精度。
L-M算法是一种求解非线性最小二乘问题的有效方法,它是改进的高斯-牛顿法,即梯度下降法和高斯-牛顿法的有效结合,既有牛顿法的局部收敛性,又具有梯度下降法的全局搜索特性,从而使网络能够有效收敛。

MATLAB中BP神经网络工具箱函数

BP网络创建函数
  1. newff
    该函数用于创建一个BP网络。调用格式为:
    net=newff
    net=newff(PR,[S1 S2…SN1],{TF1 TF2…TFN1},BTF,BLF,PF)
    其中,
    net=newff;用于在对话框中创建一个BP网络。
    net为创建的新BP神经网络;
    PR为网络输入向量取值范围的矩阵;
    [S1 S2…SNl]表示网络隐含层和输出层神经元的个数;
    {TFl TF2…TFN1}表示网络隐含层和输出层的传输函数,默认为‘tansig’;
    BTF表示网络的训练函数,默认为‘trainlm’;
    BLF表示网络的权值学习函数,默认为‘learngdm’;
    PF表示性能数,默认为‘mse’。

2)newcf函数用于创建级联前向BP网络,newfftd函数用于创建一个存在输入延迟的前向网络。

神经元上的传递函数

传递函数是BP网络的重要组成部分。传递函数又称为激活函数,必须是连续可微的。BP网络经常采用S型的对数或正切函数和线性函数。
1)logsig
该传递函数为S型的对数函数。调用格式为:
A=logsig(N)
info=logsig(code)
其中,
N:Q个S维的输入列向量;
A:函数返回值,位于区间(0,1)中;

2)tansig
该函数为双曲正切S型传递函数。调用格式为:
A=tansig(N)
info=tansig(code)
其中,
N:Q个S维的输入列向量;
A:函数返回值,位于区间(-1,1)之间。

3)purelin
该函数为线性传递函数。调用格式为:
A=purelin(N)
info=purelin(code)
其中,
N:Q个S维的输入列向量;
A:函数返回值,A=N。

BP网络学习函数

1)learngd
该函数为梯度下降权值/阈值学习函数,它通过神经元的输入和误差,以及权值和阈值的学习效率,来计算权值或阈值的变化率。调用格式为:
[dW,ls]=learngd(W,P,Z,N,A,T,E,gW,gA,D,LP,LS)
[db,ls]=learngd(b,ones(1,Q),Z,N,A,T,E,gW,gA,D,LP,LS)
info=learngd(code)

2)learngdm
该函数为梯度下降动量学习函数,它利用神经元的输入和误差、权值或阈值的学习速率和动量常数,来计算权值或阈值的变化率。

BP网络训练函数

1)train
神经网络训练函数,调用其他训练函数,对网络进行训练。该函数的调用格式为:
[net,tr,Y,E,Pf,Af]=train(NET,P,T,Pi,Ai)
[net,tr,Y,E,Pf,Af]=train(NET,P,T,Pi,Ai,VV,TV)

2)traingd函数为梯度下降BP算法函数。traingdm函数为梯度下降动量BP算法函数。

实例:烟气含氧量预测模型

引用文章:神经网络在风烟系统含氧量软测量中的应用
隐含层节点数对BP神经网络性能的影响
在这里插入图片描述
L-M算法的含氧量实际值与预测值对比
在这里插入图片描述

  • 2
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

blontin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值