跳转至

NLP高频面(52)BERT 变体详解

NLP高频面(52)BERT 变体详解

本文讨论了现代自然语言处理领域中 BERT 系列模型的多种变体,介绍了它们的改进方式、各模型特点,并对比了相关任务和技术。关键要点包括:

BERT 变体创新:ALBERT 减少参数量;RoBERTa 优化训练策略;ELECTRA 提升预训练效率;SpanBERT 增强跨度信息捕获;Transformer-XL 实现长文本依赖建模。

NSP 与 SOP 区别:NSP 判断两段文本是否相邻,侧重主题漂移检测;SOP 对比相邻句对及其反转句对,强化语篇结构建模。

ALBERT 参数缩减技术:因式分解嵌入参数化,拆分嵌入矩阵;跨层参数共享,各层复用权重,降低内存占用。

RoBERTa 与 BERT 差异:移除 NSP,采用动态掩码;使用 160GB 以上文本,扩大批量;延长训练时间。

ELECTRA替换标记检测任务:生成器生成替换标记,判别器判断标记真假,提升预训练效率。

SpanBERT 掩码策略:掩码对象为连续片段,平均长度约 3.8 个标记,掩码比例 15%;采用特定替换规则,并引入 “片段边界目标”。

Transformer-XL 长文本建模机制:段级循环缓存上一段隐藏状态;相对位置编码解决位置语义不连贯问题。

在现代自然语言处理领域,BERT系列模型不断演进,衍生出多种变体,它们通过改进预训练任务、模型结构和训练策略,在不同应用场景下取得了更优表现。本文首先概览主要BERT变体(如ALBERT、RoBERTa、ELECTRA、SpanBERT、Transformer-XL等),随后针对以下几个关键问题逐一展开:句序预测(SOP)与下句预测(NSP)的区别;ALBERT的参数缩减技术及跨层参数共享;RoBERTa与BERT的差异;ELECTRA中的替换标记检测任务;SpanBERT的掩码策略;以及Transformer-XL如何实现长文本依赖建模。

BERT 变体篇

BERT(Bidirectional Encoder Representations from Transformers)自2018年提出以来,其双向Transformer架构与掩码语言模型(MLM)+下句预测(NSP)任务的设计,为文本理解任务奠定了基石。在此基础上,各种变体针对模型效率、预训练任务及长文本建模提出了创新:

ALBERT:引入跨层参数共享与因式分解嵌入,替换 NSP 为句序预测(SOP)任务,同时大幅减少参数量。

RoBERTa:延长训练时长、扩大语料与批量,移除NSP并采用动态掩码,以获得更充分的预训练效果


ELECTRA:使用小型生成器替换标准掩码,并通过判别器识别“替换标记”而非生成,实现更高预训练效率。

SpanBERT:将掩码对象从单个标记扩展为连续文本片段,并引入“片段边界目标(SBO)”来提升跨度信息捕获能力。

Transformer-XL:通过段级循环机制与相对位置编码,打破固定长度上下文限制,实现长文本依赖建模。

句序预测任务与下句预测任务有什么不同?

BERT 原生使用的下句预测(NSP, Next Sentence Prediction)任务,旨在判断两段文本是否在原文中相邻。训练时,将连续句对标记为正例,将不相关的句对标记为负例,模型学习句对连贯性。

ALBERT 使用的参数缩减技术是什么?

为了在保持性能的前提下显著降低模型规模,ALBERT采用了两大技术:

因式分解嵌入参数化(Factorized Embedding Parameterization):将大词汇表嵌入矩阵拆分为较低维度嵌入与投影矩阵,使嵌入层参数量与隐藏层解耦。

跨层参数共享(Cross-Layer Parameter Sharing):在所有 Transformer 层之间共享权重,模型只保留一份参数副本,却能模拟多层深度。

什么是跨层参数共享?

跨层参数共享即让每个 Transformer 层复用同一组权重,而非为每层维护独立参数。这样,模型深度不再线性增加参数量,显著降低内存占用并提升训练效率。在前向计算中,输入依次经过相同的层函数,但由于输入内容不同,仍能实现多层表达能力。

RoBERTa 与 BERT 有什么不同?

RoBERTa 对 BERT 的训练策略进行优化:

移除 NSP 任务:不使用下句预测,改用更灵活的动态掩码策略。

动态掩码:训练过程中实时重新生成掩码位置,避免模型过拟合于固定掩码。

更大训练语料与批量:使用 160GB 以上文本,批量大小拓展数倍,以提高预训练效果。

更长训练时间:增加训练步数与学习率调度,提升模型收敛度。

在 ELECTRA 中,什么是替换标记检测任务?

ELECTRA 创新性地用替换标记检测(Replaced Token Detection, RTD)取代 MLM:训练一个小型生成器(Generator)在输入中生成候选替换标记,然后让判别器(Discriminator)对每个位置判断该标记是真实(来自原文)还是被替换。相比 MLM,RTD 对所有位置都有监督信号,显著提升预训练效率与效果。

如何在 SpanBERT 中掩盖标记?


SpanBERT 将掩码对象扩展为连续 文本片段,其流程如下:

片段长度采样:从几何分布中采样,每片段长度平均 $ \approx $3.8个标记,整体掩码比例维持在15%。

掩码策略:对选中片段,80% 用 [MASK] 替换,10% 用随机标记替换,10% 保留原标记。

片段边界目标(SBO):仅使用片段两端的边界标记表示来预测片段内部所有标记,强化跨片段关系学习。

Transformer-XL怎么实现对长文本建模?

Transformer-XL 通过两大机制突破固定上下文长度:

段级循环(Segment-Level Recurrence):缓存上一段的隐藏状态并将其作为下一段的额外上下文,实现跨段信息流动,扩展了有效依赖长度至原来的数倍。

相对位置编码(Relative Positional Encoding):用相对位置编码替代绝对编码,使循环机制中的编码保持一致,解决了位置语义不连贯问题。