发明内容
本发明的实施例提供一种面向多数据源的社保类实体识别方法及装置,以解决当前的实体识别方案并不能准确进行社保类实体识别的问题。
为达到上述目的,本发明采用如下技术方案:
一种面向多数据源的社保类实体识别方法,包括:
获取原始数据中的待处理语句;
将所述待处理语句进行单字切分,确定待处理语句中的每个文字;
根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列;
根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体;
根据预先设置的社保类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体;
根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,以及预先设置的社保类实体筛选规则,对各候选实体进行筛选,分别形成第一组社保类候选实体和第二组社保类候选实体;
若第一组社保类候选实体和第二组社保类候选实体不相同,根据预先设置的判断策略选择第一组社保类候选实体或第二组社保类候选实体作为所述待处理语句中的社保类实体。
具体的,所述根据预先设置的判断策略选择第一组社保类候选实体或第二组社保类候选实体作为所述待处理语句中的社保类实体,包括:
确定待处理语句在进行术语切分时,是否通过预先设置的切分规则进行切分;
若待处理语句在进行术语切分时,通过预先设置的切分规则进行切分,则选择所述第二组社保类候选实体中的候选实体作为所述待处理语句中的社保类实体;
若待处理语句在进行术语切分时,未通过预先设置的切分规则进行切分,则选择所述第一组社保类候选实体中的候选实体作为所述待处理语句中的社保类实体;
或者,确定来源于相同待处理语句的原始字符串的第一组社保类候选实体和第二组社保类候选实体中,实体个数少,且实体包含的字符数多的一组实体作为所述待处理语句中的社保类实体;
在所述第一组社保类候选实体和第二组社保类候选实体中相对应的实体的实体类型不一致时,选择第二组候选实体中的实体的实体类型作为所述相对应的实体的实体类型。
具体的,所述原始数据包括社保工作中的就业信息数据、医保信息数据、失业信息数据、生育信息数据、工伤信息数据、政策文章数据、社保问答信息数据。
具体的,根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列,包括:
从预先设置的语料库中提取待处理语句中的每个文字的CRF统计特征值;所述预先设置的语料库中记录有原始数据中各语句、各语句中的实体、以及各语句中的实体在各语句中的位置以及实体类别;所述CRF统计特征值包括每个文字在各语句中的分词特征值、词性特征值、字符特征值、上下文特征值以及术语表特征值;
根据每个字在各语句中的CRF统计特征值,确定一训练模型;所述训练模型为:
根据所述训练模型,计算待处理语句中的每个文字的实体标记yj;
将每个文字的实体标记进行组合,形成待处理语句的实体标记序列;其中,x表示所述待处理语句;yj表示待处理语句中j位置对应的文字的实体标记;fi(yj,yj-1,x)表示待处理语句中分词特征i的函数值;λi为模型参数;m表示分词特征的个数;n表示待处理语句中的文字位置个数;Z(x)表示归一化因子;p(y|x)表示文字在待处理语句中的标记概率。
具体的,根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体,包括:
在实体标记序列中确定各文字对应的分词特征值,并根据所述分词特征值确定待处理语句的第一组候选实体。
进一步的,该面向多数据源的社保类实体识别方法,还包括:
在所述待处理语句未在预先设置的语料库中被标注,根据公式:
确定待处理语句中各实体的不确定值;其中,IEk为第k个实体的不确定值;kstart为第k个实体的实体标记的开始位置;kend为第k个实体的实体标记的尾部位置;为待处理语句中s位置的文字对应第j个实体标记的概率;
将待处理语句中不确定值为1的实体与预先设置的社保本体库匹配,若匹配成功,则将匹配成功的实体的实体标记进行保存;
确定待处理语句的预测置信度和字典匹配标记的实体比例;
将预测置信度大于预设置信度阈值和字典匹配标记的实体比例大于预设比例阈值的待处理语句加入到所述语料库中,以进行语料库更新;
其中,所述预测置信度为待处理语句中各文字对应的标记概率的乘积;
所述字典匹配标记的实体比例为:其中,C为待处理语句中预测出的实体总数中出现在预设字典中的实体数;B为待处理语句中预测出的实体总数。
具体的,根据预先设置的社保类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体,包括:
将待处理语句中的标点符号转换为半角,并将英文字母统一为大写英文字母,形成预处理后的待处理语句;
将预处理后的待处理语句采用双向最大匹配原则与预先设置的社保本体数据库进行匹配,将预处理后的待处理语句中与社保本体数据库中的标准术语名称或同义词相匹配的字符串作为初步实体抽出,并将所述标准术语名称或同义词所对应的术语类型作为所述初步实体的实体类型;
将预处理后的待处理语句中的各初步实体作为第二组候选实体。
具体的,根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,以及预先设置的社保类实体筛选规则,对各候选实体进行筛选,分别形成第一组社保类候选实体和第二组社保类候选实体,包括:
判断第一组候选实体和第二组候选实体中各候选实体的末尾字符是否为预先设置的非社保术语字符;
若各候选实体的末尾字符为预先设置的非社保术语字符,将所述候选实体舍弃。
一种面向多数据源的社保类实体识别装置,包括:
待处理语句获取单元,用于获取原始数据中的待处理语句;
单字切分单元,用于将所述待处理语句进行单字切分,确定待处理语句中的每个文字;
实体标记序列确定单元,用于根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列;
第一组候选实体确定单元,用于根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体;
第二组候选实体确定单元,用于根据预先设置的社保类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体;
候选实体筛选单元,用于根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,以及预先设置的社保类实体筛选规则,对各候选实体进行筛选,分别形成第一组社保类候选实体和第二组社保类候选实体;
社保类实体结果确定单元,用于在第一组社保类候选实体和第二组社保类候选实体不相同时,根据预先设置的判断策略选择第一组社保类候选实体或第二组社保类候选实体作为所述待处理语句中的社保类实体。
具体的,所述社保类实体结果确定单元,包括:
术语切分判断模块,用于确定待处理语句在进行术语切分时,是否通过预先设置的切分规则进行切分;
社保类实体结果确定模块,用于在待处理语句在进行术语切分时,通过预先设置的切分规则进行切分,则选择所述第二组社保类候选实体中的候选实体作为所述待处理语句中的社保类实体;在待处理语句在进行术语切分时,未通过预先设置的切分规则进行切分,则选择所述第一组社保类候选实体中的候选实体作为所述待处理语句中的社保类实体;
所述社保类实体结果确定模块,还用于确定来源于相同待处理语句的原始字符串的第一组社保类候选实体和第二组社保类候选实体中,实体个数少,且实体包含的字符数多的一组实体作为所述待处理语句中的社保类实体;
实体类型确定模块,用于在所述第一组社保类候选实体和第二组社保类候选实体中相对应的实体的实体类型不一致时,选择第二组候选实体中的实体的实体类型作为所述相对应的实体的实体类型。
具体的,所述待处理语句获取单元中的原始数据包括社保工作中的就业信息数据、医保信息数据、失业信息数据、生育信息数据、工伤信息数据、政策文章数据、社保问答信息数据。
进一步的,所述实体标记序列确定单元,包括:
CRF统计特征值提取模块,用于从预先设置的语料库中提取待处理语句中的每个文字的CRF统计特征值;所述预先设置的语料库中记录有原始数据中各语句、各语句中的实体、以及各语句中的实体在各语句中的位置以及实体类别;所述CRF统计特征值包括每个文字在各语句中的分词特征值、词性特征值、字符特征值、上下文特征值以及术语表特征值;
训练模型确定模块,用于根据每个字在各语句中的CRF统计特征值,确定一训练模型;所述训练模型为:
实体标记计算模块,用于根据所述训练模型,计算待处理语句中的每个文字的实体标记yj;
实体标记序列确定模块,用于将每个文字的实体标记进行组合,形成待处理语句的实体标记序列;其中,x表示所述待处理语句;yj表示待处理语句中j位置对应的文字的实体标记;fi(yj,yj-1,x)表示待处理语句中分词特征i的函数值;λi为模型参数;m表示分词特征的个数;n表示待处理语句中的文字位置个数;Z(x)表示归一化因子;p(y|x)表示文字在待处理语句中的标记概率。
此外,所述第一组候选实体确定单元,具体用于:
在实体标记序列中确定各文字对应的分词特征值,并根据所述分词特征值确定待处理语句的第一组候选实体。
进一步的,所述的面向多数据源的社保类实体识别装置,还包括语料库更新单元,用于:
在所述待处理语句未在预先设置的语料库中被标注,根据公式:
确定待处理语句中各实体的不确定值;其中,IEk为第k个实体的不确定值;kstart为第k个实体的实体标记的开始位置;kend为第k个实体的实体标记的尾部位置;为待处理语句中s位置的文字对应第j个实体标记的概率;
将待处理语句中不确定值为1的实体与预先设置的社保本体库匹配,在匹配成功时,将匹配成功的实体的实体标记进行保存;
确定待处理语句的预测置信度和字典匹配标记的实体比例;
将预测置信度大于预设置信度阈值和字典匹配标记的实体比例大于预设比例阈值的待处理语句加入到所述语料库中,以进行语料库更新;
其中,所述预测置信度为待处理语句中各文字对应的标记概率的乘积;
所述字典匹配标记的实体比例为:其中,C为待处理语句中预测出的实体总数中出现在预设字典中的实体数;B为待处理语句中预测出的实体总数。
此外,所述第二组候选实体确定单元,包括:
预处理模块,用于将待处理语句中的标点符号转换为半角,并将英文字母统一为大写英文字母,形成预处理后的待处理语句;
社保本体库匹配模块,用于将预处理后的待处理语句采用双向最大匹配原则与预先设置的社保本体数据库进行匹配,将预处理后的待处理语句中与社保本体数据库中的标准术语名称或同义词相匹配的字符串作为初步实体抽出,并将所述标准术语名称或同义词所对应的术语类型作为所述初步实体的实体类型;
第二组候选实体确定模块,用于将预处理后的待处理语句中的各初步实体作为第二组候选实体。
此外,所述候选实体筛选单元,包括:
非社保术语字符判断模块,用于判断第一组候选实体和第二组候选实体中各候选实体的末尾字符是否为预先设置的非社保术语字符;
候选实体舍弃模块,用于在各候选实体的末尾字符为预先设置的非社保术语字符时,将所述候选实体舍弃。
本发明实施例提供的一种面向多数据源的社保类实体识别方法及装置,首先,获取原始数据中的待处理语句;将所述待处理语句进行单字切分,确定待处理语句中的每个文字;根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列;根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体;然后,根据预先设置的社保类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体;根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,以及预先设置的社保类实体筛选规则,对各候选实体进行筛选,分别形成第一组社保类候选实体和第二组社保类候选实体;若第一组社保类候选实体和第二组社保类候选实体不相同,根据预先设置的判断策略选择第一组社保类候选实体或第二组社保类候选实体作为所述待处理语句中的社保类实体。本发明将条件随机场CRF统计机器学习方法与术语切分方法相结合,能够自动识别社保类实体,克服了当前的实体识别的数据源较为单一,实体识别不准确的问题。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供一种面向多数据源的社保类实体识别方法,包括:
步骤101、获取原始数据中的待处理语句。
步骤102、将所述待处理语句进行单字切分,确定待处理语句中的每个文字。
步骤103、根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列。
步骤104、根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体。
步骤105、根据预先设置的社保类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体。
步骤106、根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,以及预先设置的社保类实体筛选规则,对各候选实体进行筛选,分别形成第一组社保类候选实体和第二组社保类候选实体。
步骤107、若第一组社保类候选实体和第二组社保类候选实体不相同,根据预先设置的判断策略选择第一组社保类候选实体或第二组社保类候选实体作为所述待处理语句中的社保类实体。
本发明实施例提供的一种面向多数据源的社保类实体识别方法,首先,获取原始数据中的待处理语句;将所述待处理语句进行单字切分,确定待处理语句中的每个文字;根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列;根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体;然后,根据预先设置的社保类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体;根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,以及预先设置的社保类实体筛选规则,对各候选实体进行筛选,分别形成第一组社保类候选实体和第二组社保类候选实体;若第一组社保类候选实体和第二组社保类候选实体不相同,根据预先设置的判断策略选择第一组社保类候选实体或第二组社保类候选实体作为所述待处理语句中的社保类实体。本发明将条件随机场CRF统计机器学习方法与术语切分方法相结合,能够自动识别社保类实体,克服了当前的实体识别的数据源较为单一,实体识别不准确的问题。
为了使本领域的技术人员更好的了解本发明,下面结合具体的实例来说明本发明。如图2和图3所示(其中,图2为一种面向多数据源的社保类实体识别方法的A部分,图3为一种面向多数据源的社保类实体识别方法的B部分,此处分为A、B部分是由于本发明实施例的步骤较多,并非表示实际意义上的区别,A部分与B部分形成整个步骤201至步骤217,其中图2示出了步骤201至步骤211,图3示出了步骤212至步骤217。),本发明实施例提供一种面向多数据源的社保类实体识别方法,包括:
步骤201、获取原始数据中的待处理语句。
具体的,所述原始数据包括社保工作中的就业信息数据、医保信息数据、失业信息数据、生育信息数据、工伤信息数据、政策文章数据、社保问答信息数据等,但不仅局限于此。
步骤202、将所述待处理语句进行单字切分,确定待处理语句中的每个文字。
例如,待处理语句为“从工伤保险基金按月支付伤残津贴”,则单字切分后,每个文字为:“从”“工”“伤”“保”“险”“基”“金”“按”“月”“支”“付”“伤”“残”“津”“贴”。
步骤203、从预先设置的语料库中提取待处理语句中的每个文字的CRF统计特征值。
所述预先设置的语料库中记录有原始数据中各语句、各语句中的实体、以及各语句中的实体在各语句中的位置以及实体类别;所述CRF统计特征值包括每个文字在各语句中的分词特征值、词性特征值、字符特征值、上下文特征值以及术语表特征值。
对于预先设置的语料库可以由人为预先标注,例如语句:
“从工伤保险基金按月支付伤残津贴”
则对于社保类实体,可以标注出:
c=工伤保险P=1:1 1:4 t=社保
c=按月支付P=1:7 1:10 t=社保
c=伤残津贴P=1:11 1:14 t=社保
其中,c表示社保类实体,P表示社保类实体所在语料中句子的行号及句子中字符位置,t表示社保实体类别。
对于CRF统计特征值,例如语句“2015年城镇医保缴费时间”,其实体标记序列为“OOOOOBIIEOOOO”。例如,对于“城”字,CRF统计特征说明如下表1所示:
表1:
步骤204、根据每个字在各语句中的CRF统计特征值,确定一训练模型。
其中,所述训练模型为:
步骤205、根据所述训练模型,计算待处理语句中的每个文字的实体标记yj。
其中,x表示所述待处理语句;yj表示待处理语句中j位置对应的文字的实体标记;fi(yj,yj-1,x)表示待处理语句中分词特征i的函数值;λi为模型参数,训练得到的模型参数可使句子的训练模型p(y|x)的和达到最大;m表示分词特征的个数;n表示待处理语句中的文字位置个数;Z(x)表示归一化因子;p(y|x)表示文字在待处理语句中的标记概率。
对于fi(yj,yj-1,x),其表示若yj、yj-1、x均出现在语料中,则fi(yj,yj-1,x)=1,否则为0。
步骤206、将每个文字的实体标记进行组合,形成待处理语句的实体标记序列。
例如语句“2015年城镇医保缴费时间”,其实体标记序列为“OOOOOBIIEOOOO”。
步骤207、在实体标记序列中确定各文字对应的分词特征值,并根据所述分词特征值确定待处理语句的第一组候选实体。
例如,对于“2015年城镇医保缴费时间”,其实体标记序列为“OOOOOBIIEOOOO”,因此,可识别出第一组候选实体为“城镇医保”。
步骤208、将待处理语句中的标点符号转换为半角,并将英文字母统一为大写英文字母。
步骤209、将预处理后的待处理语句采用双向最大匹配原则与预先设置的社保本体数据库进行匹配,将预处理后的待处理语句中与社保本体数据库中的标准术语名称或同义词相匹配的字符串作为初步实体抽出,并将所述标准术语名称或同义词所对应的术语类型作为所述初步实体的实体类型。
此处的预先设置的社保本体数据库可以是在《中华人民共和国国家标准社会保险术语第4部分:医疗保险(征求意见稿)》基础上扩建而成的。例如原始数据“补缴上医保医保能不能即时享受医保待遇”,通过此处步骤208抽出的结果为“补缴【社保】;医保【社保】;医保待遇【社保】”
例如下表2所示:
标准术语 |
同义词 |
术语类型 |
起付标准 |
起伏线;起付线 |
社保 |
甲类目录药 |
甲类药 |
社保 |
城乡居保 |
城居保 |
社保 |
大病医保 |
|
社保 |
医疗保险 |
医保 |
社保 |
补缴 |
|
社保 |
医保待遇 |
|
社保 |
步骤210、将预处理后的待处理语句中的各初步实体作为第二组候选实体。
步骤211、判断第一组候选实体和第二组候选实体中各候选实体的末尾字符是否为预先设置的非社保术语字符。
该预先设置的非社保术语字符可以是例如“药、手术、术、检查”等。
步骤212、若各候选实体的末尾字符为预先设置的非社保术语字符,将所述候选实体舍弃。
在步骤212之后,执行步骤213或者步骤216。
步骤213、在第一组社保类候选实体和第二组社保类候选实体不相同时,确定待处理语句在进行术语切分时,是否通过预先设置的切分规则进行切分。
此处,即是否通过上述步骤209的处理。
在步骤213之后,执行步骤214或者步骤215。
步骤214、若待处理语句在进行术语切分时,通过预先设置的切分规则进行切分,则选择所述第二组社保类候选实体中的候选实体作为所述待处理语句中的社保类实体。
步骤215、若待处理语句在进行术语切分时,未通过预先设置的切分规则进行切分,则选择所述第一组社保类候选实体中的候选实体作为所述待处理语句中的社保类实体。
步骤216、在第一组社保类候选实体和第二组社保类候选实体不相同时,确定来源于相同待处理语句的原始字符串的第一组社保类候选实体和第二组社保类候选实体中,实体个数少,且实体包含的字符数多的一组实体作为所述待处理语句中的社保类实体。
例如,原始数据为“城职欠费补缴费的问题”。
第一组社保类候选实体为“城职【社保】;欠费【社保】;补缴费【社保】”;
第二组社保类候选实体为“城职【社保】;欠费【社保】;补缴【社保】”;
则,最终结果为“城职【社保】;欠费【社保】;补缴费【社保】”。
在步骤214、215和步骤216之后,执行步骤217。
步骤217、在所述第一组社保类候选实体和第二组社保类候选实体中相对应的实体的实体类型不一致时,选择第二组候选实体中的实体的实体类型作为所述相对应的实体的实体类型。
例如,原始数据为“甲类药报销比例是多少?”。
第一组社保类候选实体为“甲类药【药品】;报销比例【社保】”;
第二组社保类候选实体为“甲类药【社保】;报销比例【社保】”;
则,最终结果为“甲类药【社保】;报销比例【社保】”。
通过上述步骤201至步骤217,最终可以得到社保类实体识别结果。
另外,为了实现对语料库进行更新,可以由人工总结发现新的句型特征,并人工标注加入到语料库中;另外,还可以在所述待处理语句未在预先设置的语料库中被标注,根据公式:确定待处理语句中各实体的不确定值;其中,IEk为第k个实体的不确定值;kstart为第k个实体的实体标记的开始位置;kend为第k个实体的实体标记的尾部位置;为待处理语句中s位置的文字对应第j个实体标记的概率。
例如,“2015年城镇医保缴费时间”,实体标记序列为“OOOOOBIIEOOOO”,位置序列为“0 1 2 3 4 5 6 7 8 9 10 11 12”,看出实体“城镇医保”,位置为“5 6 7 8”,因此,Kstart为5,Kend为8。
将待处理语句中不确定值为1的实体与预先设置的社保本体库匹配,若匹配成功,则将匹配成功的实体的实体标记进行保存。
确定待处理语句的预测置信度和字典匹配标记的实体比例。
将预测置信度大于预设置信度阈值和字典匹配标记的实体比例大于预设比例阈值的待处理语句加入到所述语料库中,以进行语料库更新。
其中,所述预测置信度为待处理语句中各文字对应的标记概率的乘积。
所述字典匹配标记的实体比例为:其中,C为待处理语句中预测出的实体总数中出现在预设字典中的实体数;B为待处理语句中预测出的实体总数。
可见,通过语料库的更新,可以实现实体识别所需语料数据利用半监督自学习方法,实现语料库不断丰富,解决了语料库数目不足、不完整的问题。
本发明实施例提供的一种面向多数据源的社保类实体识别方法,首先,获取原始数据中的待处理语句;将所述待处理语句进行单字切分,确定待处理语句中的每个文字;根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列;根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体;然后,根据预先设置的社保类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体;根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,以及预先设置的社保类实体筛选规则,对各候选实体进行筛选,分别形成第一组社保类候选实体和第二组社保类候选实体;若第一组社保类候选实体和第二组社保类候选实体不相同,根据预先设置的判断策略选择第一组社保类候选实体或第二组社保类候选实体作为所述待处理语句中的社保类实体。本发明将条件随机场CRF统计机器学习方法与术语切分方法相结合,能够自动识别社保类实体,克服了当前的实体识别的数据源较为单一,实体识别不准确的问题。
对应于上述图1、图2和图3所示的方法实施例,如图4所示,本发明实施例提供一种面向多数据源的社保类实体识别装置,包括:
待处理语句获取单元31,用于获取原始数据中的待处理语句。
单字切分单元32,用于将所述待处理语句进行单字切分,确定待处理语句中的每个文字。
实体标记序列确定单元33,用于根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列。
第一组候选实体确定单元34,用于根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体。
第二组候选实体确定单元35,用于根据预先设置的社保类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体。
候选实体筛选单元36,用于根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,以及预先设置的社保类实体筛选规则,对各候选实体进行筛选,分别形成第一组社保类候选实体和第二组社保类候选实体。
社保类实体结果确定单元37,用于在第一组社保类候选实体和第二组社保类候选实体不相同时,根据预先设置的判断策略选择第一组社保类候选实体或第二组社保类候选实体作为所述待处理语句中的社保类实体。
具体的,如图5所示,所述社保类实体结果确定单元37,包括:
术语切分判断模块371,用于确定待处理语句在进行术语切分时,是否通过预先设置的切分规则进行切分。
社保类实体结果确定模块372,用于在待处理语句在进行术语切分时,通过预先设置的切分规则进行切分,则选择所述第二组社保类候选实体中的候选实体作为所述待处理语句中的社保类实体;在待处理语句在进行术语切分时,未通过预先设置的切分规则进行切分,则选择所述第一组社保类候选实体中的候选实体作为所述待处理语句中的社保类实体。
所述社保类实体结果确定模块372,还用于确定来源于相同待处理语句的原始字符串的第一组社保类候选实体和第二组社保类候选实体中,实体个数少,且实体包含的字符数多的一组实体作为所述待处理语句中的社保类实体。
实体类型确定模块373,用于在所述第一组社保类候选实体和第二组社保类候选实体中相对应的实体的实体类型不一致时,选择第二组候选实体中的实体的实体类型作为所述相对应的实体的实体类型。
具体的,所述待处理语句获取单元31中的原始数据社保工作中的就业信息数据、医保信息数据、失业信息数据、生育信息数据、工伤信息数据、政策文章数据、社保问答信息数据。
进一步的,如图5所示,所述实体标记序列确定单元33,包括:
CRF统计特征值提取模块331,用于从预先设置的语料库中提取待处理语句中的每个文字的CRF统计特征值;所述预先设置的语料库中记录有原始数据中各语句、各语句中的实体、以及各语句中的实体在各语句中的位置以及实体类别;所述CRF统计特征值包括每个文字在各语句中的分词特征值、词性特征值、字符特征值、上下文特征值以及术语表特征值。
训练模型确定模块332,用于根据每个字在各语句中的CRF统计特征值,确定一训练模型;所述训练模型为:
实体标记计算模块333,用于根据所述训练模型,计算待处理语句中的每个文字的实体标记yj。
实体标记序列确定模块334,用于将每个文字的实体标记进行组合,形成待处理语句的实体标记序列;其中,x表示所述待处理语句;yj表示待处理语句中j位置对应的文字的实体标记;fi(yj,yj-1,x)表示待处理语句中分词特征i的函数值;λi为模型参数;m表示分词特征的个数;n表示待处理语句中的文字位置个数;Z(x)表示归一化因子;p(y|x)表示文字在待处理语句中的标记概率。
此外,所述第一组候选实体确定单元34,具体用于:
在实体标记序列中确定各文字对应的分词特征值,并根据所述分词特征值确定待处理语句的第一组候选实体。
进一步的,如图5所示,所述的面向多数据源的社保类实体识别装置,还包括语料库更新单元38用于:
在所述待处理语句未在预先设置的语料库中被标注,根据公式:
确定待处理语句中各实体的不确定值;其中,IEk为第k个实体的不确定值;kstart为第k个实体的实体标记的开始位置;kend为第k个实体的实体标记的尾部位置;为待处理语句中s位置的文字对应第j个实体标记的概率。
将待处理语句中不确定值为1的实体与预先设置的社保本体库匹配,在匹配成功时,将匹配成功的实体的实体标记进行保存。
确定待处理语句的预测置信度和字典匹配标记的实体比例。
将预测置信度大于预设置信度阈值和字典匹配标记的实体比例大于预设比例阈值的待处理语句加入到所述语料库中,以进行语料库更新。
其中,所述预测置信度为待处理语句中各文字对应的标记概率的乘积。
所述字典匹配标记的实体比例为:其中,C为待处理语句中预测出的实体总数中出现在预设字典中的实体数;B为待处理语句中预测出的实体总数。
此外,如图5所示,所述第二组候选实体确定单元35,包括:
预处理模块351,用于将待处理语句中的标点符号转换为半角,并将英文字母统一为大写英文字母,形成预处理后的待处理语句。
社保本体库匹配模块352,用于将预处理后的待处理语句采用双向最大匹配原则与预先设置的社保本体数据库进行匹配,将预处理后的待处理语句中与社保本体数据库中的标准术语名称或同义词相匹配的字符串作为初步实体抽出,并将所述标准术语名称或同义词所对应的术语类型作为所述初步实体的实体类型。
第二组候选实体确定模块353,用于将预处理后的待处理语句中的各初步实体作为第二组候选实体。
此外,如图5所示,所述候选实体筛选单元36,包括:
非社保术语字符判断模块361,用于判断第一组候选实体和第二组候选实体中各候选实体的末尾字符是否为预先设置的非社保术语字符。
候选实体舍弃模块362,用于在各候选实体的末尾字符为预先设置的非社保术语字符时,将所述候选实体舍弃。
值得说明的是,本发明实施例提供的一种面向多数据源的社保类实体识别装置的具体实现方式可以参见上述的方法实施例,此处不再赘述。
本发明实施例提供的一种面向多数据源的社保类实体识别装置,首先,获取原始数据中的待处理语句;将所述待处理语句进行单字切分,确定待处理语句中的每个文字;根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列;根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体;然后,根据预先设置的社保类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体;根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,以及预先设置的社保类实体筛选规则,对各候选实体进行筛选,分别形成第一组社保类候选实体和第二组社保类候选实体;若第一组社保类候选实体和第二组社保类候选实体不相同,根据预先设置的判断策略选择第一组社保类候选实体或第二组社保类候选实体作为所述待处理语句中的社保类实体。本发明将条件随机场CRF统计机器学习方法与术语切分方法相结合,能够自动识别社保类实体,克服了当前的实体识别的数据源较为单一,实体识别不准确的问题。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。