machine-learning - 如何在 python 中加载 Node2Vec 嵌入生成的 .model 和 .emb 文件?

标签 machine-learning graph networkx word2vec embedding

我使用 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 of gensim.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_handleWord2Vec.save 相同。

关于machine-learning - 如何在 python 中加载 Node2Vec 嵌入生成的 .model 和 .emb 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65072714/

相关文章:

machine-learning - 卷积神经网络中隐藏层的丢弃率指导

machine-learning - 关于CNN训练的一些简单问题

graph - 重置默认图表不会删除变量

python - Networkx 边缘属性

python - 如何使用networkX在有向加权图中检测社区?

machine-learning - 如何结合频谱聚类的拆分运行以获得巨大的亲和性矩阵

machine-learning - 实现线性二元 SVM(支持向量机)

c++ - boost::property_map在boost中是怎么实现的,怎么改

algorithm - 检测给定线段的循环

Python - 显示所有节点属性 Networkx