赞
踩
seq2seq属于encoder-decoder结构的一种,常见的encoder-decoder结构,基本思想就是利用两个RNN,一个RNN作为encoder,另一个RNN作为decoder。encoder负责将输入序列压缩成指定长度的向量,这个向量就可以看成是这个序列的语义,这个过程称为编码,而decoder则负责根据语义向量生成指定的序列,这个过程也称为解码。
为了解决这一由长序列到定长向量转化而造成的信息损失的瓶颈,Attention注意力机制被引入了。Attention机制跟人类翻译文章时候的思路有些类似,即将注意力关注于我们翻译部分对应的上下文。同样的,Attention模型中,当我们翻译当前词语时,我们会寻找源语句中相对应的几个词语,并结合之前的已经翻译的部分作出相应的翻译。核心逻辑就是从关注全部到关注重点。
关键的操作是计算encoder与decoder state之间的关联性的权重,得到Attention分布,从而对于当前输出位置得到比较重要的输入位置的权重,在预测输出时相应的会占较大的比重。
ELMo
在EMLo中,他们使用的是一个双向的LSTM语言模型,由一个前向和一个后向语言模型构成,目标函数就是取这两个方向语言模型的最大似然。
BERT
BERT是使用Transformer的编码器来作为语言模型,在语言模型预训练的时候,提出了两个新的目标任务(即遮挡语言模型MLM和预测下一个句子的任务)。BERT使用的是Transformer编码器,由于self-attention机制,所以模型上下层直接全部互相连接的。而ELMo使用的是双向LSTM,虽然是双向的,但是也只是在两个单向的LSTM的最高层进行简单的拼接。
Token Embeddings是词向量,第一个单词是CLS标志,可以用于之后的分类任务。
Segment Embeddings用来区别两种句子,因为预训练不光做LM还要做以两个句子为输入的分类任务。
Position Embeddings是位置编码。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。