使用NLTK检测英语动词时态

Mic*_*kin 13 python nlp nltk

我正在寻找一种方法,在过去,现在和将来的时间里都有一个英文文本计数动词短语.现在我正在使用NLTK,做一个POS(词性)标记,然后计算说'VBD'来过去时态.这虽然不够准确,所以我想我需要进一步使用分块,然后分析VP块以获取特定的时态模式.有什么存在的吗?任何进一步的阅读可能会有所帮助?该NLTK书大多集中在NP-块,我可以找到关于VP-块比较少的信息.

Tim*_*ara 10

确切的答案取决于你打算使用哪个chunker,但列表推导会带你走很长的路.这可以使用不存在的块来获取动词短语的数量.

len([phrase for phrase in nltk.Chunker(sentence) if phrase[1] == 'VP'])
Run Code Online (Sandbox Code Playgroud)

您可以采用更精细的方法来检测时态的数量.

  • 我实际上设法用这种方法解决了我的问题,因此将其标记为已接受的答案.以下文章非常有用:http://streamhacker.com/2009/02/23/chunk-extraction-with-nltk/ (2认同)