Nlp SpaCy:在为自定义实体训练模型时,是否需要提前停止?

Nlp SpaCy:在为自定义实体训练模型时,是否需要提前停止?,nlp,spacy,opennlp,Nlp,Spacy,Opennlp,我将数据分为培训和测试 根据spacy提供的用于训练自定义实体的代码片段,似乎没有提前停止。所以我这里有个问题 我是否应该编写一个自定义代码,在每次迭代后执行以下一组操作: 1.迭代完成。 2.根据测试数据检查模型的准确性。 3.如果精度高于上一个模型,则保存它,否则继续。 4.执行下一次迭代 或者我完成所有迭代后的最终模型,例如30迭代是最佳模型 我的自定义代码的示例输出: 根据上述输出,说最佳模型在第13次迭代中是正确的吗?您应该切换到train CLI,其中包括更好的评估指标和提前停止

我将数据分为培训和测试

根据spacy提供的用于训练自定义实体的代码片段,似乎没有提前停止。所以我这里有个问题

我是否应该编写一个自定义代码,在每次迭代后执行以下一组操作: 1.迭代完成。 2.根据测试数据检查模型的准确性。 3.如果精度高于上一个模型,则保存它,否则继续。 4.执行下一次迭代

或者我完成所有迭代后的最终模型,例如30迭代是最佳模型

我的自定义代码的示例输出:


根据上述输出,说最佳模型在第13次迭代中是正确的吗?

您应该切换到train CLI,其中包括更好的评估指标和提前停止:

spacy convert
可以将许多常见的NER格式转换为spacy的内部培训格式,
spacy train
的选项比简单的示例培训脚本多得多。(spacy在内部为其分发的模型使用
spacy系列
。)