Type: concept
Confidence: 0.90
Created: 2026-04-18
Updated: 2026-04-18
Tags: 深度学习NLP预训练BERT句子理解机器学习

下一句预测(NSP)

概述

下一句预测(Next Sentence Prediction, NSP)是 BERT 的第二个预训练任务,通过判断两个句子是否为连续文本,使模型学习句子间关系,对问答、自然语言推理(NLI)等任务有帮助。后续研究发现其贡献有限,RoBERTa 等模型选择去掉 NSP。

关键内容

任务设计

NSP 是一个二分类任务:

输入格式:[CLS] 句子A [SEP] 句子B [SEP]

50% 情况:B 是 A 的真实下一句 → 标签 IsNext
50% 情况:B 是随机抽取的句子  → 标签 NotNext

目标:[CLS] 位置的输出向量预测 IsNext / NotNext

输入格式详解

模型取 [CLS] 位置的输出向量,经过一个线性分类层预测 IsNext/NotNext。

设计动机

NSP 的设计目的是让模型理解句子间关系,这对以下任务至关重要:

与 MLM 的互补性

维度 掩码语言模型(MLM) NSP
粒度 词级别 句子级别
目标 预测被掩盖的词 判断句子连续性
能力 双向词义理解 句子间关系理解
输入 单句(含掩码) 句对

后续争议:NSP 是否必要?

RoBERTa(2019,Facebook)的系统性研究发现:

这一发现影响了后续模型设计:RoBERTa、ALBert、DeBERTa 等均不再使用 NSP。

在 BERT 架构中的实现

BERT 的预训练头中,NSP 头(BertNSPHead)是一个简单线性层:

[CLS] 输出 → Linear(H, 2) → IsNext/NotNext logits

与 MLM 头(预测整个词表)相比,NSP 头极其轻量,仅 2×H+2 个参数。

来源

相关