重现 spaCy 管道训练的问题

问题描述 投票:0回答:1

我正在尝试重现意大利语 spaCy 管道之一的训练:it_core_news_sm。 该管道在 2 个数据集上进行训练:

  1. UD_Italian-ISDT 用于 conllu 任务
  2. WikiNer 用于 NET 标记

在哪里可以找到有关用于训练的数据的更多信息?他们使用训练集和开发集来训练管道?他们是否按照 spaCy 命令convert的建议将句子分组在一起?

此外,如何在 2 个数据集上训练管道?我应该首先在第一个数据集上训练管道,然后在第二个数据集上训练 NER 组件,还是可以同时进行?

无论如何,目前我仅在 UD_Italian-ISDT 数据集上训练数据集,以进行词性标记(粗粒度和细粒度)、解析、词形还原和形态分析,使用此处提供的训练配置文件。我使用训练集来训练,使用验证集来测试管道,我得到的结果远低于 spaCy here 声称的结果。这是我的结果:

pos_acc:0.9020224719

morph_acc:0.9004449638

标签_acc:0.9001348315

dep_uas:0.7801636499

dep_las:0.7451524919

sents_p:0.9754816112

sents_r:0.9875886525

sents_f:0.9814977974

lemma_acc:0.9028083577

有人可以帮我解决这个问题吗?我在哪里可以找到有关训练设置以及可能导致这些分数的原因的更多信息?

python nlp spacy linguistics conll
1个回答
0
投票

解决方案是合并子令牌,同时转换数据集以进行 spacy 训练(在命令 Convert 中使用标志 --merge-subtokens)。这是因为 conllu 处理多词标记的方式,例如“nel”、“nella”、“dello”、“delle”(请参阅此处有关它的更多信息)

© www.soinside.com 2019 - 2024. All rights reserved.