人工智能【第25篇】GPT模型详解:生成式预训练的语言模型

作者的话 :在前面的文章中,我们学习了BERT模型。如果说BERT开启了预训练语言模型的理解时代,那么GPT系列则开启了生成式AI的新纪元。从GPT-1到GPT-4,OpenAI的GPT系列模型展示了强大的文本生成能力和涌现能力。本文将深入讲解GPT的原理、演进历程和应用,帮助你理解生成式AI的核心技术!


一、GPT概述

1.1 什么是GPT?

GPT(Generative Pre-trained Transformer)是OpenAI提出的一系列生成式预训练语言模型。

核心特点

特点 说明 优势
生成式建模 自回归预测下一个词 自然流畅的文本生成
单向注意力 只关注上文,不看未来 适合生成任务
Transformer Decoder 使用解码器架构 强大的建模能力
大规模预训练 海量无监督文本 丰富的语言知识
涌现能力 大模型展现新能力 上下文学习、推理

1.2 GPT发展历程

模型 年份 参数量 核心突破 影响
GPT-1 2018年6月 1.17亿 生成式预训练 概念验证
GPT-2 2019年2月 15亿 Zero-shot能力 展示涌现能力
GPT-3 2020年5月 1750亿 In-context Learning 大模型时代
GPT-3.5 2022年3月 约2000亿 Instruct微调 ChatGPT基础
GPT-4 2023年3月 估计万亿级 多模态+推理 AGI曙光
GPT-4o 2024年5月 未公开 原生多模态 全能助手

1.3 GPT vs BERT

特性 GPT BERT
架构 Transformer Decoder Transformer Encoder
注意力方向 单向(左到右) 双向
预训练任务 语言模型(LM) MLM + NSP
主要能力 文本生成 文本理解
应用场景 写作、对话、代码 分类、NER、问答
典型应用 ChatGPT 搜索引擎、分类器

二、GPT架构详解

2.1 GPT-1架构

GPT-1使用标准的Transformer Decoder架构:

参数 GPT-1 Small GPT-1 Medium GPT-1 Large
层数 12 24 36
注意力头数 12 16 20
嵌入维度 768 1024 1280
参数量 1.17亿 3.45亿 7.62亿

2.2 GPT-2/GPT-3规模对比

模型 层数 维度 头数 参数量
GPT-2 Small 12 768 12 1.24亿
GPT-2 Medium 24 1024 16 3.55亿
GPT-2 Large 36 1280 20 7.74亿
GPT-2 XL 48 1600 25 15.42亿
GPT-3 Small 12 768 12 1.25亿
GPT-3 Medium 24 1024 16 3.50亿
GPT-3 Large 24 1536 16 7.60亿
GPT-3 XL 24 2048 24 13亿
GPT-3 2.7B 32 2560 32 27亿
GPT-3 6.7B 32 4096 32 67亿
GPT-3 13B 40 5140 40 130亿
GPT-3 175B (davinci) 96 12288 96 1750亿

2.3 架构特点

Masked Self-Attention:GPT使用Masked Self-Attention确保每个位置只能关注之前的位置:

复制代码
位置1: 可以看自己
位置2: 可以看位置1和2
位置3: 可以看位置1、2、3
...
位置n: 可以看位置1到n

这种设计保证生成的自回归特性。

三、预训练与微调

3.1 语言模型预训练

GPT使用标准的语言模型目标:

目标函数:最大化似然概率

复制代码
L(U) = Σ log P(u_i | u_{i-k}, ..., u_{i-1}; Θ)

即给定前k个词,预测下一个词。

3.2 微调策略

任务类型 输入格式 说明
分类 Start 文本 Extract 使用最后一个token的表示
蕴含 Start 前提 Delim 假设 Extract 判断逻辑关系
相似度 Start 句子A Delim 句子B Extract 判断语义相似度
多选 Start 上下文 Delim 答案 Extract 选择正确答案

3.3 Zero-shot和Few-shot能力

GPT-2/GPT-3展示了强大的Zero-shot和Few-shot能力:

能力 定义 示例
Zero-shot 无需微调,直接通过提示完成任务 直接问"翻译:Hello"
One-shot 给一个示例,模型学习后完成 给1个翻译示例
Few-shot 给几个示例,模型学习后完成 给3-5个翻译示例

四、GPT的涌现能力

4.1 上下文学习(In-context Learning)

GPT-3发现:模型可以通过上下文示例学习新任务,无需更新参数。

示例

复制代码
将中文翻译成英文:
中文:你好
英文:Hello

中文:谢谢
英文:Thank you

中文:机器学习
英文:

模型根据前面两个示例,自动理解翻译任务并完成。

4.2 思维链(Chain-of-Thought)

通过引导模型展示推理过程,可以显著提升复杂任务的表现:

标准提示

复制代码
Q: 一个农场有5只鸡,每只鸡每天下2个蛋,3天一共下多少蛋?
A: 30

思维链提示

复制代码
Q: 一个农场有5只鸡,每只鸡每天下2个蛋,3天一共下多少蛋?
A: 让我们一步步思考。
   首先,5只鸡每天下蛋:5 × 2 = 10个
   然后,3天总共下蛋:10 × 3 = 30个
   所以答案是30。

4.3 不同规模模型的能力

能力 小模型 大模型
语法正确性
事实知识 丰富
推理能力
上下文学习
代码生成 简单 复杂

五、代码实现

5.1 使用Hugging Face库

复制代码
from transformers import GPT2Tokenizer, GPT2LMHeadModel
import torch

# 加载模型和分词器
tokenizer = GPT2Tokenizer.from_pretrained('gpt2')
model = GPT2LMHeadModel.from_pretrained('gpt2')

# 生成文本
text = "Once upon a time"
inputs = tokenizer(text, return_tensors='pt')

# 生成
outputs = model.generate(
    **inputs,
    max_length=50,
    num_return_sequences=1,
    temperature=0.7,
    top_k=50,
    top_p=0.95
)

generated_text = tokenizer.decode(outputs[0])
print(generated_text)

5.2 文本生成参数

参数 作用 常用值
max_length 最大生成长度 50-500
temperature 控制随机性 0.7-1.0
top_k 只从top k个词采样 40-50
top_p nucleus sampling 0.9-0.95
repetition_penalty 重复惩罚 1.0-1.2

六、GPT应用

6.1 典型应用场景

应用 描述 代表产品
聊天机器人 自然对话,回答问题 ChatGPT
代码生成 自动生成代码 GitHub Copilot
写作助手 辅助写作、润色 Jasper, Copy.ai
翻译 多语言翻译 DeepL
摘要 文本摘要 SummarizeBot
创意写作 小说、诗歌创作 NovelAI

6.2 ChatGPT的训练过程

ChatGPT基于GPT-3.5,经过三步训练:

步骤 方法 数据 目的
1. 预训练 语言模型 海量互联网文本 学习语言和世界知识
2. 监督微调 有监督学习 人工标注对话 学习对话格式
3. RLHF 人类反馈强化学习 人类偏好排序 对齐人类价值观

七、总结与学习建议

7.1 核心要点

  • GPT使用单向Transformer Decoder
  • 自回归语言建模
  • 大模型展现涌现能力
  • 上下文学习是GPT的重要能力

7.2 模型对比总结

模型 架构 方向 优势
GPT Decoder 单向 生成能力强
BERT Encoder 双向 理解能力强
T5 Encoder-Decoder 双向 统一框架

7.3 学习路径

Transformer → GPT → 大模型应用 → 提示工程 → 微调技术


下一篇预告:【第26篇】大模型应用实战:Prompt工程与微调技巧


本文为系列第25篇,详细讲解了GPT模型。有任何问题欢迎在评论区交流!

标签:GPT、生成式AI、Transformer、ChatGPT、自然语言处理、深度学习、大模型

相关推荐
TMT星球5 小时前
齐向东:AI时代,三类安全需求集中爆发
人工智能·安全
暗夜猎手-大魔王5 小时前
转载--Hermes Agent 05 | 记忆系统(上):内置记忆的冻结快照模式与 agent-curated 策展
人工智能
zhangfeng11335 小时前
如果模型h200训练好的模型 要部署到华为 升腾 950导致的误差怎么处理
人工智能·机器学习
贺国亚5 小时前
Agent 工程实践 · 生产落地 Playbook
java·人工智能·aigc
羊羊小栈5 小时前
非物质文化宣传系统(基于前后端Web开发)
前端·人工智能·毕业设计·大作业
CoderJia程序员甲5 小时前
GitHub 热榜项目 - 周榜(2026-05-31)
ai·大模型·llm·github·ai教程
J2虾虾5 小时前
Spring AI Alibaba - Structured Output 结构化输出
人工智能·python·spring
guslegend5 小时前
第2节:AI编辑器底层技术全景导览
人工智能·编辑器
beyond阿亮5 小时前
PicoClaw(皮皮虾)超轻量AI智能体 安装&使用教程
人工智能·ai·openclaw·picoclaw
广州灵眸科技有限公司5 小时前
瑞芯微RV1126B开发板(EASY-EAI-PI2) 开发套件组装上电
网络·数据库·人工智能·算法·飞书