python - 命名实体识别黄金标准语料库的样本量

标签 python nlp named-entity-recognition sample-size brat

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

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

最佳答案

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

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

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

相关文章:

OpenNLP NameFinder 训练, "Found unexpected annotation"

java - 用大公报训练斯坦福 NER,内存问题

python - Python 中 NLTK 的命名实体识别。识别网元

python - 是否可以在 GEKKO 动态优化中定义变量的开始和结束时间?

python - 如何在 Tensorflow 中使用动态 rnn 构建解码器?

python - 警告 : [W030] Some entities could not be aligned in the text

python - 如何从gensim中的文档中删除停用词?

python - 我可以在 GAE 上使用 django.contrib.gis 吗?

Python - 获取多部分电子邮件的正文

matplotlib - 如何将 SpaCy 词嵌入可视化为散点图?