你以为 LLM 在理解世界?其实它在算概率

1 阅读3分钟

一句话版本

LLM 本质是在做:条件概率下的“下一个 token 预测”。

它不是在“理解”,不是在“思考”,不是在“查资料”。

它在做概率计算。


一、数学层面:它到底在优化什么?

语言模型的目标函数是:

P(wt∣w1,w2,...,wt−1)P(w_t | w_1, w_2, ..., w_{t-1})P(wt​∣w1​,w2​,...,wt−1​)

意思是:

在给定前面所有词的情况下,预测下一个词的概率。

训练时最大化的是整句概率:

P(w1,...,wn)=∏t=1nP(wt∣w<t)P(w_1, ..., w_n) = \prod_{t=1}^{n} P(w_t | w_{<t})P(w1​,...,wn​)=t=1∏n​P(wt​∣w<t​)

换句话说:

它在做一个超大规模的“自动补全”。


二、直觉理解

如果我给你一句话:

北京是中国的首都,法国的首都是

你大脑会自动预测:

巴黎

模型做的是一样的事情,只不过:

  • 它看过几万亿 token
  • 它用的是 1000 亿参数

但本质没变 —— 预测。


三、那“理解”是怎么来的?

这是最容易误解的地方。

模型并没有显式的知识库。

它内部做的是:

  1. 把 token 映射成向量
  2. 用 Transformer 做上下文关系建模
  3. 输出概率分布

注意:它并不存“事实”,而是存“统计规律”。


四、为什么它看起来像在思考?

因为:

  • 它学到了语言的结构
  • 它学到了推理的模式
  • 它学到了知识的共现关系

举个例子:

当你问:

一个苹果 3 元,买 5 个多少钱?

它不是“算术推理”。

它是:

  • 在训练数据中见过无数类似表达
  • 学到了“乘法”这种语言模式

五、temperature 到底在干嘛?

输出阶段会对 logits 做 softmax:

Pi=ezi/T∑jezj/TP_i = \frac{e^{z_i/T}}{\sum_j e^{z_j/T}}Pi​=∑j​ezj​/Tezi​/T​

当:

  • T → 0:趋向最大概率(确定性)
  • T → 高:分布变平(更随机)

这就是“创意”和“稳定”的来源。


六、它为什么会“幻觉”?

因为:

它优化的是“看起来像正确答案的概率”

而不是:

“真实世界是否正确”

如果训练数据里某种模式高频出现,它就更容易输出。

它没有“外部验证机制”。


七、为什么 RAG 会让它变聪明?

因为 RAG 不是让模型“记住知识”。

而是:

在预测时,把正确上下文塞进去。

于是预测条件变成:

P(answer∣context,question)P(answer | context, question)P(answer∣context,question)

上下文越精准,预测越准确。


八、从工程角度理解

LLM =

巨大概率分布机器
+ 上下文压缩器
+ 模式拟合器

作为应用架构工程师真正做的是:

  • 控制上下文
  • 控制概率空间
  • 控制采样策略
  • 控制信息输入质量

九、真正的核心认知

如果你记住一句话:

LLM 不会“思考”,它只是在高维空间里做概率逼近。

那你就理解了 80%。


十、进阶一点(架构视角)

开发 AI 应用,本质在做三件事:

  1. 给它更好的上下文(RAG)
  2. 限制它的输出格式(JSON / Schema)
  3. 降低概率不稳定性(temperature / rerank / 多模型)