首页 > 解决方案 > Spacy:检索与特定索引关联的单词/键

问题描述

给定与 in 中的一行相对应的索引<some_model>.vocab.vectors.data,我如何检索相应的单词/键?

import spacy

nlp = spacy.load('en_core_web_md')

nlp.vocab.vectors.data[6, :]   # gives me the 6th embedding 

哪些词/键映射到第 6 次嵌入?*.vocab.vectors.items()我可以通过迭代来进行某种蛮力搜索

for key, vector in nlp.vocab.vectors.items():
    # check if vector at my index matches this vector
         # print(nlp.vocab.strings[key])

但我希望有更好的方法。

标签: pythonnlpspacy

解决方案


进行反向查找nlp.vocab.vectors.key2row以获取使用该嵌入的所有单词:

for key, row in nlp.vocab.vectors.key2row.items():
    if row == 6:
        print(nlp.vocab.strings[key])

推荐阅读