我还在玩斯坦福大学的CoreNLP,我在Coreference分辨率的非常微不足道的测试中遇到了奇怪的结果。
给出两句话:
酒店有一个大浴室。这很干净。
我希望"它"在句子2中由"浴室"或者至少"一个大浴室"第1句。
不幸的是它指向"酒店"在我看来这是错误的。
有没有办法解决这个问题?我需要训练任何东西,还是应该开箱即用?
Annotation a = getPipeline().getAnnotation("The hotel had a big bathroom. It was very clean.");
System.out.println(a.get(CorefChainAnnotation.class));
输出:
{1 = CHAIN1 - ["酒店"在第1句中,"它"在句子2]中,2 = CHAIN2 - ["一个大浴室"在第1句中}}
非常感谢你的帮助。
答案 0 :(得分:5)
与AI中的许多组件一样,斯坦福参考系统只能达到一定的准确度。在共参照的情况下,该精度实际上相对较低(在0-100范围内的标准基准上约为60)。为了说明问题的难度,请考虑以下明显相似的句子,并使用不同的共指判断:
酒店有一个大浴缸。这是非常昂贵的。