在 spacy v3 中训练 NER 需要在命令行 dev.spacy
Train NER in spacy v3 needs dev.spacy at command line
我正在尝试在 spacy v3 中准备自定义 ner 模型。
从训练的角度来看,V3 与 v2 相比有了显着变化。
我正在使用 en_web_lg 的默认配置。
我已经使用 convert 命令准备了训练数据 (training.spacy)。
但是,训练命令需要 dev.spacy 文件。
不确定 dev.spacy 中需要什么数据。
这是在询问 training.spacy 文件的纯文本语料库吗?
但是有没有办法将纯文本文件转换为 spacy 格式..
来自 spacy 站点的命令-
python -m spacy train config.cfg --output ./output --paths.train ./train.spacy --paths.dev ./dev.spacy
谁能帮忙解释一下如何准备 dev.spacy。
train.spacy 是 'training' 文件集合的占位符 - 通常使用 Spacy 转换实用程序的文件目录。
dev.spacy 是 'validation' 文件集合的占位符 - 与训练文件的格式相同,但在训练期间用作验证样本(用于 NER 用于在每次训练后计算预测、召回和 f 分数迭代)。
通常建议 'size' 验证样本在训练样本的 10% 到 20% 之间。
我倾向于使用 20%,因为我的数据变化很大 - 但较大的验证样本会增加训练开销。
dev.spacy
文件看起来应该与 train.spacy
文件完全一样,但应该包含训练过程以前从未见过的新示例,以便对您的性能进行真实评估型号。
要创建此开发集,您可以先将原始数据拆分为 train/dev 部分,然后对每个部分分别 运行 convert
,调用较大的部分 train.spacy
和较小的 dev.spacy
。正如@mb运行ecky 所建议的那样,80-20 的分割通常很好,但这取决于数据集。
我正在尝试在 spacy v3 中准备自定义 ner 模型。 从训练的角度来看,V3 与 v2 相比有了显着变化。
我正在使用 en_web_lg 的默认配置。 我已经使用 convert 命令准备了训练数据 (training.spacy)。 但是,训练命令需要 dev.spacy 文件。
不确定 dev.spacy 中需要什么数据。 这是在询问 training.spacy 文件的纯文本语料库吗? 但是有没有办法将纯文本文件转换为 spacy 格式..
来自 spacy 站点的命令- python -m spacy train config.cfg --output ./output --paths.train ./train.spacy --paths.dev ./dev.spacy
谁能帮忙解释一下如何准备 dev.spacy。
train.spacy 是 'training' 文件集合的占位符 - 通常使用 Spacy 转换实用程序的文件目录。 dev.spacy 是 'validation' 文件集合的占位符 - 与训练文件的格式相同,但在训练期间用作验证样本(用于 NER 用于在每次训练后计算预测、召回和 f 分数迭代)。 通常建议 'size' 验证样本在训练样本的 10% 到 20% 之间。 我倾向于使用 20%,因为我的数据变化很大 - 但较大的验证样本会增加训练开销。
dev.spacy
文件看起来应该与 train.spacy
文件完全一样,但应该包含训练过程以前从未见过的新示例,以便对您的性能进行真实评估型号。
要创建此开发集,您可以先将原始数据拆分为 train/dev 部分,然后对每个部分分别 运行 convert
,调用较大的部分 train.spacy
和较小的 dev.spacy
。正如@mb运行ecky 所建议的那样,80-20 的分割通常很好,但这取决于数据集。