2017-02-28 17 views
6

私はWord2Vecのgensim実装を使用しています。私は次のコードスニペットを持っています:python3のGensim word2vecがありません。

print('training model') 
model = Word2Vec(Sentences(start, end)) 
print('trained model:', model) 
print('vocab:', model.vocab.keys()) 

これをPython2で実行すると、期待通りに動作します。最終的なプリントは、語彙のすべての単語です。私はのpython3でそれを実行する場合

はしかし、私はエラーを取得する:

trained model: Word2Vec(vocab=102, size=100, alpha=0.025) 
Traceback (most recent call last): 
    File "learn.py", line 58, in <module> 
    train(to_datetime('-4h'), to_datetime('now'), 'model.out') 
    File "learn.py", line 23, in train 
    print('vocab:', model.vocab.keys()) 
AttributeError: 'Word2Vec' object has no attribute 'vocab' 

何が起こっていますか? gensim word2vecはpython3と互換性がありませんか?

答えて

12

両方の場所で同じバージョンのgensimを使用していますか?

model.vocab 

... gensimに1.0.0+:gensimの1.0.0以前のバージョンでは(Pythonの2または3)、あなたが使用できるのに対しのでGensimは、ヘルパーオブジェクトに移動vocab 1.0.0代わりに(Python 2または3で)使用する必要があります。

model.wv.vocab 
関連する問題