如何从FastText的输出矩阵中获取矢量?

时间:2018-12-04 13:12:53

标签: word2vec word-embedding fasttext

在本研究中,作者发现Word2Vec生成两种嵌入(IN和OUT)。

https://arxiv.org/abs/1602.01137

好吧,您可以使用gensim word2vec中的syn1属性轻松获得它。但是在gensim fastText的情况下,syn1确实存在,但是由于fastText的概念是基于子词的,因此不可能通过匹配索引从输出矩阵中获得词的向量。您知道使用输出矩阵计算向量的其他方法吗?

1 个答案:

答案 0 :(得分:1)

在FastText中,单词的向量是以下各项的组合:

  • 全字向量(如果存在);和
  • 所有子词向量

您可以在以下位置查看gensim方法,该方法返回由子词组成的向量的矢量:

https://github.com/RaRe-Technologies/gensim/blob/2ccc82bf50bcfbee44932c160db076a873cf893e/gensim/models/keyedvectors.py#L1970

(与原始的FastText方法相比,我认为此方法可能有一个错误,因为这种gensim方法也许还应该 将子词向量添加到整个词向量中,即使一个完整的单词向量可用。)