相关疑难解决方法(0)

如何访问gensim word2vec中的输出嵌入(输出矢量)?

我想使用word2vec的输出嵌入(例如本文中的内容)(通过双重单词嵌入来提高文档排名)

我知道输入向量在syn0中,如果负采样,输出向量在syn1和syn1neg中。

但是,当我用输出向量计算most_like时,由于删除了syn1或syn1neg,我在某些范围内得到了相同的结果。

这就是我得到的。

IN[1]: model = Word2Vec.load('test_model.model')

IN[2]: model.most_similar([model.syn1neg[0]])

OUT[2]: [('of', -0.04402521997690201),
('has', -0.16387106478214264),
('in', -0.16650712490081787),
('is', -0.18117375671863556),
('by', -0.2527652978897095),
('was', -0.254993200302124),
('from', -0.2659570872783661),
('the', -0.26878535747528076),
('on', -0.27521973848342896),
('his', -0.2930959463119507)]
Run Code Online (Sandbox Code Playgroud)

但是另一个syn1neg numpy向量已经是类似的输出。

IN[3]: model.most_similar([model.syn1neg[50]])

OUT[3]: [('of', -0.07884830236434937),
('has', -0.16942456364631653),
('the', -0.1771494299173355),
('his', -0.2043554037809372),
('is', -0.23265135288238525),
('in', -0.24725285172462463),
('by', -0.27772971987724304),
('was', -0.2979024648666382),
('time', -0.3547973036766052),
('he', -0.36455872654914856)]
Run Code Online (Sandbox Code Playgroud)

我想获得训练期间保留的输出numpy数组(是否为负)。

让我知道如何访问纯syn1或syn1neg或代码,或者某些word2vec模块可以获取输出嵌入。

python numpy gensim word2vec

3
推荐指数
1
解决办法
4402
查看次数

标签 统计

gensim ×1

numpy ×1

python ×1

word2vec ×1