向量求导规则

假设 x\boldsymbol xx,a\boldsymbol aa是列向量,A\boldsymbol AA是矩阵。

1. 基础线性规则(最常用)

  1. ∂(aTx)∂x=a\frac{\partial (\boldsymbol a^T \boldsymbol x)}{\partial \boldsymbol x} = \boldsymbol a∂x∂(aTx)=a
  2. ∂(xTa)∂x=a\frac{\partial (\boldsymbol x^T \boldsymbol a)}{\partial \boldsymbol x} = \boldsymbol a∂x∂(xTa)=a
  3. ∂(Ax)∂x=AT\frac{\partial (\boldsymbol A \boldsymbol x)}{\partial \boldsymbol x} = \boldsymbol A^T∂x∂(Ax)=AT

2. 二次型求导

  1. ∂(xTAx)∂x=(A+AT)x\frac{\partial (\boldsymbol x^T \boldsymbol A \boldsymbol x)}{\partial \boldsymbol x} = (\boldsymbol A + \boldsymbol A^T) \boldsymbol x∂x∂(xTAx)=(A+AT)x
    如果 AT=A\boldsymbol A^T = \boldsymbol AAT=A (A\boldsymbol AA为对称矩阵),则 ∂(xTAx)∂x=2Ax\frac{\partial (\boldsymbol x^T \boldsymbol A \boldsymbol x)}{\partial \boldsymbol x} = 2 \boldsymbol A \boldsymbol x∂x∂(xTAx)=2Ax

3. 链式法则

假设 yyy 是 u\boldsymbol uu 的函数,而 u\boldsymbol uu 是 x\boldsymbol xx 的函数:
∂y∂x=(∂u∂x)T∂y∂u \frac{\partial y}{\partial \boldsymbol x} = \left( \frac{\partial \boldsymbol u}{\partial \boldsymbol x} \right)^T \frac{\partial y}{\partial \boldsymbol u} ∂x∂y=(∂x∂u)T∂u∂y

4. 实战演示:求线性回归代价函数的梯度

代价函数:
J=12∥Xθ−y∥2=12(Xθ−y)T(Xθ−y)=12(θTXTXθ−2yTXθ+yTy)\begin{aligned} J = & \frac{1}{2} \|\boldsymbol X \boldsymbol \theta - \boldsymbol y\|^2 \\ = & \frac{1}{2} (\boldsymbol X \boldsymbol \theta - \boldsymbol y)^T (\boldsymbol X \boldsymbol \theta - \boldsymbol y) \\ = &\frac{1}{2} (\boldsymbol \theta^T \boldsymbol X^T \boldsymbol X \boldsymbol \theta - 2 \boldsymbol y^T \boldsymbol X \boldsymbol \theta + \boldsymbol y^T \boldsymbol y) \end{aligned}J===21∥Xθ−y∥221(Xθ−y)T(Xθ−y)21(θTXTXθ−2yTXθ+yTy)

对 θ\boldsymbol \thetaθ 求偏导:
∇J(θ)=XTXθ−XTy \nabla J (\boldsymbol \theta) = \boldsymbol X^T \boldsymbol X \boldsymbol \theta - \boldsymbol X^T \boldsymbol y ∇J(θ)=XTXθ−XTy

5. 记忆小窍门

  1. 形状匹配:导数的结果形状必须和原变量 x\boldsymbol xx的形状一模一样(如果 x\boldsymbol xx 是列向量,导数也是列向量)。
  2. 转置标志:如果在求导过程中发现形状对不上,通常是漏掉了一个转置。
  3. 对比标量:先想标量怎么求导,在大脑里把系数换成矩阵/向量,最后根据形状调整转置。
相关推荐
yuanmazhiwu1 分钟前
计算机毕业设计:Python全国空气质量与气象监测平台 Flask框架 可视化 数据分析 机器学习 天气 深度学习 AI 空气质量分析(建议收藏)✅
人工智能·python·深度学习·数据挖掘·flask·汽车·课程设计
Fleshy数模2 分钟前
基于机器学习的实时手势识别系统实现
人工智能·机器学习
龙侠九重天2 分钟前
C# 机器学习数据处理
开发语言·人工智能·机器学习·ai·c#
China_Yanhy7 小时前
动手学大模型第一篇学习总结
人工智能
空间机器人7 小时前
自动驾驶 ADAS 器件选型:算力只是门票,系统才是生死线
人工智能·机器学习·自动驾驶
C+++Python7 小时前
提示词、Agent、MCP、Skill 到底是什么?
人工智能
小松要进步7 小时前
机器学习1
人工智能·机器学习
泰恒8 小时前
openclaw近期怎么样了?
人工智能·深度学习·机器学习
KaneLogger8 小时前
从传统笔记到 LLM 驱动的结构化 Wiki
人工智能·程序员·架构
tinygone8 小时前
OpenClaw之Memory配置成本地模式,Ubuntu+CUDA+cuDNN+llama.cpp
人工智能·ubuntu·llama