李宏毅老师《Pre-train Model》
什么是:Self-supervised Learning
BERT
BERT 能做什么
Mask Input
Next Sentence Prediction(not helpful)
BERT其它的能力
上述的能力,可以认为是一种填空
的能力,那么除了这些,还有哪些有用的能力呢?
BERT能力模型评估
GLUE(General Language Understanding Evaluation)
GLUE是一个自然语言理解(NLU)任务的评测基准,由华盛顿大学 & Google Brain 联合发布(2018 年)。
就像给 NLP 模型搞期末考试一样,通过一系列标准化任务,看模型对语言理解能力到底行不行。
GLUE 里都考什么?
GLUE 是一个任务集合(benchmark suite),包含了 9 个子任务,主要考:
- 句子关系判断
- 情感分类
- 语义相似度
- 推理能力
- 语言蕴含关系
核心任务表:
任务名 | 任务类型 | 简介 |
---|---|---|
MNLI | 句子蕴含 (NLI) | 判断两句话是否蕴含、矛盾或无关 |
QNLI | 问答 NLI | 判断一句话是否回答了问题 |
QQP | 句子相似度 | 判断两个问题是否等价 |
SST-2 | 情感分类 | 判断句子是积极还是消极 |
CoLA | 语言学可接受性 | 判断句子是否语法正确 |
MRPC | 句子对等判断 | 判断两句话是否语义等价 |
STS-B | 语义相似度打分 | 给两个句子相似度打分 (0~5) |
BERT and its Family GLUE scores
TraIning BERT
How to use BERT
Use Case1: 情感分析
Use Case2: 词性标注
Use Case3: 自然语言蕴含推理
NLI(Natural Language Inference): 给定两句话,第二句是不是能从第一句推理出来、相矛盾,还是无关?
** NLI 任务通常分类**
标签 | 含义 | 举例 |
---|---|---|
Entailment | 蕴含(能推导出来) | A: “所有狗都会叫。” B: “我家狗会叫。” |
Contradiction | 矛盾 | A: “所有狗都会叫。” B: “我家狗从不叫。” |
Neutral | 无关或无法确定 | A: “所有狗都会叫。” B: “我家狗喜欢吃骨头。” |
Use Case4: 抽取式问答
Extraction-based QA(抽取式问答) 是一种 从给定文本中直接抽取答案片段的问答方法。
特点:
- 给定一段上下文 + 一个问题
- 系统在上下文里找出一段或一句话,作为答案
- 答案必须是原文里的内容(抽取出来,不是生成出来)
举个例子
上下文:“OpenAI 是一家人工智能研究机构,成立于 2015 年,总部位于旧金山。”
问题: “OpenAI 成立于哪一年?”
抽取式答案: “2015 年”
Why does BERT work?
Contextualized word embedding
Apply BERT to protein,DNA, music classification
Multi-lingual BERT
例:用英文的QA问题训练,用中文做QA问答
why
这些相同语意的词,中、英文词 的词向量很近.
零样本阅读理解
Zero-shot Reading Comprehension(零样本阅读理解 )指的是: 不给模型提供任何相似示例,直接让模型基于上下文和问题,理解语义、判断答案或生成回答。
例:
-
上下文:“OpenAI 成立于 2015 年,总部在旧金山,专注于 AI 技术研究。”
-
问题: “OpenAI 的总部在哪?”
-
Zero-shot 模型行为:
• 没有事先见过类似「总部在哪」的训练样本
• 依靠语言理解能力,定位上下文中的「总部在旧金山」,直接输出
它和 Few-shot / Fine-tuning 的区别
类型 | 定义 | 示例 |
---|---|---|
Zero-shot | 完全不给示例,直接回答 | 只给上下文和问题 |
Few-shot | 给几条类似示例,再回答 | 给 2~5 个 QA 示例 |
Fine-tuning | 预先用大量类似数据微调,提升特定任务能力 | 用大量阅读理解任务微调好的模型 |
GPT(Generative Pre-trained Transformer)
生成式预训练 Transformer 模型
Predict Next Token
<BOS>
: begin-of-sentence
How to use GPT
Few-shot/One-shot/Zero-shot Learning
T5
T5全称: Text-To-Text Transfer Transformer
由 Google AI 团队 2019 年发布,发表在论文《Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer》
它和 GPT 最大不同
- GPT 是文本 → 文本生成,
偏生成式
- T5 是
·“所有 NLP 任务都统一成 Text-to-Text 格式”
不管是翻译、分类、问答、摘要,全部都按照这个套路来做:
输入:一句文本(带任务提示)
输出:一句文本(任务结果)
本质上就是一个编码器-解码器结构的 Transformer。
T5 典型应用场景
应用场景 | 举例 |
---|---|
机器翻译 | translate English to French: How are you? → Comment ça va ? |
问答系统 | question: Who founded OpenAI? context: OpenAI was founded in 2015 by Elon Musk and Sam Altman. → Elon Musk and Sam Altman |
文本摘要 | summarize: OpenAI is an AI company founded in 2015... → An AI company founded in 2015. |
文本分类 | classify sentiment: I love this product. → positive |
语义相似度 | sts: Sentence A. Sentence B. → 4.5 (打分形式) |
#T5、BERT、GPT 各自区别
模型 | 架构类型 | 输入-输出形式 | 典型用途 | 能否生成文本 |
---|---|---|---|---|
BERT | 编码器-only,双向编码 | 文本 → 分类/判断 | 分类、问答、NER、相似度匹配 | ❌ |
GPT | 解码器-only,自回归生成 | 文本 → 续写文本 | 对话、文章续写、代码生成 | ✅ |
T5 | 编码器-解码器(双向+自回归) | 文本 → 文本(统一文本形式) | 翻译、摘要、问答、分类等多任务 | ✅ |