有没有办法强制 Apache OpenNLP 解析器看到动词短语而不是名词短语?

Is there a way to force the Apache OpenNLP parser to see a verb phrase instead of a noun phrase?

我正在使用 Apache 的 OpenNLP 编写命令解析器。问题在于 OpenNLP 将某些命令视为名词短语。例如,如果我解析“开门”之类的内容,OpenNLP 会给我 (NP (JJ open) (NN door))。换句话说,它将这个短语视为“一扇敞开的门”,而不是“开门”。我希望它解析为 (VP (VB open) (NP (NN door)))。如果我解析“开门”,它会产生一个 VP,但我不能指望一个人使用限定词。

我目前正在尝试弄清楚如何对不正确的解析树进行手术,但是 API 文档严重缺乏。

经过大量研究后,我偶然发现了 same problem using NLTK 的人。他们被建议通过在命令前添加像“他们”这样的代词来“破解”NLTK,以强制解析器将输入视为动词短语。所以我会给 OpenNLP “他们打开门”然后返回 (S (NP (PRP they)) (VP (VBP open) (NP (NN door)))),此时我可以提取动词短语。

肯定不理想!但现在它可以满足我的要求。