Маллет перестает работать для больших наборов данных? - PullRequest
0 голосов
/ 18 июня 2019

Я пытаюсь использовать LDA Mallet, чтобы назначать свои твиты темам, и он отлично работает, когда я загружаю до 500 000 твитов, но, похоже, перестает работать, когда я использую весь свой набор данных, а это около 2 500 000 чириканье. У вас есть какие-нибудь решения для этого?

Я отслеживаю использование своего ЦП и ОЗУ, когда запускаю свои коды, чтобы убедиться, что код действительно запущен (я использую ноутбук Jupyter). Я использую код ниже, чтобы назначить свои твиты темам.

import os
from gensim.models.wrappers import LdaMallet

os.environ.update({'MALLET_HOME':r'C:/new_mallet/mallet-2.0.8/'})
mallet_path = 'C:/new_mallet/mallet-2.0.8/bin/mallet'

ldamallet = LdaMallet(mallet_path, corpus=corpus, num_topics=10, id2word=id2word)

Код работает, когда мой набор данных содержит менее 500 000 твитов: он выдает результаты, и я вижу, как python и / или java используют мою оперативную память и процессор. Однако, когда я передаю код всему моему набору данных, Java и Python временно показывают некоторое использование ЦП и ОЗУ в первые несколько секунд, но после этого использование ЦП падает ниже 1 процента, а использование ОЗУ начинает постепенно уменьшаться. Я попытался запустить код несколько раз, но после ожидания кода в течение 6-7 часов я не увидел увеличения загрузки ЦП и использования оперативной памяти через некоторое время. Кроме того, код не дал никаких результатов. Мне наконец-то пришлось остановить код. Это случилось с вами? У вас есть какие-то решения для этого? Спасибо!

1 Ответ

0 голосов
/ 24 июня 2019

Это звучит как проблема с памятью, но взаимодействие с gensim может маскировать ошибку?Я не знаю достаточно о java взаимодействии gensim, чтобы предложить что-либо.Вы можете попытаться запустить из командной строки напрямую в надежде, что ошибки будут распространяться более четко.

...