【问题标题】:Contextual Namend Entity Recognition with spacy - Howto?具有spacy的上下文命名实体识别 - 如何?
【发布时间】:2020-06-30 16:19:11
【问题描述】:

对于一个新项目,我需要从网页中提取信息,更准确地说是印记信息。我使用 brat 来标记文档,并开始使用 spacy 和 NER 进行第一次实验。有很多关于此的视频和教程,但仍然存在一些基本问题。 是否可以包含实体的上下文?

示例文本:

对内容负责:

The Good Company GmbH 0331 柏林

您可以通过 +49 123 123 123 联系我们。

本网站由 good design GmbH 创建,请联系 +49 12314 453 5。

好吧,spacy 非常擅长提取电话号码。根据我最近的测试,错误率不到百分之二。我已经能够在 250 个标记的文档之后实现这一点,同时我已经标记了 450 个文档,我的目标是大约 5000 个文档。 现在到实际点。相关的只有在“对内容负责”这句话的上下文中显示的电话号码,其他电话号码不相关。 我现在可以想象将这些介绍性句子训练为实体,因为它们总是在某种程度上相似。但是我怎样才能创建上下文呢?也许已经有基于 NER 的模型可以做到这一点? 也许有人已经在某处读过一些提示或一些关于它的东西?作为初学者,门槛比较高,因为材料很深(很少玩文字)。

来自德国的问候!

【问题讨论】:

    标签: python machine-learning spacy named-entity-recognition


    【解决方案1】:

    如果我正确理解您的问题和用例,我建议采用以下方法:

    • 训练/设计一些能够识别所有电话号码的系统 - 看起来你已经掌握了
    • Train a text classifier 识别“对内容负责”的句子。
    • 实施一些启发式方法(可能是基于规则的?)以确定是否有任何可识别的电话号码与任何预测的“内容负责”句子相关 - 可能使用简单的特征,例如中间的句子数量,取句子后的第一个电话号码等。

    所以基本上我会建议分别解决每个 NLP 挑战,然后将整个文档中的信息联系起来。

    【讨论】:

    • 如果对您有帮助,请随时投票/接受作为答案;-)
    猜你喜欢
    • 2021-05-06
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    • 2020-02-01
    • 2017-11-13
    • 2019-12-09
    • 2019-08-22
    相关资源
    最近更新 更多