【发布时间】:2018-10-22 23:43:18
【问题描述】:
我正在尝试使用我的 word2vec 模型中的权重作为我在 keras 中的神经网络的嵌入层的权重。我关注的example code 使用:
word_model = gensim.models.Word2Vec(sentences, size=100, min_count=1,
window=5, iter=100)
pretrained_weights = word_model.wv.syn0
keras_model.add(Embedding(input_dim=vocab_size, output_dim=emdedding_size,
weights=[pretrained_weights]))
我知道 word2vec 为每个单词创建向量,在这种情况下大小为 100。
pretrained_weights.shape 返回 (1350,100),但我不确定 1350 数字是什么意思。
keras_model.predict(np.array([word_model.wv.vocab['test'].index])) 返回一个大小为 1350 的向量,我不确定如何解释(训练模型的响应是大小为 7200 的向量)。
我可以运行示例代码并获得很好的结果,但我想知道它为什么有效。
【问题讨论】:
标签: python neural-network keras deep-learning word2vec