将 Gensim WordVectors 加载到 spacy 管道中

问题描述 投票:0回答:1

我用 gensim 生成了一个 Word2Vec 模型,bat 很难在我的 spacy 管道中使用它。

python -m spacy init vectors de w2v-model-v1.txt.gz path/SpacyModel

创建一个我可以加载的模型,但唯一的组成部分是向量。 我正在将模型 de_core_news_lg 与自定义管道组件一起使用,并想用我的自定义训练向量简单地替换标准向量

spacy gensim
1个回答
0
投票

我通过将每个向量添加到新词汇中来使用现有管道中的向量。

from gensim.models import Word2Vec
from spacy.vocab import Vocab

gensim_model = Word2Vec.load(my_w2vmodel.model)
vocab = Vocab()

for word in gensim_model.wv.index_to_key:
      vector = gensim_model.wv.get_vector(word)
      vocab.set_vector(word, vector)

nlp.vocab.vectors = vocab.vectors
© www.soinside.com 2019 - 2024. All rights reserved.