我用 gensim 生成了一个 Word2Vec 模型,bat 很难在我的 spacy 管道中使用它。
python -m spacy init vectors de w2v-model-v1.txt.gz path/SpacyModel
创建一个我可以加载的模型,但唯一的组成部分是向量。 我正在将模型 de_core_news_lg 与自定义管道组件一起使用,并想用我的自定义训练向量简单地替换标准向量
我通过将每个向量添加到新词汇中来使用现有管道中的向量。
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