ModuleNotFoundError: нет модуля с именем «gensim.models.wrappers».

Я пытаюсь использовать модель LDA MALTET. но я столкнулся с ошибкой «Нет модуля с именем gensim.models.wrappers».

  • У меня установлен gensim, и gensim.models.LdaMulticore работает правильно.

  • Комплект разработчика Java установлен

  • Я уже скачал mallet-2.0.8.zip и разархивировал его на диск c:\.

  • Это код, который я пытаюсь использовать:

    import os
    from gensim.models.wrappers import LdaMallet
    os.environ.update({'MALLET_HOME':r'C:/mallet-2.0.8/'}) 
    mallet_path = r'C:/mallet-2.0.8/bin/mallet' 
    
    

Кто-нибудь знает, что здесь не так? Большое спасибо!


person Shiva Nadi    schedule 31.03.2021    source источник


Ответы (2)


Если вы установили последнюю версию Gensim 4.0.0 (по состоянию на конец марта 2021 г.), модель LdaMallet была удалена вместе с рядом других инструментов, которые просто заключали в себе внешние инструменты/API.

Вы можете увидеть примечание в руководстве по миграции Gensim по адресу:

https://github.com/RaRe-Technologies/gensim/wiki/Миграция-с-Gensim-3.x-на-4#15-удаленные-сторонние-обертки

Если использование этого инструмента необходимо для вашего проекта, вы можете:

  • установите более старую версию Gensim, например 3.8.3 — хотя, конечно, тогда вы пропустите последние исправления и оптимизации для любых других моделей Gensim, которые вы используете

  • извлеките исходный код ldamallet.py из эту старую версию и обновите/переместите ее в свой собственный код для личного использования — для решения любых возникающих проблем

person gojomo    schedule 31.03.2021

У меня была такая же проблема с оболочкой Gensim для MALLET, но я не хотел переходить на более раннюю версию. Есть эта новая оболочка, которая, кажется, неплохо справляется со своей задачей.

https://github.com/maria-antoniak/little-mallet-wrapper/blob/master/demo.ipynb

person chermen    schedule 19.04.2021