我使用 Node2Vec 创建了节点嵌入。我已使用以下代码保存了模型和节点嵌入 -
EMBEDDING_FILENAME = './embeddings.emb'
EMBEDDING_MODEL_FILENAME = './embeddings.model'
# Save embeddings for later use
model.wv.save_word2vec_format(EMBEDDING_FILENAME)
# Save model for later use
model.save(EMBEDDING_MODEL_FILENAME)
我想使用这些保存的模型 .model
和 .emb
文件来创建边缘嵌入。
如何加载这些文件/模型/节点嵌入?
最佳答案
如 this answer 中所述来自 Node2Vec 库的作者,
the
Node2Vec.fit
method returns an instance ofgensim.models.Word2Vec
, you can see in the documentation how to save and load a model.
有两个选项,具体取决于您存储模型的方式。请参阅下面的代码片段来执行此操作:
from gensim.models import Word2Vec
# Load model after Node2Vec.save
model = Word2Vec.load(PATH_TO_YOUR_SAVED_MODEL)
# Load model after Node2Vec.wv.save_word2vec_format
model = Word2Vec.wv.load_word2vec_format(PATH_TO_YOUR_SAVED_WORD2VEC_FORMAT)
请注意,使用 (fname=PATH_TO_YOUR_SAVED_MODEL)
(如文档中所示)调用 Word2Vec.load
方法会引发错误,因为显然正确的参数名称是 fname_or_handle
与 Word2Vec.save
相同。
关于machine-learning - 如何在 python 中加载 Node2Vec 嵌入生成的 .model 和 .emb 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65072714/