Day58:反向传播与优化算法
在上一节中,我们介绍了全连接神经网络,也完成了搭建任务。但是这样的矩阵参数并不能达到我们的要求,因此这一节中我们就讲一讲优化算法。在深度神经网络中,反向传播算法是一种用于优化网络参数的关键算法。它通过计算损失函数对每个参数的梯度,然后使用梯度下降或其他优化算法来更新参数,以最小化损失函数。
1. 数学推导
反向传播算法的数学推导涉及到链式法则和梯度计算。下面是反向传播算法的算法步骤:
- 步骤1:前向传播计算每一层的输出。
- 步骤2:计算输出层的损失函数关于输出的梯度。
- 步骤3:使用链式法则逐层计算每个参数的梯度。
- 步骤4:使用梯度下降或其他优化算法更新参数。
详细的推导过程如下:
假设我们有一个具有L层的神经网络,每一层的输出为 ,参数为 和 ,损失函数为 。
在前向传播中,我们根据当前的参数计算每一层的输出:
其中, 表示第l层的激活函数。
在反向传播中,我们首先计算输出层的梯度:
然后,使用链式法则逐层计算每个参数的梯度:
其中,m表示训练样本的数量。
最后,使用梯度下降或其他优化算法更新参数:
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
大模型-AI小册 文章被收录于专栏
1. AI爱好者,爱搞事的 2. 想要掌握第二门语言的Javaer或者golanger 3. 决定考计算机领域研究生,给实验室搬砖的uu,强烈建议你花时间学完这个,后续搬砖比较猛 4. 任何对编程感兴趣的,且愿意掌握一门技能的人