【问题标题】:Prodigy - Using pattern file with modelProdigy - 将模式文件与模型一起使用
【发布时间】:2022-09-27 14:40:40
【问题描述】:

您可以将模式文件添加到模型中吗?

matcher = Matcher(nlp_lg.vocab)
pattern = [{\"LOWER\": \"tumulus\"}]
matcher.add(\"thing\", [pattern])
MyText = df.loc[52][\"TEXT\"]
doc = nlp_lg(MyText )
spacy.displacy.render(doc, style=\'ent\')

它似乎没有什么区别,也没有标记“tumulus”。

输出:

\“(名称:SS 26271656 ORG)Woolley Barrows PERSON(NR ORG)。(SS 26191653 红衣主教)古墓(NR)。\”

    标签: spacy prodigy


    【解决方案1】:

    当您创建一个 Matcher 对象时,它与管道没有特殊关联,它只是一个存在的对象。这就是为什么它根本不修改管道输出的原因。

    听起来您想要做的是添加一个 EntityRuler - 这是一个包装 Matcher 的组件 - 并让它覆盖实体。有关如何使用 EntityRuler 的示例,请参阅 the rule-based matching docs。有点像这样:

    ruler = nlp.add_pipe("entity_ruler")
    patterns = [{"label": "ORG", "pattern": [{"LOWER": "tumulus"}]}]
    ruler.add_patterns(patterns)
    

    注意nlp.add_pipe,这是关键,因为它实际上将组件添加到管道中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-06
      • 2013-09-28
      • 2012-10-30
      • 1970-01-01
      • 1970-01-01
      • 2017-08-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多