BP神经网络
首先给出只包含一个隐层的BP神经网络模型(两层神经网络):
BP神经网络其实由两部分组成:
- 前馈神经网络:神经网络是前馈的,其权重都不回送到输入单元,或前一层输出单元(数据信息是单向传播的,不会回流),区别于循环神经网络RNN。
- BP算法(Back Propagation):误差反向传播算法,用于更新网络中的权重。
BP神经网络思想:
- 表面上:1. 数据信息的前向传播,从输入层到隐含层,最后到输出层。2. 误差的反向传播:输出结果与真实结果的误差值,从输出层传递到隐含层,最后到输入层。
- 本质上:针对每个输入样本,采用随机梯度下降算法,动态更新网络中的权重和偏倚,以使网络的输出不断地接近期望的输出。
BP神经网络算法推导(更新权重和偏倚):

从上面推导可以发现:
对于任意从神经元i(输出神经元/隐层神经元)至 神经元j(隐层神经元/输出层神经元)的权重w ijwijw_{ij},其权重更新量Δw ijΔwijDelta w_{ij}=学习步长η ηeta × × imes 前一层神经元的输出(x ixix_{i} 或y jyjy_{j})× × imes 后一层神经元(y jyjy_{j}或o koko_{k})的误差
神经元偏倚的变化量:ΔΘ ΔΘ Delta Theta=学习步长η ηeta × × imes 乘以神经元的误差
BP神经网络算法过程
网络的初始化:包括权重和偏倚的初始化
计算隐含层的输入输出
计算输出层的输入输出
误差的计算:隐层和输出层的误差
权值的更新:1. 输入层—隐层。2. 隐层—输出层
偏倚的更新:神经元的步长η ηeta × × imes 相应的误差err
判断算法迭代是否结束:1.超过迭代次数,2.相邻的两次误差之间的差别小于阈值等。
误差的反向传播描述
反向传播过程是这样的:输出层每个节点都会得到一个误差e(d k −o kdk−okd_{k}-o_{k}),把e作为输出层反向输入,这时候就像是输出层当输入层一样把误差往回传播,先得到输出层误差err kerrkerr_{k},然后将输出层err kerrkerr_{k}根据连接权重往隐层传输,得到隐层误差err jerrjerr_{j}。具体如下图所示(画的有点难看,将就看吧。。)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
神经网络
+关注
关注
42文章
4789浏览量
101556 -
BP神经网络
+关注
关注
2文章
127浏览量
30655
发布评论请先 登录
相关推荐
什么是BP神经网络的反向传播算法
BP神经网络的反向传播算法(Backpropagation Algorithm)是一种用于训练神经网络的有效方法。以下是关于BP
BP神经网络的学习机制
BP神经网络(Backpropagation Neural Network),即反向传播神经网络,是一种基于梯度下降算法的多层前
全连接前馈神经网络与前馈神经网络的比较
随着人工智能技术的飞速发展,神经网络作为其核心组成部分,在各个领域展现出了强大的应用潜力和价值。在众多神经网络类型中,全连接前馈神经网络(F
bp神经网络和反向传播神经网络区别在哪
反向传播神经网络(Backpropagation Neural Network,简称BP神经网络)是一种多层前馈
bp神经网络算法过程包括
BP神经网络(Backpropagation Neural Network)是一种多层前馈神经网络,具有强大的非线性映射能力,广泛应用于模式
bp神经网络和卷积神经网络区别是什么
结构、原理、应用场景等方面都存在一定的差异。以下是对这两种神经网络的比较: 基本结构 BP神经网络是一种多层前馈
BP神经网络激活函数怎么选择
BP神经网络(Backpropagation Neural Network)是一种多层前馈神经网络,其核心思想是通过反向传播
评论