1)是什么
GPT = Generative Pre-trained Transformer
中文名:生成式预训练变换器
🎯 定义:
GPT 是一种基于 Transformer 解码器架构的生成式语言模型,由 OpenAI 在 2018 年首次提出(GPT-1),后续发展出 GPT-2、GPT-3、GPT-3.5、GPT-4 等版本。
💡 生活比喻:
就像一个正在打字的人,他只能看到自己已经写的句子,然后决定下一个字是什么。
text
输入:"今天天气真好,我想去"
→ 模型预测:"公园散步" 或 "海边玩"
🧩 核心特点:
| 特点 | 说明 |
|---|---|
| 仅使用解码器(Decoder-only) | 没有编码器,只负责"生成下一个词" |
| 自回归(Autoregressive) | 一个词一个词地生成,依赖前面的内容 |
| 单向上下文 | 只能看"左边"的词,不能看右边(不像 BERT) |
| 生成式任务 | 能写文章、写代码、聊天、翻译等 |
📌 典型代表:
- GPT-1 → 2018年
- GPT-2 → 2019年(15亿参数)
- GPT-3 → 2020年(1750亿参数)
- ChatGPT → 基于 GPT-3.5 微调的对话系统
- GPT-4 → 2023年(多模态,更强)
2)为什么
为什么 GPT 这么重要?
🚀 关键突破:
| 突破点 | 说明 |
|---|---|
| 大规模预训练 + 小样本微调 | 用海量文本训练,少量数据就能适应新任务 |
| 生成能力极强 | 不只是"理解",还能"创造"内容 |
| 统一接口 | 所有任务都变成"输入→输出"格式(如问答、翻译、写作) |
| 推动 AI 普及 | 让普通人也能和 AI 对话,开启"人机协作"时代 |
🔍 举个例子:GPT vs BERT
| 模型 | 架构 | 能力 | 用途 |
|---|---|---|---|
| BERT | 编码器(Encoder-only) | 理解语义 | 分类、NER、阅读理解 |
| GPT | 解码器(Decoder-only) | 生成内容 | 写作、聊天、代码生成 |
✅ 所以:
- 如果你要分析一句话的情绪 → 用 BERT
- 如果你要让 AI 写一篇作文 → 用 GPT
💡 为什么 GPT 更受欢迎?
因为它能做"人类能做的事情":
- 写邮件
- 写报告
- 写诗
- 写代码
- 回答问题
- 模拟客服
🎯 这就是为什么 ChatGPT 出来后,全球都在讨论"AI 是否会取代人类工作"。
3)什么时候用
| 场景 | 说明 |
|---|---|
| 文本生成 | 写文章、写故事、写新闻稿 |
| 对话系统 | 聊天机器人、智能客服 |
| 代码生成 | GitHub Copilot 就是基于 GPT 的 |
| 自动摘要 | 把长文章压缩成一句话 |
| 翻译 | 支持多语言生成 |
| 头脑风暴 | 帮你想创意、想标题、想产品名 |
🧪 简单案例:
python
# 用 Hugging Face 的 pipeline 生成文本
from transformers import pipeline
generator = pipeline("text-generation", model="gpt2")
result = generator("今天天气真好,我想去")
print(result[0]['generated_text'])
# 输出:今天天气真好,我想去公园散步。
✅ 优点:
- 生成流畅自然;
- 能处理复杂指令(如"写一首关于春天的五言绝句");
- 支持中文和英文。
4)什么时候不用
虽然 GPT 强大,但它也有"短板":
❌ 不适合的场景:
| 场景 | 原因 |
|---|---|
| 需要精确推理的任务 | GPT 有时会"胡说八道"(幻觉问题) |
| 事实核查 | 它可能编造不存在的信息 |
| 逻辑推理 | 无法保证数学或因果关系正确 |
| 敏感信息处理 | 可能泄露隐私或产生偏见 |
| 实时响应要求极高 | 生成速度慢,不适合低延迟系统 |
text
问:"爱因斯坦出生于哪一年?"
答:"1879年。" ✅ 正确
但有时它会说:"1880年。" ❌ 错误
🚫 所以:不要完全信任 GPT 的答案,尤其是涉及法律、医疗、金融等领域。
⚠️ 注意事项:
- GPT 是"黑盒模型",你不知道它怎么得出结论;
- 大模型容易产生"幻觉"(hallucination);
- 需要人工审核或结合其他系统使用。
5)总结
| 概念 | 说明 |
|---|---|
| GPT 是什么? | 生成式语言模型,基于 Transformer 解码器 |
| 核心能力 | 能写、能聊、能编、能想 |
| 主要优势 | 生成能力强,任务通用性强 |
| 主要缺点 | 可能胡说八道,缺乏可解释性 |
| 适用场景 | 写作、聊天、代码、摘要、翻译 |
| 不适用场景 | 高精度推理、事实核查、安全敏感任务 |
🌟 最后一句话记住:
GPT 是"作家",BERT 是"读者"。你需要的是"理解" → 用 BERT;
你需要的是"创作" → 用 GPT。
🧠 记忆口诀(5个关键词):
"生、聊、创、快、错"
- 生:生成文本
- 聊:聊天对话
- 创:创造内容
- 快:速度快(相比传统方法)
- 错:可能出错(幻觉)
概念
1. 概述
GPT(Generative Pre-trained Transformer)是首个系统性提出 "预训练 + 微调"范式 的语言模型------堪称 NLP 领域的 "先通识教育,再专业实习" 路线 🎓➡️💼。
它的核心思路分两步:
🔹 第一步:无监督预训练
在海量无标注文本上,通过 生成式自监督学习(预测下一个词)掌握语言的语法、语义和上下文规律;
🔹 第二步:有监督微调
用少量标注数据,在具体任务(如分类、问答)上进行端到端训练,实现知识迁移。
💡 关键突破:
GPT 首次证明------一个擅长"写故事"的生成模型,也能在"理解题"上拿高分!
这不仅为 GPT 系列铺路,更点燃了整个预训练语言模型的燎原之火 🔥。
2. 模型结构
2.1 输入层
每个 token 的输入 = 词嵌入 + 位置嵌入 ,维度为 768。
- 🧾 词嵌入(Text Embedding):将词/子词映射为向量,相当于给每个词发一张"数字身份证";
- 📍 位置嵌入(Position Embedding):编码 token 在序列中的位置。
✨ 与原始 Transformer 不同:
GPT 使用 可学习的位置嵌入(learnable positional embedding)------不是固定公式,而是让模型自己"调座位",每个位置对应一个可训练向量 ✅。
2.2 解码器层
GPT 完全基于 Transformer 解码器 构建,堆叠 12 层,每层包含:
- 🔒 掩码多头自注意力(12 heads):只允许"回头看",禁止"偷看未来",确保自回归生成合规;
- ⚡ 前馈神经网络(Feed-Forward Network):对每个位置做非线性变换。
📌 因为只用解码器 + 掩码机制,GPT 天然就是个 "文字接龙大师" ------专精自回归生成任务 📝➡️📝。
2.3 输出层
GPT 会根据阶段"换帽子" 👒:
- 🎯 预训练阶段 → 文本预测头
输出词表大小的概率分布(经 Softmax),用于预测下一个词; - 🏷️ 微调阶段 → 任务分类头
通常取序列中特定位置(如最后一个 token)的隐藏状态,送入小型分类器,完成情感分析、主题识别等任务。
3. 预训练
🎯 目标:给定前文,预测下一个词 ------典型的自回归语言建模。
✅ 优势:
- 数据自动生成,无需人工标注;
- 利用 Transformer 全局注意力,有效建模长距离依赖;
- 并行计算能力强,训练效率远超 RNN。
📘 实践细节:
GPT-1 在 BooksCorpus 上预训练------包含 7000+ 本英文小说,约 8 亿词。
语言自然、上下文连贯,是训练"有叙事感"模型的理想语料 📖✨。
4. 微调
微调 = 用标注数据"精调"预训练模型 ,目标是:
保留通用语言能力 + 适配具体任务。
GPT 采用两大巧思:
✅ ① 添加轻量级任务头
在模型顶部加一个 可训练的线性分类层(Linear Head):
- 参数极少,训练快;
- 不干扰预训练主干,像"插拔式模块"🔌。
✅ ② 统一输入格式
所有任务都转为 连续文本序列,例如情感分类:
text
[Start] This movie is amazing! [Extract]
- 🟢 [Start]:标记输入开始;
- 🔵 [Extract]:提示模型在此位置输出任务表示。
🧠 模型处理完整个序列后,只取 [Extract] 位置的隐藏状态,送入分类头,输出标签(如 "1" = 正面)。
🌈 总结亮点
| 特性 | 效果 |
|---|---|
| 🧩 最小改动 | 仅加线性层,主干不动 |
| ♻️ 最大复用 | 预训练知识完整保留 |
| 🔄 统一接口 | 所有任务 = 文本 → 标签/文本 |
| 🚀 通用性强 | 为 Prompt Learning 和统一建模范式埋下伏笔 |