Nlp 在word2vec或Glove中添加其他单词(可能使用gensim)

Nlp 在word2vec或Glove中添加其他单词(可能使用gensim),nlp,gensim,word2vec,glove,Nlp,Gensim,Word2vec,Glove,我有两个预先训练好的单词嵌入:Glove.840b.300.txt和custom\u Glove.300.txt 一个是斯坦福大学预训的,另一个是我培训的。 两者都有不同的词汇集。为了减少oov,我想将文件1中没有出现但确实出现在文件2中的单词添加到文件1中。 我怎样才能轻松做到这一点 这就是我在gensim 3.4.0中加载和保存文件的方式 from gensim.models.keyedvectors import KeyedVectors model = KeyedVectors.loa

我有两个预先训练好的单词嵌入:
Glove.840b.300.txt
custom\u Glove.300.txt

一个是斯坦福大学预训的,另一个是我培训的。 两者都有不同的词汇集。为了减少oov,我想将文件1中没有出现但确实出现在文件2中的单词添加到文件1中。 我怎样才能轻松做到这一点

这就是我在gensim 3.4.0中加载和保存文件的方式

from gensim.models.keyedvectors import KeyedVectors

model = KeyedVectors.load_word2vec_format('path/to/thefile')
model.save_word2vec_format('path/to/GoogleNews-vectors-negative300.txt', binary=False)
我不知道一个简单的方法

特别是,未共同训练的词向量将不会具有兼容/可比较的坐标空间。(一个词没有一个合适的位置——与同一模型中的其他词相比,这只是一个相对较好的位置。)

因此,您不能仅仅附加另一个模型中缺少的单词:您需要将它们转换为兼容的位置。幸运的是,似乎可以使用两个词向量集中的一些共享锚词集来学习转换,然后应用您想要移动的词

有一个类,
[TranslationMatrix][1]
,在gensim中展示了语言翻译的过程(在最初的word2vec论文中提到了一个应用程序)。您可以简明扼要地使用它,并结合实例功能,创建一组新的向量,其中包含任一源模型中的单词超集