web-dev-qa-db-ja.com

GoogleNews-vectors-negative300.binをインポート

私はgensimを使用してコードに取り組んでおり、コード内のValueErrorのトラブルシューティングに苦労しています。 GoogleNews-vectors-negative300.bin.gzファイルを圧縮して、モデルに実装できるようになりました。結果が失敗したgzipも試しました。コードのエラーは最後の行で発生します。エラーを修正するために何ができるか知りたいのですが。回避策はありますか?最後に、私が参照できるウェブサイトはありますか?

どうぞよろしくお願いいたします。

import gensim
from keras import backend
from keras.layers import Dense, Input, Lambda, LSTM, TimeDistributed
from keras.layers.merge import concatenate
from keras.layers.embeddings import Embedding
from keras.models import Mode

pretrained_embeddings_path = "GoogleNews-vectors-negative300.bin"
Word2vec = 
gensim.models.KeyedVectors.load_Word2vec_format(pretrained_embeddings_path, 
binary=True)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-3-23bd96c1d6ab> in <module>()
  1 pretrained_embeddings_path = "GoogleNews-vectors-negative300.bin"
----> 2 Word2vec = 
gensim.models.KeyedVectors.load_Word2vec_format(pretrained_embeddings_path, 
binary=True)

C:\Users\green\Anaconda3\envs\py35\lib\site-
packages\gensim\models\keyedvectors.py in load_Word2vec_format(cls, fname, 
fvocab, binary, encoding, unicode_errors, limit, datatype)
244                             Word.append(ch)
245                     Word = utils.to_unicode(b''.join(Word), 
encoding=encoding, errors=unicode_errors)
--> 246                     weights = fromstring(fin.read(binary_len), 
dtype=REAL)
247                     add_Word(word, weights)
248             else:

ValueError: string size must be a multiple of element size
11
Hello World

以下のコマンドが機能します。

brew install wget

wget -c "https://s3.amazonaws.com/dl4j-distribution/GoogleNews-vectors-negative300.bin.gz"

次に、以下のコマンドを使用してwordVectorを取得できます。

from gensim import models

w = models.KeyedVectors.load_Word2vec_format(
    '../GoogleNews-vectors-negative300.bin', binary=True)
11
ohsoifelse

完全なパスを記述する必要があります。

このパスを使用:

https://s3.amazonaws.com/dl4j-distribution/GoogleNews-vectors-negative300.bin.gz

10
user8403237

これを試して -

import gensim.downloader as api

wv = api.load('Word2vec-google-news-300')

vec_king = wv['king']

また、このリンクにアクセスしてください: https://radimrehurek.com/gensim/auto_examples/tutorials/run_Word2vec.html#sphx-glr-auto-examples-tutorials-run-Word2vec-py

0
hansraj