BP神经网络算法简介

神经网络模型在众多领域都有所应用,模拟了生物的神经元结构,是一种简化的神经元模型,可以进行分布式信息处理的数学模型。

背景

神经网络分为神经上世界80年代,Rumelhart,McCelland为首的科学家们成立了并行处理小组,提出了著名的神经网络算法。

神经神经网络包括生物神经网络和人工神经网络。在BP神经元结构中,神经元是模仿生物的神经元结构,如下图所示为生物的神经元结构(图来源于网络):

基本结构

 BP神经网络是由三层或者三层以上的多层神经网络,每一层都由若干个神经元组成。假设输入层个数为3,输出层个数为2,其基本示意图如下图所示:

 

假设输出层的个数为l个,隐藏层的个数为m个,输出层的个数为n个,a_h是隐藏层第h个神经元的输出。w_{hj}是输入层第j个神经元和隐藏层第h个神经元之间的连接权值,那么第j个神经元的输入的公式为:

                                                            a_j{}=\sum_{h=1}^{m}w_{hj}a_h

神经元激活函数

BP神经网络一般是使用线性函数作为传递函数或者S型函数作为传递函数,S函数又可以分为log-sigmoid函数和Tan-sigmoid函数, 神经元激活函数

(1)Sigmoid函数

Sigmoid及其导数都是连续的,因Sigmoid函数又可以分为单极性S型曲线,其中单极性S型曲线的函数公式如下所示:

                                                        f(x)=\frac{1}{1+e^{-x}}

利用MATLAB来模拟f(x)的图像如下所示:

 双极性S型的函数公式如下所示:

                                                             f(x)=\frac{​{e^x-e^{-x}}}{e^x+e^{-x}}

上述公式的图像如下所示:

Sigmoid函数相对于Tan-signed来说,Sigmoid函数相对于线性函数的容错性更好同事线性精度也更高。

BP神经网络算法的整体框架

BP神经元网络的整体框架及其各自部分的功能是:

前向传播得到预测的结果
反向传播对于w和b进行反向传输
测试模型计算准确率

BP神经网络算法采用的是反向传播算法进行学习的。数据经过是经过一层一层地向后进行传递,从输入层来看,整个过程是沿着误差减少的方向进行,在运行过程中,不断向前修正网络的连接权值,最终使得误差减少到最少。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

每月一号准时摆烂

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

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

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

打赏作者

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

抵扣说明:

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

余额充值