首页 > 解决方案 > 在 Python 中使用 spaCy 进行序列多标签

问题描述

我想知道是否可以在 NER 任务中标记标记可能具有多个(重叠)标签的文本?

我想学习汽车制造,但是,我需要将它们分类为私家车或商用车。

例如:

text_0 = 'The new model of Mercedes is a great family car which also offers a space for home pets in the rear'

text_1 = 'It has been know for decades that Mercedes vehicle are very reliable for public transportation'

我需要提取汽车制造商(这很容易,应该给出“梅赛德斯”),但是,我还想知道在哪个上下文中提到了汽车制造商。所以IE系统应该输出:

text_0 -> (SYSTEM) -> {'car_make': 'Mercedes', 'vehicle_type': 'private'}

text_1 -> (SYSTEM) -> {'car_make': 'Mercedes', 'vehicle_type': 'commercial'}

潜在的解决方案

我可以注释一个大型语料库来训练一个统计模型。所以基本上,我可以训练两个单独的 NER 模型,一个用于识别汽车制造商的代币,第二个用于标记同一个代币是否是私有/商业的。

问题是如何结合两个 NER 模型,所以它们的输出不会覆盖实体标签。在 spaCy 中是否有一种简洁的方法?

否则,请建议如何在学习汽车制造的 NER 任务中添加另一个属性(私人/商业)。

标签: pythonspacynamed-entity-recognition

解决方案


推荐阅读