视频封面

视频元信息

  • 视频标题:(官方中英!) 2026公认最好的【吴恩达深度学习】教程!附课件、代码及实战项目 Professionalization of Deep Learning p16 16 - 2.9逻辑回归梯度下降
  • 所属课程:吴恩达深度学习专项课程(Deep Learning Specialization)
  • 课程模块:神经网络与深度学习(Neural Networks and Deep Learning)
  • 视频序号:第 2 周 第 9 节(2.9)
  • 时长:约 6 分 40 秒(约 400 秒)

内容摘要(TL;DR)

本节讲解如何用计算图(Computation Graph)对逻辑回归进行反向传播推导,逐步求出 da、dz、dw1、dw2、db 等关键梯度,并给出单样本梯度下降的参数更新公式。核心结论是:dz = a - y,dw = x · dz,db = dz。本节仅针对单个训练样本,为下一节在全部 m 个样本上应用打下基础。

章节笔记

一、本节目标与引入 [00:00]

本节的核心目标是:推导逻辑回归中实现梯度下降所需的关键导数公式。

  • 本节要回答的问题是:如何计算导数,从而对逻辑回归实现梯度下降。
  • 关键产出是:实现逻辑回归梯度下降所需的核心方程(key equations)。
  • 吴恩达特别说明:用计算图来推导逻辑回归的梯度其实有点"杀鸡用牛刀"(overkill),但之所以采用这种方式,是为了让学习者提前熟悉计算图这套思维工具,等到后面讲完整的神经网络时,会更容易理解。

理解:这里的教学策略是"先慢后快"。逻辑回归是神经网络的一个最简单的特例(单层、单神经元、Sigmoid 激活),把它的反向传播用计算图完整推一遍,后面推广到多层网络时,学生只需要"重复同样的模式"即可。

二、逻辑回归的计算图回顾 [00:44]

先回顾逻辑回归的前向传播(forward propagation)过程。

前向传播公式:

  • 预测值:ŷ = σ(z)
  • 其中 z = w₁x₁ + w₂x₂ + b(本节以两个特征 x₁、x₂ 为例)
  • 损失函数(单个样本):L(a, y),其中 a = ŷ 是回归输出,y 是真实标签(ground truth label)

计算图的结构(从左到右):

  1. 输入:w₁、w₂、b 以及特征值 x₁、x₂
  2. 计算 z:z = w₁x₁ + w₂x₂ + b
  3. 计算 a(即 ŷ):a = σ(z)
  4. 计算损失:L(a, y)

逻辑回归的目标: 修改参数 w 和 b,使损失 L 减小。

基础事实:逻辑回归的损失函数(交叉熵损失)为: L(a, y) = −[y·log(a) + (1−y)·log(1−a)] 这是后续求导的基础公式。

三、反向传播第一步:计算 da [02:28]

从计算图的最右端(损失 L)开始向左反向计算导数。

  • 第一个要求的是:损失 L 关于变量 a 的导数,代码中用 da 表示。
  • 推导结果:da = −y/a + (1−y)/(1−a)

说明与提醒:

  • 这个结果可以通过对损失函数关于 a 求导得到(会用微积分的话可以自己推)。
  • 易错点:吴恩达明确说,如果不会微积分也不用担心,课程会直接提供所需的导数公式。
  • 对于会微积分的同学,他鼓励自己动手,从上一页的损失公式出发,用微积分求出对 a 的导数。

推导(拓展): 设 L(a, y) = −[y·log(a) + (1−y)·log(1−a)] 对 a 求导: dL/da = −[y·(1/a) + (1−y)·(−1/(1−a))] = −y/a + (1−y)/(1−a) 这正是视频中给出的 da 表达式。

四、反向传播第二步:计算 dz [03:41]

  • 代码中变量名为 dz,表示损失关于 z 的导数(即 dL/dz)。
  • 核心结论:dz = a − y

推导过程(链式法则):

  • dz = (dL/da) · (da/dz)
  • 其中 dL/da 就是上一步求出的 da = −y/a + (1−y)/(1−a)
  • 而 da/dz = a·(1−a),这是 Sigmoid 函数导数的经典结论

推导(拓展):Sigmoid 函数 σ(z) = 1/(1+e^(−z)),其导数为 σ'(z) = σ(z)·(1−σ(z)),即 a·(1−a)。这是 Sigmoid 最重要的性质之一,也是深度学习中最常被引用的导数结论。

将两部分相乘并化简:

  • dz = [−y/a + (1−y)/(1−a)] · a·(1−a)
  • 展开化简后得到:dz = a − y

重要提醒:这个化简结果 dz = a − y 极其简洁漂亮,是逻辑回归梯度下降的核心。它也是后面所有神经网络反向传播中输出层梯度的基础形式。

考点:dz = a − y 这个结论必须牢记,它会在后续所有涉及逻辑回归和神经网络输出层的推导中反复出现。

五、反向传播第三步:计算 dw 和 db [05:13]

最后一步是回推到 w 和 b,计算需要改变多少。

关键公式:

  • dw₁ = x₁ · dz
  • dw₂ = x₂ · dz
  • db = dz

说明:

  • 因为 z = w₁x₁ + w₂x₂ + b,所以 z 对 w₁ 的偏导就是 x₁,对 w₂ 的偏导就是 x₂,对 b 的偏导就是 1。
  • 因此根据链式法则,dw₁ = x₁·dz,dw₂ = x₂·dz,db = 1·dz = dz。

理解:这一步的规律可以总结为"梯度 = 输入 × 上游梯度"。对于权重 w,它的梯度是它的输入 x 乘以上游梯度 dz;对于偏置 b,它的输入恒为 1,所以梯度就是 dz 本身。这个规律在多层神经网络中会以"dz 乘以该层输入"的形式反复出现。

六、单样本梯度下降的参数更新 [05:43]

对于单个训练样本,一次梯度下降的完整流程如下:

  1. 用公式计算 dz = a − y
  2. 用公式计算 dw₁ = x₁·dz,dw₂ = x₂·dz,db = dz
  3. 执行参数更新:
    • w₁ := w₁ − α · dw₁
    • w₂ := w₂ − α · dw₂
    • b := b − α · db

其中 α 是学习率(learning rate)。

  • 以上就是对单个样本执行一步梯度下降的完整过程。

易错点:注意更新时用的是减号(w − α·dw),因为梯度指向损失增大的方向,我们要沿梯度反方向下降。写成加号是最常见的低级错误。

重要提醒:本节讲的都是"对单个训练样本"的梯度。但实际训练逻辑回归时,训练集有 m 个样本,不能只用一个样本更新一次。如何把这些思路应用到整个训练集,是下一节的内容。

七、本节小结与下节预告 [06:22]

  • 本节完整演示了:如何计算导数,并对单个训练样本实现逻辑回归的梯度下降。
  • 下一节将把这里的结论推广:不是从单个样本学习,而是从整个训练集(m 个样本)学习。

思考:从单样本到 m 个样本,核心变化是把每个样本的 dw 求出来再求和/求平均,得到全局梯度后再更新一次参数。这正是下一节要讲的"梯度下降在 m 个样本上的应用"。

关键公式速查表

步骤 公式 代码变量名
前向:线性部分 z = w₁x₁ + w₂x₂ + b z
前向:激活 a = σ(z) a
反向:损失对 a da = −y/a + (1−y)/(1−a) da
反向:损失对 z dz = a − y dz
反向:损失对 w₁ dw₁ = x₁ · dz dw1
反向:损失对 w₂ dw₂ = x₂ · dz dw2
反向:损失对 b db = dz db
更新 w₁ w₁ := w₁ − α·dw₁ —
更新 w₂ w₂ := w₂ − α·dw₂ —
更新 b b := b − α·db —

容易踩坑的点汇总

  1. Sigmoid 导数:da/dz = a·(1−a),这是化简 dz 的关键,必须记牢。
  2. dz = a − y:这个极简结果是逻辑回归反向传播的核心,务必牢记。
  3. 更新方向:参数更新用减号(w − α·dw),不要写成加号。
  4. 单样本 vs 全样本:本节只处理一个样本,实际训练要用 m 个样本,别混淆。
  5. 学习率 α:更新公式中的 α 是学习率,控制每步更新的幅度。

拓展补充【拓展】

  • 计算图的意义:计算图把复杂函数的求导拆解为一系列简单节点的局部求导,再通过链式法则组合。这正是现代深度学习框架(如 PyTorch、TensorFlow)自动微分(autograd)的底层原理。
  • 为什么用计算图讲逻辑回归是"overkill":逻辑回归只有一层,直接手推公式也很简单。但计算图的价值在于可扩展性——当网络变成几十层、每层有成千上万个参数时,只有计算图 + 链式法则的框架才能系统化地处理。
  • dz = a − y 的直观解释:当预测 a 大于真实 y 时,dz 为正,梯度下降会把 z 往小的方向推,从而让预测降低;反之亦然。这符合直觉。
  • 与后续内容的衔接:本节是理解神经网络反向传播(backpropagation)的"最小可运行案例",掌握后,多层网络的反向传播只是把同样的链式法则重复更多次而已。

关键标签 / 关键词

逻辑回归、梯度下降、反向传播、计算图、链式法则、Sigmoid 函数、交叉熵损失、参数更新、学习率、dz = a − y、dw = x·dz、db = dz、吴恩达深度学习、神经网络与深度学习、单样本梯度


生成时间:2026-10-10 21:31:34 生成平台:VideoNote www.xygy.top