什么是BERT?
0 531
0
该提问暂无详细描述
收藏
2021-02-25 11:30 更新 正直的烤面包 •  3996
共 2 个回答
高赞 时间
0

BERT是一种预训练语言表示的方法,这意味着我们在大型文本语料库(例如Wikipedia)上训练通用的“语言理解”模型,然后将该模型用于我们关心的下游NLP任务(例如问题 回答)。 BERT优于以前的方法,因为它是第一个用于预训练NLP的无监督,深度双向系统。

无监督意味着BERT仅使用纯文本语料库进行训练,这很重要,因为在网络上可以公开提供多种语言的大量纯文本数据。

预训练的表示也可以是无上下文或上下文的,并且上下文表示可以进一步是单向或双向的。 诸如word2vec或GloVe之类的上下文无关模型会为词汇表中的每个单词生成单个“单词嵌入”表示,因此bankbank deposit 和 river bank的表示将相同。 上下文模型会根据句子中的其他单词生成每个单词的表示形式。

BERT建立在近期训练上下文相关表示的工作之上——包括半监督序列学习,生成式预训练,ELMo和ULMFit,但至关重要的是,这些模型都是单向或浅双向的。 这意味着每个单词仅使用其左侧(或右侧)的单词进行上下文化。

例如,在句子I made a bank deposit中,bank的单向表示仅基于I made a而不是deposit。 某些先前的工作确实结合了来自单独的左上下文模型和右上下文模型的表示,但是仅以“浅”方式进行。 BERT代表“bank”,同时使用其左右上下文——I made a ... deposit,这从深度神经网络的最底部开始,因此它是双向的。

BERT为此使用一种简单的方法:我们屏蔽掉输入中15%的单词,通过深度双向Transformer编码器运行整个序列,然后仅预测被屏蔽的单词。 例如:

Input: the man went to the [MASK1] . he bought a [MASK2] of milk.
Labels: [MASK1] = store; [MASK2] = gallon

为了学习句子之间的关系,我们还训练了一个可以从任何单词语料库生成的简单任务:给定两个句子 AB ,那么实际 B 之后的下一个句子是 A ,还是来自语料库的随机句子?

Sentence A: the man went to the store .
Sentence B: he bought a gallon of milk .
Label: IsNextSentence
Sentence A: the man went to the store .
Sentence B: penguins are flightless .
Label: NotNextSentence

然后,我们在一个大型语料库(Wikipedia + BookCorpus)上训练了一个大型模型(12层至24层Transformer)很长时间(每次更新1M),这就是BERT。

使用BERT有两个阶段:预训练和微调。

预训练相当贵(在4至16个Cloud TPU持续4天),但是每种语言都是一次性的程序(当前模型仅支持英语,但是不久将发布多语言模型)。

微调是便宜的。 从完全相同的预训练模型开始,论文中的所有结果最多可以在单个Cloud TPU上复制1个小时,或者在GPU上复制几个小时。 例如,可以在单个Cloud TPU上在大约30分钟内对SQuAD进行培训,以达到91.0%的Dev F1得分,这是单个系统的最新技术水平。

BERT的另一个重要方面是,它可以很容易地适应许多类型的NLP任务。

参考https://github.com/xuanzebi/BERT-CH-NER/tree/master/bert-master

收藏
2021-02-25 11:40 更新 阿托 •  17013
0

BERT的全称为Bidirectional Encoder Representation from Transformers,是一个预训练的语言表征模型。它强调了不再像以往一样采用传统的单向语言模型或者把两个单向语言模型进行浅层拼接的方法进行预训练,而是采用新的masked language model(MLM),以致能生成深度的双向语言表征。BERT论文发表时提及在11个NLP(Natural Language Processing,自然语言处理)任务中获得了新的state-of-the-art的结果,令人目瞪口呆。

该模型有以下主要优点:

1)采用MLM对双向的Transformers进行预训练,以生成深层的双向语言表征。

2)预训练后,只需要添加一个额外的输出层进行fine-tune,就可以在各种各样的下游任务中取得state-of-the-art的表现。在这过程中并不需要对BERT进行任务特定的结构修改。 来源 https://zhuanlan.zhihu.com/p/98855346

收藏
2021-02-25 14:38 更新 🤧 快离开 •  12