搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
思考机器5
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
Hadoop运行报ERROR: Attempting to operate on hdfs as root或者HDFS_ZKFC_USER defined错误的解决方法_starting namenodes on [master] error: attempting t
2
hadoop完全分布式集群搭建(超详细)-大数据集群搭建_hadoop完全分布式搭建步骤
3
微信小程序开发(超详细保姆式教程)
4
Stable Diffusion WebUI安装和使用教程(Windows)_sd-webui-oldsix-prompt
5
EDA实验------数控分频器设计(QuartusII)_数控分频器的设计
6
Qt鼠标点击事件处理:显示鼠标点击位置(完整示例)_qt 实时获取鼠标坐标
7
【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇
8
解读Stable Video Diffusion:详细解读视频生成任务中的数据清理技术
9
基于51单片机的四种波形信号发生器仿真设计(仿真+程序源码+设计说明书+讲解视频)_单片机波形发生器的制作仿真
10
大模型幻觉成应用落地难题 最新评测文心一言解决幻觉能力最好
当前位置:
article
> 正文
反向传播算法(过程及公式推导)_反向传播算法(过程及公式推导)
作者:思考机器5 | 2024-02-04 21:25:52
赞
踩
反向传播算法(过程及公式推导)
反向传播算法(Backpropagation)是目前用来训练人工神经网络(Artificial Neural Network,ANN)的最常用且最有效的算法。其主要思想是:
(1)将训练集数据输入到ANN的输入层,经过隐藏层,最后达到输出层并输出结果,这是ANN的前向传播过程;
(2)由于ANN的输出结果与实际结果有误差,则计算估计值与实际值之间的误差,并将该误差从输出层向隐藏层
反向传播
,直至传播到输入层;
(3)在反向传播的过程中,根据误差调整各种参数的值;不断迭代上述过程,直至收敛。
反向传播算法的思想比较容易理解,但具体的公式则要一步步推导,因此本文着重介绍公式的推导过程。
1. 变量
定义
上图是一个三层人工神经网络,layer1至layer3分别是输入层、隐藏层和输出层。如图,先定义一些变量:
表示第
层的第
个神经元连接到第
层的第
个神经元的权重;
表示第
层的第
个神经元的偏置;
表示第
层的第
个神经元的输入,即
:
表示第
层的第
个神经元的输出,即
:
其中
表示激活函数。
2. 代价函数
代价
函数被用来计算ANN输出值与实际值之间的误差。常用的代价函数是二次代价函数(Quadratic cost function):
其中,
表示输入的样本,
表示实际的分类,
表示预测的输出,
表示神经网络的最大层数。
3. 公式及其推导
本节将介绍
反向传播算法用到的4个公式,并进行推导。
如果不想了解公式推导过程,请直接看第4节的算法步骤。
首先,
将第
层第
个神经元中产生的错误(即实际值与预测值之间的误差)定义为:
本文
将以一个输入样本为例进行说明,此时代价函数表示为:
公式1(计算最后一层神经网络产生的错误):
其中,
表示Hadamard乘积,用于矩阵或向量之间点对点的乘法运算。
公式1的推导过程如下:
公式2(由后往前,计算每一层神经网络产生的错误):
推导过程:
公式3(计算权重的梯度):
推导过程:
公式4(计算偏置的梯度):
推导过程:
4. 反向传播算法伪代码
输入训练集
对于训练集中的每个样本x,设置输入层(Input layer)对应的激活值
:
前向传播:
,
计算输出层产生的错误:
反向传播错误:
使用梯度下降(gradient descent),训练参数:
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/article/detail/59931
推荐阅读
article
125款
程序员
专属
情人节
表白
网站
【建议收藏】
HTML
+CSS+JavaScript_
程序员
表白
网站
...
七夕来袭!是时候展现专属于
程序员
的浪漫了!你打算怎么给心爱的人表达爱意?鲜花礼物?代码
表白
?还是创意DIY?或者.......
赞
踩
article
K8s
之
configMap
...
1.1 什么是
configMap
configMap
是Kubernetes中的一种资源对象,用于存储配置数据。它可以包含键...
赞
踩
article
总结
Linux
下
查看
内存
使用
情况的多种方法_如何
查看
linux
历史
内存
使用
情况记录...
进程的
内存
使用
信息也可以通过 /proc//statm 和 /proc//status 来
查看
。通过本文的学习,你已经了...
赞
踩
article
使用
transform
:
translate
()
出现
内容
模糊
问题
_
translate
模糊
...
[详细] -->
赞
踩
article
大
模型
入门
(
三)—— 大
模型
的
训练方法
...
属于数据并行
的
范畴,但又很不一样,在ZeRO中会将
模型
参数、优化器参数、梯度等分片到不同
的
GPU上,ZeRO
的
方法可以配...
赞
踩
article
重装
Ubuntu
之
后
无法启动
_
wsl
安装
ubanto
后
打开
没反应...
【代码】重装
Ubuntu
之
后
无法启动。
_
wsl
安装
ubanto
后
打开
没反应
wsl
安装
ubanto
后
打开
没反应 ...
赞
踩
article
Ubuntu20.04+
RealSense
D455
_error: could not
find
g...
Ubuntu20.04装
RealSense
D455
的驱动 Ubuntu20.04装
RealSense
D455
的驱动官...
赞
踩
article
终止
一个
TCP
连接
要经过
四次
挥手
内容_
tpc
连接
...
1、建立
一个
连接
需要三次握手,而终止
一个
连接
要经过
四次
挥手
。2、原因:这由
TCP
的半关闭(half-close)造成的。...
赞
踩
article
Linux
中该如何
查看
当前
CPU
、内存、硬盘
占用
情况
,如何判断当前
服务器
负载
情况
_linux
查看
服务...
Linux
中该如何
查看
当前
CPU
、内存、硬盘
占用
情况
,如何判断当前
服务器
负载
情况
_linux
查看
服务器
资源
占用
情况
lin...
赞
踩
article
5.3-
神经网络
-
反向
传播
算法
_
神经网络
中
反向
传播
的
代码...
该部分介绍了数据读取函数及可视化
的
工作,包括导入数据和画图函数
的
使用,以及训练结果
的
展示。同时提出了一个问题,即为什么成...
赞
踩
article
Selenium
自动化
测试
面试题全家桶...
通过工具或脚本代替手工
测试
执行过程的
测试
都叫
自动化
测试
。
自动化
测试
的优势1、减少回归
测试
成本2、减少兼容性
测试
成本3、提...
赞
踩
article
Ubuntu16.04
在线安装
RealSense
SDK
与
使用
_
d405
相机
sdk
...
Qt下
使用
RealSense
(Ubuntu)1.介绍2018年1月19日,英特尔宣布更新
RealSense
深度摄像头产品...
赞
踩
article
python
画
24
色
卡
图及对比图,
s
RGB
反
gamma
操作得到线性
RGB
数值(附代码)_
24
色
摄影
色
...
【代码】
python
画
24
卡图及对比图。
python
gamma
和 de-
gamma
_
24
色
摄影
色
卡
rgb
24
色
摄...
赞
踩
article
微分方程
应用(
MATLAB
)...
【例题2】
微分方程
解析解。【例题3】求解方程组。
微分方程
应用(
MATLAB
) 【例题1】matl...
赞
踩
article
猿人学
爬虫
第
19
题-乌拉
_
python
tls
_
client
...
猿人学
爬虫
web第
19
题-乌拉 过
tls
指纹检测
_
python
tls
_
client
python
tls
_
client
...
赞
踩
article
【博客195】
ping
命令
发送了
什么
报文
?
_
ping
的
报文
...
内容: 记录
ping
命令
使用了
什么
报文
来完成探测
的
ping
使用了
什么
报文
:
ping
命令
使用了ICMP
报文
,ICMP
报文
有...
赞
踩
article
h5
页面
内嵌到
app
,解决
ios
无法使用左右侧滑
返回
上
一页
...
vue+vant组合开发的h5
页面
,嵌入多个
app
,其中安卓手机都可实现侧滑
返回
上
一页
,而苹果端不行,
app
本身不展示t...
赞
踩
article
App
测试
中
ios
和
Android
有
哪些区别呢?...
对于 iOS,函数是用来与其他开发语言进行交互的函数,函数的主要作用是接收用户输入并返回给用户。
Android
端则与 i...
赞
踩
article
7.
物理
地址
(
MAC
地址
)是什么?_
00
:
0c
:
29
:
3c
:
c7
:
1e
物理
地址
...
欢迎关注我的公众号是【CodeAllen】,关注回复【1024】获取资源程序员技术交流①群:736386324 ,程序员...
赞
踩
article
Linux
查看
内存
使用
情况_%
mem
查看
...
1 . top :用于实时显示 process 的动态 PID:进程的ID USER:进程所有 PR:进程的优先...
赞
踩
相关标签
javascript
html
css
七夕情人节表白网站制作html
html生日祝福网站制作
kubernetes
java
容器
linux
服务器
运维
人工智能
深度学习
机器学习
ubuntu
c语言
TCP
四次挥手
神经网络
算法
python
selenium
测试工具
自动化测试