Python spacy v3中的训练NER需要在命令行中使用dev.spacy

Python spacy v3中的训练NER需要在命令行中使用dev.spacy,python,spacy-3,Python,Spacy 3,我试图在spacy v3中准备一个定制的ner模型。 从培训角度来看,V3与v2相比发生了显著变化 我正在使用en_web_lg的默认配置。 我已经使用convert命令准备了培训数据(training.spacy)。 但是,训练命令需要一个dev.spacy文件 不确定dev.spacy中需要哪些数据。 这是在请求training.spacy文件的纯文本语料库吗? 但是有没有一种方法可以将纯文本文件转换为spacy格式 来自spacy站点的命令- python-m spacy train co

我试图在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是一个占位符,用于收集“培训”文件-通常使用spacy转换实用程序的文件目录。 dev.spacy是“验证”文件集合的占位符-与培训文件格式相同,但在培训期间用作验证样本(对于NER,用于在每次培训迭代后计算预测、回忆和f分数)。 通常建议验证样本的“大小”在培训样本的10%到20%之间。
我倾向于使用20%,因为我的数据有很大的变化,但较大的验证样本会增加培训开销。

train.spacy是“training”文件集合的占位符,这是一个文件目录,通常使用spacy convert实用程序。 dev.spacy是“验证”文件集合的占位符-与培训文件格式相同,但在培训期间用作验证样本(对于NER,用于在每次培训迭代后计算预测、回忆和f分数)。 通常建议验证样本的“大小”在培训样本的10%到20%之间。
我倾向于使用20%,因为我的数据有很大的变化-但较大的验证样本会增加培训开销。
dev.spacy
文件应该与
train.spacy
文件完全相同,但是应该包含培训过程中从未见过的新示例,以便对模型的性能进行现实的评估


要创建此开发集,您可以首先将原始数据拆分为train/dev部分,然后分别对每个部分运行
convert
,调用较大的
train.spacy
和较小的
dev.spacy
。正如@mbrunecky所建议的,80-20分割通常是好的,但这取决于数据集。

dev.spacy文件应该与
train.spacy
文件完全相同,但应该包含培训过程以前没有见过的新示例,以便对模型的性能进行实际评估


要创建此开发集,您可以首先将原始数据拆分为train/dev部分,然后分别对每个部分运行
convert
,调用较大的
train.spacy
和较小的
dev.spacy
。正如@mbrunecky所建议的,80-20分割通常是好的,但这取决于数据集。

感谢您澄清dev.spacy文件的用途。通常,我将验证视为一个单独的命令。很高兴看到它现在集成到了训练指挥中。感谢您澄清dev.spacy文件的用途。通常,我将验证视为一个单独的命令。很高兴看到它现在被整合到训练指挥中。谢谢。是的,这是个好因素。虽然我更喜欢保持在低水平~10%/。谢谢。是的,这是个好因素。尽管我更喜欢保持低水平~10%/。