基于预训练模型融合词典信息的中文命名实体识别方法与流程

    专利2022-07-08  129


    本发明涉及一种基于预训练模型融合词典信息的中文命名实体识别方法,属于自然语言处理领域。



    背景技术:

    命名实体识别(ner)任务是指识别文本中具有特别意义的实体。它是自然语言处理(nlp)的一个非常基础的任务。是信息抽取、问答系统、句法分析等nlp任务的重要基础工具。

    中文ner又不同于英文ner,中文没有单词边界,所以增加了识别的难度。目前主要有两种方法来实现:一种是先对文本进行分词,再进行词级别的序列标注,但是这种方法会带来分词的错误传递;另一种是基于字符级的序列标注,但这种方法忽略了单词的边界信息。第三种方法是对前两种方法的折衷,将单词的边界信息融合入基于字符的序列标注中。



    技术实现要素:

    针对现有技术的缺陷,本发明提供一种基于预训练模型融合词典信息的中文命名实体识别方法,有效利用预训练模型学习到的丰富的词法、句法信息,并融合词典中单词的边界信息,来提高中文命名实体识别的效果。

    为了解决所述技术问题,本发明采用的技术方案是:一种基于预训练模型融合词典信息的中文命名实体识别方法,其特征在于:包括以下步骤:

    s01)、编码模型采用预训练模型,编码模块的输入为中文字符序列,输出为每个字符对应的隐状态向量,即通过预训练模型获取中文字符序列对应的隐状态向量表示,作为第一表示;

    s02)、单词边界特征构建模块获取字符序列对应的特征向量表示,作为第二表示;

    s03)、将第一表示和第二表示连接后送入解码模块,利用条件随机场建模、维特比算法解码,得到每个字符对应的类型,进而识别出其中实体。

    进一步的,预训练模型采用bert、roberta、ernie模型中的一种。

    进一步的,单词边界特征构建模块根据领域实体词典提取字符序列中的所有实体,进而计算出每个字符对应的特征向量;特征向量的第一维表示是否存在实体以该字符为首字符,如果存在,则第一维的值为1,否则为0;第二维表示是否存在实体以该字符为末尾字符,如果存在,则第二维的值为1,否则为0。

    进一步的,单词边界特征构建模块获取字符序列对应的特征向量表示的过程为:

    s21)、领域实体词典构建,针对某个应用领域,通过包括网上公布数据、实际场景收集、标注在内的途径构建实体词典;

    s22)、潜藏实体提取与边界确定,根据领域实体词典,提取字符序列中所有可能的实体以及每一个实体在字符序列中的起始与结束位置;

    s23)、单词边界特征构建,针对字符序列中的每一个字符,构建一个两维的单词边界特征向量,计算方法是:在所有潜藏实体中,只要有一个实体以当前位置为启示位置,则第一维值为1,否则为0;同样,只要有一个实体以当前位置为结束位置,则第二维值为1,否则为0。

    进一步的,解码模块输入是第一表示和第二表示连接后的向量,然后利用条件随机场算法进行解码,得到每个字符的类别,根据字符类别识别出实体的位置与类别。

    进一步的,字符类别根据bio规则与实体类别来确定。

    本发明的有益效果:本发明基于字符序列建模,避免了先分词再进行命名实体识别造成的错误传播;同时该模型通过引入了单词边界特征,融合了单词的边界信息,为模型提供了更多的信息,从而提高中文命名实体识别的效果。

    附图说明

    图1为实施例1的流程图。

    具体实施方式

    下面结合附图和具体实施例对本发明作进一步的说明。

    实施例1

    本实施例公开一种基于预训练模型融合词典信息的中文命名实体识别方法,如图1所示,包括以下步骤:

    s01)、编码模型采用预训练模型,编码模块的输入为中文字符序列,输出为每个字符对应的隐状态向量,即通过预训练模型获取中文字符序列对应的隐状态向量表示,作为第一表示。

    本实施例中,编码模块采用当前主流的预训练模型,如bert、roberta、ernie等。预训练模型已经学习了丰富的语言学知识,利用预训练模型进行编码可以有效利用在大规模数据集中无监督学习到的自然语言知识。输入字符序列(如:南京市长江大桥)经过编码模块后,每个字符都对应一个隐状态向量。

    s02)、单词边界特征构建模块获取字符序列对应的特征向量表示,作为第二表示;

    本实施例中,单词边界特征构建模块,根据领域实体词典提取字符序列中的所有实体,进而计算出每个字符对应的特征向量。其中特征向量的第一维表示是否存在实体以该字符为首字符,如果存在,则第一维的值为1,否则为0;第二维表示是否存在实体以该字符为末尾字符,如果存在,则第二维的值为1,否则为0。

    具体的,单词边界特征构建模块获取字符序列对应的特征向量表示的过程为:

    s21)、领域实体词典构建,针对某个应用领域,通过包括网上公布数据、实际场景收集、标注在内的途径构建实体词典;

    s22)、潜藏实体提取与边界确定,根据领域实体词典,提取字符序列中所有可能的实体以及每一个实体在字符序列中的起始与结束位置;

    s23)、单词边界特征构建,针对字符序列中的每一个字符,构建一个两维的单词边界特征向量,计算方法是:在所有潜藏实体中,只要有一个实体以当前位置为启示位置,则第一维值为1,否则为0;同样,只要有一个实体以当前位置为结束位置,则第二维值为1,否则为0。

    以字符序列“南京市长江大桥”为例,单词边界特征构建的过程为:单词边界特征构造模块根据领域内实体词典,提取出字符序列中所有的实体,对应“南京市长江大桥”字符序列,其中包含的实体有:“南京”、“南京市”、“市长”、“长江”、“长江大桥”、“大桥”,根据这些实体确定了图中所示的单词边界特征,确定的方法是:上下两行代表两个维度,第一个维度表示如果提取出来的所有实体中存在以该位置字符为首字符的实体,则该位置字符的第一个维度值为1,否则为0;同理,第二个维度表示如果提取出来的所有实体中存在以该位置字符为末尾字符的实体,则该位置字符的第二个维度值为1,否则为0。举例:提取出来的实体中有“南京”、“南京市”以“南”为首字符,所以“南”的第一个维度值为1;但是,没有实体以“南”为末尾字符,所以“南”的第二个维度值为0。

    s03)、将第一表示和第二表示连接后送入解码模块,利用条件随机场建模、维特比算法解码,得到每个字符对应的类型,进而识别出其中实体。

    针对每一个字符将编码模块得到的隐状态向量连接单词边界特征构造模块创建的特征向量得到vi,将整个字符序列对应的{vi,1<i<n,n是字符序列的长度}输入解码模块,利用维特比算法进行解码,得到每个字符的类别。所有字符类别由bio规则结合所有的实体类别确定。其中bio中,b表示实体开始位置,i表示在实体中,o表示不是实体。假设实体类别共三种:机构org、地点loc,则所有的字符类别为b-org、i-org、b-loc、i-loc、o。根据字符的类别就可以确定字符序列中所有实体。

    如图1所示,针对每个字符,将预训练模型输出的隐状态向量和单词边界特征构造模块输出的单词边界特征向量进行拼接,得到对应的特征向量。由每个字符对应的特征向量组成的序列作为解码模块的输入,输出为字符序列的类别,其中包含了实体的起始和结束信息,根据这些类别信息即可提取出实体。

    本实施例所述方法基于字符序列建模,避免了先分词再进行命名实体识别造成的错误传播;同时该模型通过引入了单词边界特征,融合了单词的边界信息,为模型提供了更多的信息。

    以上描述的仅是本发明的基本原理和优选实施例,本领域技术人员根据本发明做出的改进和替换,属于本发明的保护范围。


    技术特征:

    1.一种基于预训练模型融合词典信息的中文命名实体识别方法,其特征在于:包括以下步骤:

    s01)、编码模型采用预训练模型,编码模块的输入为中文字符序列,输出为每个字符对应的隐状态向量,即通过预训练模型获取中文字符序列对应的隐状态向量表示,作为第一表示;

    s02)、单词边界特征构建模块获取字符序列对应的特征向量表示,作为第二表示;

    s03)、将第一表示和第二表示连接后送入解码模块,解码模块利用条件随机场建模、维特比算法解码,得到每个字符对应的类型,进而识别出其中实体。

    2.根据权利要求1所述的基于预训练模型融合词典信息的中文命名实体识别方法,其特征在于:预训练模型采用bert、roberta、ernie模型中的一种。

    3.根据权利要求1所述的基于预训练模型融合词典信息的中文命名实体识别方法,其特征在于:单词边界特征构建模块根据领域实体词典提取字符序列中的所有实体,进而计算出每个字符对应的特征向量;特征向量的第一维表示是否存在实体以该字符为首字符,如果存在,则第一维的值为1,否则为0;第二维表示是否存在实体以该字符为末尾字符,如果存在,则第二维的值为1,否则为0。

    4.根据权利要求1或3所述的基于预训练模型融合词典信息的中文命名实体识别方法,其特征在于:单词边界特征构建模块获取字符序列对应的特征向量表示的过程为:

    s21)、领域实体词典构建,针对某个应用领域,通过包括网上公布数据、实际场景收集、标注在内的途径构建实体词典;

    s22)、潜藏实体提取与边界确定,根据领域实体词典,提取字符序列中所有可能的实体以及每一个实体在字符序列中的起始与结束位置;

    s23)、单词边界特征构建,针对字符序列中的每一个字符,构建一个两维的单词边界特征向量,计算方法是:在所有潜藏实体中,只要有一个实体以当前位置为启示位置,则第一维值为1,否则为0;同样,只要有一个实体以当前位置为结束位置,则第二维值为1,否则为0。

    5.根据权利要求1所述的基于预训练模型融合词典信息的中文命名实体识别方法,其特征在于:解码模块输入是第一表示和第二表示连接后的向量,然后利用条件随机场算法进行解码,得到每个字符的类别,根据字符类别识别出实体的位置与类别。

    6.根据权利要求5所述的基于预训练模型融合词典信息的中文命名实体识别方法,其特征在于:字符类别根据bio规则与实体类别来确定。

    技术总结
    本发明公开一种基于预训练模型融合词典信息的中文命名实体识别方法,本方法采用预训练模型作为编码模型,通过预训练模型获取中文字符序列对应的隐状态向量表示,作为第一表示。单词边界特征构建模块获取字符序列对应的特征向量表示,作为第二表示。将第一表示和第二表示连接后送入解码模块,利用条件随机场建模、维特比算法解码,得到每个字符对应的类型,进而识别出其中实体。本发明基于字符序列建模,避免了先分词再进行命名实体识别造成的错误传播;同时该模型通过引入了单词边界特征,融合了单词的边界信息,为模型提供了更多的信息,从而提高中文命名实体识别的效果。

    技术研发人员:张琨;张汉同;朱锦雷;张传锋
    受保护的技术使用者:神思电子技术股份有限公司
    技术研发日:2020.12.17
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-20015.html

    最新回复(0)