BERT 详解(一)

作者: 6c643a7fc0e6 | 来源:发表于2019-12-26 21:17 被阅读0次

今天来聊聊谷歌的自然语言处理框架 BERT,BERT 已经对自然语言处理有着显著的变革,那么 BERT 到底是什么呢?

bert.png

根据 BERT 论文 中定义,BERT (Bidirectional Encoder Representations from Transformers) 是一种基于 Transformer 结构的双向编码器,通过联合调节所有层的左右上下文来预训练深度双向表示。因此,经过预训练的 BERT 模型,只需要一个额外的输出层,就可以进行微调,从而可以为各种自然语言处理任务生成最先进的模型,无需对该任务进行大量模型结构的修改。

1. 数据量

BERT 的预训练数据一共 33 亿个字,包含了整个维基百科的大量语料库和图书语料库。

2.模型大小

BERT 模型的标准版有 1 亿的参数量,大号版本有 3 亿多的参数量

3. 硬件资源

谷歌用了 16 个 TPU 集群(一共 64 块 TPU)来训练大号版本的 BERT,花了 4 天时间。TPU 速度比 GPU 要快 15~30 倍左右。

4. 深度双向表示

BERT 是一个深度双向表示的模型,双向意味着 BERT 在训练阶段会从所选文本的左右上下文中汲取消息,比如:

We went to the river bank.
I need to go to the bank to make a deposit.

第 一句表示:我们走到了河边,这里的 bank 表示岸边的意思;第二句话是指,我需要去趟银行存个钱,这里的 bank 表示银行的意思。

如果仅仅汲取左上下文或右上下文,那么 bank 的意思在刚才的例子中,至少要出错一个,解决这个问题的方法就是:像 BERT 一样,在做出预测之前,同时考虑左右上下文。

相关文章

  • BERT 详解(一)

    今天来聊聊谷歌的自然语言处理框架 BERT,BERT 已经对自然语言处理有着显著的变革,那么 BERT 到底是什么...

  • Bert PyTorch 实现

    本文主要介绍如何使用PyTroch复现BERT。在此之前可以先阅读文章BERT详解(附带ELMo、GPT 介绍[h...

  • BERT详解(附带ELMo、GPT 介绍)

    本文为转载,原文链接BERT 详解(附带 ELMo、GPT 介绍)[https://wmathor.com/ind...

  • BERT 详解(五)

    Fine-tuning 微调 微调阶段根据不同任务使用不同网络模型。在微调阶段,大部分模型的超参数跟预训练时差不多...

  • BERT 详解(四)

    BERT 有两个自然语言处理任务的预训练: Masked Language Modeling Next Sente...

  • BERT 详解(三)

    BERT 有两个自然语言处理任务的预训练: Masked Language Modeling Next Sente...

  • BERT 详解(二)

    1. BERT 结构 BERT是以 Transformer 为基础的,目前有两种变体: BERT Base:12层...

  • BERT使用详解(实战)

    BERT模型,本质可以把其看做是新的word2Vec。对于现有的任务,只需把BERT的输出看做是word2vec,...

  • Sentence-BERT 详解

    本文为转载,原文链接:https://wmathor.com/index.php/archives/1496/[h...

  • BERT模型详解与实战

    BERT的全称是Bidirectional Encoder Representation from Transfo...

网友评论

    本文标题:BERT 详解(一)

    本文链接:https://www.haomeiwen.com/subject/iybloctx.html