bp算法的原理解释和推导

Super__Tiger Super__Tiger     2022-11-29     710

关键词:

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 ) ,而 θ ( j ) = W ( j ) , b ( j ) \\mathbfz^\\left( \\mathbfj \\right)=\\mathbfW^\\left( \\mathbfj \\right)\\mathbfa^\\left( \\mathbfj-1 \\right)+\\mathbfb^\\left( \\mathbfj \\right)\\text,而\\mathbf\\theta ^\\left( \\mathbfj \\right)=\\left\\ \\mathbfW^\\left( \\mathbfj \\right),\\mathbfb^\\left( \\mathbfj \\right) \\right\\ z(j)=W(j)a(j1)+b(j),而θ(j)=W(j),b(j)

对于上图,如果我们想得到 ∂ l ∂ θ ( j ) \\frac\\partial \\mathbfl\\partial \\mathbf\\theta ^\\left( \\mathbfj \\right) θ(j)l,可以通过 z ( j ) \\mathbfz^\\left( \\mathbfj \\right) z(j)建立l和θ(j)之间的联系,即 ∂ l ∂ θ ( j ) = ∂ l ∂ z ( j ) ∗ ∂ z ( j ) ∂ θ ( j ) \\frac\\partial \\mathbfl\\partial \\mathbf\\theta ^\\left( \\mathbfj \\right)=\\frac\\partial \\mathbfl\\partial \\mathbfz^\\left( \\mathbfj \\right)*\\frac\\partial \\mathbfz^\\left( \\mathbfj \\right)\\partial \\mathbf\\theta ^\\left( \\mathbfj \\right) θ(j)l=z(j)lθ(j)z(j),而l和z(j)之间的联系则可以通过z(j+1)进行建立 ∂ l ∂ z ( j ) = ∂ l ∂ z ( j + 1 ) ∗ ∂ z ( j + 1 ) ∂ z ( j ) = ∂ l ∂ z ( j + 1 ) ∗ ∂ z ( j + 1 ) ∂ a ( j ) ∗ ∂ a ( j ) ∂ z ( j ) \\frac\\partial \\mathbfl\\partial \\mathbfz^\\left( \\mathbfj \\right)=\\frac\\partial \\mathbfl\\partial \\mathbfz^\\left( \\mathbfj+1 \\right)*\\frac\\partial \\mathbfz^\\left( \\mathbfj+1 \\right)\\partial \\mathbfz^\\left( \\mathbfj \\right)=\\frac\\partial \\mathbfl\\partial \\mathbfz^\\left( \\mathbfj+1 \\right)*\\frac\\partial \\mathbfz^\\left( \\mathbfj+1 \\right)\\partial \\mathbfa^\\left( \\mathbfj \\right)*\\frac\\partial \\mathbfa^\\left( \\mathbfj \\right)\\partial \\mathbfz^\\left( \\mathbfj \\right) z(j)l=z(j+1)lz(j)z(j+1)=z(j+1)la(j)z(j+1)z(j)a(j),由此,我们得到 ∂ l ∂ θ ( j ) = ∂ l ∂ z ( j + 1 ) ∗ ∂ z ( j + 1 ) ∂ a ( j ) ∗ ∂ a ( j ) ∂ z ( j ) ∗ ∂ z ( j ) ∂ θ ( j ) \\frac\\partial \\mathbfl\\partial \\mathbf\\theta ^\\left( \\mathbfj \\right)=\\frac\\partial \\mathbfl\\partial \\mathbfz^\\left( \\mathbfj+1 \\right)*\\frac\\partial \\mathbfz^\\left( \\mathbfj+1 \\right)\\partial \\mathbfa^\\left( \\mathbfj \\right)*\\frac\\partial \\mathbfa^\\left( \\mathbfj \\right)\\partial \\mathbfz^\\left( \\mathbfj \\right)*\\frac\\partial \\mathbfz^\\left( \\mathbfj \\right)\\partial \\mathbf\\theta ^\\left( \\mathbfj \\right) θ(j)l=z(j+1)la(j)z(j+1)z(j)a(j)θ(j)z(j)(链式求导法则),然后不断的迭代求导下去。

这里我们细心观察下式:

其中, ∂ z ( j + 1 ) ∂ a ( j ) = w ( j + 1 ) \\frac\\partial \\mathbfz^\\left( \\mathbfj+1 \\right)\\partial \\mathbfa^\\left( \\mathbfj \\right)=\\mathbfw^\\left( \\mathbfj+1 \\right) a(j)z(j+1)=wbp算法基本原理推导----《机器学习》笔记

前言多层网络的训练需要一种强大的学习算法,其中BP(errorBackPropagation)算法就是成功的代表,它是迄今最成功的神经网络学习算法。今天就来探讨下BP算法的原理以及公式推导吧。神经网络先来简单介绍一下神经网络,引入基... 查看详情

adaboost算法的原理推导及解释(代码片段)

文章目录Adaboost算法的原理推导及解释前置知识:Boosting概述Boosting方法的基本思想Boosting方法的的学习方法核心部分:Adaboost算法的原理推导和解释Adaboost算法的基本思想Adaboost算法的算法流程Adaboost算法的原理推导及解释... 查看详情

adaboost算法的原理推导及解释(代码片段)

文章目录Adaboost算法的原理推导及解释前置知识:Boosting概述Boosting方法的基本思想Boosting方法的的学习方法核心部分:Adaboost算法的原理推导和解释Adaboost算法的基本思想Adaboost算法的算法流程Adaboost算法的原理推导及解释... 查看详情

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

参考技术A反向传播算法(BackpropagationAlgorithm,简称BP算法)是深度学习的重要思想基础,对于初学者来说也是必须要掌握的基础知识!本文希望以一个清晰的脉络和详细的说明,来让读者彻底明白BP算法的原理和计算过程。全文... 查看详情

em算法的原理推导及解释(代码片段)

文章目录EM算法的原理推导及解释前置知识:极大似然估计(MaximumLikelihood)核心部分:期望最大化算法(ExpectationMaximum)实例:EM求解“三硬币”模型的完整推导及解释EM算法的原理推导及解释本质上,EM算法针对... 查看详情

em算法的原理推导及解释(代码片段)

文章目录EM算法的原理推导及解释前置知识:极大似然估计(MaximumLikelihood)核心部分:期望最大化算法(ExpectationMaximum)实例:EM求解“三硬币”模型的完整推导及解释EM算法的原理推导及解释本质上,EM算法针对... 查看详情

模糊c–均值聚类算法的原理解释及推导

文章目录模糊𝑐–均值聚类算法的原理解释及推导前置知识:𝑘–均值聚类的缺陷核心部分:模糊𝑐–均值聚类基本思想:原理推导:算法流程及实例分析:模糊𝑐–均值聚类算法的原理解... 查看详情

模糊c–均值聚类算法的原理解释及推导

文章目录模糊𝑐–均值聚类算法的原理解释及推导前置知识:𝑘–均值聚类的缺陷核心部分:模糊𝑐–均值聚类基本思想:原理推导:算法流程及实例分析:模糊𝑐–均值聚类算法的原理解... 查看详情

backpropagation算法的推导与直观图解

...出一个简单的神经网络模型和Backpropagation(以下简称BP)算法的具体流程。第二部分以分别计算第一层和第二层中的第一个参数(parameters,在神经网络中也称之为weights)的梯度为例来解释BP算法流程,并给出了具体的推导过程。 查看详情

bp算法完整推导2.0(上)

前面的笔记已经把BP算法给推导了,那4大公式,核心就是求偏导数的链式法则,这篇,再来跟着大佬来推一波,目的是为了加深印象.关于记忆这个话题,心理学家,其实早已经给出了答案,最好的记忆方式,就是重复,写了这么多的笔记,其实... 查看详情

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

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

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

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

bp神经网络算法推导

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

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

...材NotesonConvolutionalNeuralNetworks,结果刚看到第2章教材对BP算法的回顾就犯难了,不同于之前我学习的对每一个权值分别进行 查看详情

bp神经网络的梳理

...网络被称为“深度学习之旅的开端”,是神经网络的入门算法。各种高大上的神经网络都是基于BP网络出发的,最基础的原理都是由BP网络而来[1],另外由于BP神经网络结构简单,算法经典,是神经网络中应用最广泛的一种。BP神... 查看详情

bp算法完整推导2.0(下)

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

bp算法公式推导

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

em算法的基本原理和推导

参考: 从最大似然到EM算法浅解(EM算法)TheEMAlgorithmEM算法的九层境界:Hinton和Jordan理解的EM算法 在EM算法的证明中,其实比较好理解,总结如下:从最大似然估计出发====> 将隐变量暴露出来,写出累加/积分的形式... 查看详情