PyPy 是否可以与 NLTK 一起使用,如果可以,是否有明显的性能改进,比如贝叶斯分类器?
当我们这样做时,是否有任何其他 python 环境(shedskin 等)提供比 cpython 更好的 nlkt 性能?
根据 freenode 上#pypy 上的某个人的说法,至少有一些 NLTK 确实可以与 PyPy 一起使用,并且有一些性能提升。你有没有运行任何测试?只需从 pypy.org/download.html 下载 PyPy,而不是“time python yourscript.py data.txt”,输入“time pypy yourscript.py data.txt”。
我通过电子邮件收到了回复(Seo,请随时在此处回复)说:
主要问题是:
PyPy 实现了 Python 2.5。这意味着在这里和那里添加“从未来导入 with_statement”,重写 property.setter 的用法,并修复 2.6 库中的新调用,如 os.walk。
NLTK 需要 PyYAML。只需将内容符号链接(或复制)到 pypy-1.4/site-packages 即可。
和:
您是否使用 PyPy 运行 NLTK,如果是,您是否看到性能改进?
是的,是的。
因此,显然 NLTK 确实与 PyPy 一起运行并且性能有所改进。
您现在可以使用 pypy 运行 nltk。在 pypy 1.8 下有一个基准,尽管以后的版本(目前 pypy 2.0 是最新的)会表现得更好。nltk这些天在 pypy 下运行它的单元测试,所以 nltk 开发人员正在确保它工作。