如何训练以行号为特征的spaCy模型?

时间:2019-05-25 10:47:28

标签: python machine-learning nlp spacy ner

我是nlp和spaCy的新手,并且正在从事一个从名片中提取个人和公司名称的项目。

为了提取文本,我使用了一个不错的OCR函数,它给了我类似的东西:

Sunny J. Mistry
Product Design Engineer

Apple
5 Infinite Loop, MS 305-1PH
Cupertino, CA 95014

T 408 974-5339
M 925 548-4585
sjmistry@apple.com
www.apple.com

起初,我正在尝试使用默认的英语NER逐行处理作业,很快意识到这是不够的。

最终,我决定创建自己的自定义NER,使用有关文本位置的信息对其进行培训。

我没有在官方文档中找到有关如何为训练数据添加自定义功能(例如行号)的任何信息,但是我发现了 Matthew的answerexample honnibal 建议使用多任务目标来训练具有服装特征的模型。

我仍然不确定:

  1. 训练数据的外观如何?

  2. 如何使用spaCy的API在培训过程中添加自定义功能?

  3. 多任务目标是训练这种模型的正确工具吗?

2 个答案:

答案 0 :(得分:0)

回答我自己的问题:

我没有找到执行这种任务的正式方法,但最终我决定在包含200张图像的普通名片数据集上训练模型。我已经使用Google OCR从每张图像中提取了文本,并使用了this帖子中描述的工具对其进行了注释。

它就像一种魅力。

答案 1 :(得分:0)

您可以使用 spacy 库中的 ner.add_label(LABEL) 添加您自己的标签,然后使用您的名片训练数据对更新后的模型进行训练。