我正在训练来自 tensorflow 教程的 word2vec 模型。
训练后我得到了嵌入矩阵。我想保存它并将其作为经过训练的模型导入 gensim。
要在gensim中加载一个模型,命令是:
model = Word2Vec.load_word2vec_format(fn, binary=True)
但是如何从 Tensorflow 生成 fn
文件?
谢谢
最佳答案
一种方法是将文件保存为非二进制 Word2Vec 格式,基本上如下所示:
num_words vector_size # this is the header
label0 x00 x01 ... x0N
label1 x10 x11 ... x1N
...
例子:
2 3
word0 -0.000737 -0.002106 0.001851
word1 -0.000878 -0.002106 0.002834
保存文件,然后使用 kwarg binary=False
加载:
model = Word2Vec.load_word2vec_format(filename, binary=False)
print(model['word0'])
更新
加载模型的新方法是:
from gensim.models.keyedvectors import KeyedVectors
model = KeyedVectors.load_word2vec_format(model_path, binary=False)
关于python - 在 Tensorflow 中训练 wordvec,导入到 Gensim,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42186543/