共计 1751 个字符,预计需要花费 5 分钟才能阅读完成。
从确定性到概率性思维的转变
传统编程像是烹饪食谱:给定明确步骤和输入,必然得到固定输出(比如 sum(2,3) 永远返回 5)。而生成式 AI 更像是在学习厨师的经验——通过分析大量菜谱数据,统计 ” 洋葱后常跟胡萝卜 ” 的概率,从而生成新菜谱。核心区别在于:

- 确定性编程 :
if x>0 then y=1的绝对逻辑 - 概率统计模型 :
P(y=1|x>0)=0.83的可能性表达
生成式模型的数学心脏
贝叶斯定理:逆向概率的魔法
假设我们要生成合理的句子,需要计算:
P("今天 | 天气") = P("天气 | 今天") * P("今天") / P("天气")
这个公式让模型能根据已有词汇动态调整后续词的概率分布。比如看到 ” 银行 ” 时:
- 前文是 ” 存款 ” →
P("利率 | 银行")升高 - 前文是 ” 河边 ” →
P("钓鱼 | 银行")升高
马尔可夫链:短期记忆系统
当模型仅考虑前 N 个词时(比如 N =3),就是在构建马尔可夫链。这解释了为什么 LSTM 等模型需要更长的上下文记忆能力。
动手实现微型文本生成器
以下是用 PyTorch 构建的 bigram 模型(仅考虑前一个词):
import torch
import torch.nn.functional as F
# 准备数据(莎士比亚片段)text = """To be or not to be..."""
chars = sorted(list(set(text)))
vocab_size = len(chars)
# 建立字符映射
stoi = {ch:i for i,ch in enumerate(chars) }
itos = {i:ch for i,ch in enumerate(chars) }
# 构建训练集(输入 - 输出对)inputs, targets = [], []
for ch1, ch2 in zip(text[:-1], text[1:]):
inputs.append(stoi[ch1])
targets.append(stoi[ch2])
# 初始化概率矩阵(行为当前字符,列为下一个字符)W = torch.randn(vocab_size, vocab_size, requires_grad=True)
# 训练循环
for _ in range(100):
# 前向传播
logits = W[inputs] # 获取每个输入字符对应的所有转移概率
loss = F.cross_entropy(logits, torch.tensor(targets))
# 反向传播
W.grad = None
loss.backward()
# 更新参数
W.data += -0.1 * W.grad
# 生成文本
current = stoi['T']
output = ['T']
for _ in range(100):
probs = F.softmax(W[current], dim=0)
current = torch.multinomial(probs, 1).item()
output.append(itos[current])
print(''.join(output))
模型复杂度与生成质量的平衡
- 欠拟合:当模型只学到 ”e 后面常接空格 ” 这样的简单规律时,会生成重复无意义的文本
- 过拟合:直接记忆训练数据(如完整背诵莎士比亚台词)时失去泛化能力
- 甜蜜点:通过验证集监控,在两者间找到平衡
新手避坑指南
- 数据预处理
- 未统一大小写会导致模型认为 ”Hello” 和 ”hello” 是不同的词
-
标点符号处理不当可能破坏句子结构学习
-
超参数陷阱
- 学习率过高:损失值剧烈震荡无法收敛
-
batch_size 太小:梯度更新方向噪声过大
-
评估误区
- 仅用训练准确率判断模型效果
- 忽略生成结果的多样性检验
从玩具模型到实用系统
尝试改进基础模型的路径:
- 增加上下文窗口(从 bigram 到 trigram)
- 引入注意力机制(学习不同位置词的依赖强度)
- 添加温度参数控制生成随机性:
def generate_with_temperature(temp=1.0): probs = F.softmax(W[current]/temp, dim=0) # temp 越高分布越平缓
实践建议
- 在示例代码中尝试不同温度值(0.1 到 2.0),观察生成文本的创意性变化
- 用自己的短篇小说作为训练数据,对比与原模型的差异
- 可视化权重矩阵 W,观察模型学到了哪些字符转移规律
生成式 AI 就像语言的概率迷宫——每一次生成都是基于统计规律的选择之旅。理解其本质后,那些看似神奇的 AI 创作,其实都是精心计算的概率结果。
正文完
发表至: 未分类
近两天内
