在 SpacyV1 中,可以通过提供 BILOU 格式的文档和实体注释列表来训练 NER 模型。
然而,似乎在 V2 训练中只能通过提供这样的实体注释 (7, 13, 'LOC') 来实现,所以使用实体偏移量和实体标签。
以 BILOU 格式提供 token 列表和另一个实体标签列表的旧方法是否仍然有效?
从我从文档中收集的信息来看,nlp.update 方法似乎接受一个 GoldParse 对象列表,因此我可以为每个文档创建一个 GoldParse 对象并将 BILOU 标签传递给它的实体属性。但是,我是否会通过忽略 GoldParse 类的其他属性(例如头部或标签 https://spacy.io/api/goldparse )来丢失重要信息,或者其他属性是否不需要训练 NER?
谢谢!
最佳答案
是的,您仍然可以使用 BILUO 标签创建 GoldParse
对象。使用示例显示“更简单”的偏移格式的主要原因是它使它们更易于阅读和理解。
如果您只想训练 NER,现在还可以使用 nlp.disable_pipes()
context manager 并在训练期间禁用所有其他管道组件(例如 'tagger'
和 'parser'
)。在块之后,组件将被恢复,因此当您保存模型时,它将包括整个管道。您可以在 NER training examples 中看到这一点。
关于nlp - Spacy 2.0 NER 培训,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47219639/