将自定义实体添加到 SpaCy 的 NER 时出现问题

Problem adding custom entities to SpaCy's NER

现在的问题是,即使在训练句子上测试模型,也不会显示 ORG、PROD、FAC 等,而只显示 "orgName"。

您认为问题出在哪里?

原则上,您尝试解决灾难性遗忘问题的方式,即根据旧的预测对其进行再训练,对我来说似乎是一个很好的方法。

但是,如果您有同一个句子的重复版本,但注释不同,并将其提供给 NER 分类器,您可能会混淆模型。原因是它不仅看正例,而且明确地将未注释的词视为负例。

所以如果你有"Bob lives in London",而你只注释"London",那么它会认为Bob肯定不是NE。如果你有第二个句子,你只注释了 Bob,它将 "unlearn" 伦敦是一个 NE,因为现在它没有这样注释。所以一致性真的很重要。

我建议实施更高级的算法来解决冲突。 一种选择是始终只采用最长 Span 的注释实体。但如果 Spans 通常完全相同,您可能需要重新考虑您的标签方案。哪些实体最常发生碰撞?我会假设 ORG 和 OrgName?你真的需要ORG吗?也许两者可以"merged"为同一个实体?