全称是Embeddings from Language Models,从语言模型中学习到词向量。word2vec训练出的词向量有一个问题,一个词只有一个embbeding,实际上一个词会有多个含义,例如 苹果,可以代表水果,也可以代表手机,那么具体表示哪个可以根据上下文的语义来推测,这也是ELMO模型要解决的关键问题。

 

模型:

1.双向语言模型

  • 双向体现在,使用双向的LSTM模型
  • 语言模型体现在Ngram模式 p(tk | t1,t2,...,tk-1)

读ELMO文章

目标log似然函数为:

读ELMO文章

双向LSTM的参数是共享的。

 

2.ELMO

读ELMO文章

因为有L层LSTM,并且是双向的,所以有2L个representation,然后再加上token的一个representation,所以一共有2L+1个,这些都用来预测下一个词。

读ELMO文章

例如: 上图显示L=3, 要预测t5,就需要标红的7个representation来去做预测。

那么这7个representation,如何去预测t5呢? 

最简单的版本,就用最上层的LSTM的2个representation去预测,这篇文章中,7个representation都要用上去。

读ELMO文章

其中读ELMO文章=读ELMO文章

公式中,参数sj 是做了softmax-normalized,是需要结合任务去学出来的。

 

 

 

 

 

 

 

 

 

refer : https://arxiv.org/abs/1802.05365

相关文章:

  • 2022-01-21
  • 2021-11-02
  • 2021-04-28
  • 2021-07-31
  • 2022-12-23
  • 2022-01-21
  • 2021-10-31
猜你喜欢
  • 2021-12-20
  • 2021-06-19
  • 2021-09-01
  • 2021-11-24
  • 2021-06-15
  • 2021-10-08
  • 2022-01-01
相关资源
相似解决方案