1. 万物起源-文本表征和词向量

  1. 语言模型:对自然语言进行建模
    序列化概率模型的思想,如在给定的语境下预测下一个词出现的概率
    在这里插入图片描述
  2. n-gram语言模型:通过统计数据中给定词在长度为n的上文的条件下出现的频率来表征这些词在相应语境下的条件概率。
    基本思路是基于给定文本信息,预测下一个最可能出现的词语。N=1称为unigram,表示下一词的出现不依赖于前面的任何词;N=2称为bigram,表示下一词仅依赖前面紧邻的一个词语,依次类推。
    在这里插入图片描述
    P(w_1,w_2,\dots,w_n)=P(w_1)\boldsymbol{\cdot} P(w_2|w_1)\boldsymbol{\cdot}\dots\boldsymbol{\cdot}P(w_n|w_1,w_2,\dots,w_{n-1}) P ( w 1 , w 2 , , w n ) = P ( w 1 ) P ( w 2 w 1 ) P ( w n w 1 , w 2 , , w n 1 )
    (马尔科夫假设)
  3. 学习语言结构:人工标注然后分类
  4. 前向神经网络(FFNN)语言模型(维度灾难)和循环神经网络(RNN)语言模型(长距离依赖)

2. 万恶之源transformers

3. 训练目标

  1. Standard Language Model (SLM):用multi-class one-label分类任务范式,用autogressive范式,每次预测序列中的下一个token。常用于left to right模型,但也可以用于其他顺序。
  2. denoising objectives:对输入进行扰动,预测原始输入
    1. Corrupted Text Reconstruction (CTR):仅计算扰动部分的损失函数
    2. Full Text Reconstruction (FTR):计算所有输入文本的损失函数(无论是否经扰动)

其他各种Auxiliary Objective:
在这里插入图片描述
在这里插入图片描述

4. Noising Functions

  1. Masking:mask可以是根据分布随机生成的,也可以根据prior knowledge设计(如上图中的实体)。
    特殊的掩码方式:全词掩码WWM(谷歌)、实体、短语(百度ERNIE)、n-gram掩码、动态掩码(RoBERTa)、基于语言知识的掩码(二郎神)
  2. Replacement:span由另一种信息而非 [MASK] 填充
  3. Deletion:常与FTR loss共用
  4. Permutation

5. Directionality of Representations

  1. Left-to-Right
  2. Bidirectional
  3. 混合

应用这些策略的方式:attention masking
在这里插入图片描述

6. Typical Pre-training Methods

6.1 Left-to-Right Language Model

简称L2R LMs(AR LM变体)

预测下一个单词,或计算当前一系列单词出现的概率:
在这里插入图片描述

right-to-left LM类似:
在这里插入图片描述

6.2 Masked Language Models

简称MLM

6.3 Prefix and Encoder-Decoder

用全连接mask编码输入,以AR方式解码输出。

  1. Prefix Language Model:在同一套参数下,输出部分是left-to-right,输入部分是全连接mask。输入部分常用CTR目标,输出部分常用标准conditional language modeling目标
  2. Encoder-decoder:与Prefix Language Model类似,但编码和解码用不同的模型参数

7. 各模型总结

我又写了一个新的博文。具体对这两个博文的合并和解耦工作以后再做吧,现在先凑合看好了: 各种预训练模型的理论和调用方式大全

8. 其他transformer架构细节

  1. 绝对位置编码APE
  2. 参数式相对位置编码RPE
  • LN层的位置
    1. Post-LN
    2. Pre-LN(可去除warm-up学习率阶段)
    3. Sandwich-LN
  • MoE层:该组件通过在网络中引入多个专家来减少需要激活的神经元数量,以此提升模型的计算效率
  • 多粒度训练:指的是不同分词粒度
  • 外部信息
    1. 命名实体(百度ERNIE)
    2. 知识图谱(百度ERNIE3.0,鹏城-百度文心,神舟)
    3. 语言学知识(Chinese BERT,孟子)
    4. 特定知识
  • 多模态
  • 高效计算
  • 特定领域
  • 英文预训练模型在中文语料库上训练且开源的中文版本
  • 9. 本文撰写过程中使用的参考资料

    1. Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing
    2. 中文预训练模型研究进展 :只对整体框架做了转述,具体内容还未在两篇博文中做详细概述
    3. 斯坦福大学Christopher Manning:Transformer语言模型为什么能取得突破 :这是智源大会2020年的报告,我只看了文本,没看视频

    10. 还没看,但是感觉可能会用得到的参考资料

    1. Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer
    2. Pre-trained Models for Natural Language Processing: A Survey
    3. A primer on pretrained multilingual language models
    4. Language Models are Unsupervised Multitask Learners
    这篇文章是对最近比较火的“prompt”的一个总结,一篇非常好的 综述 ,做 NLP 方向建议都要读一读:) 本文将这种方法称之为“prompt-based learn ing ”,之前传统的监督学习方法,是对给定的x训练一个 模型 ,然后预测对应的y。prompt-based learn ing 是基于 语言 模型 直接对文本的概率进行建模。具体为:起初的输入x中加入一个模板(template),其中含有一些需要预测的位置slots, 语言 模型 用于预测slots中应该出现的词的概率。这样最终需要的y也可以直接得出。 GPT(包括GPT-2、GPT-3)是由OpenAI 推出的大规模 预训练 语言 模型 , 其具备强大的文本生成能力 乐府作诗机训练流程 第一步:在大规模中文语料上 预训练 中文GPT 模型 第二步:使用小规模的古诗词语料,在GPT 模型 上进行微调 第一步: 预训练 中文GPT 模型 ·训练语料:30GB 中文文本 ·单向Transformer · 模型 大小: ·Layer=.
    本文翻译自ysda的 自然语言处理 课程课件,原文网址为: https://lena-voita.github.io/ nlp _course/language_model ing .html 如果想看原文可自行跳转。 语言 模型 什么是" 模型 " 想象一下我们在真实世界中有一个 模型 ,我们会期望他能做什么?如果他是一个好的 模型 ,那么他应该可以在给定上下文描述的情况下预测出将要发生什么。 一个好的 模型 会模拟真实世界的行为,他将会“理解”哪个事件会更贴合现实世界的情况。 什么是“ 语言 ” 关于 语言 我们的直观上的感受都是相同的。不
    Li F, Zhang H, Zhang Y F, et al. Vision-Language Intelligence: Tasks, Representation Learn ing , and Large Models[J]. arXiv preprint arXiv:2203.01922, 2022. 按照时间顺序将VLP 模型 分为三个阶段:特定任务的方法,视觉 语言 预训练 (VLP)方法,以及由大规模弱标记数据加持的更大的 模型 三大类。 第一阶段:特定任务方法 三类主流任务:Image Captioni
    syntactic or semantic features of the language universal language representations (through large corpus) 特征的表示方法: Distributed Representation 模型 发展简史 Non-neural network methods Neural models (CNN, RNN, GNN, Attention Mechan