如何在使用斯坦福NLP解析共同参考后获得最终文本

时间:2013-07-25 09:37:07

标签: java nlp stanford-nlp

您好我刚刚开始学习NLP并选择了Stanford api来完成我所有必需的任务。我可以做POS和NER任务,但我坚持使用共同参考解决方案。我甚至可以获得'corefChaingraph',并能够将所有代表性的提及和相应的提及打印到控制台。但是,我真的想知道在解决共同引用之后如何获得最终文本。有人可以帮我解决这个问题吗?

例如: 输入句子: 约翰史密斯谈到了欧盟。他喜欢国际大家庭。

预期产量: 约翰史密斯谈到了欧盟。 John Smith 喜欢国际大家庭。

2 个答案:

答案 0 :(得分:0)

这取决于你采取什么方法。我个人会尝试解决这个问题,看一个单词在一个句子中起什么作用,以及结果是什么。基于POS标签,尝试并映射主题 - 动词 - 对象模型。一旦确定了主题和对象,就可以构建一个简单的上下文结转规则系统来实现您想要的目标。

e.g。

基于以下标签:

[('John', 'NNP'), ('Smith', 'NNP'), ('talks', 'VBZ'), ('about', 'IN'), ('the', 'DT'), ('EU.', 'NNP'), ('He', 'NNP'), ('likes', 'VBZ'), ('the', 'DT'), ('family', 'NN'), ('of', 'IN'), ('nations', 'NNS'), ('.', '.')]

您可以创建块:

[['noun_type', 'John', 'Smith'], ['verb_type', 'talks'], ['in_type', 'about'], ['noun_type', 'the', 'EU']]

[['noun_type', 'He'], ['verb_type', 'likes'], ['noun_type', 'the', 'family'], ['in_type', 'of'], ['noun_type', 'nations']]

获得这些块后,从左到右解析它们,将它们放在Subject-Verb-Object格式中。

现在基于此,你知道什么是背景发扬光大。

例如:“他”意味着主体正在发扬光大。 “它”意味着对象(这是一个非常基本的例子。你可以为模式构建一个强大的基于规则的系统。)我过去尝试了很多方法,这个方法给了我最好的结果。

我希望我帮助过。

答案 1 :(得分:0)

根据我的经验,您尝试解决的问题尚未完全解决,但有很多人正在努力解决这个问题。我尝试了“karaka”方法。不仅要获得subject-verb-object,还要获得句子中的其他引用。

以下是我处理问题的方法:

step 1: Detect the voice of the sentence. 


Step 2: For active voice, parse a POS tagged sentence from left to right to get 
subject-verb-object (It will be always in that form for active voice). For passive voice look for "by" and take the next noun as a subject. 

看看你的例子:

在这两个句子中你都有Noun-Verb-In-Noun结构。你可以很容易地解析为第一个名词然后是动词然后是IN(约表示对象),然后是名词。从那里开始:约翰史密斯是主题,谈判是行动,欧盟是对象。

语言学中的卡拉卡理论也将帮助您完成其他角色。

例如:John Smith talks about EU in Paris.

这里当你在(IN标签)Paris(NNP标签)中输入时,你可以有一条规则告诉你“in / on / around / inside / outside”是定位引用。

同样地,“有/无”和仪表性的“为”是明确的。

当我必须处理单个单词及其在句子中播放的规则时,我基本上相信这种深度解析和规则系统。

这种方法我的准确度很高。