spaCy 2.0:保存并加载自定义NER模型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spaCy 2.0:保存并加载自定义NER模型相关的知识,希望对你有一定的参考价值。

我在spaCy中使用自定义标记器训练了一个自定义NER模型。我想在没有tokenizer的情况下保存NER模型。我在spaCy支持论坛中找到了以下代码:

import spacy

nlp = spacy.load("en")
nlp.tokenizer = some_custom_tokenizer
# Train the NER model...
nlp.tokenizer = None
nlp.to_disk('/tmp/my_model', disable=['tokenizer'])

当我尝试加载它时,管道是空的,并且令人惊讶的是,它具有默认的spaCy标记器。

nlp = spacy.blank('en').from_disk('/tmp/model', disable=['tokenizer'])

任何想法如何在没有标记器的情况下加载模型,但获得完整的管道?谢谢

答案

将模型保存到磁盘后,可以使用nlp = spacy.load('/tmp/model')加载模型。你做的事情显然只根据Spacy文档加载二进制数据(https://spacy.io/usage/training#section-saving-loading

以上是关于spaCy 2.0:保存并加载自定义NER模型的主要内容,如果未能解决你的问题,请参考以下文章

将自定义 NER 模型添加到 spaCy 管道

使用 spaCy 3 进行自定义 NER 训练会引发 ValueError

Spacy 2.0 NER培训

使用自定义数据集训练 SpaCy NER

我是否需要提供培训Spacy NER的句子或段落是否合适?

为 SpaCy NER 格式化训练数据集