Q35: 推导多元链式法则 
多元链式法则是啥?
多元链式法则用于求复合函数的偏导数。想象一个场景:z 是关于多个变量 的函数,而每个
又随 t 变化。此时,z 对 t 的变化率需综合各
对 t 的影响。例如,
,
,
,z 对 t 的导数就需用多元链式法则。
推导过程
设 ,
。给 t 一个增量
,则
有增量
,z 有增量
。由全增量公式:
两边除以
,取
的极限:
在 LLM 中的使用
LLM 训练中,计算梯度是关键。例如,模型输出 z 依赖多层参数 (如权重矩阵),而
又在优化中随迭代步 t 更新。用多元链式法则求
,实现梯度反向传播。如 Transformer 中,计算损失对注意力层参数的导数,需通过多元链式法则层层传递。
代码示例:
import torch
# 定义函数 z = x² + y²,x = t,y = 2t
t = torch.tensor(1.0, requires_grad=True)
x = t
y = 2 * t
z = x ** 2 + y ** 2
# 手动用多元链式法则求导
dz_dx = 2 * x
dz_dy = 2 * y
dx_dt = 1.0
dy_dt = 2.0
dz_dt_manual = dz_dx * dx_dt + dz_dy * dy_dt
# 自动求导验证
z.backward()
dz_dt_auto = t.grad
print(f"手动计算 dz/dt: {dz_dt_manual.item()}")
print(f"自动求导 dz/dt: {dz_dt_auto.item()}")
代码解释:定义 ,
,
。手动用多元链式法则计算
,代入
得
。自动求导验证结果一致,体现多元链式法则在 LLM 梯度计算中的基础作用。
Q36: 证明 Green 定理 
Green 定理是啥?
Green 定理建立了平面闭曲线 C 上的曲线积分与 C 所围区域 D 上的二重积分的联系。比如,计算一个闭合路径上的做功(),可转化为区域内的某种 “源汇” 分布(
)的积分。
证明过程
- 对简单区域证明:先设 D 是 x - 型区域
,
。计算
。同理对 Q 处理,设 D 是 y - 型区域,得
。
- 推广到一般区域:将复杂区域分割为简单区域,利用曲线积分的可加性和二重积分的可加性,消去内部边界的积分,得最终结果。
在 LLM 中的使用
LLM 优化中,若参数空间可近似为二维区域(如简化的双参数优化),Green 定理可转换积分形式,分析优化路径上的某种 “流量”。例如,在二维参数平面上,分析梯度流的积分性质,优化采样路径。但更多是理论分析,为复杂高维优化提供思路借鉴。
代码示例(验证 Green 定理):
import torch
import numpy as np
from scipy.integrate import dblquad, quad
# 定义P和Q
def P(x, y):
return -y
def Q(x, y):
return x
# 计算曲线积分(单位圆)
def curve_integral():
# 用参数方程 x = cosθ, y = sinθ
def integrand(theta):
x = np.cos(theta)
y = np.sin(theta)
dx_dtheta = -np.sin(theta)
dy_dtheta = np.cos(theta)
return P(x, y) * dx_dtheta + Q(x, y) * dy_dtheta
result, _ = quad(integrand, 0, 2 * np.pi)
return result
# 计算二重积分
def double_integral():
def inner(x):
return -1, 1
result, _ = dblquad(lambda y, x: (1 - (-1)), -1, 1, inner)
return result
print(f"曲线积分结果: {curve_integral()}")
print(f"二重积分结果: {double_integral()}")
代码解释:定义 ,
,计算单位圆上的曲线积分(
)和对应的二重积分(
,因
)。结果均为
(
),验证 Green 定理。这展示了 Green 定理在积分计算中的转换作用,虽 LLM 直接应用少,但数学思想可启发优化中的积分变换分析。
1162

被折叠的 条评论
为什么被折叠?



