Nlp 从非结构化文本中提取人名

Nlp 从非结构化文本中提取人名,nlp,text-mining,opennlp,named-entity-recognition,Nlp,Text Mining,Opennlp,Named Entity Recognition,我收集了账单和发票,因此文本中没有上下文(我的意思是它们没有讲故事)。 我想从那些账单中提取人们的名字。 我尝试了OpenNLP,但训练模型的质量不好,因为我没有上下文。 所以第一个问题是:我可以训练模型只包含人名而不包含上下文吗?如果可能的话,你能给我一篇关于如何构建新模型的好文章吗(我读的大部分文章没有解释构建新模型应该采取的步骤) 我有超过100000个人名(名字、姓氏)的数据库名,因此,如果NER系统在我的情况下不起作用(因为没有上下文),那么搜索这些候选人的最佳方法是什么(我指的是用所

我收集了账单和发票,因此文本中没有上下文(我的意思是它们没有讲故事)。 我想从那些账单中提取人们的名字。 我尝试了OpenNLP,但训练模型的质量不好,因为我没有上下文。 所以第一个问题是:我可以训练模型只包含人名而不包含上下文吗?如果可能的话,你能给我一篇关于如何构建新模型的好文章吗(我读的大部分文章没有解释构建新模型应该采取的步骤)

我有超过100000个人名(名字、姓氏)的数据库名,因此,如果NER系统在我的情况下不起作用(因为没有上下文),那么搜索这些候选人的最佳方法是什么(我指的是用所有其他姓氏搜索每个名字?)

谢谢。

关于“上下文”,我想你的意思是你没有完整的句子,也就是说,没有上一个/下一个标记,在这种情况下,你会面临相当不标准的NER。我不知道这个特定问题的可用软件或培训数据,如果您没有发现,您将不得不为培训和/或评估目的构建自己的语料库

您的姓名数据库可能会有很大帮助,具体取决于数据库中实际存在的票据姓名比例。您可能还必须依赖于名称的字符级形态,例如模式(参见[1]中的实例模式)。一旦你有了一个具有特征(存在于数据库中、形态学、票据的其他信息)和解决方案(带注释票据的实际名称)的训练集,使用标准机器学习作为SVM将非常简单(如果你不熟悉这一点,请提问)

其他一些建议:

  • 你很可能也会用到其他账单的信息:公司名称、职位、税务信息等
  • 您也可以有选择地进行操作-如果所有账单都应提及(确切地说?)一个人的姓名,您可以排除所有其他文本(例如金额、税名、头寸等),或者在专用模型中假设,在账单中的所有文本中,只有一个应被猜测为姓名

[1] 命名实体提取的排序算法:Boosting和投票感知器(Michael Collins,2002)

我将从一些正则表达式开始,然后可能使用基于词典的方法(即,大名单名称)对其进行扩充


无论你做什么,它都不是完美的,所以一定要记住这一点。

嗨,你是如何解决这个问题的?我正在尝试做类似的任务,根据一个小的描述来识别对象,并尝试提取属性。描述为自由/小文本,带有。示例:内径20mm,外径30mm的滚珠轴承,。。