用于识别印度名字的 NER 模型 [英] NER model to recognize Indian names

查看:21
本文介绍了用于识别印度名字的 NER 模型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我打算使用命名实体识别 (NER) 技术从给定文本中识别人名(其中大部分是印度人名).我已经探索了来自斯坦福 NLP 的基于 CRF 的 NER 模型,但是它在识别印度名字方面并不十分准确.因此我决定通过监督训练创建我自己的自定义 NER 模型.我对如何使用斯坦福 NER CRF 创建自己的 NER 模型有一个很好的想法,但是我想避免创建带有手动注释的大型训练语料库,因为这对个人来说是一项巨大的努力,其次是获得不同的人名来自不同邦的印度也是一个挑战.有人可以提出任何自动化/程序化的方法来准备至少包含 10 万个印度名字的标记训练语料库吗?
我已经研究过 Facebook 和 LinkedIn API,但没有找到从给定位置(例如印度)提取 10 万个用户全名的方法.

I am planning to use Named Entity Recognition (NER) technique to identify person names (most of which are Indian names) from a given text. I have already explored the CRF-based NER model from Stanford NLP, however it is not quite accurate in recognizing Indian names. Hence I decided to create my own custom NER model via supervised training. I have a fair idea of how to create own NER model using the Stanford NER CRF, but creating a large training corpus with manual annotation is something I would like to avoid, as it is a humongous effort for an individual and secondly obtaining diverse people names from different states of India is also a challenge. Could anybody suggest any automation/programmatic way to prepare a labelled training corpus with at least 100k Indian names?
I have already looked into Facebook and LinkedIn API, but did not find a way to extract 100k number of user's full name from a given location (e.g. India).

推荐答案

我最终做了以下工作来创建 NER 模型来识别印度人的名字.这对于任何想要创建自定义 NER 模型来识别非英语人名的人来说可能很有用,因为大多数公开可用的 NER 模型(例如来自斯坦福 NLP 的模型)都是用英语姓名训练的,因此在识别英语时更准确(英国/美国)名称.

I ended up doing the following to create NER model to identify Indian names. This may be useful for anybody looking for creating a custom NER model to recognize non-English person names, since most of the publicly available NER models such as the ones from Stanford NLP were trained with English names and hence are more accurate in identifying English (British/American) names.

  1. 找到一位拥有 Twitter 帐户并在 Twitter 上拥有大量关注者的印度名人(就我而言,我选择了 Sachin Tendulkar).
  2. 用您选择的语言创建一个程序来调用 Twitter REST API(获取关注者/列表)以获取名人的所有关注者的姓名并保存到文件中.我们可以有把握地假设大多数追随者都是印度人.请注意,有一个 API 速率限制(每 15 分钟窗口 30 个请求),因此应该内置程序来处理它.对于我们的案例,我们将该程序开发为每 15 分钟运行一次的 Windows 服务.
  3. 由于某些 Twitter 用户的姓名可能不是有效的人名,因此建议添加一些基于规则的逻辑(如 RegEx)来过滤看似真实的姓名并仅将其添加到文件中.
  4. 生成具有真实姓名的文件后,创建另一个程序来创建训练数据文件,其中包含标记/注释为 PERSON 的这些名称以及注释为 OTHER 的非实体名称.如果您使用的是斯坦福 NER CRF 分类器,该程序应生成一个包含两列的训练 (TSV) 文件 - 一列包含单词(令牌),第二列提及标签.
  5. 以编程方式生成训练语料库后,您可以按照以下链接创建自定义 NER 模型以识别印度姓名:http://nlp.stanford.edu/software/crf-faq.shtml#a

这篇关于用于识别印度名字的 NER 模型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆