photos in washington VS show me photos in washington VS I wanna see all my photos in washington taken day before yesterday
what:photos
entities:washington (dont want to be too assuming)
when: 2013-03-14
我想将预设查询解析为条件(如上所述)。我想要这些品质:
我使用NLTK,但速度很慢。我认为StanfordNLP和OpenNLP是可行的替代品,但我发现程序启动延迟太高了。如果我别无选择,我不介意将它们整合到servlet上。
答案 0 :(得分:0)
Stanford Parser是一个不错的选择,而且得到很好的支持(正如研究代码所示)。但听起来低延迟对你来说是一个重要的要求,所以我建议你看看BUBS Parser(完全披露 - 我是从事BUBS工作的主要研究人员之一)。
我没有直接与NLTK进行比较,但我认为您可能会发现Stanford Parser无法满足您的性能需求。 This paper发现总吞吐量约为60字/秒(约2-3个句子/秒)。这些时间已经相当陈旧,所以更新的硬件肯定会改进,但可能仍然不会接近50毫秒的延迟。
正如您所说,任何解析器的启动时间都是一个问题 - 高精度模型必然非常大。 500 MB也可能非常紧凑(我通常使用1-1.2 GB运行BUBS)。但是一旦加载,BUBS延迟通常在每个句子10毫秒附近(对于大约20-25个单词的句子),并且我们可以在准确度开始下降之前将总吞吐量提高大约2500字/秒。我认为这些数字可能会满足您的性能需求,而且我不知道任何其他高精度(F1> = 88-89)解析器的速度接近。
注意:最快的结果是最近的修剪模型尚未发布到网站上,但如果您需要,我可以为您提供模型。希望有所帮助,如果您有更多问题,请随时提出。