gensim库中的WikiCorpus是否可用于阿拉伯语Wikipedia转储?

问题描述 投票:0回答:1

[我看到一个在阿拉伯语Wikipedia转储上使用Wikicorpus的代码,并且我知道该过程将花费很长时间才能执行,我还四处搜索执行该命令时收到的警告,内容是:

((UserWarning:检测到Windows;将别名块化为chunkize_serialwarnings.warn(“检测到Windows;别名分块为chunkize_serial“))

并且回答说没关系,没什么大不了的,这只是一个警告。但是等了3天左右没有任何反应!我开始怀疑它是否真的对阿拉伯转储文件有效,还是在将阿拉伯转储文件传递给Wikicorpus对象之前必须进行某种预处理?数据大小约为989.6 MB。我用两个打印命令将WikiCorpus代码行包围起来,以了解它何时开始以及何时完成执行,如下所示:

print('start WikiCorpus')
wiki = WikiCorpus(self.in_f)
print('finish WikiCorpus')

其中self.in_f是这样的阿拉伯语Wikipedia转储:(/文件所在的路径/arwiki-20200201-pages-articles.xml.bz2,但在运行时从未到达第二个打印命令。

python gensim
1个回答
0
投票
它应该起作用,特别是在阿拉伯语具有清晰的词定界符(例如单词之间的空格)的情况下。

但是,由于gensim和大多数相关的Python数据科学库在其他地方进行了更多的开发/测试/使用,因此Windows上的很多事情都变得更难了,并且在Windows上具有多处理的特殊特性。如果您可以选择在其他操作系统上工作,那将使事情变得更容易。

[最近还有一个问题描述了en转储和WikiCorpus的类似问题–尽管[问询者]是否解决了问题,但还是有一些需要检查my answer there的想法。

[另外,在Windows中使用依赖于Python multiprocessing的代码时,可能特别有必要在“主”块中设置代码,如果您的文件被其他人重新导入,则不会重新运行处理,然后调用Windows特定的freeze_support()函数。参见some recent discussion of a related matter on the gensim project list

© www.soinside.com 2019 - 2024. All rights reserved.