BP神经网络(二)

简介: BP神经网络(二)

5.4.2 工作状态(工作阶段解决问题)

神经元间的连接权值不变,可以作为分类器或者预测数据之用。

6 激活函数

6.1 激活函数的类别

线性函数一般用于隐含层到输出层之间的激活函数

其他的激活函数一般使用S形函数或双极S形函数,其中,更多的使用双极S形函数。

7 BP神经网络模型的建立

7.1 人工神经网络的概述(理论介绍)

多层感知器( multi-layer perceptron,MLP) 也叫人工神经网络( artificial neural network,ANN) ,是一种运算模型,旨在模拟神经系统构造与功能进行数据处理,从信息处理角度对人脑神经元网络进行抽象模拟,由大量的节点(或称神经元) 相互联接构成,通过不断调整模拟神经元之间链条的权值,使得整个网络可以较好地拟合训练数据的关系。

[1]孙凤娟,田勇,孙开争,付华轩,张文娟,李敏,吕晨.基于人工神经网络集合预报的济南市臭氧预报方法[J].山东科学,2022,35(03):89-99.

人工神经网络的基本组成是人工神经元,人工神经元从结构和功能的角度模拟和抽象生物神经元,人工神经元是通过模拟人脑中神经元的结构和相互联系而建立的数学模型。

[1]陈成龙. 基于人工神经网络的油田开发数据分析及预测研究[D].东北石油大学,2022.DOI:10.26995/d.cnki.gdqsc.2022.000046.

通过对人脑神经元的分析与简化,得到简易的人工神经元数学模型,如图所示:


image.png

image.png


人工神经网络由多个人工神经元组成,其结构主要分为输入层、隐含层和输出层,人工神经网络模型结构如图所示:

7.2 BP算法基本原理

BP算法(Back Propagation,BP)就是利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其他各层的误差估计。

[1] 宋文娟,席永胜,佟明勇.基于BP算法的工程造价散材量估算方法[J].甘肃科技,2020,36(14):91-93.

7.3 BP神经网络的概述

BP的英文全称是Back Propagation,也被称作 Error Back Propagation,翻译为误差反向传播,误差反传是BP神经网络算法的最大优点。BP神经网络具有自适应和自学习等特点。BP神经网络分为信号正向传播与误差反向传播。正向传播过程中,预测模型的样本数据信息从输入层传入,后经过隐藏层的处理,最终传向输出层。若网络预测输出值与网络期望输出值相差较大时,误差将会反向逐层分摊给各层,直到误差达到要求的精度范围内停止循环。

[1]陈成龙. 基于人工神经网络的油田开发数据分析及预测研究[D].东北石油大学,2022.DOI:10.26995/d.cnki.gdqsc.2022.000046.

信号的正向传播,误差的反向传播。

隐含层节点数是一个非常重要的参数,它的设置对BP神经网络性能的影响很大,隐藏层节点数目的确定,仍是BP神经网络目前最难解决的问题之一,目前还没有很好的解决方法,只能通过试验法来确定最佳个数。

[1]陈成龙. 基于人工神经网络的油田开发数据分析及预测研究[D].东北石油大学,2022.DOI:10.26995/d.cnki.gdqsc.2022.000046.

只含1个隐藏层的BP神经网络结构如图所示:

BP神经网络一般采用单隐层结构

隐藏层多,不一定会使得结果更准确,但是,会更加耗时,同时效率会降低。

7.4 模型的建立

流程图

[1]陈成龙. 基于人工神经网络的油田开发数据分析及预测研究[D].东北石油大学,2022.DOI:10.26995/d.cnki.gdqsc.2022.000046.

一般,p大于n

8 神经网络的应用

9 模型的训练

基于拟牛顿算法优化的BP神经网络模型

10 模型建立步骤

  1. 确定网络拓扑结构
  • 即,输入层、隐含层(几层)、输出层的神经元数量
  1. 符号定义
  2. 确定初始BP神经网络的权值和阈值
  3. 更新权值阈值
  4. 计算各层神经元的输入和输出
  5. 计算输出层的实际输出和期望输出的误差
  6. 判断是否满足条件
  7. 不满足,修正权值
  8. 更新权值(返回 3)
  9. 直到误差满足要求或迭代次数达到指定次数

Python数学实验与建模

[1]陈成龙. 基于人工神经网络的油田开发数据分析及预测研究[D].东北石油大学,2022.DOI:10.26995/d.cnki.gdqsc.2022.000046.


相关文章
|
4月前
|
机器学习/深度学习 算法
【Matlab智能算法】PSO优化(双隐层)BP神经网络算法
【Matlab智能算法】PSO优化(双隐层)BP神经网络算法
|
5月前
|
机器学习/深度学习 算法 Python
BP神经网络算法讲解及实战应用(超详细 附源码)
BP神经网络算法讲解及实战应用(超详细 附源码)
338 0
|
3月前
|
机器学习/深度学习 算法
基于BP神经网络的手写体数字识别matlab仿真
基于BP神经网络的手写体数字识别matlab仿真
|
4月前
|
机器学习/深度学习 存储 算法
【Matlab智能算法】BP神经网络-遗传算法(BP-GA)函数极值寻优——非线性函数求极值
【Matlab智能算法】BP神经网络-遗传算法(BP-GA)函数极值寻优——非线性函数求极值
|
5月前
|
机器学习/深度学习 算法 TensorFlow
【Python机器学习】神经网络中误差反向传播(BP)算法详解及代码示例(图文解释 附源码)
【Python机器学习】神经网络中误差反向传播(BP)算法详解及代码示例(图文解释 附源码)
48 0
|
5月前
|
机器学习/深度学习 算法
【MATLAB 】BP神经网络回归预测
【MATLAB 】BP神经网络回归预测
39 1
|
5月前
|
机器学习/深度学习
BP神经网络应用案例(二)
BP神经网络应用案例
|
5月前
|
机器学习/深度学习 人工智能 知识图谱
BP神经网络应用案例(一)
BP神经网络应用案例
|
3月前
|
机器学习/深度学习 算法 PyTorch
python手把手搭建图像多分类神经网络-代码教程(手动搭建残差网络、mobileNET)
python手把手搭建图像多分类神经网络-代码教程(手动搭建残差网络、mobileNET)
46 0
|
7月前
|
机器学习/深度学习 监控 算法
【tensorflow】连续输入的神经网络模型训练代码
【tensorflow】连续输入的神经网络模型训练代码