【问题标题】:Mallet stops working for large data sets?Mallet 停止处理大型数据集?
【发布时间】:2019-11-01 08:45:06
【问题描述】:

我正在尝试使用 LDA Mallet 将我的推文分配给主题,当我向它提供多达 500,000 条推文时它运行良好,但是当我使用我的整个数据集(大约 2,500,000 条)时它似乎停止工作推文。您对此有什么解决方案吗?

我在运行我的代码时监控我的 CPU 和 RAM 使用情况,以此作为确保代码实际运行的一种方式(我使用 Jupyter notebook)。我使用下面的代码将我的推文分配给主题。

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 使用我的 RAM 和 CPU。但是,当我将代码提供给我的整个数据集时,Java 和 Python 在最初的几秒钟内会暂时显示一些 CPU 和 RAM 使用率,但之后 CPU 使用率下降到 1% 以下,并且 RAM 使用率开始逐渐减少。我尝试运行代码几次,但在等待代码 6-7 小时后,我发现 CPU 使用率没有增加,一段时间后 RAM 使用率下降。此外,该代码没有产生任何结果。我终于不得不停止代码。 这发生在你身上吗?你有什么解决办法吗? 谢谢!

【问题讨论】:

    标签: python nlp text-mining lda mallet


    【解决方案1】:

    这听起来像是内存问题,但与 gensim 的交互可能会掩盖错误?我对 gensim 的 java 交互知之甚少,无法提出任何建议。您可以尝试直接从命令行运行,希望可以更清楚地传播错误。

    【讨论】:

      猜你喜欢
      • 2023-04-02
      • 2022-01-06
      • 2017-09-24
      • 2012-11-27
      • 2019-12-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多