首页 > 解决方案 > 共指解析中命名实体的重复

问题描述

我正在尝试使用 neurocoref 查找以下文本的共同引用:

艾伦和布鲁德是克里斯和唐纳德的好朋友。艾伦和布鲁德想去黎巴嫩,而克里斯和唐纳德想留在美国。克里斯和唐纳德还没有下定决心,但很快就会到达那里。艾伦和布鲁德不想分开,但似乎别无选择。

代码:

case_a_bi = 'Alan and Bruder are great friends with Chris and Donald. Alan 
and Bruder want to head to Lebanon while Chris and Donald wish to stay in 
United States. Chris and Donald have not made up their mind yet, but will 
get there soon. Alan and Bruder do not want to separate but there seems to 
be no choice.'
nlp = spacy.load('en')
neuralcoref.add_to_pipe(nlp)
case_a_bi = unidecode(case_a_bi)
doc = nlp(case_a_bi)
doc._.coref_clusters
doc._.coref_resolved

coref 集群的输出:

[Alan and Bruder: [Alan and Bruder, Alan, Alan and Bruder, Alan, Alan and Bruder],

Chris: [Chris, Chris, Chris],

Chris and Donald: [Chris and Donald, Chris and Donald, Chris and Donald, their],

Donald: [Donald, Donald, Donald]]

coref 分辨率的输出:

艾伦和布鲁德是克里斯和唐纳德的好朋友。Alan 和 Bruder 想前往黎巴嫩,而 Chris 和 Donald Donald 想留在美国。Chris 和 Donald Donald还没有决定 Chris 和 Donald 的想法,但很快就会达成。艾伦和布鲁德不想分开,但似乎别无选择。

根据提到的输出,我得到了 Chris 和 Donald 的正确聚类,但是当我尝试解决这些共指时,Donald 在结果中重复了两次。

有人可以帮助我了解这里可能出了什么问题吗?

标签: pythonnlpspacycoreference-resolution

解决方案


推荐阅读