【问题标题】:Stanford NLP - NER - Train NER with names that have multiple tokens斯坦福 NLP - NER - 使用具有多个标记的名称训练 NER
【发布时间】:2017-08-23 13:11:54
【问题描述】:

我最近开始研究斯坦福 NLP(使用 C# 端口)。 我计划使用 NER 来识别商店位置名称和产品名称 - 为此,我需要训练标注器,我正在这样做。

但是,某些位置(例如“国王十字”)只有在两个标记在一起时才真正被视为一个位置。即我不希望“Kings”在句子中单独使用时被标记为位置。

所以我的问题真的是:是否有一种明确的方式建议我处理其中有空格的位置/名称(在我的训练文件和代码中)?

感谢您的帮助。

【问题讨论】:

    标签: c# nlp stanford-nlp


    【解决方案1】:

    您的两个选项是训练统计标记算法并希望它做正确的事情,或者使用regexner 注释器并为其提供已知命名实体的列表。例如,在您的已知命名实体列表中,您可以包含 Kings Cross 的条目,并且只有在看到完整的短语 Kings Cross 时才会起作用。

    regexner 的更多文档可在此处获得:

    https://nlp.stanford.edu/software/regexner.html

    【讨论】:

      【解决方案2】:

      在 NER 中处理此问题的标准方法是使用 IOB 标签or some variation。使用 IOB 的标签可能如下所示:

      I        O
      went     O
      to       O
      Kings    B-PLACE
      Cross    I-PLACE
      

      其中O 表示“无标签”,B-XXX 表示“XXX 开头”,I-XXX 表示“在 XXX 中”。

      标记系统将学习以B 开头的多词标记,有时以I 标记继续;这只是另一个标签转换。要从您刚刚完成的标记器输出中收集多字标记,请为任何 B 创建一个条目,并将 Is 附加到它。

      【讨论】:

        猜你喜欢
        • 2023-03-22
        • 1970-01-01
        • 2017-11-27
        • 1970-01-01
        • 2017-06-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多