bp神经网络算法推导

伤心兮 伤心兮     2022-12-02     653

关键词:

一、BP神经网络

BP神经网络是一种按照误差逆向传播算法训练的多层前馈神经网络,是应用最广泛也是最简单的神经网络模型之一。

1.1 BP神经网络的结构

  • 神经网络结构如下
  • 其中 x 1 , x 2 x_1,x_2 x1,x2为输入, φ \\varphi φ为激活函数。BP神经网络是一种按误差反向传播(简称误差反传)训练的多层前馈网络,其算法称为BP算法,它的基本思想是梯度下降法利用梯度搜索技术,以期使网络的实际输出值和期望输出值的误差均方差为最小。其均方误差表达式为 F = e 1 2 + e 2 2 = ( d 1 − y 1 ) 2 + ( d 2 − y 2 ) 2 \\beginalign F=e_1^2+e_2^2=(d_1-y_1)^2+(d_2-y_2)^2 \\endalign F=e12+e22=(d1y1)2+(d2y2)2其中 e 1 , e 2 e_1,e_2 e1,e2为误差, d 1 , d 2 d_1,d_2 d1,d2为样本真实标签, y 1 , y 2 y_1,y_2 y1,y2为预测输。

1.2 BP神经网络算法流程

  • BP神经网络包括前向传播的反向传播,其算法流程图如图所示,
    首先给定算法模型的输入输出,也就是所说的训练集。接着求取模型的实际输出,就是模型计算输出的真实值。之后进行误差的计算,当误差满足所设需求时,一般为90%-95%,或者循环次数达到所设置值时,则结束训练。否则求取误差梯度和权值阈值更新,重复求取实际输出。

1.3 前向传播

输入信号通过隐含层作用于输出节点,经过非线性变换,产生输出信号,若实际输出与期望输出不相符,则转入误差的反向传播过程。以 y 1 y_1 y1这一条线路为例,
其前向传播公式为 y 1 ( 1 ) = φ ( x 1 ⋅ w 11 ( 1 ) + x 2 ⋅ w 12 ( 1 ) ) \\beginalign y_1^(1)=\\varphi(x_1\\cdot w_11^(1)+x_2\\cdot w_12^(1)) \\endalign y1(1)=φ(x1w11(1)+x2w12(1)) v 1 ( 1 ) = x 1 ⋅ w 11 ( 1 ) + x 2 ⋅ w 12 1 v_1^(1)=x_1\\cdot w_11^(1)+x_2\\cdot w_12^1 v1(1)=x1w11(1)+x2w121,则上式变为
y 1 ( 1 ) = φ ( v 1 ( 1 ) ) \\beginalign y_1^(1)=\\varphi(v_1^(1)) \\endalign y1(1)=φ(v1(1))最终前向传播的结果为 y 1 = φ ( y 1 ( 1 ) ⋅ w 11 ( 2 ) + y 2 ( 1 ) ⋅ w 12 ( 2 ) ) \\beginalign y_1=\\varphi(y_1^(1)\\cdot w_11^(2)+y_2^(1)\\cdot w_12^(2)) \\endalign y1=φ(y1(1)w11(2)+y2(1)w12(2))最终误差为: e 1 2 = [ d 1 − φ ( y 1 ( 1 ) ⋅ w 11 ( 2 ) + y 2 ( 1 ) ⋅ w 12 ( 2 ) ) ] 2 \\beginalign e_1^2=[d_1-\\varphi(y_1^(1)\\cdot w_11^(2)+y_2^(1)\\cdot w_12^(2))]^2 \\endalign e12=[d1φ(y1(1)w11(2)+y2(1)w12(2))]2 v 1 ( 2 ) = y 1 ( 1 ) ⋅ w 11 ( 2 ) + y 2 ( 1 ) ⋅ w 12 ( 2 ) v_1^(2)=y_1^(1)\\cdot w_11^(2)+y_2^(1)\\cdot w_12^(2) v1(2)=y1(1)w11(2)+y2(1)w12(2)得到, e 1 2 = [ d 1 − φ ( v 1 ( 2 ) ) ] 2 \\beginalign e_1^2=[d_1-\\varphi(v_1^(2))]^2 \\endalign 查看详情

神经网络——bp学习算法推导

参考书籍:人工智能及其应用(第三版)王万良输入层的神经元的输入输出关系一般是线性函数隐层()中神经元的输入输出关系一般是非线性函数与输出层中各个神经元的非线性输入输出关系记为第层的第个神经元到... 查看详情

bp算法的原理解释和推导

BP算法的原理解释和推导已知的神经网络结构:且已知的条件:a(j)=f(z(j))\\mathbfa^\\left(\\mathbfj\\right)=\\mathbff\\left(\\mathbfz^\\left(\\mathbfj\\right)\\right)a(j)=f(z(j))z(j)=W(j)a 查看详情

bp算法的原理解释和推导

BP算法的原理解释和推导已知的神经网络结构:且已知的条件:a(j)=f(z(j))\\mathbfa^\\left(\\mathbfj\\right)=\\mathbff\\left(\\mathbfz^\\left(\\mathbfj\\right)\\right)a(j)=f(z(j))z(j)=W(j)a(j−1)+b(j) 查看详情

bp算法公式推导

首先来了解基本的定义,如,其中,N表示训练样本的数量,向量x(n)表示第n个样本在输入层输入数据,向量d(n)表示在输出层对应的期望的输出。设神经元j位于网络的输出层,那么由该神经元输出产生的误差定义为:其中,表示期... 查看详情

神经网络和bp算法推导(代码片段)

我的原文:https://www.hijerry.cn/p/53364.html感知机感知机(perceptron)于1957年由Rosenblatt提出,是一种二分类线性模型。感知机以样本特征向量作为输入,输出为预测类别,取正、负两类。感知机最终学习到的是... 查看详情

bp算法完整推导2.0(上)

...反向传播算法(ErrorBackPropagationTraining)简称BP,解决了,多层神经网络,隐含层连接权值学习问题.BP用来干嘛:根据训练的误差,来动态更新节点之间的权值.分别独立发现:好比牛顿和莱布尼兹分别从各自领域创建了微积分.不由感慨,成功... 查看详情

误差逆传播(errorbackpropagation,bp)算法推导及向量化表示

1、前言     看完讲卷积神经网络基础讲得非常好的cs231后总感觉不过瘾,主要原因在于虽然知道了卷积神经网络的计算过程和基本结构,但还是无法透彻理解卷积神经网络的学习过程。于是找来了进阶的教材Not... 查看详情

bp神经网络算法推导

一、BP神经网络BP神经网络是一种按照误差逆向传播算法训练的多层前馈神经网络,是应用最广泛也是最简单的神经网络模型之一。1.1BP神经网络的结构神经网络结构如下其中x1,x2x_1,x_2x1​,x2​为输入,φ\\varphiφ为激活函数... 查看详情

bp神经网络算法推导

一、BP神经网络BP神经网络是一种按照误差逆向传播算法训练的多层前馈神经网络,是应用最广泛也是最简单的神经网络模型之一。1.1BP神经网络的结构神经网络结构如下其中x1,x2x_1,x_2x1​,x2​为输入,φ\\varphiφ为激活函数... 查看详情

手推机器学习吴恩达神经网络bp反向传播矩阵推导(上篇)

前言在吴恩达斯坦福机器学习中关于BP算法(BackpropagationAlgorithm)只给出了最后的BP矩阵的推导结果,略去了中间的推导过程,初学者理解起来相当困难。本文给出了BP推导常遇到两种推导形式,并给出了详细... 查看详情

一文彻底搞懂bp算法:原理推导+数据演示+项目实战(上篇)

...原理之后,我们会将一些具体的数据带入一个简单的三层神经网络中,去完整的体验一遍BP算法的计算过程;下篇是一个项目实战,我们将带着读者一起亲手实现一个BP神经网络(不使用任何第三方的深度学习框架)来解决一个... 查看详情

backpropagation算法的推导与直观图解

...小节的延伸。文章分三个部分:第一部分给出一个简单的神经网络模型和Backpropagation(以下简称BP)算法的具体流程。第二部分以分别计算第一层和第二层中的第一个参数(parameters,在神经网络中也称之为weights)的梯度为例来... 查看详情

bp算法完整推导2.0(下)

上篇主要阐述BP算法的过程,以及推导的4大公式的结论,现在呢要来逐步推导出这写公式的原理.当理解到这一步,就算真正理解BP算法了.也是先做一个简单的回顾一下,不是很细,重点在推导,不清楚就结合图像呀,其实很直观的.全篇其... 查看详情

dl4nlp——神经网络前馈神经网络的bp反向传播算法步骤整理

   这里把按[1]推导的BP算法(Backpropagation)步骤整理一下,备忘使用。[1]中直接使用矩阵微分的记号进行推导,整个过程十分简洁。而且这种矩阵形式有一个非常大的优势就是对照其进行编程实现时非常方便。 &nbs... 查看详情

神经网络-反向传播bp算法推导

还是用前向算法的图,然后仔细一看分类输出,发现好像错了,这该如何去反向修改权值呢?因其是网络结构,改变一点,必然会引起一连串的改动,这个过程,如何来描述呢?数学推导声明变量首先,且极为重要的一步就是,变量定义.跟写代... 查看详情

bp神经网络公式推导及实现mnist(代码片段)

BP神经网络的基础介绍见:http://blog.csdn.net/fengbingchun/article/details/50274471,这里主要以公式推导为主。BP神经网络又称为误差反向传播网络,其结构如下图。这种网络实质是一种前向无反馈网络,具有结构清晰、易实现、计算功能... 查看详情

深度学习bp算法的推导(附加rnn,lstm的推导说明)

...equenceLabelling withRecurrentNeuralNetworks》详细介绍其关于BP算法的推导过程。     2)论文没有提到过偏差的处理,不过如果能耐心推导出论文给出的公式,那么这将十分简单。   &nbs 查看详情