Я тренирую свою собственную модель word2vec, используя разные данные. Чтобы реализовать полученную модель в моем классификаторе и сравнить результаты с исходной предварительно обученной моделью Word2vec, мне нужно сохранить модель в двоичном расширении .bin. Вот мой код, предложений - это список коротких сообщений.Сохранить gensim Word2vec модель в двоичном формате .bin с save_word2vec_format
import gensim, logging
logging.basicConfig(format='%(asctime)s : %(levelname)s : %(message)s', level=logging.INFO)
sentences = gensim.models.word2vec.LineSentence('dati.txt')
model = gensim.models.Word2Vec(
sentences, size=300, window=5, min_count=5, workers=5,
sg=1, hs=1, negative=0
)
model.save_word2vec_format('model.bin', binary=True)
Последний метод, save_word2vec_format, дает мне эту ошибку:
AttributeError: 'Word2Vec' object has no attribute 'save_word2vec_format'
Что я здесь отсутствует? Я прочитал документацию по gensim и другим форумам. Этот repo on github использует почти ту же конфигурацию, поэтому я не могу понять, что не так. Я пытался переключиться с skipgram на cbow и с иерархического softmax на отрицательную выборку без каких-либо результатов.
Спасибо заранее!
Спасибо за ваш кристально чистый ответ. Я думал, что это может быть проблема с версией gensim, поскольку я не видел никакого метода, называемого save_word2vec_format, среди тех, которые были привязаны к модели. Я установил gensim через easy_install -U gensim, когда прочитал документацию на сайте. Я unistalled gensim и использовал простой pip install, и теперь он работает плавно. Большое спасибо! – carloab
FYI Я думаю, что 1.0.0 теперь является официальным, поэтому даже «pip install gensim» получит версию с изменением API, но я также думаю, что сообщение об ошибке было улучшено (вместо того, чтобы указывать людям на использование «KeyedVectors»). – gojomo