【问题标题】:Training spacy model not working: running the train_ner script has no effect训练 spacy 模型不起作用:运行 train_ner 脚本没有效果
【发布时间】:2019-06-18 14:30:35
【问题描述】:

我正在编写一个使用 spacy 模型 en_core_web_md 进行命名实体识别的程序。它没有正确识别我的所有实体:例如,有些人员和组织的名称未被识别。

我查找了如何训练模型并找到了这个脚本:https://github.com/explosion/spaCy/blob/master/examples/training/train_ner.py

我下载了脚本,将它放在与我的程序相同的文件夹中,用我自己的(包含我希望它识别的名称)替换他们的训练数据并运行它,使用 model="en_core_web_md"output_dir="model" 而不是 @ 987654324@.

我的项目涉及视频游戏角色,所以我的训练数据是:

TRAIN_DATA = [
    ("Who is Cave Johnson?", {"entities": [(7, 19, "PERSON")]}),
    ("I work for Aperture Science.", {"entities":[(11, 27, "ORG")]}),
    ("Wallace Breen is CEO of Black Mesa.", {"entities":[(0, 13, "PERSON"), (25, 35, "ORG")]}),

]

train_ner 脚本输出预期结果。但是,当我运行其他程序时,它仍然无法将“Cave Johnson”识别为PERSON 或将“Black Mesa”识别为ORG。为什么脚本不起作用?

更新:仍然没有工作。我再次运行脚本,没有明显效果。

【问题讨论】:

    标签: nlp spacy training-data named-entity-recognition


    【解决方案1】:

    更详细地查看 Github “问题”,事实证明,即使示例脚本只给它几句话来训练它,当你运行脚本时,你预计实际上会使用数百个示例。

    对于没有 NLP 经验的人阅读文档并不清楚。 希望现在这个问题和答案会在人们搜索它时出现,这样其他人就不必花费数周时间思考他们做错了什么。

    基本上,我只需要更多的句子。

    【讨论】:

      猜你喜欢
      • 2018-02-08
      • 1970-01-01
      • 2019-11-15
      • 1970-01-01
      • 2020-09-07
      • 1970-01-01
      • 1970-01-01
      • 2019-07-04
      • 1970-01-01
      相关资源
      最近更新 更多