BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 论文阅读笔记
1. 概况
语言模型预训练已经证明可以改善许多自然语言处理任务,如如命名实体识别、SQuAD问答。
现有两种策略可用于将预训练语言表示应用于下游任务:基于特征和微调。 基于特征的方法,如ELMo,使用特定于任务的体系结构,其中包括预先训练的表示作为附加功能。 微调方法,例如Generative Pre-trained Transformer(OpenAI GPT),引入了最小的任务特定参数,并通过简单微调预训练的方式对下游任务进行了训练。在以前的工作中,这两种方法在预训练期间共享相同的目标函数,在这些方法中,他们使用单向语言模型来学习一般语言表达。
当前技术严格限制了预训练表示的效果,特别是对于微调方法。 主要是标准语言模型是单向的,这限制了在预训练期间可以使用的架构的选择。 例如,在OpenAI GPT中,作者使用从左到右的架构,其中每个token只能处理Transformer的自我关注层中的先前token。 这种限制对于句子级别的任务来说是次优的,并且在对基于微调的token级任务(如SQuAD问答)时采用基于微调的方法时可能具有破坏性。
2. BERT原理
BERT原理主要包含两部分,一是对大量未标注的预料进行无监督的预训练,从而学习其表达法;二是使用少量标记的训练数据用有监督方式微调预训练模型,从而进行各种有监督任务。与训练模型现已在多个领域取得成功,包括但不限于NLP、图像处理。
bert是transformer双向编码器的一种表示,它基于transformer架构。tansformer使用的是encoder-decoder网络,但bert是一种预训练模型,仅仅使用编码学习输入文本中的潜在表达。
bert将多个transfomer编码器堆叠在一起,transformer以多头注意模块(multi-head attention)为核心。bert有两点突出的地方,首先创新使用预训练任务Masked Language Model (MLM)与Next Sentence Prediction (NSP);另外训练BERT使用了大量数据和算力。
MLM使得BERT能够从文本中进行双向学习,此前的模型是做不到的。此前,Generative Pre-training (GPT) 采用了从左到右的训练方式,ELMo 采用浅双向学习(shallow bidirectionality)。
MLM预训练任务将文本转换为tokens,把token表示作为训练的输入和输出。随机取其中15%的token进行mask,具体来说就是在训练输入时隐藏,然后用目标函数预测出正确的token内容。这种方式对比以往的训练方式,以往方式采用单方向预测作为目标或采用从左到右及从右到左两组(单方向)去近似双向。
NSP任务通过预测后一个句子是否应该接在前一句之后,从而使得BERT可以学习句子间的关系。训练数据采用50%顺序正确的句子对加上另外50%随机选取的句子对。
BERT同时训练MLM和NSP这两个目标。
3. 数据/训练
bert训练时采用了33亿单词和25亿维基百科和8亿文本预料,采用TPU、GPU训练,如下所示:
fine-tuning训练时采用了2.5k-392k个标注样本。每个fine-tuning实验采用单个TPU,并且都在1个小时内完成,GPU则需要几个小时。
4. 结果
bert效果表现突出,在多个nlp任务中都有不错的成绩。主要表现在3大类任务,文本分类、文字蕴涵、问答。在SQUAD和SWAG中,第一个超过了人类水平算法。
论文中,bert效果如下所示:
5. 思考
5.1 全词Mask(WWM)与tokenizer的关系
两者是没有任何关系的。这是由于WWM只改变MASK方式,不影响原有输入形式。而tokenizer.tokenize()方法本质上是对中文进行字颗粒度的切分。
由于谷歌官方发布的BERT-base, Chinese中,中文是以字为粒度进行切分,没有考虑到传统NLP中的中文分词(CWS)。 我们将全词Mask的方法应用在了中文中,使用了中文维基百科(包括简体和繁体)进行训练,并且使用了哈工大LTP作为分词工具,即对组成同一个词的汉字全部进行Mask。
6. 英语解读
6.1 标题
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
: Pre-training of Deep Bidirectional Transformers for Language Understanding表示的是同位语(包含冒号以及后面的内容,BERT作为专用名词,后面部分作为普通名词)。of Deep Bidirectional Transformers表示后置定语,限定说明Pre-training。for Language Understanding,表示的是目的状语。
6.2 摘要
We introduce a new language representation model (called BERT) (后置定语), which stands for Bidirectional Encoder Representations from Transformers(非限定性定语从句).
Unlike recent language representation models (Peters et al., 2018a; Radford et al., 2018)(状语), BERT is designed(被动) to pretrain deep bidirectional representations from unlabeled text by(动作的发出者) jointly conditioning on both left and right context in all layers.
As a result(结果状语), the pre-trained BERT model can be finetuned with just one additional output layer to create state-of-the-art models for a wide range of tasks(介词短语作目的状语), such as(such as用于表示列举,相当于介词like)question answering and language inference(介词短语作定语,限定修饰tasks), without substantial taskspecific architecture modifications(介词短语做定语,限定修饰tasks).
BERT is conceptually simple and empirically powerful. It obtains new state-of-the-art results on eleven natural language processing tasks(介词短语作状语), including pushing the GLUE score to 80.5% (7.7% point absolute improvement), MultiNLI accuracy to 86.7% (4.6% absolute improvement), SQuAD v1.1 question answering Test F1 to 93.2 (1.5 point absolute improvement) and SQuAD v2.0 Test F1 to 83.1 (5.1 point absolute improvement) (从including开始到句子结束,非谓语动词之doing作定语)
更多推荐
所有评论(0)