机器学习-神经网络(BP神经网络前向和反向传播推导)

1.1 神经元模型

神经网络(neural networks)方面的研究很早就已出现,今天"神经网络"已是一个相当大的、多学科交叉的学科领域.各相关学科对神经网络的定义多种多样,本书采用目前使用得最广泛的一种,即"神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应"Kohonen,1988. 我们在机器学习中谈论神经网络时指的是"神经网络学习",或者说,是机器学习与神经网络这两个学科领域的交叉部分.

神经网络中最基本的成分是神经元(neuron)模型,即上述定义中的"简单单元",在生物神经网络中,每个神经元与其他神经元相连,当它"兴奋"时,就会向相连的神经元发送化学物质,从而改变这些神经元内的电位;如果某神经元的电位超过了一个"阈值"(threshold),那么它就会被激活,即"兴奋"起来,向其他神经元发送化学物质.

1943年,McCulloch and Pitts,1943将上述情形抽象为图5.1所示的简单模型,这就是一直沿用至今的"M-P神经元模型".在这个模型中,神经元接收到来自n个其他神经元传递过来的输入信号,这些输入信号通过带权重的连接(connection)进行传递,神经元接收到的总输入值将与神经元的阈值进行比较,然后通过"激活函数"(activation function)处理以产生神经元的输出.理想中的激活函数是图5.2(a)所示的阶跃函数,它将输入值映射为输出值"0"或"1",显然"1"对应于神经元兴奋,"0"对应于神经元抑制.

然而,阶跃函数具有不连续、不光滑等不太好的性质,因此实际常用Sigmoid函数作为激活函数. 典型的Sigmoid函数如图5.2(b)所示,它把可能在较大范围内变化的输入值挤压到(0,1)输出值范围内,因此有时也称为"挤压函数"(squashing function).

把许多个这样的神经元按一定的层次结构连接起来,就得到了神经网络.

事实上,从计算机科学的角度看,我们可以先不考虑神经网络是否真的模拟了生物神经网络,只需将一个神经网络视为包含了许多参数的数学模型,这个模型是若干个函数相互(嵌套)代入而得. 有效的神经网络学习算法大多以数学证明为支撑.

1.2 感知机与多层神经网络

感知机(Perceptron)由两层神经元组成,如图5.3所示,输入层接收外界输入信号后传递给输出层,输出层是M-P神经元,亦称"阈值逻辑单元"(threshold logic unit).

神经网络默认的方向是从输入到输出,信息可以看成是向前传递的,因此从输入到输出进行信息传递的多层神经网络也称为多层前馈型神经网络。

单层感知器能够解决线性问题,但无法解决非线性问题。处理非线性问题需要多层神经网络,即多层感知器模型(Multi-Layer Perceptron,MLP)。在多层神经网络中,有输入层、中间层(又称隐藏层,可有多层)和输出层。每一层神经元只接受来自前一层神经元的输入。

1.3 BP神经网络

向前传播:

输入层->隐含层:i->h

计算神经元输入加权求和:

神经元h1输出oh1:

隐含层->输出层:h->o

计算神经元输入加权和:

神经元o1的输出:

反向传播:

计算误差:

在这题中为:

隐含层->输入层:h->o

隐含层->隐含层:h->i

为学习率

相关推荐
阳光是sunny2 小时前
别再被 worktree 绕晕了!AI 编程时代你必须掌握的 Git 隔离神器
前端·人工智能·后端
冬奇Lab3 小时前
每日一个开源项目(第148篇):obsidian-skills - Obsidian CEO 亲写的 AI Agent 格式规范,让 Agent 不再破坏你的 Vault
人工智能·开源·资讯
ethantan3 小时前
AI Agent 组成:像人一样思考的智能体
人工智能·程序员·架构
冬奇Lab3 小时前
Workflow 系列(05):评测体系——三层测试结构与 Trace 追踪
人工智能·工作流引擎
ethantan3 小时前
一篇讲解AI Agent 组成:像人一样思考的智能体
人工智能·后端·程序员
apocelipes5 小时前
常用编程语言和库的正则表达式性能对比
c语言·c++·python·性能优化·golang·开发工具和环境
Cosolar5 小时前
vLLM 生产级部署完全指南
人工智能·后端·架构
CodePlayer竟然被占用了6 小时前
被美国政府封杀18天,Claude Fable 5 回来了——但代价是什么?
人工智能
IT_陈寒6 小时前
垃圾回收器选错了,我的Java服务内存炸了
前端·人工智能·后端
HjhIron7 小时前
面试常客:字符串算法从入门到进阶
算法·面试