一种命名实体识别方法和系统与流程

文档序号:26007575发布日期:2021-07-23 21:26阅读:90来源:国知局
一种命名实体识别方法和系统与流程
本发明涉及自然语言处理
技术领域
,具体地,涉及一种命名实体识别方法和系统。
背景技术
:命名实体识别是自然语言处理的基础任务之一。所谓的命名实体就是人名、机构名、地名以及其它所有以名称为标识的实体。有些命名实体比较通用,例如人名、机构、事件、地址和数字等;有些命名实体和具体的行业和领域密切相关,例如生物学领域的基因名称。命名实体识别的过程就是从文本中把这些实体识别出来,并标记上名称。命名实体的标签是存在语义层次的。比如地名可以再细分为运动场馆、餐饮场所、交通站点等,餐饮场所又可以细分汽车站、火车站等。现有的命名实体识别方法往往忽视了实体标签的层次,在具体实现上也缺乏灵活性和复用性。技术实现要素:针对现有技术中的缺陷,本发明的目的是提供一种命名实体识别方法和系统。根据本发明的第一个方面,提供一种命名实体识别方法,包括如下步骤:接收初始文本;按照抽取规则,抽取所述初始文本中的实体;所述抽取规则为设置n个确定不同层次语义标签的实体抽取单元,其中,n为整数,且n≥2,n个实体抽取单元按如下规则执行:第一个实体抽取单元的执行规则为:针对初始文本抽取实体,获得包含实体词、第一层语义标签的第一信息列表,将初始文本和第一信息列表传递给第二个实体抽取单元;第二个实体抽取单元至第n-1个实体抽取单元的执行规则为:将接收到的文本中的实体词替换为第k-1层语义标签形成新的文本,并针对新的文本抽取实体,获得包含实体词、第k层语义标签的第k信息列表,将新的文本和第k信息列表传递给第k+1个实体抽取单元,其中,k为整数,且2≤k≤n-1;第n个实体抽取单元的执行规则为:将接收到的文本中的实体词替换为第n-1层语义标签形成新的文本,并针对新的文本抽取实体,获得包含实体词、第n层语义标签的第n信息列表;将第一信息列表至第n信息列表进行合并得到最终结果,并输出该最终结果。结合第一方面实施例,在一种可能的实施方式中,每一个实体抽取单元均包括一个或多个实体抽取器,每个实体抽取器均包括一类实体抽取算法。结合第一方面实施例,在一种可能的实施方式中,所述实体抽取算法为基于规则的算法、基于词典的算法、基于模型的算法、基于脚本的算法中的任意一种。结合第一方面实施例,在一种可能的实施方式中,所述实体抽取器抽取实体后,输出包含实体词、语义标签的实体列表,并将实体列表储存在临时变量中。结合第一方面实施例,在一种可能的实施方式中,各个实体抽取单元在其所包含的一个或多个实体抽取器完成实体抽取后,将实体抽取器输出的实体列表进行汇总,得到该实体抽取单元的信息列表。结合第一方面实施例,在一种可能的实施方式中,将实体抽取器输出的实体列表进行汇总时,若一个实体词具有若干个不同的语义标签,则保留概率最高的语义标签。结合第一方面实施例,在一种可能的实施方式中,所述实体抽取器抽取实体后,输出包含实体词、语义标签、实体词位置信息的实体列表。结合第一方面实施例,在一种可能的实施方式中,各个实体抽取单元在其所包含的一个或多个实体抽取器完成实体抽取后,基于实体词位置信息将各个实体抽取器输出的实体列表进行汇总,得到该实体抽取单元的信息列表。结合第一方面实施例,在一种可能的实施方式中,在将第一信息列表至第n信息列表进行合并前,将第二信息列表至第n信息列表的实体词位置信息还原为该实体词在初始文本中的位置信息,再基于实体词的位置信息合并第一信息列表至第n信息列表,得到最终结果。根据本发明的另一个方面,提供一种命名实体识别系统,其特征在于,包括接收模块、处理模块以及输出模块;所述接收模块用于接收初始文本,并将初始文本传输至处理模块;所述处理模块用于抽取实体,处理模块包括n个确定不同层次语义标签的实体抽取单元,其中,n为整数,且n≥2,n个实体抽取单元按如下规则执行:第一个实体抽取单元的执行规则为:针对初始文本抽取实体,获得包含实体词、第一层语义标签的第一信息列表,将初始文本和第一信息列表传递给第二个实体抽取单元;第二个实体抽取单元至第n-1个实体抽取单元的执行规则为:将接收到的文本中的实体词替换为第k-1层语义标签形成新的文本,并针对新的文本抽取实体,获得包含实体词、第k层语义标签的第k信息列表,将新的文本和第k信息列表传递给第k+1个实体抽取单元,其中,k为整数,且2≤k≤n-1;第n个实体抽取单元的执行规则为:将接收到的文本中的实体词替换为第n-1层语义标签形成新的文本,并针对新的文本抽取实体,获得包含实体词、第n层语义标签的第n信息列表;所述输出模块用于将第一信息列表至第n信息列表进行合并得到最终结果,并输出该最终结果。与现有技术相比,本发明具有如下的有益效果:1、本发明提供的命名实体识别方法和系统,通过多个实体抽取单元对命名实体进行识别,识别出的实体具有多层语义标签,为使用者提供了更多的信息,能提升业务应用的效果。2、本发明提供的命名实体识别方法和系统,将实体抽取单元进一步细分为各个实体抽取器,从而规定了实体抽取单元的组织方式、结构和执行过程,通过问题分解降低了实体识别的难度,提升了识别的效果,并且,这种结构化的方式提高了本发明系统的复用性和灵活性。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:图1为本发明命名实体识别方法的流程图;图2为本发明命名实体识别系统的结构框图;图3为本发明命名实体识别方法包含两个实体抽取单元时的执行流程图。具体实施方式下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。实施例1:如图1所示,本发明提供一种命名实体识别方法,包括如下步骤:接收初始文本;按照抽取规则,抽取初始文本中的实体;抽取规则为设置n个确定不同层次语义标签的实体抽取单元,其中,n为整数,且n≥2,n个实体抽取单元按如下规则执行:第一个实体抽取单元的执行规则为:针对初始文本抽取实体,获得包含实体词、第一层语义标签、实体词位置信息的第一信息列表,将初始文本和第一信息列表传递给第二个实体抽取单元;第二个实体抽取单元至第n-1个实体抽取单元的执行规则为:将接收到的文本中的实体词替换为第k-1层语义标签形成新的文本,并针对新的文本抽取实体,获得包含实体词、第k层语义标签、实体词位置信息的第k信息列表,将新的文本和第k信息列表传递给第k+1个实体抽取单元,其中,k为整数,且2≤k≤n-1;第n个实体抽取单元的执行规则为:将接收到的文本中的实体词替换为第n-1层语义标签形成新的文本,并针对新的文本抽取实体,获得包含实体词、第n层语义标签、实体词位置信息的第n信息列表;将第一信息列表至第n信息列表进行合并得到最终结果,并输出该最终结果。就上述抽取规则来说,举例言之,当抽取规则包含2个实体抽取单元时,即n=2时,2个实体抽取单元按如下规则执行:1)第一个实体抽取单元对接收到的初始文本抽取实体,获得包含实体词、第一层语义标签、实体词位置信息的第一信息列表,将初始文本和第一信息列表传递给第二个实体抽取单元;2)第二个实体抽取单元将接收到的文本中的实体词替换为第一层语义标签形成新的文本,并针对新的文本抽取实体,获得包含实体词、第二层语义标签、实体词位置信息的第二信息列表。当抽取规则包含3个实体抽取单元时,即n=3时,3个实体抽取单元按如下规则执行:1)第一个实体抽取单元对接收到的初始文本抽取实体,获得包含实体词、第一层语义标签、实体词位置信息的第一信息列表,将初始文本和第一信息列表传递给第二个实体抽取单元;2)第二个实体抽取单元将接收到的文本中的实体词替换为第一层语义标签形成新的文本,并针对新的文本抽取实体,获得包含实体词、第二层语义标签、实体词位置信息的第二信息列表,将新的文本和第二信息列表传递给第三个实体抽取单元;3)第三个实体抽取单元将接收到的文本中的实体词替换为第二层语义标签形成新的文本,并针对新的文本抽取实体,获得包含实体词、第三层语义标签、实体词位置信息的第三信息列表。当抽取规则包含的实体抽取单元的数量为其他值时,参照以上所举规则执行。进一步地,每个实体抽取单元抽取实体后,均获得一个信息列表,在将第一个实体抽取单元至第n个实体抽取单元获得的第一信息列表至第n信息列表进行合并前,将第二信息列表至第n信息列表的实体词位置信息还原为该实体词在初始文本中的位置信息,再基于实体词的位置信息合并第一信息列表至第n信息列表,得到最终结果。如当n=2时,将第二信息列表的实体词位置信息还原为该实体词在初始文本中的位置信息,再基于实体词的位置信息合并第一信息列表和第二信息列表,得到最终结果;当n=3时,将第二信息列表和第三信息列表的实体词位置信息还原为该实体词在初始文本中的位置信息,再基于实体词的位置信息合并第一信息列表、第二信息列表、第三信息列表,得到最终结果。进一步地,每一个实体抽取单元均包括一个或多个实体抽取器,每个实体抽取器均包括一类实体抽取算法,实体抽取算法可以是基于规则的算法、基于词典的算法、基于模型的算法、基于脚本的算法中的任意一种。举例言之,当实体抽取器基于规则的算法抽取实体,可以采用正则表达式抽取实体,例如使用正则表达式“.*([0-9]*).*”抽取数字;当实体抽取器基于词典的算法抽取实体,可以基于中国城市名称词典的算法抽取输入文本中的城市,具体做法是针对词典中的每个城市,在文本中查找其是否存在;当实体抽取器基于模型的算法抽取实体,可以使用预先训练好的模型例如crf(条件随机场模型)、bert(基于transformers的双向编码器模型)等抽取实体;当实体抽取器基于脚本算法抽取实体,可以基于程序脚本如java脚本从文本中抽取实体。进一步地,实体抽取器基于实体抽取算法抽取实体后,输出包含实体词、语义标签、实体词位置信息的实体列表,其中,实体词的位置信息包括实体词的起始位置信息和结束位置信息。例如,当输入文本为:北京和上海是国际化大都市。实体抽取器抽取的城市实体列表为:实体词语义标签实体词起始位置实体词结束位置北京city01上海city34进一步地,每个实体抽取器抽取实体后,均将实体列表储存在临时变量中。各个实体抽取单元在其所包含的一个或多个实体抽取器完成实体抽取后,将实体抽取器输出的实体列表进行汇总,并基于实体词的位置信息进行合并,得到该实体抽取单元的信息列表。基于实体词的位置信息进行合并时,若一个实体词具有若干个不同的语义标签,则根据概率保留最有可能的语义标签。须说明的是,不同实体抽取单元中的实体抽取器可能相同,但由于不同实体抽取单元的功能不同,其内在包含的实体抽取器功能也便不同。如第一个实体抽取单元中的实体抽取器基于词典的算法识别城市,第二个实体抽取单元中的实体抽取器基于词典的算法识别省会。为更好的理解本发明,以包含两个实体抽取单元的命名实体识别方法为例,对该方法的技术方案具体阐述如下:接收初始文本;按照抽取规则,抽取初始文本中的实体;抽取规则为设置两个确定不同层次语义标签的实体抽取单元,两个实体抽取单元按如下规则执行:1)执行第一个实体抽取单元:a)如果有实体抽取器基于规则的算法抽取实体,则使用基于规则的算法抽取实体,获得包含实体词、第一层语义标签、实体词位置信息的实体列表,将抽取获得的实体列表储存到临时变量中;b)如果有实体抽取器基于词典的算法抽取实体,则使用基于词典的算法抽取实体,获得包含实体词、第一层语义标签、实体词位置信息的实体列表,并将抽取获得的实体列表储存到临时变量中;c)如果有实体抽取器基于模型的算法抽取实体,则使用基于模型的算法抽取实体,获得包含实体词、第一层语义标签、实体词位置信息的实体列表,并将抽取获得的实体列表储存到临时变量中;d)如果有实体抽取器基于脚本的算法抽取实体,则使用基于脚本的算法抽取实体,获得包含实体词、第一层语义标签、实体词位置信息的实体列表,并将抽取获得的实体列表储存到临时变量中;e)将上述实体抽取器获得的实体列表进行汇总,并基于实体词的位置信息进行合并,若一个实体词有多个第一层语义标签,则根据概率保留最有可能的第一层语义标签,从而获得包含实体词、第一层语义标签、实体词位置信息的第一信息列表;f)将初始文本和第一信息列表传递给第二个实体抽取单元;2)执行第二个实体抽取单元:a)进行占位符替换,将初始文本中的实体词替换为第一层语义标签形成新的文本,将新的文本传递至后续的实体抽取器抽取实体;b)如果有实体抽取器基于规则的算法抽取实体,则使用基于规则的算法抽取实体,获得包含实体词、第二层语义标签、实体词位置信息的实体列表,将抽取获得的实体列表储存到临时变量中;c)如果有实体抽取器基于词典的算法抽取实体,则使用基于词典的算法抽取实体,获得包含实体词、第二层语义标签、实体词位置信息的实体列表,并将抽取获得的实体列表储存到临时变量中;d)如果有实体抽取器基于模型的算法抽取实体,则使用基于模型的算法抽取实体,获得包含实体词、第二层语义标签、实体词位置信息的实体列表,并将抽取获得的实体列表储存到临时变量中;e)如果有实体抽取器基于脚本的算法抽取实体,则使用基于脚本的算法抽取实体,获得包含实体词、第二层语义标签、实体词位置信息的实体列表,并将抽取获得的实体列表储存到临时变量中;f)将上述实体抽取器获得的实体列表进行汇总,并基于实体词的位置信息进行合并,若一个实体词有多个第二层语义标签,则根据概率保留最有可能的第二层语义标签,从而获得包含实体词、第二层语义标签、实体词位置信息的第二信息列表;进行反向占位符替换,将第二信息列表的实体词位置信息还原为该实体词在初始文本中的位置信息,再基于实体词的位置信息合并第一信息列表和第二信息列表,得到最终结果,并输出该结果。为更好的理解本实施例,以下以两个具体的应用场景为例,对本实施例的技术方案进行阐述。应用场景一:本应用场景下,命名实体识别方法为从初始文本中抽取两层语义标签的地名实体识别方法,其中,第一层语义标签是城市(city),第二层语义标签是出发地(from)/目的地(to),本方法的抽取规则包含两个实体抽取单元,第一个实体抽取单元包括一个实体抽取器,该实体抽取器基于中国城市名称词典算法抽取实体,第二个实体抽取单元包括一个实体抽取器,该实体抽取器基于crf出发地/目的地类型的算法抽取实体。举例言之,接收初始文本:我家是深圳的,打算买一张从北京到上海的硬座票;按照抽取规则,抽取初始文本中的实体,具体为:1)执行第一个实体抽取单元:a)实体抽取器基于中国城市名称词典的算法抽取实体,获得包括实体词、第一层语义标签、实体词在初始文本中的起始位置信息和结束位置信息的实体列表,因第一个实体抽取单元只包含一个实体抽取器,该实体抽取器获得的实体列表即为第一实体抽取单元获得的第一信息列表,即:实体词第一层语义标签实体词起始位置实体词结束位置深圳city34北京city1314上海city1617b)第一个实体抽取单元将初始文本和第一信息列表传递给第二个实体抽取单元;2)执行第二个实体抽取单元:a)进行占位符替换,将初始文本中的实体词替换为第一层语义标签,形成新的文本:我家是city的,打算买一张从city到city的硬座票;b)实体抽取器基于crf出发地/目的地类型的算法抽取实体,获得包括实体词、第二层语义标签、实体词在新的文中的起始位置信息和结束位置信息的实体列表,因第二实体抽取单元仅包含一个实体抽取器,因此该实体抽取器获得的实体列表即为第二实体抽取单元的第二信息列表,即:实体词第二层语义标签实体词起始位置实体词结束位置cityfrom1518cityto2023进行反向占位替换,将第二信息列表的实体词起始位置替换为初始文本中对应实体词的起始位置,且将第二信息列表中的实体词结束位置替换为初始文本中对应实体词的结束位置;基于实体词的位置信息合并第一信息列表和第二信息列表,获得最终输出的结果为:可以看到,深圳、北京、上海都是城市实体词,并且北京是出发地,上海是目的地。应用场景二:本应用场景下,命名实体识别方法为从初始文本中抽取两层语义标签的数字实体识别方法,其中,第一层语义标签是数字(num),第二层语义标签是天数(day-num)/人数(person-num),本方法的抽取规则包含两个实体抽取单元,第一个实体抽取单元包括一个实体抽取器,该实体抽取器基于正则表达式规则的算法抽取实体,第二个实体抽取单元包括一个实体抽取器,该实体抽取器基于crf天数/人数模型的算法抽取实体。举例言之,接收初始文本:我一个人去上海,在那待三天;按照抽取规则,抽取初始文本中的实体,具体为:1)执行第一个实体抽取单元:a)实体抽取器基于正则表达式规则的算法抽取实体,获得包含实体词、第一层语义标签、实体词在第一文本中的起始位置信息和结束位置信息的实体列表,因第一个实体抽取单元只包含一个实体抽取器,该实体抽取器获得的实体列表即为第一实体抽取单元获得的第一信息列表,即:实体词第一层语义标签实体词起始位置实体词结束位置一num11三num1111b)第一个实体抽取单元将初始文本和第一信息列表传递给第二个实体抽取单元;2)执行第二个实体抽取单元:c)进行占位符替换,将初始文本中的实体词替换为第一层语义标签,形成新的文本:我num个人去上海,在那待num天;d)实体抽取器基于crf天数/人数模型的算法抽取实体,获得包括实体词、第二层语义标签、实体词在新的文中的起始位置信息和结束位置信息的实体列表,因第二实体抽取单元仅包含一个实体抽取器,因此该实体抽取器获得的实体列表即为第二实体抽取单元的第二信息列表,即:实体词第二层语义标签实体词起始位置实体词结束位置numperson-num13numday-num1315进行反向占位替换,将第二信息列表的实体词起始位置替换为初始文本中对应实体词的起始位置,且将第二信息列表中的实体词结束位置替换为初始文本中对应实体词的结束位置;基于实体词的位置信息合并第一信息列表和第二信息列表,获得最终输出的结果为:实体词语义标签实体词起始位置实体词结束位置一num/person-num11三num/day-num1111可以看到,一、三都是数字实体词,并且一代表人数,三代表天数。实施例2:如图2所示,一种命名实体识别系统,包括接收模块、处理模块以及输出模块;接收模块用于接收初始文本,并将初始文本传输至处理模块;处理模块用于抽取实体,处理模块包括n个确定不同层次语义标签的实体抽取单元,其中,n为整数,且n≥2,n个实体抽取单元按如下规则执行:第一个实体抽取单元的执行规则为:针对初始文本抽取实体,获得包含实体词、第一层语义标签的第一信息列表,将初始文本和第一信息列表传递给第二个实体抽取单元;第二个实体抽取单元至第n-1个实体抽取单元的执行规则为:将接收到的文本中的实体词替换为第k-1层语义标签形成新的文本,并针对新的文本抽取实体,获得包含实体词、第k层语义标签的第k信息列表,将新的文本和第k信息列表传递给第k+1个实体抽取单元,其中,k为整数,且2≤k≤n-1;第n个实体抽取单元的执行规则为:将接收到的文本中的实体词替换为第n-1层语义标签形成新的文本,并针对新的文本抽取实体,获得包含实体词、第n层语义标签的第n信息列表;输出模块用于将第一信息列表至第n信息列表进行合并得到最终结果,并输出该最终结果。以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1