BP神经网络模型_bp神经网络算法matlab程序

BP神经网络模型_bp神经网络算法matlab程序1. BP神经网络模型(Backpropagation Neural Networks) 采用非线性激活函数,Sigmoid函数。 三个层次:输入层(Input Layer),隐藏层(Hidden Layer) 和输出层(Output layer),就好比神经网络的各个神经元具有不同功能一样。 输入

1. BP神经网络模型(Backpropagation Neural Networks)

  • 采用非线性激活函数,Sigmoid函数。
  • 三个层次:输入层(Input Layer),隐藏层(Hidden Layer) 和输出层(Output layer),就好比神经网络的各个神经元具有不同功能一样。
  • 输入层:负责接收外界刺激,即外部数据。
  • 隐藏层:又叫可多层,负责增加计算能力,以解决困难问题。但隐藏层神经元不能无限增加,否则会出现过拟合现象。
  • 输出层:又称为决策层,负责进行决策。
  • 一般来说,当数据和决策问题确定之后,输入层和输出层的节点个数是固定的,唯一可变的是隐藏层。
  • 层与层之间是通过神经键(权重)完成连接。
  • 训练好之后的BP神经网路模型是前馈的(feedforward),但在进行模型训练的时候是从输出层到输入层,是反馈的(即:Train Backward)

BP神经网络模型_bp神经网络算法matlab程序BP神经网络模型_bp神经网络算法matlab程序

    • (图片来源:经管之家CDA)

 

2.如何构建BP神经网络

  (1) 只有隐藏层和输出层的神经元才有构造,且每个神经元的 构造都是一模一样的,而输入层的神经元只负责接收外来数据,数据一旦输入,便会立即输出,故不具有构造。

  (2)神经元由上一层神经元与本层神经元交叉形成神经键、权重加总(Weighted Sum)、常数项(Bias)以及激活函数(Activation Function)组成。

  (3)w0j,w1j,…wnj 表示上一层神经元对于该神经元的影响权重Weights,可正可负,范围为【0,1】;常数项(Bias)表示神经元自身的偏好;激活函数f表示一个以权重加总和常数项之和为自变量的函数,决定该神经元的输出结果。

  BP神经网络模型_bp神经网络算法matlab程序

 

   (4)在BP神经网络中,一般采用S型函数作为激活函数。表达式为1/(1+e-xj),其中xj 是权重加总和常数项之和,成为组合函数的值,当组合函数的值为负时,激活函数的值小于0.5,否则,激活函数的值大于0.5。

 

3.应用举例

  BP神经网络模型_bp神经网络算法matlab程序

 

   (1)假设训练数据(x1,x2,x3)为(1,0,1),各个神经键的权重值以及隐藏层和输出层神经元的常数项随机取值如下

BP神经网络模型_bp神经网络算法matlab程序

 

   (2)同理,计算出4/5/6节点的输出值依次为:0.332,0.525,0.474

    BP神经网络模型_bp神经网络算法matlab程序

 

 

   (3)假设实际的结果应当为 1 ,但采用随机赋予权重值的方法得到输出值为0.474,与目标值1 差距过大,因而要对神经网络进行修正。

  (4)修正权重和常数项值需要一个标准:平方误差。平方误差=BP神经网络模型_bp神经网络算法matlab程序,其中,Tj为训练数据实际值,Oj为神经网络输出值。

 

  (5)新的权重值=旧的权重值+学习效率*前节点的输出值*后节点的误差值。

 

今天的文章BP神经网络模型_bp神经网络算法matlab程序分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/45342.html

(0)
编程小号编程小号
上一篇 2023-09-06 22:46
下一篇 2023-09-06 23:06

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注