自回归、自编码语言模型在预训练模型中的应用

关于语言模型(自回归AR和自编码AE)如何结合特征提取器(LSTM和Transformer)的词表征模型(词向量的预训练模型),如ELMO、GPT、BERT、XLNET等,论文An introduction of Deep Learning Based Word
Representation Applied to Natural Language
Processing做了完整的介绍。
以下介绍自己查阅资料中的一些资料推荐以及总结:

一、语言模型

语言模型用博客NLP: Explaining Neural Language Modeling,可以解释为The goal of a language model is to compute a probability of a sentence or a sequence of words.

语言模型可以分为Count-based language models以及Continuous-space language models,在Medium上的一篇文章对其进行了介绍Language Model: A Survey of the State-of-the-Art Technology
1、Count-based language models
统计语言模型中SLM最经典的就是n-gram,斯坦福NLP有相关课件对其进行介绍,n-gram。
2、Continuous-space language models
参考文章 A Survey on Neural Network Language Models
神经语言模型NNLM主要包括FFNN Language Models以及RNN-based Language Models等。

除此之外,对于语言模型还可以将其分类为自回归模型(AR)和自编码模型(AE),常用于词向量的预训练模型做模型的预训练。CSDN博客 NLP:自回归(Autoregressive LM)与自编码语言模型(Autoencoder LM)
a.自回归模型
博客 Deep Autoregressive ModelsPermalink有较为形象的说明。经典的词向量预训练模型,如ELMO、GPT在预训练时正是基于此。ELMO基于LSTM特征提取器,GPT基于Transformer特征提取器。
b.自编码模型
BERT在做预训练时,基于该语言模型和特征提取器Transformer做预训练,具体仍见开头博文。

统计语言模型和神经语言模型的不完整总结:
共同点:都属于语言模型,将句子看作一个单词序列,来计算句子的概率。
不同点:计算概率方式不同,n-gram基于马尔可夫假设只考虑前n个词,NNLM要考虑整个句子的上下文训练模型的方式不同,n-gram基于最大似然估计来计算参数,NNLM基于RNN的优化方法来训练模型,并且这个过程中往往会有word embedding作为输入,这样对于相似的词可以有比较好的计算结果,但n-gram是严格基于词本身的,而比如基于RNN的语言模型可以将任意长度的上下文信息存储在隐藏状态中,而不仅限于n-gram模型中的窗口限制。

二、NLP中的特征提取器

1.Transformer
该模型在先前博客有过介绍,具体见Transformer中的Encoder、Decoder。
2.LSTM
作为RNN的变体,它主要加入了三个门控单元,具体博客介绍链接如下:Understanding LSTM Networks
以及该博客的翻译:(译)理解 LSTM 网络
如下博客包含LSTM操作过程的动态图:
Illustrated Guide to LSTM’s and GRU’s: A step by step explanation

三、词向量预训练的SOTA模型

1.ELMO
paper–Deep contextualized word representations
slide1
slide2
2.GPT
paper–Improving Language Understanding
by Generative Pre-Training
3.BERT
paper–BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
slide1
slide2
4.XLNET
paper-XLNet: Generalized Autoregressive Pretraining
for Language Understanding

你可能感兴趣的:(预训练)