BP神经网络基本介绍

1. 主要解决的是什么问题
预测类、聚类分析

2. 原理、思路是啥
什么是人工神经网络(ANN)→模拟大脑对信号处理的一种算法
在这里插入图片描述
基本原理介绍:
在这里插入图片描述
权关系是具体不清楚他们之间的关系(并未给出准确的对应关系,只是假设他们之间的关系可以用一组权来表示);阈值/偏置表示的是神经网络可以产生刺激的临界值
在这里插入图片描述
神经网络的工作状态分为学习和工作两种状态。学习状态:利用学习算法来调整神经元间的连接权重,使得网络输出更符合实际。工作状态:神经元间的连接权值不变,进行预测数据或别的用途。
在这里插入图片描述
利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其他各层的误差估计。(信号的正向传播&误差的反向传播)

3. 建模步骤
最重要:归一化处理/无量纲化处理

4.论文中怎么写

5.模型的优点和缺点
适合大样本,可以实现对非线性的预测;没有具体公式。
受样本影响大,尽量获取足够多的样本,它的多少直接关系到所建模型的可靠性。
建模时尽量减少隐含层神经元的个数。由于隐含层神经元个数的确定是凭经验的,而个数的多少直接关系到网络的性能。个数太少,网络容易陷入局部极小值;太多,则网络的预测结果不稳定。为此隐含层神经元个数的确定利用“试错法”来实现,即先给定一个较小的值,根据训练的结果逐渐增加,这样可找到适合该模型隐含层神经元个数的最小值,从而提高了网络的稳定性。

6.代码讲解

  • 生成BP网络
net=newff(PR,[S1 S2...SNl]),{TF1 TF2...TFNl},BTF)

PR:由R维的输入样本最小最大值构成的R*2维矩阵。
[S1 S2…SNl]各层的神经元个数。
{TF1 TF2…TFNl}各层的神经元传递函数。
BTF训练用函数的名称。

  • 网络训练
net=train(net,P,T)
  • 网络仿真
Y2=sim(net,P2)

  %traingd
  clear;
  clc;
  P=[-1 -1 2 2 4;0 5 0 5 7];
  T=[-1 -1 1 1 -1];
  %利用minmax函数求输入样本范围
  net = newff(minmax(P),[7,1],{'tansig','purelin'},'trainlm');
  net.trainParam.show=50;%
  net.trainParam.lr=0.05;
  net.trainParam.epochs=1000;
  net.trainParam.goal=1e-5;
[net,tr]=train(net,P,T);
net.iw{1,1}%隐层权值
net.b{1}%隐层阈值
net.lw{2,1}%输出层权值
net.b{2}%输出层阈值
y3=sim(net,P);

7.模型拓展

  • Eg1.1981年生物学家格若根(W.
    Grogan)和维什(W.Wirth)发现了两类蚊子(或飞蠓midges).他们测量了这两类蚊子每个个体的翼长和触角长,数据如下:若抓到三只新的蚊子,它们的触角长和翼长分别为(1.24,1.80);(1.28,1.84);(1.40,2.04).问它们应分别属于哪一个种类?

在这里插入图片描述

  • Eg2.下表为某药品的销售情况,进行明年1月的预测;

在这里插入图片描述

8.附:BP算法
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

阿群今天学习了吗

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

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

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

打赏作者

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

抵扣说明:

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

余额充值