bert:pre-training of deep bidirectional transformers for language understanding
这篇论文介绍了BERT(Bidirectional Encoders Representations from Transformers)作为自然语言处理领域的经典模型及其应用。BERT通过结合双向编码器表示(取代传统的单向RNN),解决了传统单向语言模型无法同时捕捉上下文信息的问题。其创新之处在于通过Masked Language Model(MLM)和Next Sentence Prediction(NSP)等多任务预训练方法,在未标记数据上学习通用表征,并结合Positional Embedding技术提升下游任务性能。此外,BERT还展示了其对视觉大规模自监督预训练算法(如MAE)的启发作用,并提供了灵活的微调机制以适应不同下游任务的需求。实验结果表明,BERT在多种 downstream任务中表现优异,成为当前NLP领域的重要基准模型之一。
论文精读
论文精读
论文精读
论文精读
论文精读

论文精读

该文档介绍了基于Transformers的双向编码器表示(BERT),该方法在自然语言处理领域的预训练任务中表现优异,并为深度学习模型构建提供了强大的工具基础。

该文章旨在深入阐述Transformers的基本架构,并结合GPT、BERT、MT-DNN以及GPT-2等基于Transformer的知名应用场景进行详细探讨。通过分析这些模型的具体实现机制与应用价值,我们得以观察到这一创新结构如何在其众多变种中展现出强大的性能。

该文章深入探讨了Transformer架构及其在多个领域的应用
最经典的是在自然语言处理领域取得辉煌成就。
后续研究从视觉角度启发了MAE等图像自监督训练的大模型架构。
阅读后发现相关内容确实较为完善。
最近一篇介绍文章写得非常清晰地阐述了GPT与BERT的区别。
1.introduction
自然语言处理涉及两种类型的任务:基于句子的任务和基于词 tokenize 的任务。可将经过先期训练的语言模型应用于 downstream 任务采用两种策略: feature-based 和 fine-tuning 两种方法。其中 feature-based 是指将预先提取的特征作为补充特征融入 downstream 任务进行联合学习;而 fine-tuning 则类似于对模型参数进行初始设置。两者均采用单向编码机制来提取通用语义表征;其中 GPT 基于单向解码器结构;而 BERT 则采用双向编码器架构;本文作者认为这是 BERT 最大化的卖点之一。
bert受到完形填空任务的启发,通过masked language model(MLM)预训练语言模型任务来解决单向性约束问题。随机遮蔽输入中的某些标记位置,其目标是仅根据词的上下文预测mask掉的位置。
2.related work
2.1 unsupervised feature-based approaches
主要是ELMo。
2.2 unpervised fine-tuning approaches
openai的GPT。
3.BERT
bert主要包含两个阶段:预训练阶段(pre-training)与微调阶段(fine-tuning)。在预训练阶段中, 模型基于未标记数据参与多个预设任务的学习。进入微调阶段之前, 首先为BERT模型初始化参数时采用了来自前一阶段的预训练结果。值得注意的是, 尽管所有下游任务均采用了相同的初始参数配置, 在建立微调模型时仍可针对特定任务需求进行独立优化。

3.1 model architecture
主要涉及两种模型:一种是基于BERT的小规模版本(具有L层为12、隐藏层宽度为768、注意力头数为12,并总计约110百万个可训练参数),另一种是大规模版本(包括L层为24、隐藏层宽度为1024、注意力头数增加至16,并拥有约340百万个可训练参数)。值得注意的是,在此研究中使用的小规模BERT其规模与基于BERT的小规模模型相近;值得注意的是,在此研究中使用的小规模BERT其规模与基于BERT的小规模模型相近;值得注意的是,在此研究中使用的小规模BERT其规模与基于BERT的小规模模型相近;值得注意的是,在此研究中使用的小规模BERT其规模与基于BERT的小规模模型相近;值得注意的是,在此研究中使用的小规模BERT其规模与基于BERT的小规模模型相近;值得注意的是,在此研究中使用的小规模BERT其大小与基于 Bert 的小尺寸版相似;值得注意的是,在此研究中使用的较小尺寸 BERT 其大小与其基础尺寸相当;在本研究中所使用的较小尺寸 BERT 在总体上与其基础尺寸相当;在本研究中所使用的较小尺寸 BERT 在总体上与其基础尺寸相当;在本研究中所使用的较小尺寸 BERT 在总体上与其基础尺寸相当;在本研究中所使用的较小尺寸 BERT 在总体上与其基础尺寸相当;在本研究中所使用的较小尺寸 BERT 其总体容量接近于基础级别的 BERT 模型
3.2 input/output representations
为了使BERT能够处理不同的下游任务, 输入表示既可以是一个单独的句子, 也可以是一对句子. 因此, 在BERT体系中, 句子可以在连续文本的不同长度范围内进行处理, 一对这样的表示也被统称为" sentence", 而在BERT中被称作" sequence", 它既可以作为一个单独的句子出现, 也可以将两个相关联的句子连接成一个复合结构的形式进行处理.
使用wordpiece技术,在英文词汇中存在由词根词缀组成的复合词形式(如flying),虽然整体单词可能不常见但其词根和词缀均为常用词汇(如分解为fly和ing两个部分)。这样一来总共有约3万个token(tokenization单位),其中单词数目相对较少(如vit也是采用这种形式),原始的vit模型则是将第一个[cls]标记作为特殊符号用于下游任务的预测作用。最终的隐藏状态对应于该token,则用于作为分类任务的序列标记。整个句子被压缩成单一序列的形式,在区分不同句子时首先采用一个特殊的分隔标记[sep]将其分割开来,并对每个嵌入信息增加了表示该条目属于第a个句子还是第b个句子的一个标识符token

上文图示清晰可见,在图中标注了三种不同的嵌入表示:token嵌入、segment嵌入以及位置嵌入(Position Embedding),这些标记分别用于标识输入句子a或句子b在不同位置的信息。值得注意的是,在本模型中位置嵌入是通过学习获得的方式实现的,在传统的transformers架构中通常是预定义的(predefined)
3.1 pre-training bert
基于两个无监督任务的预训练方案具有重要意义。值得注意的是,在Bert架构上并未引入新的创新性设计,其编码器结构源自Transformers框架已有成果。然而这一流程不仅实现了预训练目标,并且建立了有效的下游任务处理模式。这种设计思路值得作为研究重点深入探讨,在视觉领域引发了广泛关注与研究热潮。
Task1:Masked LM.相较于仅能从前向后或后向左进行单向传播的传统条件语言模型而言,深度双向模型在捕捉信息时展现出显著的优势。传统的条件语言模型通常仅能单向进行参数更新与优化,在引入双向架构后,则可使每个词单元得以间接观察自身状态。
基于Transformer架构设计的语言模型,在BERT中没有应用Mask机制的情况下运行良好。与GPT不同的是,在实现语言模型的预训练目标时,GPT设计时要求其预测下一个词时只能依赖当前和之前的词,这也是该模型放弃传统的双层结构而选择单层结构的原因。与GPT不同,BERT旨在通过双向Transformer架构捕获完整的上下文信息.然而,这种设计导致在预训练过程中就无法直接应用传统的语言模型框架,因为每个Token的位置信息都会被其他Token干扰.ELMo虽然采用了双向RNN结构,但其两个方向上的RNN是相互独立的,从而避免了上述问题.
在Transformer架构中,我们既想了解过去的信息又想了解未来的信息;同时确保模型无法获取所要预测词的信息。因此无需向模型透露这些需要预测的关键词语。以输入的一段句子为基础,在其中移除一些需要进行预测的词语;然后通过周围的上下文信息进行分析;从而使得模型能够利用这些位置上的输出结果来进行相应的预测任务。类似于完成填充空白的任务(即做 Cloze 测试)。
然而,在大规模替换大量词汇时,在BERT模型中引入
在输入数据中随机抽取约15%,这些选中的词语将用于推断后续结果;其中,在输入过程中,80%以上的词语将被替换成[MASK]标记以模拟缺失情况;其余10%的数据样本其词向量则被替换为其他词汇对应的向量;而另外约10%,即剩余的数据样本则保持原有状态不变。
告诉模型你可能会得到答案、错误的答案或者没有答案。如果有
Task2:Next-Sentence Prediction(NSP)是一个关键的技术框架。它被广泛应用于多个关键领域中的下游任务,包括问答系统和自然语言推理系统等。传统的基于单个句子的语言模型无法有效处理这些问题。BERT通过其独特的预训练方法——Next-Sentence Prediction(NSP),拓展了其预训练能力,并与Masked Language Model(MLM)一起被设计为多任务学习框架。BERT通过将连续的两个句子输入到模型中进行处理,并利用CLS token标记开始位置来判断输入的两个句子是否构成连续的上下文关系。为了提高效率,在实际应用中采用了负采样的方法,在正样本和负样本的比例上维持在50%左右
Pre-training data:BookCorpus(800m)和English wikipedia(2500m words)
3.2 fine-tuning BERT
在BERT模型中,针对每个任务,仅需添加特定任务的输入输出数据进行端到端微调,并通过使用[CLS]标记进行分类处理。
4.experiments
