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

calculus

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

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

[ 1 ] [1] [1]

对应的计算记录为为:
a [ l ] : 第 l 层 a [ j ] : 第 j 个神经元 a^{[l]}:\textcolor{red}{第l层}\\ a_{[j]}:\textcolor{green}{第j个神经元}\\ a[l]:第l层a[j]:第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;前一层的输出值的影响:

相关推荐
SmallBambooCode25 分钟前
【人工智能】【Python】在Scikit-Learn中使用KNN(K最近邻算法)
人工智能·python·机器学习·scikit-learn·近邻算法
Gene_INNOCENT44 分钟前
大型语言模型训练的三个阶段:Pre-Train、Instruction Fine-tuning、RLHF (PPO / DPO / GRPO)
人工智能·深度学习·语言模型
挣扎与觉醒中的技术人1 小时前
如何优化FFmpeg拉流性能及避坑指南
人工智能·深度学习·性能优化·ffmpeg·aigc·ai编程
watersink1 小时前
Dify框架下的基于RAG流程的政务检索平台
人工智能·深度学习·机器学习
lizz311 小时前
机器学习中的线性代数:奇异值分解 SVD
线性代数·算法·机器学习
程序员Linc1 小时前
计算机视觉 vs 机器视觉 | 机器学习 vs 深度学习:核心差异与行业启示
深度学习·机器学习·计算机视觉·机器视觉
不去幼儿园1 小时前
【启发式算法】Dijkstra算法详细介绍(Python)
人工智能·python·算法·机器学习·启发式算法·图搜索算法
serve the people1 小时前
神经网络中梯度计算求和公式求导问题
神经网络·算法·机器学习
zy_destiny1 小时前
【YOLOv12改进trick】三重注意力TripletAttention引入YOLOv12中,实现遮挡目标检测涨点,含创新点Python代码,方便发论文
网络·人工智能·python·深度学习·yolo·计算机视觉·三重注意力
自由的晚风1 小时前
深度学习在SSVEP信号分类中的应用分析
人工智能·深度学习·分类