【问题标题】:How to use Python API of Stanford NER? [duplicate]如何使用斯坦福 NER 的 Python API? [复制]
【发布时间】:2023-03-09 12:03:01
【问题描述】:

版本

  • Windows 7
  • Python 2.7.10
  • NLTK 3.1
  • 斯坦福 NER 3.6 (2015-12-09)

问题

我使用斯坦福 NER 训练了一个自定义 NER 模型,并获得了一个序列化模型。然后我尝试使用该模型通过 NLTK 提供的 Python API 对看不见的语料库进行 NER。

根据documentation,我应该指定模型的路径和stanford-ner.jar的路径。但是,我需要同时指定stanford-ner.jar 的路径和slf4j-api.jar 的路径,因为斯坦福NER 需要日志记录模块。

我不知道如何在 NLTK API 中指定这两个路径。构造函数有两个参数,第一个是path/to/model,第二个是path/to/jar。我尝试连接两个 jar 路径,将它们放在一个列表和一个元组中,但这些方法都不起作用。

我如何告诉 NLTK 找到两个 jar 以调用预测?

【问题讨论】:

标签: python jar nltk stanford-nlp


【解决方案1】:

您能提供您尝试过的任何代码吗?通过查看source code from the nltk.tag.stanford module,您似乎只需要使用模型和 stanford-ner JAR 的路径来启动 StanfordNERTagger,并且记录器会自动添加到类路径中。

这就是来自 StanfordTagger 超类的 __init__() 方法在设置模型和引擎后立即执行的操作。它在您提供的 stanford-ner JAR 路径的父文件夹中查找记录器 JAR,并通过从 nltk.internals 调用 find_jars_within_path() 将其隐式添加到路径中,在后台将文件夹附加到 os.path

【讨论】:

    猜你喜欢
    • 2020-04-28
    • 1970-01-01
    • 2019-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多