我有一个包含 170 部荷兰文学小说的语料库,我将在其中应用命名实体识别。为了评估现有的荷兰语 NER 标记器,我想手动注释此语料库的随机样本中的命名实体 - 为此我使用 brat。手动注释的随机样本将作为我评估 NER 标记器的“黄金标准”。我写了一个 Python 脚本,它在句子级别输出我的语料库的随机样本。

我的问题是:就每部小说的句子数量而言,随机样本的理想大小是多少?目前,我对每部小说随机使用了 100 个句子,但这导致了一个相当大的随机样本,其中包含近 21626 行(手动注释的内容很多,并且导致在 brat 中工作环境缓慢)。

最佳答案

注意,在实际答案之前:我看到的最大问题是您只能评估工具wrt。那 170 本书。所以充其量,它会告诉你你评估的 NER 工具在这些书籍或类似文本上的效果如何。但我想这很明显......

至于样本量,我估计每本书不需要超过十几个随机句子。这是检查您的样本量是否已经足够大的简单方法:仅随机选择您注释的一半句子(每本书分层!)并评估该子集上的所有工具。这样做几次,看看同一工具的结果是否在运行之间变化很大(例如,如果您使用 F-score,则超过 +/- 0.1 - 主要取决于检测显着性的“精确度”工具之间的差异)。如果方差很大,继续注释更多的随机句子。如果数字开始稳定,您就很好,可以停止注释。

关于python - 命名实体识别黄金标准语料库的样本大小,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40743759/

10-13 04:48