【问题标题】:Does PyPy work with NLTK?PyPy 可以与 NLTK 一起使用吗?
【发布时间】:2010-12-08 17:01:17
【问题描述】:

PyPy 是否可以与 NLTK 一起使用,如果可以,是否有明显的性能改进,比如贝叶斯分类器?

在我们研究的过程中,是否有任何其他 python 环境(shedskin 等)提供比 cpython 更好的 nlkt 性能?

【问题讨论】:

  • 我不了解 pypy(阅读 pypy 常见问题解答我怀疑它需要工作才能使其工作);但我想知道大致相同,但使用 IronPython。
  • 您应该删除问题的答案并将其作为答案插入。

标签: python nltk pypy


【解决方案1】:

根据 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 库路径和导入问题,修复了这些问题,遇到了更多问题,在让它工作之前放弃了。我可能会再试一次,但想看看是否有人已经成功了。
  • 我通过电子邮件收到的评论:主要问题是: 1. PyPy 实现了 Python 2.5。这意味着在这里和那里添加“from future import with_statement”,重写 property.setter 的用法,并修复 2.6 库中的新调用,如 os.walk。 2. NLTK 需要 PyYAML。只需将内容符号链接(或复制)到 pypy-1.4/site-packages 即可。
  • 2.7 支持即将推出,可能会在 1 月份推出,但您可以通过以下方式获取(然后自己翻译/编译)2.7 支持的当前状态:“hg clone bitbucket.org/pypy/pypy && hg up快进”。
【解决方案2】:

我通过电子邮件收到了回复(Seo,请随时在此处回复)说:

主要问题是:

PyPy 实现 Python 2.5。这意味着在这里和那里添加“从未来导入 with_statement”,重写 property.setter 的用法,并修复 2.6 库中的新调用,如 os.walk。

NLTK 需要 PyYAML。只需将内容符号链接(或复制)到 pypy-1.4/site-packages 即可。

还有:

您是否使用 PyPy 运行 NLTK,如果是,您是否看到性能改进?

是的,是的。

显然 NLTK 确实可以与 PyPy 一起运行,并且性能有所改进。

【讨论】:

    【解决方案3】:

    您现在可以使用 pypy 运行 nltk。有a benchmark under pypy 1.8,尽管以后的版本(目前 pypy 2.0 是最新的)会表现得更好。 nltk runs its unit tests under pypy 这些天来,所以 nltk 开发人员正在确保它正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-15
      相关资源
      最近更新 更多