什么是 BERT?BERT 模型简介

推荐指数

本文最后由 Demo Marco 更新于 2025-02-22. 如有资源已失效,请留言反馈,将会及时处理。 【推荐:不翻墙访问被墙网站方法 | 自用高速专线机场 | 高速CN2线路 | 高质量家宽住宅IP

科学突破很少凭空而来。相反,它们往往是建立在人类知识积累之上的阶梯的倒数第二步。要了解大型语言模型 (LLM)(例如 ChatGPT 和 Google Bart)的成功,我们需要回到过去,谈谈 BERT。

BERT 是谷歌研究人员于 2018 年开发的首批 LLM 之一。凭借其惊人的成果,它迅速成为 NLP 任务中无处不在的基线,包括一般语言理解、问答和命名实体识别。

可以说,BERT 为我们如今见证的生成式 AI 革命铺平了道路。尽管是第一批 LLM 之一,BERT 仍然被广泛使用,有数千个开源、免费和预训练的 BERT 模型可用于特定用例,例如情绪分析、临床记录分析和恶意评论检测。

对 BERT 感到好奇?请继续阅读本文,我们将探索 Ber 的架构、该技术的内部工作原理、它的一些实际应用及其局限性。

什么是 BERT?

BERT(Bidirectional Encoder Representations from Transformers)是谷歌在 2018 年开发的开源模型。这是一项雄心勃勃的实验,旨在测试所谓的 Transformer (谷歌研究人员在 2017 年著名论文《Attention is All You Need 》中提出的一种创新神经架构)在自然语言(NLP)任务上的性能。

BERT 成功的关键在于其 Transformer 架构。在 Transformer 出现之前,对自然语言进行建模是一项非常具有挑战性的任务。尽管出现了复杂的神经网络(即循环神经网络或卷积神经网络),但结果只是部分成功。

主要挑战在于神经网络用于预测句子中缺失单词的机制。当时,最先进的神经网络依赖于编码器-解码器架构,这是一种功能强大但耗时耗资源的机制,不适合并行计算。

考虑到这些挑战,谷歌研究人员开发了 Transformer,一种基于注意力机制的创新神经架构,如下一节所述。

BERT 如何工作?

让我们来看看 BERT 的工作原理,包括模型背后的技术、如何训练以及如何处理数据。

核心架构和功能

循环神经网络和卷积神经网络使用顺序计算来生成预测。也就是说,它们可以在对大量数据集进行训练后预测哪个单词将位于给定单词序列之后。从这个意义上讲,它们被认为是单向或无上下文算法。

相比之下,同样基于编码器-解码器架构的 BERT 等由 Transformer 驱动的模型是双向的,因为它们根据前面的单词和后面的单词来预测单词。这是通过自注意力机制实现的,该机制是编码器和解码器中都包含的一个层。注意力层的目标是捕捉输入句子中不同单词之间存在的上下文关系。

如今,预训练的 BERT 有很多版本,但在原始论文中,谷歌训练了两个版本的 BERT:BERTbase 和 BERTlarge,它们具有不同的神经架构。本质上,BERTbase 是由 12 个 Transformer 层、12 个注意层和 1.1 亿个参数开发的,而 BERTlarge 则使用了 24 个 Transformer 层、16 个注意层和 3.4 亿个参数。正如预期的那样,BERTlarge 在准确度测试中的表现优于其较小的兄弟。

Transformer 架构的解释

预训练和微调

经过一个耗时又昂贵的过程(只有包括谷歌在内的少数公司能够负担得起),Transformer 在大量数据上从头开始进行训练。

以 BERT 为例,它已在维基百科(约 25 亿个单词)和 Google BooksCorpus(约 8 亿个单词)上进行了为期四天的预训练。这使得该模型不仅可以获取英语知识,还可以获取来自世界各地的许多其他语言的知识。

为了优化训练过程,谷歌开发了专为机器学习任务设计的新硬件,即所谓的 TPU(张量处理单元)。

为了避免训练过程中不必要且昂贵的交互,谷歌研究人员使用迁移学习技术将(预)训练阶段与微调阶段分开。这允许开发人员选择预训练模型,优化目标任务的输入输出对数据,并使用特定于领域的数据重新训练预训练模型的头部。这一特性使得 BERT 等 LLM 成为在其基础上构建的无数应用程序的基础模型,

掩蔽语言模型在 BERT 处理中的作用

在 BERT(以及每个基于 Transformer 的 LLM)中实现双向学习的关键要素是注意力机制。该机制基于掩码语言建模 (MLM)。通过掩码句子中的单词,该技术迫使模型分析句子中两个方向的其余单词,以增加预测掩码单词的机会。MLM 基于计算机视觉领域已经尝试过的技术,非常适合需要对整个序列有良好的上下文理解的任务。

BERT 是第一个应用该技术的 LLM。具体来说,在训练过程中,随机屏蔽了 15% 的标记词。结果表明,BERT 可以高精度地预测隐藏的单词。

BERT 有什么用?BERT 对 NLP 的影响

在 transformer 的支持下,BERT 能够在多个 NLP 任务中取得最佳成果。以下是 BERT 表现出色的一些测试:

  • 问答。BERT是首批由 Transformer 驱动的聊天机器人之一,取得了令人印象深刻的成果。
  • 情感分析。例如,BERT 已成功预测电影评论中的正面或负面标点符号。
  • 文本生成。作为下一代聊天机器人的前身,BERT 已经能够使用简单的提示创建长文本。
  • 总结文本。同样,BERT 能够阅读和总结来自复杂领域(包括法律和医疗保健)的文本。
  • 语言翻译。BERT已使用多种语言编写的数据进行训练。这使它成为一个多语言模型,非常适合语言翻译。
  • 自动完成任务。BERT可用于自动完成任务,例如在电子邮件或消息服务中。

BERT 的实际应用

许多 LLM 已经在实验中被尝试过,但很少有被纳入成熟的应用程序。但 BERT 的情况并非如此,它每天都被数百万人使用(尽管我们可能没有意识到这一点)。

一个很好的例子就是谷歌搜索。2020 年,谷歌宣布已在 70 多种语言的谷歌搜索中采用了 BERT。这意味着谷歌使用 BERT 对内容进行排名并显示精选摘要。借助注意力机制,谷歌现在可以使用您问题的上下文来提供有用的信息,如下例所示。

来源:谷歌

BERT 的变体和改编

但这只是故事的一部分。BERT 的成功很大程度上归功于它的开源特性,这使得开发人员能够访问原始 BERT 的源代码并创建新的功能和改进。

这导致了大量 BERT 变体的出现。下面是一些最著名的变体:

  • RoBERTa。RoBERTa是“稳健优化的 BERT 方法”的缩写,是 Meta 与华盛顿大学合作创建的 BERT 变体。RoBERTa 被认为是比原始 BERT 更强大的版本,其训练数据集是训练 BERT 所用数据集的 10 倍。至于其架构,最显着的区别是使用动态掩蔽学习而不是静态掩蔽学习。这项技术涉及复制训练数据并对其进行 10 次掩蔽,每次都使用不同的掩蔽策略,这使 RoBERTa 能够学习更稳健和更通用的单词表示。
  • DistilBERT。自 2010 年代末推出首批 LLM 以来,构建更大、更重的 LLM 的趋势一直存在。这是有道理的,因为模型大小和模型准确度之间似乎存在直接关系。然而,模型越大,运行所需的资源就越多,因此,能够负担得起的人就越少。DistilBERT 旨在通过提供更小、更快、更便宜、更轻的变体,让 BERT 更容易获得。基于原始 BERT 的架构,DistilBERT 在预训练期间使用知识蒸馏技术将尺寸缩小了 40%,同时保留了 97% 的语言理解能力,速度提高了 60%。
  • ALBERT。ALBERT代表 A Lite BERT,专为提高 BERTlarge 在预训练期间的效率而设计。由于训练更大的模型通常会导致内存限制、更长的训练时间和意外的模型退化,ALBERT 创建者开发了两种参数减少技术,以减少内存查询并提高训练速度。

针对特定任务微调 BERT

BERT 和 LLM 的一大优点是预训练过程与微调过程是分开的。这意味着开发人员可以采用 BERT 的预训练版本,并根据其特定用例对其进行自定义。

以 BERT 为例,有数百个针对各种 NLP 任务开发的 BERT 微调版本。下面,您可以找到一个非常有限的 BERT 微调版本列表:

  • BERT-base-chinese。针对中文 NLP 任务进行训练的 BERTbase 版本
  • BERT-base-NER。为命名实体识别而定制的 BERTbase 版本
  • Symps_disease_bert_v3_c41.自然语言聊天机器人的症状到疾病分类模型。
  • BERT for Patents是 Google 基于全球 1 亿多项专利训练的模型。它基于 BERTlarge。

了解 BERT 的局限性

BERT 具有与 LLM 相关的传统限制和问题。BERT 的预测始终基于用于训练它的数据的数量和质量。如果训练数据有限、质量差且有偏差,BERT 可能会产生不准确、有害的结果,甚至所谓的LLM 幻觉。

对于原始 BERT 而言,这种情况更有可能发生,因为该模型是在没有使用人类反馈强化学习(RLHF) 的情况下进行训练的,而 RLHF 是 ChatGPT、LLaMA 2 和 Google Bard 等更高级模型用来增强 AI 安全性的标准技术。RLHF 涉及使用人类反馈在训练期间监控和引导 LLM 的学习过程,从而确保系统有效、更安全、更值得信赖。

此外,虽然与其他最先进的 LLM(如 ChatGPT)相比,它可以算作一个小型模型,但运行它仍然需要相当多的计算能力,更不用说从头开始训练它了。因此,资源有限的开发人员可能无法使用它。

BERT 和 NLP 的未来

BERT 是最早的现代 LLM 之一。但 BERT 远非过时,它仍然是最成功和使用最广泛的 LLM 之一。由于其开源性质,如今有多种变体和数百个针对特定 NLP 任务设计的 BERT 预训练版本。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

You May Also Like