ROBERTa 模型概述
RoBERTa 代表稳健优化的 BERT 预训练方法。它是由 Facebook 和华盛顿大学的研究人员提出的。本文的目标是优化 BERT 架构的训练,以便在预训练期间花费更少的时间。
对 BERT 的修改:
RoBERTa 的架构与 BERT 几乎相似,但为了改进 BERT 架构的结果,作者对其架构和训练过程进行了一些简单的设计更改。这些变化是:
- 移除下一句预测 (NSP) 目标:在下一句预测中,训练模型以通过辅助下一句预测 (NSP) 损失来预测观察到的文档段是来自相同还是不同的文档。作者尝试将 NSP 损失移除/添加到不同版本并得出结论,移除 NSP 损失匹配或略微提高下游任务性能
- 使用更大的批量和更长的序列进行训练:最初 BERT 训练了 1M 步,批量为 256 个序列。在这篇论文中,作者用 125 步的 2K 序列和 31K 步的 8k 序列批量训练模型。这有两个优点,大批量提高了掩码语言建模目标的困惑度和最终任务的准确性。通过分布式并行训练,大批量也更容易并行化。
- 动态改变掩码模式:在 BERT 架构中,掩码在数据预处理期间执行一次,从而产生单个静态掩码。为了避免使用单个静态掩码,训练数据被复制和掩码 10 次,每次使用不同的掩码策略超过 40 个时期,因此有 4 个时期具有相同的掩码。将此策略与动态屏蔽进行比较,其中每次我们将数据传递到模型时使用不同的屏蔽。
使用的数据集:
以下是用于训练 ROBERTa 模型的数据集:
- BOOK CORPUS 和英文维基百科数据集:这个数据也用于训练 BERT 架构,这个数据包含 16GB 的文本。
- 抄送新闻。该数据包含 2016 年 9 月至 2019 年 2 月间抓取的 6300 万篇英文新闻文章。该数据集过滤后的大小为 76 GB。
- OPENWEBTEXT:该数据集包含从 Reddit 上共享的 URL 中提取的 Web 内容,并且至少获得 3 票赞成。此数据集的大小为 38 GB。
- STORIES:该数据集包含一个经过过滤以匹配 Winograd NLP 任务的故事风格的 Common Crawl 数据子集。该数据集包含 31 GB 的文本。
结果:
- 在 GLUE 基准 NLP 任务上,该模型在公共排行榜上获得了 88.5 分,并在 GLUE 任务中的 4 个任务上获得了最先进的分数:多自然语言推理 (MNLI)、QuestionNLI、语义文本相似性基准( STS-B) 和在其发布时识别文本蕴涵 (RTE)。
- 在发布时,在 SQuAD 1.1 和 SQuAD 2.0 数据集上,它能够匹配 XLNet 之前的最新结果。
- 它还在 RACE 基准数据集上取得了比 BERT(LARGE) 模型和 XLNet 更好的结果。
参考:
- 脸书人工智能博客
- 罗伯塔纸