Q42: 证明 Lipschitz 连续性
对梯度下降的影响
Lipschitz 连续性对梯度下降的影响是啥?
Lipschitz 连续性给函数变化设定了一个 “速度上限”,数学上用 表示,L 是这个上限值。它对梯度下降的影响在于:梯度是函数变化率的极限,此性质确保
,为梯度下降的步长选择提供依据,保证算法稳定收敛,避免迭代时 “步子” 过大跳过最小值或过小导致收敛缓慢。
证明过程
当 时,对
两边除以
并取极限,可得
。对于凸函数,梯度下降更新公式为
。若步长
,则能保证收敛。这是因为 L 限制了梯度的最大值,在该步长范围内,迭代可稳定向最小值靠近,不会发散。
在 LLM 中的使用
训练大语言模型(如 Transformer)时,若损失函数满足 Lipschitz 连续性,可避免梯度爆炸,使参数更新更稳定。例如依据该性质调整学习率上限,确保模型在训练过程中能有效学习,防止因个别样本的梯度异常导致优化方向偏差。
代码示例
import numpy as np
# 定义满足Lipschitz连续的函数 \( f(x) = 2x \),\( L = 2 \)
def f(x):
re