如何从Maciejkula实现的GloVe模型中获取词-嵌入字典?
从glove-python模型获取词-嵌入字典的方法
嘿,你的猜测完全正确!model.dictionary里的词到索引的映射,和model.word_vectors数组中的嵌入索引是严格对应的——也就是说,model.dictionary["apple"]返回的索引值,正好对应model.word_vectors数组里苹果这个词的嵌入向量位置。
要生成词到嵌入的字典,用一行字典推导式就能搞定,非常简便:
word_embedding_dict = {word: model.word_vectors[idx] for word, idx in model.dictionary.items()}
如果之后需要对向量做进一步处理(比如转换成普通列表),也可以在推导式里加上转换:
word_embedding_dict = {word: model.word_vectors[idx].tolist() for word, idx in model.dictionary.items()}
目前这个库本身没有提供直接返回该字典的内置方法,但上面的方式已经足够高效且直观,完全能满足需求。
内容的提问来源于stack exchange,提问作者Thomas
相关产品推荐
相关产品推荐

