gpt4 book ai didi

nlp - NER 使用什么模型来查找简历中的人名?

转载 作者:行者123 更新时间:2023-12-02 00:00:28 39 4
gpt4 key购买 nike

我刚刚开始使用斯坦福 CoreNLP,我想构建一个自定义 NER 模型来查找人员

不幸的是,我没有找到一个好的意大利语ner模型。我需要在简历/简历文档中找到这些实体。

这里的问题是像这样的文档可以有不同的结构,例如我可以有:

案例1

- Name: John

- Surname: Travolta

- Last name: Travolta

- Full name: John Travolta

(so many labels that can represent the entity of the person i need to extract)

案例2

My name is John Travolta and I was born ...

基本上,我可以拥有结构化数据(具有不同的标签)或我应该找到这些实体的上下文。

处理此类文档的最佳方法是什么? maxent 模型可以在这种情况下工作吗?

<小时/>

编辑@vihari-piratla

目前,我采用的策略是找到左边有东西、右边有东西的模式,按照这种方法,我有 80/85% 找到实体。

示例:

Name: John
Birthdate: 2000-01-01

这意味着我在模式的左侧有“Name:”,在右侧有一个\n(直到找到\n)。我可以创建一个很长的类似模式列表。我考虑了模式,因为我不需要“其他”上下文中的名称。

例如,如果用户在工作经历中写下其他姓名,我不需要它们。因为我要找的是个人名字,而不是别人的名字。通过这种方法,我可以减少误报,因为我会查看特定模式而不是“通用名称”。

此方法的一个问题是我有一个很大的模式列表(1 个模式 = 1 个正则表达式),因此如果我添加其他模式,它的扩展性就不会那么好。

如果我可以用所有这些模式训练一个 NER 模型,那就太棒了,但我应该使用大量文档来很好地训练它。

最佳答案

第一个案例可能微不足道,我同意 Ozborn 的建议。

我想对案例2提出一些建议。
斯坦福自然语言处理提供了一个优秀的英文名字识别器,但可能无法找到所有的人名。 OpenNLP 也提供了不错的性能,但比斯坦福大学要差得多。还有许多其他可用于英语的实体识别器。我将在这里重点关注斯坦福自然语言处理(StanfordNLP),这里有一些需要考虑的事情。

  1. 公报。您可以为模型提供名称列表,还可以自定义公报条目的匹配方式。斯坦福大学还提供了一个草率匹配选项,设置时将允许与公报条目进行部分匹配。部分匹配应该与人名配合得很好。

  2. 斯坦福大学建设性地认可实体。如果在文档中识别出像“John Travolta”这样的名字,那么即使它事先不知道“Travolta”,它也会在同一文档中得到“Travolta”。因此,请在文档中附加尽可能多的信息。在熟悉的上下文中添加案例 1 中识别的名称,例如“我的名字是 John Travolta”。如果“John Travolta”被案例 1 中采用的规则所识别。添加虚拟句子可以提高召回率。

制定培训基准是一个非常昂贵且无聊的过程;您应该按照数万个句子的顺序进行注释,以获得良好的测试性能。我确信,即使您有一个基于带注释的训练数据训练的模型,其性能也不会比实现上述两个步骤时更好。

@编辑

由于这个问题的提出者对无监督的基于模式的方法感兴趣,我正在扩展我的答案来讨论这些。

当监督数据不可用时,通常使用一种称为引导模式学习方法的方法。该算法从一小组感兴趣的种子实例(如书籍列表)开始,并输出更多相同类型的实例。
请参阅以下资源了解更多信息

  • SPIED是一个使用上述技术的软件,可供下载和使用。
  • Sonal Gupta获得博士学位关于这个主题,她的论文可用 here .
  • 有关此主题的简要介绍,请参阅这些 slides .

谢谢

关于nlp - NER 使用什么模型来查找简历中的人名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34502517/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com