如何使用预训练的 word2vec 模型(Google)将单词列表转换为向量列表?

How to turn a list of words into a list of vectors using a pre-trained word2vec model(Google)?

我正在努力学习 word2vec。

我正在使用下面的代码在 Python 3 中加载 Google 预训练的 word2vec 模型。但是我不确定如何转换列表,例如:["I" , "ate", "apple"] 到向量列表(即如何从这个模型中获取向量?)。

import nltk
import gensim

# Load Google's pre-trained Word2Vec model.
model = gensim.models.KeyedVectors.load_word2vec_format('./model/GoogleNews-vectors-negative300.bin', binary=True)

您可以通过惯用的 Python keyed-index-access(括号)获取向量。例如:

    wv_apple = model['apple']

您可以通过惯用的 Python 'list comprehension' ([expression(x) for x in some_list]) 对现有列表的每一项进行一些操作来创建新列表,例如:

    words = ["I", "ate", "apple"]
    vectors = [model[word] for word in words]