【发布时间】:2018-06-02 06:23:26
【问题描述】:
训练 Word2Vec 模型时,会创建三个输出。
- 型号
- model.wv.syn0
- model.syn1neg
我有几个关于这些模型的问题。
这些输出在本质上有何不同?
如果我想访问经过训练的结果,应该查看哪个模型?
提前致谢!
【问题讨论】:
训练 Word2Vec 模型时,会创建三个输出。
我有几个关于这些模型的问题。
这些输出在本质上有何不同?
如果我想访问经过训练的结果,应该查看哪个模型?
提前致谢!
【问题讨论】:
这些是 gensim Word2Vec .save() 函数创建的 3 个文件。 model 文件是主要模型的 Python 泡菜;其他文件是一些为提高效率而单独存储的超大 numpy 数组。 syn0 恰好包含原始词向量,syn1neg 包含模型的内部权重——但如果没有其他数据,两者都无法清晰地解释。
因此,重新加载它们的唯一支持是使用匹配的.load() 函数,所有三个都可用。成功的 re-load() 将产生一个模型对象,就像您 save()d 的模型对象一样,您可以通过该加载的对象访问结果。
(如果您仅需要原始词向量,您也可以使用.save_word2vec_format() 方法,该方法以与原始 Google 发布的word2vec.c 代码兼容的格式写入。但是那格式的信息比gensim的本机保存要少,所以只有在绝对需要与其他软件兼容时才使用它。使用gensim本机文件可确保您以后始终可以保存其他格式,而你不能走另一条路。)
【讨论】: