PyPy能够与NLTK兼容吗?

15

PyPy能否与NLTK协同工作,如果可以的话,在贝叶斯分类器方面是否有明显的性能提升?

顺便问一下,除了CPython之外,其他Python环境(如Shedskin等)是否提供比CPython更好的NLTK性能?


我不了解pypy(阅读pypy FAQ后,我怀疑需要付出努力才能使其正常工作);但我曾经想过类似的问题,只是针对IronPython。 - winwaed
你应该删除掉你的问题的答案并将其作为一个回答插入进去。 - Tim McNamara
3个回答

5

据freenode上#pypy的某位用户称,NLTK中至少有部分功能可与PyPy兼容,并且会带来一定的性能提升。你是否运行过任何测试?只需从pypy.org/download.html下载PyPy,然后将“time python yourscript.py data.txt”替换为“time pypy yourscript.py data.txt”即可。


我曾尝试在PyPy 1.4.0中使用nltk,遇到了一些Python库路径和导入问题,解决了这些问题后,又遇到了更多问题,在没有成功之前就放弃了。我可能会再试一次,但想知道是否已经有人成功过。 - Parand
1
我通过电子邮件收到的评论如下:主要问题是:
  1. PyPy实现了Python 2.5。这意味着需要在各处添加“from future import with_statement”,重写property.setter的用法,并修复2.6库调用中的新问题,例如os.walk。
  2. NLTK需要PyYAML。只需将文件符号链接(或复制)到pypy-1.4/site-packages即可。
- Parand
2
2.7支持正在逐步推进中,预计将于一月份发布,但您可以通过以下方式获取当前的2.7支持状态(然后自行翻译/编译):"hg clone https://bitbucket.org/pypy/pypy && hg up fast-forward"。 - TryPyPy

4
我通过电子邮件得到回复(Seo,请在此自由回复),内容如下:
主要问题包括:
PyPy实现了Python 2.5。这意味着需要添加“from future import with_statement”并重新编写property.setter的用法,以及修复2.6库调用中类似os.walk的新程序。
NLTK需要PyYAML。只需将东西符号链接(或复制)到pypy-1.4/site-packages即可解决。
还有:
您是否使用PyPy运行NLTK,如果是,您是否看到性能提升?
是的,两者都有。
因此,显然NLTK可以在PyPy上运行,并且有性能提升。

3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接