LLM 中的自回归模型与非自回归模型:GPT 和 BERT 的区别

一、自回归模型

自回归模型(Autoregressive Model)
是一种"基于已经生成的内容,逐步预测下一个 token"的模型。

GPT、ChatGPT、LLM 聊天模型,全都是自回归模型


回归(Regression)

用已知信息,预测一个未知值

自回归(Auto + Regression)

用"自己已经生成的结果",继续预测后面的结果

也就是说:

  • 模型的输入
  • 会不断包含模型刚刚输出的内容

1. GPT 的工作方式

GPT 的本质是不断做这件事:

复制代码
给定前面的 token
→ 预测下一个 token
→ 把这个 token 接上
→ 再预测下一个
循环到结束

假设句子是: "我 喜欢 吃 苹果"

自回归生成过程是这样的:

1️⃣ 输入:

复制代码

预测:

复制代码
喜欢

2️⃣ 输入:

复制代码
我 喜欢

预测:

复制代码

3️⃣ 输入:

复制代码
我 喜欢 吃

预测:

复制代码
苹果

4️⃣ 输入:

复制代码
我 喜欢 吃 苹果

预测:

复制代码
<结束>

每一步都依赖之前生成的内容

2. 为什么"流式输出"只能用自回归模型?

因为:

  • 模型本身就是 一步一步生成
  • 每一步都能立刻返回一个 token

所以:

text 复制代码
token 1 → token 2 → token 3 → ...

前端才能:

  • 边收边渲染
  • 像 ChatGPT 一样"打字"

二、非自回归模型

Google 在 2018 年提出的非自回归模型 BERT ,是一个基于 Transformer Encoder 的预训练语言模型。它的核心目标是理解文本,而不是生成文本

1. 自回归 vs 非自回归

对比点 自回归模型(GPT) 非自回归模型(BERT)
是否逐 token 生成 ✅ 是 ❌ 否
是否依赖已生成内容 ✅ 是 ❌ 否
是否能流式输出
是否适合聊天
主要能力 生成 理解

**模型在预测时,一次性"看完整个句子",而不是一个字一个字

2.BERT 的核心结构:Transformer Encoder

Transformer Encoder 是 Google 在 2017 年发表的经典论文《Attention Is All You Need》中提出的 Transformer 模型的一半(前半部分)。

简单来说,它的作用是"理解"输入序列。它接收一串文本(Token 序列),通过复杂的注意力机制,输出这串文本中每个词的上下文相关的向量表示

比如 "我吃了一个苹果"和"苹果发布了新手机"中,两个"苹果"对应的输出向量是完全不同的(前者包含水果的语义,后者包含科技公司的语义)

BERT 只使用了 Transformer 的一半结构:

复制代码
Transformer
├── Encoder  ✅(BERT 使用)
└── Decoder  ❌(BERT 不用)

Encoder 的特点:

  • 可以 同时看到左右上下文
  • 使用 双向 Attention
  • 更适合做「理解型任务」

📌 GPT 用的是 Decoder(单向)

📌 BERT 用的是 Encoder(双向)

3. BERT 为什么是「双向理解」?

来看一个经典例子:

"我昨天去银行存钱"

这里的 "银行" 是:

  • 金融机构?
  • 河岸?

GPT(自回归)的问题

GPT 在生成到「银行」时:

  • 还没看到后面的"存钱"
  • 只能根据左侧上下文猜

BERT 在理解时:

  • 同时看到「我 / 昨天 / 去 / 银行 / 存钱」
  • 利用前后语义,准确判断

📌 这就是 Bidirectional(双向) 的意义

4. BERT 是如何训练的?

1. Masked Language Model(MLM)

BERT 的核心训练方式:

text 复制代码
原句:我 喜欢 吃 苹果
处理:我 喜欢 [MASK] 苹果
目标:预测 [MASK] 是 "吃"

特点:

  • 不是预测下一个词
  • 而是预测"被遮住的词"

2. Next Sentence Prediction(NSP)

让模型判断:

句子 B 是否是句子 A 的下一句?

用于提升:

  • 句间关系理解
  • 问答 / 推理能力

5. 为什么 BERT 不能用来聊天?

BERT 不是用来"生成文本"的,而是用来"理解文本"的

具体原因:

1️⃣ 非自回归

  • 无法逐 token 生成
  • 没有"下一步预测"机制

2️⃣ 没有 Decoder

  • 没有生成头
  • 无法自然续写文本

3️⃣ 训练目标不同

  • BERT 训练的是「填空」
  • GPT 训练的是「续写」
模型 定位
BERT 语言理解引擎
GPT 语言生成引擎
相关推荐
mit6.82431 分钟前
AI时代下的TypeScript
人工智能
sulikey36 分钟前
大模型是如何工作的
人工智能
久违 °8 小时前
【AI-Agent】TagMatrix 数据标注工具开发
人工智能·数据分析·go·agent·数据隐私
AI360labs_atyun8 小时前
腾讯推出电子牛马Marvis,好用吗?
人工智能·科技·ai
Dfreedom.8 小时前
Windows、虚拟机、开发板组网通信原理及调试通联步骤
人工智能·windows·部署·边缘计算·开发板·模型加速
3DVisionary8 小时前
蓝光三维扫描:医疗制造的精度焦虑怎么解
人工智能·算法·制造·蓝光三维扫描·医疗制造·三维检测·义齿检测
Are_You_Okkk_8 小时前
基于MonkeyCode解析AI研发新模式,根治开发低效痛点
大数据·人工智能·开源·ai编程
好评笔记8 小时前
机器学习面试八股——常用损失函数
人工智能·深度学习·算法·机器学习·校招
weixin_468466858 小时前
全局与局部注意力机制新手实战指南
人工智能·python·深度学习·算法·自然语言处理·transformer·注意力机制
weixin_468466858 小时前
工业相机成像原理新手入门指南
人工智能·自动化·机器视觉·工业相机·光学·光学系统·成像原理