神经网络之理解梯度和方向导数

🔹 一、背景:多变量函数的变化率问题

设有一个多变量函数:

f(x,y)或更一般地 f(x1,x2,...,xn) f(x, y) \quad \text{或更一般地 } f(x_1, x_2, \dots, x_n) f(x,y)或更一般地 f(x1,x2,...,xn)

我们想知道:

  • 在点 a⃗=(x0,y0)\vec{a} = (x_0, y_0)a =(x0,y0) 处,沿任意方向 v⃗\vec{v}v 移动一点,函数值会怎么变化?

这时,就引入了方向导数 和梯度这两个概念。


🔹 二、方向导数:函数在任意方向的变化率

✅ 定义:

设 f(x,y)f(x, y)f(x,y) 在某点 a⃗=(x0,y0)\vec{a} = (x_0, y_0)a =(x0,y0) 可微,单位向量为:

v⃗=(v1,v2),且 ∥v⃗∥=1 \vec{v} = (v_1, v_2), \quad \text{且 } \|\vec{v}\| = 1 v =(v1,v2),且 ∥v ∥=1

那么,沿方向 v⃗\vec{v}v 的方向导数定义为:

Dv⃗f(x0,y0)=lim⁡h→0f(x0+hv1,y0+hv2)−f(x0,y0)h D_{\vec{v}} f(x_0, y_0) = \lim_{h \to 0} \frac{f(x_0 + h v_1, y_0 + h v_2) - f(x_0, y_0)}{h} Dv f(x0,y0)=h→0limhf(x0+hv1,y0+hv2)−f(x0,y0)

这表示:如果你从 (x0,y0)(x_0, y_0)(x0,y0) 出发,朝 v⃗\vec{v}v 方向走一点点,函数的增长速率是多少。


🔹 三、梯度向量:函数增长最快的方向

✅ 定义:

梯度向量记为 ∇f(x,y)\nabla f(x, y)∇f(x,y),定义为所有偏导数组成的向量:

∇f(x,y)=(∂f∂x,∂f∂y) \nabla f(x, y) = \left( \frac{\partial f}{\partial x}, \frac{\partial f}{\partial y} \right) ∇f(x,y)=(∂x∂f,∂y∂f)

几何上:

  • 它是一个向量;
  • 指向函数增长最快的方向;
  • 模长表示在该点的最大增长速率。

🔹 四、二者的数学联系:内积公式

方向导数其实就是梯度和方向向量的内积:

Dv⃗f(x,y)=∇f(x,y)⋅v⃗=(∂f∂x,∂f∂y)⋅(v1,v2)=∂f∂xv1+∂f∂yv2 D_{\vec{v}} f(x, y) = \nabla f(x, y) \cdot \vec{v} = \left( \frac{\partial f}{\partial x}, \frac{\partial f}{\partial y} \right) \cdot (v_1, v_2) = \frac{\partial f}{\partial x} v_1 + \frac{\partial f}{\partial y} v_2 Dv f(x,y)=∇f(x,y)⋅v =(∂x∂f,∂y∂f)⋅(v1,v2)=∂x∂fv1+∂y∂fv2

📌 解释:

  • 梯度是向量;
  • v⃗\vec{v}v 是你关心的方向;
  • 二者内积(投影)给出在这个方向上的函数增长率。

🔹 五、几何直观图景

想象函数 f(x,y)f(x, y)f(x,y) 是一个地形高度图,比如山的高度:

  • 每个点 (x,y)(x, y)(x,y) 都有一个高度 f(x,y)f(x, y)f(x,y);
  • 梯度向量 ∇f(x,y)\nabla f(x, y)∇f(x,y) 指向"爬得最快"的方向;
  • 你朝任意方向走(比如东南方向),方向导数告诉你:坡度是多陡?

📌 梯度的特性:

  • 指向增长最快的方向;
  • 垂直于等高线(等值线);
  • 零梯度点 ⇒ 驻点(可能是极值或鞍点)。

🔹 六、物理解读

1. 温度场(Heat Field)例子:

  • f(x,y)f(x, y)f(x,y) 表示某区域的温度;
  • 梯度 ∇f\nabla f∇f 表示:温度升高最快的方向;
  • 方向导数表示:你朝某方向走,温度的变化速率是多少。

🔹 七、例子:具体函数

设 f(x,y)=x2+y2f(x, y) = x^2 + y^2f(x,y)=x2+y2

  1. 梯度:

∇f(x,y)=(2x,2y) \nabla f(x, y) = (2x, 2y) ∇f(x,y)=(2x,2y)

在点 (1,1)(1, 1)(1,1):

∇f(1,1)=(2,2) \nabla f(1, 1) = (2, 2) ∇f(1,1)=(2,2)

表示函数增长最快的方向是向量 (2,2)(2, 2)(2,2),也就是从原点朝右上方。

  1. 方向导数:

设你想知道在点 (1,1)(1, 1)(1,1),朝单位向量 v⃗=12(1,1)\vec{v} = \frac{1}{\sqrt{2}}(1, 1)v =2 1(1,1) 方向的导数:

Dv⃗f(1,1)=∇f(1,1)⋅v⃗=(2,2)⋅12(1,1)=12(2+2)=42=22 D_{\vec{v}} f(1, 1) = \nabla f(1, 1) \cdot \vec{v} = (2, 2) \cdot \frac{1}{\sqrt{2}}(1, 1) = \frac{1}{\sqrt{2}} (2 + 2) = \frac{4}{\sqrt{2}} = 2\sqrt{2} Dv f(1,1)=∇f(1,1)⋅v =(2,2)⋅2 1(1,1)=2 1(2+2)=2 4=22

这表示:沿着 45∘45^\circ45∘ 方向,函数增长最陡(因为梯度方向就正是 45∘45^\circ45∘)。


🔹 八、总结:对比梳理

概念 梯度 ∇f\nabla f∇f 方向导数 Dv⃗fD_{\vec{v}} fDv f
类型 向量 数值(标量)
意义 函数在各方向的增长趋势汇总 沿某个方向的增长率
方向 指向增长最快方向 自定义
几何意义 垂直等高线;最大变化方向 该方向上的"坡度"
计算方式 各偏导组成向量 梯度与单位方向向量点积
相关推荐
AI日报派送佬4 小时前
2026年10月14日AI行业日报|Gemini 4 Argon正式发布;小模型跨设备传播风险引发安全热议
网络·人工智能·openai·谷歌·deepseek·anthropic·ai日报
镜象科技5 小时前
职业院校AI心理健康解决方案怎么选?三个特殊场景与三类路线
人工智能
Leo.yuan6 小时前
企业Data Agent架构选型:帆软Dora基于NL2BI的现有BI体系复用方案
大数据·人工智能
朱涛的自习室6 小时前
70 美金的 Beyond Compare,我让 Gemini 4 和 DeepSeek 造个开源免费版(Day 2)
android·前端·人工智能
米小虾6 小时前
上下文:Agent 的眼睛里到底装着什么
人工智能·agent
米小虾6 小时前
Agent = 大脑 + 眼睛 + 手脚:一篇看懂现代 AI Agent 的骨架
人工智能
小小测试开发6 小时前
安全评测得分 0.9556 掉到 0.3257,只改了 top_k 和 prompt_style 之外的题面比例
人工智能·安全·prompt
slacker-kian7 小时前
[实践]-用LLM对文本结构化:把多段文本描述变成规范的 JSON 知识库
人工智能·llm·prompt·结构化·pydantic·one-shot 提示
品牌常新7 小时前
景区巡逻机器人怎么选?派宝S5全地形守护解析
运维·人工智能·机器人