共计 1955 个字符,预计需要花费 5 分钟才能阅读完成。
核心概念
生成式模型
生成式模型(Generative Models)是能够学习数据分布并生成新样本的 AI 模型。典型代表包括:

- GPT 系列:基于 Transformer 的自回归语言模型,通过条件概率 $P(x_t|x_{<t})$ 逐 token 生成文本
- VAE:变分自编码器,通过编码器 - 解码器结构和 KL 散度优化,学习潜在空间分布 $z \sim q_\phi(z|x)$
数学本质是建模联合概率分布 $P(X,Y)$,其核心差异可通过以下公式体现:
$$ P_\theta(x) = \int P_\theta(x|z)P(z)dz $$
推理型模型
推理型模型(Discriminative Models)专注于学习输入到输出的映射关系:
- BERT:双向 Transformer 编码器,建模条件概率 $P(y|x)$
- ResNet:残差卷积网络,解决图像分类等判别任务
架构差异如下图所示(此处应插入模型结构对比图):
生成式:Input → Latent Space → Sampling → Decoder → New Sample
推理型:Input → Feature Extractor → Classifier → Prediction
痛点分析
开发者常见误区包括:
- 任务错配:将 BERT 直接用于文本生成,导致生成内容重复率高达 37%(见《ACL 2020》实证研究)
- 资源误判:低估生成式模型的显存需求,例如 GPT-3 175B 需要 320GB 显存进行推理
- 数据误解:用分类任务的标注数据训练 VAE,忽略生成模型需要完整数据分布的特性
技术方案
资源消耗对比
| 指标 | 生成式模型(GPT-2) | 推理型模型(BERT-base) |
|---|---|---|
| 参数量 | 1.5B | 110M |
| 训练数据量 | 40GB 文本 | 16GB 文本 |
| 推理延迟 | 350ms/token | 50ms/sequence |
代码示例
# 生成式模型调用示例(GPT-2)from transformers import GPT2LMHeadModel, GPT2Tokenizer
model = GPT2LMHeadModel.from_pretrained('gpt2') # 注意:默认加载 117M 版本
tokenizer = GPT2Tokenizer.from_pretrained('gpt2')
inputs = tokenizer("AI models can", return_tensors='pt')
outputs = model.generate(**inputs, max_length=50) # 自回归生成
print(tokenizer.decode(outputs[0]))
# 推理型模型调用示例(BERT)from transformers import BertForSequenceClassification, BertTokenizer
model = BertForSequenceClassification.from_pretrained('bert-base-uncased')
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
inputs = tokenizer("This is a classification example", return_tensors='pt')
outputs = model(**inputs) # 前向计算获取 logits
print(outputs.logits.argmax(-1))
生产考量
延迟优化
- 知识蒸馏:将 GPT- 3 蒸馏为 GPT- 2 规模,实测延迟降低 8 倍(参考《DistilBERT》论文)
- 量化压缩:FP16 量化可使 BERT 推理速度提升 1.7 倍(NVIDIA TensorRT 实测)
内存管理
- 动态加载:使用 HuggingFace 的
.from_pretrained(..., device_map='auto') - 梯度检查点 :训练时设置
gradient_checkpointing=True可减少 30% 显存占用
避坑指南
检查清单
- 确认任务需求:是否需要创造新内容(生成式)还是理解现有内容(推理式)
- 验证模型 API:检查
model.generate()方法是否存在 - 评估输出维度:生成式输出维度通常与输入不一致
Fine-tuning 注意事项
- 生成式模型:需注意 teacher-forcing 策略与自回归生成的差异
- 推理型模型:避免过度拟合少量标注数据(参考《arXiv:2004.14444》正则化方法)
参考文献
- 《Attention Is All You Need》(NeurIPS 2017)
- 《BERT: Pre-training of Deep Bidirectional Transformers》(NAACL 2019)
- 《Improving Language Understanding by Generative Pre-Training》(OpenAI 2018)
正文完
