摘要
大语言模型(LLM)在处理单任务指令时表现稳定,但在面对多任务混合指令时显著退化。这一现象并非工程实现偶然,而是来自 LLM 在训练分布、函数逼近性、注意力机制结构以及高维语义流形的固有数学限制。本文从函数逼近(Function Approximation)、流形学习(Manifold Learning)和 Transformer 注意力结构三个维度给出严谨解释。
1. 引言
现代大型语言模型可视为一个高维非线性函数:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> f θ ( x ) → y fθ(x)→y </math>fθ(x)→y
其中:
- x:token 序列
- y:预测输出(token 概率分布)
- θ:参数(数百亿--万亿规模)
该函数通过 SFT 与 RLHF 在大量语料上逼近"人类对单任务指令的期望响应"。
然而,当输入包含多个任务(multi-intent prompt)时,模型常出现:
- 忽略部分任务
- 混淆任务边界
- 推理跳跃、信息缺失
- 内容乱码或结构破碎
这些并非"提示词写得不够好",而是数学层面 LLM 无法稳定处理多任务的根源。
2. 训练分布:LLM 是在"单任务流形"上被逼近的
LLM 的训练数据 D 可以抽象为:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> D = { ( x i , y i ) ∣ x i = single-task prompt } D = \{(x_i, y_i)\ |\ x_i = \text{single-task prompt} \} </math>D={(xi,yi) ∣ xi=single-task prompt}
大部分训练样本呈现高度一致的结构:
用户提出 1 个任务 → 模型回答 1 个任务
因此模型学习到的函数:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> f θ ∗ ( x ) fθ∗(x) </math>fθ∗(x)
是在"单任务分布"上做最小化:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> θ ∗ = a r g m i n θ E x ∼ D [ L ( f θ ( x ) , y ) ] θ∗=argminθEx∼D[L(fθ(x),y)] </math>θ∗=argminθEx∼D[L(fθ(x),y)]
换句话说:
训练时 LLM 只在单任务指令分布上被监督,因此其逼近函数的有效定义域仅覆盖单任务示例所在流形。
3. 流形视角:多任务输入落在训练流形之外
训练集中每种任务类型都可视为一个低维语义流形:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> M 1 , M 2 , ⋯ , M k M1,M2,⋯ ,Mk </math>M1,M2,⋯ ,Mk
例如:
- 写作任务
- 翻译任务
- 总结任务
- 编程任务
- 情感分析任务
训练数据实际上覆盖:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> D ⊆ ⋃ i M i D \subseteq \bigcup_i \mathcal{M}_i </math>D⊆i⋃Mi
但当用户输入:
帮我分析下面的代码,然后总结它的风格,再生成一份英文 README
该输入是多个语义流形的非线性组合:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> x ′ ∈ M a ⊕ M b ⊕ M c x' \in \mathcal{M}_a \oplus \mathcal{M}_b \oplus \mathcal{M}_c </math>x′∈Ma⊕Mb⊕Mc
而该区域 训练数据从未覆盖。
因此:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> x ′ ∉ D x′∉D </math>x′∈/D
导致模型进入 out-of-distribution(OOD)推理。
OOD 推理 → 更高误差、更不稳定的生成。
4. 函数逼近角度:多任务输入使模型处于"高曲率区域"
单任务输入位于训练集中模型能够良好逼近的区域:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> ∀ x ∈ D : ∣ f θ ( x ) − y ∣ < ϵ ∀x∈D:∣fθ(x)−y∣<ϵ </math>∀x∈D:∣fθ(x)−y∣<ϵ
但多任务输入 x′ 超出了流形,使模型进入外推模式:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> ∣ f θ ( x ′ ) − y ′ ∣ ≫ ϵ ∣fθ(x′)−y′∣≫ϵ </math>∣fθ(x′)−y′∣≫ϵ
原因:
- 训练中模型只学习到单任务的梯度方向
- 多任务输入对应的语义结构在参数空间中没有稳定梯度
- 模型只能依赖 θ 的"光滑性"进行外推,而 Transformer 函数本身是高度非线性的
换句话说:
模型被迫在未学习过的区域进行非可靠外推。
这就是你所说的:
"原函数对多任务输入回归性变差,定义域不适配。"
5. 注意力机制角度:多任务导致"注意力竞争"
Transformer 的注意力计算:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> A t t e n t i o n ( Q , K , V ) = Softmax ( Q K T d ) V {Attention}(Q, K, V) = \text{Softmax}(\frac{QK^T}{\sqrt{d}})V </math>Attention(Q,K,V)=Softmax(d QKT)V
当输入包含多个任务指令:
- Query 会同时尝试匹配多个语义目标
- Key 会因不同任务的语义冲突产生竞争
- Softmax 会导致稀释注意力权重
- 每个 V(value)表示的语义贡献被削弱
- 推理链路变得不稳定
多任务 = 各任务在争夺有限的注意力容量
结果:
注意力失焦,任务被互相稀释,推理链路变得不完整。
6. 推理结构角度:LLM 是单线程推理结构(Single-Chain CoT)
LLM 自回归:
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> y t = f θ ( y < t , x ) y_t = f_\theta(y_{<t}, x) </math>yt=fθ(y<t,x)
推理链路 CoT 是单条线性的。
当输入包含多个任务时:
- CoT 不能并行
- 不同任务争夺同一条推理链路
- 导致跳跃、省略、混乱
数学本质:
LLM 无法构建多条同时展开的推理序列。
7. 多任务退化的综合数学解释(核心总结)
从数学角度,LLM 多任务退化是由以下因素共同决定的:
✔ 1)训练分布限制
LLM 只在单任务流形上逼近,因此多任务输入处于 OOD 区域。
✔ 2)非线性函数逼近的外推误差
多任务输入落在高曲率区域,引发更大误差。
✔ 3)注意力容量有限
多任务造成 Q/K/V 空间的噪声干扰与注意力稀释。
✔ 4)推理链路单线程
CoT 无法同时展开多条任务路径。
8. 结论
从数学角度可以给出一个简明的专家级总结:
LLM 是在单任务数据流形上训练得到的高维函数逼近器,因此多任务输入会让模型落入训练分布之外的高曲率区域,使注意力空间与推理链路发生干扰,从而引发推理失效。
这解释了为什么:
- 单任务 prompt 效果稳定、准确
- 多任务 prompt 效果迅速退化
- 所有强健的 Agent 系统都必须进行 Task Decomposition(任务拆解)