NER - 我应该在标记的实体中包含通用前缀吗

NER - Should I include common prefixes in labeled entities

我正在尝试从文档图像中识别一组 OCR 文本中的实体。由于文本在文档中通常采用 some_label: value 形式,因此它也经常(但不总是)出现在 OCR 文本中。

我的问题是,假设我正在尝试在我的 OCR 文本文件中注释日期,并且 80%​​ 的时间日期格式为 Date: xx/xx/xxxx;如果我 ...

会更好吗
  1. 仅将 xx/xx/xxxx 标记为我的日期实体
    • 表示真实实体
    • 将代表 100% 的数据
  2. 将整个 Date: xx/xx/xxxx 标记为我的日期实体
    • 是否会利用经常出现的 Date: 前缀来提高准确性?

另一个例子:

金额通常表示为 $xxxxxx5.37$ 63.75

  1. 选择5.3763.75
  2. 选择$xxxxxx5.37$ 63.75(利用$符号)

以下哪项是更好的实践/遵循/导致更好的模型?

(P.S.: 我正在使用 Prodigy 来注释我的数据)

这取决于您使用的神经网络架构。

假设您使用 spaCy v2 及其默认的神经架构,即 CNN。 在这种情况下,架构将根据特定的 window(即 date 实体之前的 x 个单词数和 date 实体之后的 x 个单词数)在您的文本中滑动.

使用这种方法,每次标记 Date: 出现在文本中时,神经网络很可能会识别出实体 date 坐在它旁边。

在这种情况下,我的建议是仅将注释 xx/xx/xxxx 日期作为一个实体包括在内。这将使模型更灵活地确定什么是日期 entity。但是,测试始终是找出最佳方案的最佳方式。所以,试一试 :)