微积分在神经网络中的本质

calculus

在一个神经网络中我们通常将每一层的输出结果表示为: a l a^{l} al

为了方便记录,将神经网络第一层记为:

1 \] \[1\] \[1

对应的计算记录为为:
a l : 第 l 层 a j : 第 j 个神经元 a^{l}:\textcolor{red}{第l层}\\ a_{j}:\textcolor{green}{第j个神经元}\\ al:第l层aj:第j个神经元

代价函数为:

其中y为实际值,

而对于 d C 0 d w {d{C_0}\over dw} dwdC0是求斜率,或者具体的解释是 w \textcolor{green}{w} w的数值变动对 C 0 \textcolor{red}{C_0} C0的影响:

根据链式法则:
具体计算过程:

所以 w \textcolor{green}{w} w的数值变动对 C 0 \textcolor{red}{C_0} C0的影响与:真实值与计算值的偏差、激活函数 σ \sigma σ,上一层的输出值有关

如果理解了上述的内容,其他的代价函数 ∇ C \nabla C ∇C就只是换偏导对象即可:

比如,如果要计算 d C 0 d b {d{C_0}\over db} dbdC0,只需要替换一项即可:

同理,应用在BP中可以计算 w j k L ; 一条线的权值的影响 w^{L}_{jk}\textcolor{red}{;一条线的权值的影响} wjkL;一条线的权值的影响(其中jk分别代表 L − 1 L-1 L−1和 L L L层中的不同点):

也可以计算 a k L − 1 ; 前一层的输出值的影响 a^{L-1}_{k}\textcolor{red}{;前一层的输出值的影响} akL−1;前一层的输出值的影响:

相关推荐
罗西的思考3 小时前
AI 时代的 “房谋杜断”:如何培养能力、品味与判断力
人工智能·算法·机器学习
打工仔折腾 AI4 小时前
在 Ubuntu ARM64 部署 Q1 V3.0 MuJoCo 模型:加载、单步推理与执行器响应解析
linux·运维·人工智能·python·深度学习·ubuntu·性能优化
Jsundoku9 小时前
第七章 机器学习 -- 其他经典算法
人工智能·算法·机器学习
Apok'10 小时前
零基础学Python量化(1):研究大纲与流程
python·机器学习·金融·数据挖掘·数据分析
陈嘿萌10 小时前
Fusion Anything Model:面向通用多模态融合的基座模型
图像处理·人工智能·深度学习·计算机视觉·学术研究与理论基础
老鱼说AI10 小时前
SNN脉冲神经网络:全连接、卷积与循环SNN
人工智能·深度学习·神经网络·机器学习·自然语言处理
程序猿编码10 小时前
纯 C++ 手写 LLM 推理引擎:分页 KV 缓存、连续批、多卡张量并行全部内置
c++·深度学习·缓存·大模型推理·自动微分·模型推理
Jsundoku11 小时前
第八章 机器学习 -- 集成学习
人工智能·机器学习·集成学习
在所不辞兄11 小时前
【零基础学智能仿真-62】从应变—应力计算弹性常数
人工智能·深度学习·神经网络·机器学习·有限元·智能仿真
kaixin_啊啊11 小时前
【零基础学AI】第 17 章——一个机器学习项目怎样完成
人工智能·机器学习