如何判断gensim的WikiCorpus是否正常工作?

时间:2019-04-02 15:12:48

标签: python gensim

我下载了完整的Wikipedia档案14.9gb,并且正在运行以下代码行:

wiki = WikiCorpus("enwiki-latest-pages-articles.xml.bz2")

我的代码似乎并没有过去,现在已经运行了一个小时,我知道目标文件很大,但是我想知道如何判断它是否正常工作,或者期望什么该完成什么时间了?

1 个答案:

答案 0 :(得分:1)

您通常可以使用特定于操作系统的监视工具,例如Linux / Unix / MacOS系统上的top,以了解您的Python进程是密集计算,使用内存还是继续IO。

即使第一次实例化WikiCorpus时进行简单的词汇扫描也可能需要很长时间才能解压缩和标记化/计数,因此运行时间超过一个小时不会令我感到惊讶。 (而且,如果从top的输出或类似的监视中可以清楚地看出,在此简单操作过程中它依赖于任何虚拟内存/交换,那将使速度进一步降低。)

作为比较基准,您可以使用如下shell命令来计时仅进行解压缩的时间:

% time bzcat enwiki-latest-pages-articles.xml.bz2 | wc

(在我的MacBook Pro上进行的快速测试表明,仅15GB的BZ2数据可能需要30分钟以上的时间才能解压缩。)

在某些情况下,以INFO级别打开Python日志记录将显示带有gensim模块的进度信息,尽管我不确定WikiCorpus直到完成才显示任何内容。启用INFO级日志记录可以很简单:

import logging
logging.getLogger().setLevel(logging.INFO)