首页 > > > 6. 命名实体识别应用
NER(实体命名识别)
NER是近几年来一种应用得比较多的NLP技术,是Named Entity Recognition的缩写,中文翻译成“命名实体识别”。这不是一个算法的名字,而是一类应用的名字。NER要做的事情比较单纯,就是希望能够从一篇文章中找到那些需要找到的词汇。给大家看个例子一下就明白了。
比如,输入一篇文章片段是这样的:
“今天,北京下了大雪。我和王小明一起去了北京邮电大学参加社团活动。原定去年3月13号的活动,被延迟到了今天,也是有很多原因的。”
通过NER应该识别出来些什么呢?比如有可能是这样的识别结果:
北京:地名;
王小明:人名;
北京邮电大学:组织机构名;
3月13号:日期”
从这个简单的例子里面我们只想让大家知道,NER就是做这种事情的,就是把某些我们关心的关键词汇或信息识别出来。当然喽,要识别出什么样的内容完全是我们的自由,完全取决于我们的需求。比如,我们可以让模型机器人只识别地名,或者只识别人名和时间,或者只识别电话号码,这都是可以的。
应用场景
如果这种技术可以实现的话,有什么应用可以用它来完成吗?当然太有了,比如一些关键信息的抽取工作就可以做了。
比如,在一篇个人简历中,能不能快速把这个人的姓名、电话号码、学历、毕业院校这些关键信息抽取出来?当然可以。这样就可以把一篇冗长的,没有结构的简历变成简短的,只有关键信息的结构化数据。如此一来,进一步的针对简历的数据分析做起来就方便多了。
再比如,从大量的文档中,能不能抽取出里面的名词、动词、形容词,句子里的主语、谓语、宾语。这样就可以做更深一层的知识图谱。知识图谱是比较复杂的,我们后面的章节会专门介绍。
其它方面的应用应该也还是有的,我相信在不同的行业,不同的企业里,由于有不同的业务场景,一定有一些其它的更为具象的需求。但总之,NER的目的就是为了在一篇文档中识别出那些你想要识别的内容(词汇或者短语等)来。
NER方法
NER既然是一类方案,那必然有多种实现方式。
也确实,NER这种东西说起来很高大上,但是落地起来确实有很多取巧的办法。我们就举个最普通的例子。比如,你能不能用很简单的方法从一段文字中找到所有的手机号码?你甚至不需要任何的AI知识就能搞定。
最简单的当然就是用类似正则匹配的方法就可以的,因为像手机号码这样的实体是具有非常明显的特征的。什么特征呢?比如一共11位连续数字且1开头,或者由XXX-XXXX-XXXX这样的数字格式组成。如果你确实在文段中发现了这样特征的字符,那十有八九就是手机号码。
再比如像电子邮件也是很容易被识别出来的一类命名实体。一个“@”,前面是英文和数字的字符串,抑或掺杂一些英文符号,后面跟着一个域名。这就是电子邮件的特征,你通过简单的正则匹配确实很容易找到它们。当然,正确率如何是另一个小问题,可能确实有个别有个性的电子邮件识别不出来。但是你也同样不用纠结,因为凡是这类不能识别出来,但是又非常有必要识别出来的东西,我们都可以通过不断的迭代来进行完善的。
NER目前在业界比较流行的方法是用规则结合深度学习的方法来做。规则大概就是前面说的这种基于字符串的过滤和正则匹配,深度学习的方法也是有的,我们本章也会做个介绍,大家参考参考。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69954080/viewspace-3159364/ ,如需转载,请注明出处,否则将追究法律责任。