Java 如何在使用StandfordNLP解析共同引用后获得最终文本

Java 如何在使用StandfordNLP解析共同引用后获得最终文本,java,nlp,stanford-nlp,Java,Nlp,Stanford Nlp,嗨,我刚开始学习NLP,选择了斯坦福api来完成我所有的任务。我能够完成POS和NER任务,但我坚持使用共同参考解决方案。我甚至能够获得“corefChaingraph”,并能够将所有代表性提及和相应提及打印到控制台。但是,我真的很想知道如何在解决共同引用后获得最终文本。有人能帮我吗 例如: 输入句子: 约翰·史密斯谈论欧盟。他喜欢国际大家庭 预期输出: 约翰·史密斯谈论欧盟约翰·史密斯喜欢国际大家庭。这在很大程度上取决于你采取的方法。我个人会尝试解决这个问题,看看一个词在一个句子中扮演什么角色

嗨,我刚开始学习NLP,选择了斯坦福api来完成我所有的任务。我能够完成POS和NER任务,但我坚持使用共同参考解决方案。我甚至能够获得“corefChaingraph”,并能够将所有代表性提及和相应提及打印到控制台。但是,我真的很想知道如何在解决共同引用后获得最终文本。有人能帮我吗

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

预期输出:
约翰·史密斯谈论欧盟约翰·史密斯喜欢国际大家庭。

这在很大程度上取决于你采取的方法。我个人会尝试解决这个问题,看看一个词在一个句子中扮演什么角色,上下文是什么。基于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']]
一旦你有了这些块,从左到右解析它们,把它们放在
主语动词宾语
形式中

基于此,您知道什么是上下文结转

e、 g.:“他”的意思是这个主题正在向前推进。“它”指的是对象(这是一个非常基本的例子。你可以为模式构建一个健壮的基于规则的系统。)我过去尝试过很多方法,这一种给了我最好的结果


我希望我能帮忙

根据我的经验,你试图解决的问题并没有完全解决,但有很多人在努力解决。我尝试了“卡拉卡”方法。不仅要从句子中获取主语动词宾语,还要从句子中获取其他引用

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

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. 
看看你的例子:

在这两个句子中,名词结构中都有名词动词。你们可以很容易地解析它,因为第一个名词是主语,然后是动词,然后是IN(about表示宾语),然后是名词。从这些规则来看:约翰·史密斯是主体,谈判是行动,欧盟是客体

语言中的卡拉卡理论也将帮助你扮演其他角色

例如:
约翰·史密斯在巴黎谈论欧盟。

在这里,当您在巴黎(NNP标记)外时,您可以有一条规则告诉您“in/on/around/in/out”是位置引用

同样,“带/不带”和工具性的“for”也是与格

当我必须处理一个单词和它在一个句子中所起的规则时,我基本上相信这种深度解析和规则系统


实际上,我的真正意图是把一个段落中的三元组作为主谓宾语。我认为,为了做到这一点,我需要首先解决共同参考。但你的方法似乎完全相反。你能分享一些你必须让我明白的代码示例吗?在我们开始之前,先问几个问题。你的文本格式好吗?另外,您尝试过哪些方法?另外,你是否只看句子中的谓词或详细宾语+其他引用?是的,文本格式良好。我想从文本中生成RDF三元组。我尝试了以下方法。词性标记,使用Stanford提取实体。使用Stanford解析树。现在我正在尝试解析共同引用,以便我可以从共同引用解析的文本中形成解析树并提取三元组,然后我将它们转换为RDF三元组。。。