JAPE规则区分文档

时间:2017-08-12 20:20:34

标签: nlp gate

我目前正在尝试编写JAPE规则,该规则可以识别原始研究文章中的评论。 假设我想突出显示像&#34这样的短语;在这篇评论中我们讨论......","评论摘要.."等等。 现在我有:

Phase: Review
Input: Token
Options: control = appelt

Macro: REVIEWTERM
({Token.string ==~ "[Rr]eview"} |
{Token.string ==~ "[Oo]verview"} |
{Token.string ==~ "[Mm]inireview"} |
{Token.string ==~ "[Ss]tudies"} |
{!Token.string == "trial"} |
{!Token.string == "case", !Token.string == "report"})

Rule: Mainreview
(
({Token.category == "IN"})?
({Token.category == "DT"})?
(REVIEWTERM)
({Token.category == "PRP"})?
{Token.category == "VBZ"}
): review -->
:review.Review = {rule = Mainreview}

但它没有正常运作。你能告诉我哪里出错了吗?

2 个答案:

答案 0 :(得分:0)

首先,我建议更换Macro的选项,如

{Token.string ==〜" [Rr] eview"}

使用带有这些值的Gazetteer,其中区分大小写标志设置为false。

从MainReview规则我可以​​看到你有一个稳定的规则(REVIEWTERM)(VBZ)

请确保:

a)您的POS Tagger在此JAPE规则之前执行(只是为了确保)

b)您的POS Tagger为上述示例生成VBZ类别

如果没有帮助 - 请告诉我,我会尝试在我的环境中运行此规则。

答案 1 :(得分:0)

在我看来,由于REVIEWTERM部分,几乎所有令牌都会触发宏{!Token.string == "trial"} | {!Token.string == "case", !Token.string == "report"}。除了试验,案例或报告之外,它将匹配任何令牌。

因此,您当前的规则Mainreview或多或少地为我提供了任何令牌,后跟VBZ(由PRP分隔或不分隔。)