[论文素材]Background----BERT

什么是BERT

BERT全称:Bidirectional Encoder Representations from Transformers,​​​​​​​(来自“变形金刚” 的双向编码器),一种基于Transformer的用于NLP预训练机器学习技术。2018年由Google创建并发布[1]。

2019 年,谷歌宣布已开始在其搜索引擎中使用BERT[2]。

2020 年的一项文献调查得出的结论是,“在一年多一点的时间里,BERT 已成为 NLP 实验中无处不在的基线”,共有 150 多篇研究出版物分析和改进了该模型[3]。

BERT 使用掩码语言建模(MLM)下一句预测两个无监督预测任务进行预训练。

BERT论文笔记

GitHub地址:GitHub - google-research/bert: TensorFlow code and pre-trained models for BERT

论文地址:https://arxiv.org/pdf/1810.04805.pdf

他们的贡献:

  • 证明了双向预训练对语言表征量的重要性。
  • 展示了预训练表征量能消除许多重型工程任务特定架构的需求。
  • BERT推进了11项NLP任务的最高水平。

BERT_BASE:L=12,hidden=768,heads=12,parameters=110M 

BERT_LARGE:L=24,hidden=1024,heads=16,parameters=340M

BERT模型理解

(Bert_Base)

sentence = "my dog is cute, he likes playing"

大致流程:

  1. 准备数据
  2. 把数据准备成BERT模型的输入形式: Embedding input = Token+Segment+Position
  3. 把input扔给Bert (12层Transformer encoder,最终输出是768)
  4. 输出向量(最终输出是768)

     宝藏讲解https://leemeng.tw/attack_on_bert_transfer_learning_in_nlp.html

     另一个宝藏讲解https://www.cnblogs.com/gczr/p/12393925.html

  • Embedding input

                                                         (1,11,768) = (batch_size,max_len,embedding)

                                                                                        bert base uncased vocab size:30522

         

BERT的优势

  1. BERT拥有一个深而窄的神经网络。因此,它可以在无需大幅架构修改的前提下进行双向训练;
  2. 是无监督学习,因此不需要人工干预和标注,让低成本地训练超大规模语料成为可能;
  3.  BERT模型能够联合神经网络所有层中的上下文来进行训练。这样训练出来的模型在处理问答或语言推理任务时,能够结合上下文理解语义,并且实现更精准的文本预测生成;
  4. BERT只需要微调就可以适应很多类型的NLP任务,降低了企业的训练成本;
  5. BERT支持包括中文在内的60种语言;
  6. 研究人员也不需要从头开始训练自己的模型,只需要利用BERT针对特定任务进行修改,在单个云TPU上运行几小时甚至几十分钟,就能获得不错的分数;
  7. 是词嵌入的一种方法,作用是将自然语言转化为词向量。

BERT的 fine-tune

可以对这些进行调参

  1. Batch Size:16 or 32;
  2. Learning Rate: 5e-5, 3e-5, 2e-5;
  3. Epochs:2, 3, 4;

BERT的下游任务

  1. 句子对分类任务
    1. 预测第二个句子相对于第一个句子是包含,矛盾还是中立的;
    2. 确定询问的两个问题在语义上是否等效;
    3. 二分类任务。正例是(问题,句子)对,它们确实包含正确答案,而负例是同一段中的(问题,句子),不包含答案;
    4. 用1到5的分数来标注,表示这两个句子在语义上有多相似;
    5. 从在线新闻源中提取的句子对组成,并带有人工标注,以说明句子对中的句子在语义上是否等效。
    6. 识别文本蕴含(Recognizing Textual Entailment)
    7. 常识推理
  2. 单句子分类任务
    1. ​​​​​​​从电影评论中提取的句子以及带有其情绪的人类标注
    2. 预测英语句子在语言上是否“可以接受”
  3. 问答任务
    1. ​​​​​​​​​​​​​​给定一个问题以及Wikipedia中包含答案的段落,任务是预测段落中的答案文本范围
  4. 实体识别任务
    1. ​​​​​​​​​​​​​​​​​​​​​识别文本中具有特定意义的实体,主要包括人名、地名、机构名、专有名词等,以及时间、数量、货币、比例数值等文字

[1] Devlin, J., Chang, M., Lee, K., & Toutanova, K. (2018). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. arXiv. https://doi.org/10.48550/arXiv.1810.04805

[2] BERT (language model). (2022, August 31). In Wikipedia. https://en.wikipedia.org/wiki/BERT_(language_model)

[3]  Rogers, Anna; Kovaleva, Olga; Rumshisky, Anna (2020). "A Primer in BERTology: What We Know About How BERT Works"Transactions of the Association for Computational Linguistics8: 842–866. arXiv:2002.12327doi:10.1162/tacl_a_00349S2CID 211532403

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值