游乐游手机版
首页/AI热点日报/热点详情

深度学习基础知识系列第五篇重点解析

类型:热点整理2026-07-11
从导数与偏导数引入梯度概念,梯度指向函数值下降最快的方向。梯度下降法沿梯度方向迭代更新参数,逐步减小损失函数值。学习率需适当设定,过大导致发散,过小收敛缓慢。该方法适用于神经网络权重优化,通过数值微分计算梯度并反复更新,最终逼近最优解。

在上一节中,我们需要找到使损失函数最小化的权重与偏置。高中数学告诉我们,求函数的极值可以通过令导数为零来实现。然而,在神经网络中,函数极其复杂,无法直接求得解析解,因此我们采用梯度下降法逐步逼近最优解。本教程将从导数基础讲起,层层深入,带你全面掌握梯度下降法的原理与实现方法。

1. 导数

导数是描述函数在某一点上瞬时变化率的概念,即某个瞬间的变化量。这个“瞬间”在数学上定义为时间趋近于0。

用代码实现一个简单的数值微分:

def numerical_diff(f,x):
  h=10e-50
  return(f(x+h)-f(x))/h

这里我们取一个极小的数 h 模拟趋近于0。但需要注意:如果 h 太小(如 10e-50),在计算机中可能产生舍入误差,因为浮点数精度有限,实际 h 可能被当作0。此外,上述公式计算的是 xx+h 之间的差分,并非真正的切线斜率,存在一定误差。

为了减小误差,可以使用中心差分:计算 f(x+h)f(x-h) 之间的差分,这样误差更小。

改进后的数值微分代码如下:

def numerical_diff(f,x):
  h=1e-4
  return (f(x+h)-f(x-h))/(2*h)

通常,我们使用数学公式直接求出的导数称为解析解,而上述数值微分得到的是近似值。由于误差非常小(当 h=1e-4 时),在工程中可以将两者视为等价。

来源:https://m.elecfans.com/article/2083666.html

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。