python - 共指解析中命名实体的重复
问题描述
我正在尝试使用 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 在结果中重复了两次。
有人可以帮助我了解这里可能出了什么问题吗?
解决方案
推荐阅读
- swift - 如何在 MPMediaItem 中正确添加音乐编译的谓词
- sass - 什么是 bootstrap 4 媒体断点上下和之间?
- nginx - 如何使用最低效率的 nginx 配置来防止 DDOS 攻击
- azure - 是否可以通过命令行与 javascript 聊天机器人交谈
- python - python速成课程19-1 博客编辑帖子不起作用
- c++ - C++ 中的“深拷贝”构造函数
- python - 获得“无”的输出,但不确定究竟是什么触发了它
- c - 是否可以在 C 中使用带有和操作的开关盒
- akka - 使用 kubernetes-api 发现 Akka 集群加入失败
- node.js - Heroku 错误:无法使用 nodejs 部署找到模块“knex”