Skip to content

概率统计 (Probability)

一句话定义:概率论是量化不确定性的数学。在 AI 中,模型预测的结果通常不是绝对的”是”或”否”,而是一个概率分布(如:90% 是猫,10% 是狗)。

  • 概率分布 (Distribution): 描述随机变量取值的可能性(如正态分布)。
  • 期望 (Expectation): 随机变量的平均值(加权平均)。
  • 条件概率 (Conditional Probability): 在已知 B 发生的情况下,A 发生的概率 P(AB)P(A|B)
  • 极大似然估计 (MLE): 利用已知数据反推最可能的模型参数。

  • 确定性:明天早上 8:00 太阳升起(这是天文规律,几乎 100%)。
  • 概率性:明天降水概率 30%。
    • 这不是说”明天有 30% 的时间在下雨”。
    • 而是说在相似的气象条件下,100 次里有 30 次下雨了。

AI 模型就像天气预报员。它不敢打包票,只能说:“我觉得这张图有 99.9% 的概率是数字 7。”


  1. 世界本身是不确定的:噪音、缺失数据、复杂因素。
  2. 软分类 (Softmax):我们希望模型输出信心分数,而不是硬分类。
  3. 生成模型 (LLM):GPT 每次生成下一个字,其实是根据概率分布进行采样 (Sampling)。如果概率是确定的,它就没有任何创造力了。

根据新证据更新信念。

贝叶斯定理
P(AB)=P(BA)P(A)P(B)P(A|B) = \frac{P(B|A) \cdot P(A)}{P(B)}
  • P(AB)P(A|B): 后验概率(看到 B 后,A 的概率)。
  • P(A)P(A): 先验概率(原来的看法)。
  • P(BA)P(B|A): 似然度(如果 A 成立,B 出现的概率)。
  • AI 应用:朴素贝叶斯分类器,以及 LLM 推理的某种隐喻。

将一组数值转换成概率分布(和为 1)。

Softmax
σ(z)i=ezij=1Kezj\sigma(z)_i = \frac{e^{z_i}}{\sum_{j=1}^K e^{z_j}}
  • 把任意实数映射到 (0,1)(0, 1) 区间。
  • 放大了差异(大的更大,小的更小)。
  • AI 应用:多分类任务的最后一层。

🎨 交互演示:Softmax 与 Temperature (Interactive)

Section titled “🎨 交互演示:Softmax 与 Temperature (Interactive)”

调整 Logits 和 Temperature,观察概率分布的变化。

🎲 Softmax 概率分布可视化

调整 Logits 和 Temperature,观察概率分布变化

⚖️ 均衡
更确定更随机
🐱 猫
60.9%
🐕 狗
22.4%
🐦 鸟
13.6%
🐟 鱼
3.0%
Softmax(zi) = ezi / Σezj
τ 越小 → 分布越"尖" (更确定) | τ 越大 → 分布越"平" (更随机)
📊 Logits
模型的"原始打分",可正可负,无界限
🎯 Probabilities
经 Softmax 转换后的概率,和为 1
💡 AI 应用:LLM 生成时调节 Temperature 控制创造力

import torch
import torch.nn.functional as F
# 模型的原始输出 (Logits)
logits = torch.tensor([2.0, 1.0, 0.1])
# 使用 Softmax 转换为概率
probs = F.softmax(logits, dim=0)
print(f"Logits: {logits}")
print(f"Probs: {probs}")
# tensor([0.6590, 0.2424, 0.0986])
print(f"Sum: {probs.sum().item()}") # 1.0
# 采样 (基于概率选择)
# 类似于 LLM 的 Temperature 采样
index = torch.multinomial(probs, num_samples=1)
print(f"Sampled Index: {index.item()}")

探索常见的概率分布,调整参数观察分布形状的变化。

📊 概率分布可视化

μ=0.00-5.0-2.50.02.55.0P(x)
均值 (Mean)
0.000
方差 (Variance)
1.000
标准差 (Std)
1.000
公式:
f(x)=1σ2πe(xμ)22σ2f(x) = \frac{1}{\sigma\sqrt{2\pi}} e^{-\frac{(x-\mu)^2}{2\sigma^2}}

💡 调整参数观察分布形状变化 | 红色虚线表示均值




Seeing Theory

可视化概率统计入门

访问

StatQuest

概率统计的趣味视频讲解

观看

Think Bayes

用 Python 学贝叶斯统计

阅读