Как я могу загрузить Word2vec с помощью Gensim, не получив AttributeError?

Я новичок в Gensim и пытаюсь загрузить данную (предварительно обученную) модель Word2vec. У меня есть 2 файла: xxxx.model.wv и один побольше xxxx.model.wv.syn0.npy.

Когда я звоню на следующую линию:

gensim.models.Word2Vec.load('xxxx.model.wv')

Я получаю следующую ошибку:

AttributeError: 'EuclideanKeyedVectors' object has no attribute 'negative'

Как я могу решить эту ошибку?


person iro    schedule 22.03.2018    source источник
comment
Я уверен, что вам придется показать больше кода. См. Как задать вопрос и минимальный воспроизводимый пример.   -  person    schedule 22.03.2018
comment
Требуется дополнительный код. Также обратите внимание на разницу между загрузкой модели и загрузкой model.wv для загрузки Keyedvectors. Подробную документацию см. В radimrehurek.com/gensim/models/word2vec.html.   -  person Saurav Mukherjee    schedule 22.03.2018


Ответы (2)


Вы уверены, что ваш xxxx.model.wv файл был сохраненным полным Word2Vec объектом модели?

Эта ошибка предполагает, что это была EuclideanKeyedVectors - только векторы, а не полная модель со всеми свойствами, такими как negative, - поэтому вам может потребоваться загрузить ее в таком виде.

person gojomo    schedule 24.03.2018

Я сталкиваюсь с тем же вопросом. Основная причина в том, что модель не является полноценным объектом модели. Итак, вы можете загрузить модель, используя gensim.models.KeyedVectors.load (model_path) или gensim.models.KeyedVectors.load_word2vec_format (model_path, binary = True). Надеюсь, это поможет решить ваш вопрос.

person JKHenry    schedule 15.09.2020