面向多数据源的药品类实体识别方法及装置转让专利

申请号 : CN201710101841.5

文献号 : CN106919794B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 黄玉丽李雪莉关毅

申请人 : 黑龙江特士信息技术有限公司哈尔滨工业大学

摘要 :

本发明提供了一种面向多数据源的药品类实体识别方法及装置,涉及医疗实体识别技术领域。方法包括:获取原始数据中的待处理语句;将待处理语句进行单字切分,确定待处理语句中的每个文字;根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列;根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体;根据预先设置的药品类术语切分策略,对待处理语句进行术语切分,确定第二组候选实体;对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候选实体;根据预先设置的判断策略从第一组药品类候选实体和第二组药品类候选实体中确定药品类实体结果。

权利要求 :

1.一种面向多数据源的药品类实体识别方法,其特征在于,包括:

获取原始数据中的待处理语句;

将所述待处理语句进行单字切分,确定待处理语句中的每个文字;

根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列;

根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体;

根据预先设置的药品类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体;

根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候选实体;

若第一组药品类候选实体和第二组药品类候选实体不相同,根据预先设置的判断策略从第一组药品类候选实体和第二组药品类候选实体中确定药品类实体结果;

所述根据预先设置的判断策略从第一组药品类候选实体和第二组药品类候选实体中确定药品类实体结果,包括:确定待处理语句在进行术语切分时,是否通过预先设置的切分规则进行切分;

若待处理语句在进行术语切分时,通过预先设置的切分规则进行切分,则选择所述第二组药品类候选实体中的候选实体作为药品类实体结果;

若待处理语句在进行术语切分时,未通过预先设置的切分规则进行切分,则选择所述第一组药品类候选实体中的候选实体作为药品类实体结果;

或者,确定来源于相同待处理语句的原始字符串的第一组药品类候选实体和第二组药品类候选实体中,实体个数少,且实体包含的字符数多的一组实体作为药品类实体结果;

根据预先设置的药品类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体,包括:将待处理语句中的标点符号转换为半角,并将英文字母统一为大写英文字母;

调用预先设置的非医学术语表,检查待处理语句中的原始字符串是否存在非医学术语表中的术语,并将待处理语句中存在的非医学术语表中的术语删除,形成预处理后的待处理语句;

将预处理后的待处理语句采用逆向最大匹配原则与预先设置的药品规格数据库和包装规格数据库进行匹配,将从药品规格数据库中匹配到的待处理语句的字符串确定为规格实体,将从包装规格数据库中匹配到的待处理语句的字符串确定为包装规格实体;

或者,识别预处理后的待处理语句中的数字组合;判断预处理后的待处理语句中所述数字组合后的字符串是否为计量单位;若预处理后的待处理语句中所述数字组合后的字符串为计量单位,则根据计量单位类型,将所述数字组合和计量单位作为整体抽出,形成规格实体或者包装规格实体;

将预处理后的待处理语句中规格实体和包装规格实体之外的其他字符串,采用逆向最大匹配原则与预先设置的药品名称数据库、剂型数据库以及包材数据库进行匹配;将从药品名称数据库中匹配到的,且对应药品名称数据库中的词语类型为产品名的待处理语句的字符串确定为药品产品名实体;将从药品名称数据库中匹配到的,且对应药品名称数据库中的词语类型为通用名的待处理语句的字符串确定为药品通用名实体;将从药品名称数据库中匹配到的,且对应药品名称数据库中的词语类型为商品名的待处理语句的字符串确定为药品商品名实体;将从剂型数据库中匹配到的待处理语句的字符串确定为剂型实体;将从包材数据库中匹配到的待处理语句的字符串确定为包材实体;

根据一预先设置的酸根碱根数据表,在预处理后的待处理语句中确定切分出的药品通用名实体或药品产品名实体之前是否存在分别与药品通用名实体或药品产品名实体连续的酸根词;并在预处理后的待处理语句中确定切分出的药品通用名实体或药品产品名实体之后是否存在分别与药品通用名实体或药品产品名实体连续的碱根词;

将与药品通用名实体或药品产品名实体连续的酸根词抽出,并加入到其对应的药品通用名实体或药品产品名实体中,且实体类型不变;将与药品通用名实体或药品产品名实体连续的碱根词抽出,并加入到其对应的药品通用名实体或药品产品名实体中,且实体类型不变;

若在预处理后的待处理语句中药品通用名实体与剂型实体相邻,则将药品通用名实体与剂型实体作为整体抽出,形成药品产品名实体;

若在预处理后的待处理语句中药品通用名实体之后与预先设置的表示剂型的单字相邻,则将药品通用名实体与所述表示剂型的单字作为整体抽出,形成药品产品名实体;

判断预处理后的待处理语句中是否存在药品名相关实体;所述药品名相关实体包括药品通用名实体、药品产品名实体和药品商品名实体;

若预处理后的待处理语句中存在药品名相关实体,则将预处理后的待处理语句中抽取出的规格实体、包装规格实体、剂型实体、包材实体中的一个或多个实体与所述药品名相关实体作为所述第二组候选实体;

若预处理后的待处理语句中不存在药品名相关实体,则将预处理后的待处理语句中抽取出的规格实体、包装规格实体、剂型实体、包材实体舍弃。

2.根据权利要求1所述的面向多数据源的药品类实体识别方法,其特征在于,所述原始数据包括结构化数据;所述结构化数据包括结算单数据、门诊处方数据、住院医嘱数据、医药企业药品试验数据、医药企业销售数据、医疗知识库及文献库数据、药品说明书数据。

3.根据权利要求2所述的面向多数据源的药品类实体识别方法,其特征在于,根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列,包括:从预先设置的语料库中提取待处理语句中的每个文字的CRF统计特征值;所述预先设置的语料库中记录有原始数据中各语句、各语句中的实体、以及各语句中的实体在各语句中的位置以及实体类别;所述CRF统计特征值包括每个文字在各语句中的分词特征值、词性特征值、字符特征值、上下文特征值以及术语表特征值;

根据每个字在各语句中的CRF统计特征值,确定一训练模型;所述训练模型为:

根据所述训练模型,计算待处理语句中的每个文字的实体标记yj;

将每个文字的实体标记进行组合,形成待处理语句的实体标记序列;其中,x表示所述待处理语句;yj表示待处理语句中j位置对应的文字的实体标记;fi(yj,yj-1,x)表示待处理语句中分词特征i的函数值;λi为模型参数;m表示分词特征的个数;n表示待处理语句中的文字位置个数;Z(x)表示归一化因子;p(y|x)表示文字在待处理语句中的标记概率。

4.根据权利要求3所述的面向多数据源的药品类实体识别方法,其特征在于,根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体,包括:在实体标记序列中确定各文字对应的分词特征值,并根据所述分词特征值确定待处理语句的第一组候选实体。

5.根据权利要求4所述的面向多数据源的药品类实体识别方法,其特征在于,还包括:在所 述待处 理语 句未 在预 先设置 的语 料库中 被标 注 ,根据 公式 :确定待处理语句中各实体的不确定值;其中,

IEk为第k个实体的不确定值;kstart为第k个实体的实体标记的开始位置;kend为第k个实体的实体标记的尾部位置; 为待处理语句中s位置的文字对应第j个实体标记的概率;

将待处理语句中不确定值为1的实体与预先设置的药品本体库匹配,若匹配成功,则将匹配成功的实体的实体标记进行保存;

确定待处理语句的预测置信度和字典匹配标记的实体比例;

将预测置信度大于预设置信度阈值和字典匹配标记的实体比例大于预设比例阈值的待处理语句加入到所述语料库中,以进行语料库更新;

其中,所述预测置信度为待处理语句中各文字对应的标记概率的乘积;

所述字典匹配标记的实体比例为: 其中,C为待处理语句中预测出的实体总数中出现在预设字典中的实体数;B为待处理语句中预测出的实体总数。

6.根据权利要求1所述的面向多数据源的药品类实体识别方法,其特征在于,根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候选实体,包括:判断第一组候选实体和第二组候选实体中各候选实体的末尾字符是否为预先设置的非药品术语字符;

若各候选实体的末尾字符为预先设置的非药品术语字符,将所述候选实体舍弃。

7.一种面向多数据源的药品类实体识别装置,其特征在于,包括:

待处理语句获取单元,用于获取原始数据中的待处理语句;

单字切分单元,用于将所述待处理语句进行单字切分,确定待处理语句中的每个文字;

实体标记序列确定单元,用于根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列;

第一组候选实体确定单元,用于根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体;

第二组候选实体确定单元,用于根据预先设置的药品类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体;

候选实体筛选单元,用于根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候选实体;

药品类实体结果确定单元,用于在第一组药品类候选实体和第二组药品类候选实体不相同时,根据预先设置的判断策略从第一组药品类候选实体和第二组药品类候选实体中确定药品类实体结果;

所述药品类实体结果确定单元,包括:

术语切分判断模块,用于确定待处理语句在进行术语切分时,是否通过预先设置的切分规则进行切分;

药品类实体结果确定模块,用于在待处理语句在进行术语切分时,通过预先设置的切分规则进行切分,则选择所述第二组药品类候选实体中的候选实体作为药品类实体结果;

在待处理语句在进行术语切分时,未通过预先设置的切分规则进行切分,则选择所述第一组药品类候选实体中的候选实体作为药品类实体结果;

所述药品类实体结果确定模块,还用于确定来源于相同待处理语句的原始字符串的第一组药品类候选实体和第二组药品类候选实体中,实体个数少,且实体包含的字符数多的一组实体作为药品类实体结果;

所述第二组候选实体确定单元,包括:

预处理模块,用于将待处理语句中的标点符号转换为半角,并将英文字母统一为大写英文字母;调用预先设置的非医学术语表,检查待处理语句中的原始字符串是否存在非医学术语表中的术语,并将待处理语句中存在的非医学术语表中的术语删除,形成预处理后的待处理语句;

规格和包装规格实体识别模块,用于将预处理后的待处理语句采用逆向最大匹配原则与预先设置的药品规格数据库和包装规格数据库进行匹配,将从药品规格数据库中匹配到的待处理语句的字符串确定为规格实体,将从包装规格数据库中匹配到的待处理语句的字符串确定为包装规格实体;或者,识别预处理后的待处理语句中的数字组合;判断预处理后的待处理语句中所述数字组合后的字符串是否为计量单位;若预处理后的待处理语句中所述数字组合后的字符串为计量单位,则根据计量单位类型,将所述数字组合和计量单位作为整体抽出,形成规格实体或者包装规格实体;

其他实体识别模块,用于将预处理后的待处理语句中规格实体和包装规格实体之外的其他字符串,采用逆向最大匹配原则与预先设置的药品名称数据库、剂型数据库以及包材数据库进行匹配;将从药品名称数据库中匹配到的,且对应药品名称数据库中的词语类型为产品名的待处理语句的字符串确定为药品产品名实体;将从药品名称数据库中匹配到的,且对应药品名称数据库中的词语类型为通用名的待处理语句的字符串确定为药品通用名实体;将从药品名称数据库中匹配到的,且对应药品名称数据库中的词语类型为商品名的待处理语句的字符串确定为药品商品名实体;将从剂型数据库中匹配到的待处理语句的字符串确定为剂型实体;将从包材数据库中匹配到的待处理语句的字符串确定为包材实体;

酸根碱根词判断模块,用于根据一预先设置的酸根碱根数据表,在预处理后的待处理语句中确定切分出的药品通用名实体或药品产品名实体之前是否存在分别与药品通用名实体或药品产品名实体连续的酸根词;并在预处理后的待处理语句中确定切分出的药品通用名实体或药品产品名实体之后是否存在分别与药品通用名实体或药品产品名实体连续的碱根词;

实体调整模块,用于将与药品通用名实体或药品产品名实体连续的酸根词抽出,并加入到其对应的药品通用名实体或药品产品名实体中,且实体类型不变;将与药品通用名实体或药品产品名实体连续的碱根词抽出,并加入到其对应的药品通用名实体或药品产品名实体中,且实体类型不变;

所述实体调整模块,还用于在预处理后的待处理语句中药品通用名实体与剂型实体相邻时,将药品通用名实体与剂型实体作为整体抽出,形成药品产品名实体;在预处理后的待处理语句中药品通用名实体之后与预先设置的表示剂型的单字相邻时,将药品通用名实体与所述表示剂型的单字作为整体抽出,形成药品产品名实体;

第二组候选实体形成模块,用于判断预处理后的待处理语句中是否存在药品名相关实体;所述药品名相关实体包括药品通用名实体、药品产品名实体和药品商品名实体;在预处理后的待处理语句中存在药品名相关实体时,将预处理后的待处理语句中抽取出的规格实体、包装规格实体、剂型实体、包材实体中的一个或多个实体与所述药品名相关实体作为所述第二组候选实体;在预处理后的待处理语句中不存在药品名相关实体时,将预处理后的待处理语句中抽取出的规格实体、包装规格实体、剂型实体、包材实体舍弃。

8.根据权利要求7所述的面向多数据源的药品类实体识别装置,其特征在于,所述待处理语句获取单元中的原始数据包括结构化数据;所述结构化数据包括结算单数据、门诊处方数据、住院医嘱数据、医药企业药品试验数据、医药企业销售数据、医疗知识库及文献库数据、药品说明书数据。

9.根据权利要求8所述的面向多数据源的药品类实体识别装置,其特征在于,所述实体标记序列确定单元,包括:CRF统计特征值提取模块,用于从预先设置的语料库中提取待处理语句中的每个文字的CRF统计特征值;所述预先设置的语料库中记录有原始数据中各语句、各语句中的实体、以及各语句中的实体在各语句中的位置以及实体类别;所述CRF统计特征值包括每个文字在各语句中的分词特征值、词性特征值、字符特征值、上下文特征值以及术语表特征值;

训练模型确定模块,用于根据每个字在各语句中的CRF统计特征值,确定一训练模型;

所述训练模型为:

实体标记计算模块,用于根据所述训练模型,计算待处理语句中的每个文字的实体标记yj;

实体标记序列确定模块,用于将每个文字的实体标记进行组合,形成待处理语句的实体标记序列;其中,x表示所述待处理语句;yj表示待处理语句中j位置对应的文字的实体标记;fi(yj,yj-1,x)表示待处理语句中分词特征i的函数值;λi为模型参数;m表示分词特征的个数;n表示待处理语句中的文字位置个数;Z(x)表示归一化因子;p(y|x)表示文字在待处理语句中的标记概率。

10.根据权利要求9所述的面向多数据源的药品类实体识别装置,其特征在于,所述第一组候选实体确定单元,具体用于:在实体标记序列中确定各文字对应的分词特征值,并根据所述分词特征值确定待处理语句的第一组候选实体。

11.根据权利要求10所述的面向多数据源的药品类实体识别装置,其特征在于,还包括语料库更新单元,用于:在所 述待处 理语 句未 在预 先设置 的语 料库中 被标 注 ,根据 公式 :确定待处理语句中各实体的不确定值;其中,

IEk为第k个实体的不确定值;kstart为第k个实体的实体标记的开始位置;kend为第k个实体的实体标记的尾部位置; 为待处理语句中s位置的文字对应第j个实体标记的概率;

将待处理语句中不确定值为1的实体与预先设置的药品本体库匹配,在匹配成功时,将匹配成功的实体的实体标记进行保存;

确定待处理语句的预测置信度和字典匹配标记的实体比例;

将预测置信度大于预设置信度阈值和字典匹配标记的实体比例大于预设比例阈值的待处理语句加入到所述语料库中,以进行语料库更新;

其中,所述预测置信度为待处理语句中各文字对应的标记概率的乘积;

所述字典匹配标记的实体比例为: 其中,C为待处理语句中预测出的实体总数中出现在预设字典中的实体数;B为待处理语句中预测出的实体总数。

12.根据权利要求7所述的面向多数据源的药品类实体识别装置,其特征在于,所述候选实体筛选单元,包括:非药品术语字符判断模块,用于判断第一组候选实体和第二组候选实体中各候选实体的末尾字符是否为预先设置的非药品术语字符;

候选实体舍弃模块,用于在各候选实体的末尾字符为预先设置的非药品术语字符时,将所述候选实体舍弃。

说明书 :

面向多数据源的药品类实体识别方法及装置

技术领域

[0001] 本发明涉及医疗实体识别技术领域,尤其涉及一种面向多数据源的药品类实体识别方法及装置。

背景技术

[0002] 目前,随着网络和医疗信息技术的发展、中国人口逐渐趋于老年化、互联网医疗逐渐兴起,医药行业大数据也相继产生。大数据在医药行业释放出的巨大价值吸引着诸多医
药行业人士的兴趣和关注。人们开始探讨和学习如何利用大数据提高医药行业经营管理服
务,如通过药品销售大数据分析得到药品品牌、消费人群、消费途径等营销策略;提高临床
医疗服务质量,如通过疗效对比得到最佳治疗路径;提高医学科研水平,如分析临床试验数
据和病人记录,确定药品更多的适应症和发现副作用等。而医药大数据的利用分析和挖掘
的前提和基础之一是药品类实体的识别,药品相关实体的识别是医疗大数据应用的基础工
作。
[0003] 近年来,医疗健康领域的蓬勃发展使得该领域的研究逐渐增多,例如医疗问答、智能诊断、药品预警等。作为医疗健康数据分析的重要的一步,医疗实体识别(例如药品类的
实体识别)可以抽取出相关文本中存在的医疗术语,对后续研究的性能起到重要的作用。目
前常见的实体识别技术有基于词表的医学实体识别和基于条件随机场(Conditional 
Random Fields,简称CRF)的医学实体识别,然而基于词表的医学实体识别仅仅依靠术语库
匹配,缺少上下文语境识别,且术语库匹配存在较大局限性,比如对于药品来说,药品的厂
家数量繁多,术语库可能难以一一涵盖。而基于CRF的医学实体识别技术,缺少大数据语料
库和语言规则的应用,语料均为人工标注后的语料,而没有利用半监督学习等方法,增加对
数量更庞大的未标注数据的使用,使得模型不够完善,缺少基于语言学与医疗信息的规则,
仅仅依靠模型,对数据的针对性不够强。可见,当前的实体识别方案并不能准确进行药品类
实体识别。

发明内容

[0004] 本发明的实施例提供一种面向多数据源的药品类实体识别方法及装置,以解决当前的实体识别方案并不能准确进行药品类实体识别的问题。
[0005] 为达到上述目的,本发明采用如下技术方案:
[0006] 一种面向多数据源的药品类实体识别方法,包括:
[0007] 获取原始数据中的待处理语句;
[0008] 将所述待处理语句进行单字切分,确定待处理语句中的每个文字;
[0009] 根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列;
[0010] 根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体;
[0011] 根据预先设置的药品类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体;
[0012] 根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候选实体;
[0013] 若第一组药品类候选实体和第二组药品类候选实体不相同,根据预先设置的判断策略从第一组药品类候选实体和第二组药品类候选实体中确定药品类实体结果。
[0014] 具体的,所述根据预先设置的判断策略从第一组药品类候选实体和第二组药品类候选实体中确定药品类实体结果,包括:
[0015] 确定待处理语句在进行术语切分时,是否通过预先设置的切分规则进行切分;
[0016] 若待处理语句在进行术语切分时,通过预先设置的切分规则进行切分,则选择所述第二组药品类候选实体中的候选实体作为药品类实体结果;
[0017] 若待处理语句在进行术语切分时,未通过预先设置的切分规则进行切分,则选择所述第一组药品类候选实体中的候选实体作为药品类实体结果;
[0018] 或者,确定来源于相同待处理语句的原始字符串的第一组药品类候选实体和第二组药品类候选实体中,实体个数少,且实体包含的字符数多的一组实体作为药品类实体结
果。
[0019] 具体的,所述原始数据包括结构化数据;所述结构化数据包括结算单数据、门诊处方数据、住院医嘱数据、医药企业药品试验数据、医药企业销售数据、医疗知识库及文献库
数据、药品说明书数据。
[0020] 具体的,根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列,包括:
[0021] 从预先设置的语料库中提取待处理语句中的每个文字的CRF统计特征值;所述预先设置的语料库中记录有原始数据中各语句、各语句中的实体、以及各语句中的实体在各
语句中的位置以及实体类别;所述CRF统计特征值包括每个文字在各语句中的分词特征值、
词性特征值、字符特征值、上下文特征值以及术语表特征值;
[0022] 根据每个字在各语句中的CRF统计特征值,确定一训练模型;所述训练模型为:
[0023]
[0024] 根据所述训练模型,计算待处理语句中的每个文字的实体标记yj;
[0025] 将每个文字的实体标记进行组合,形成待处理语句的实体标记序列;其中,x表示所述待处理语句;yj表示待处理语句中j位置对应的文字的实体标记;fi(yj,yj-1,x)表示待
处理语句中分词特征i的函数值;λi为模型参数;m表示分词特征的个数;n表示待处理语句
中的文字位置个数;Z(x)表示归一化因子;p(y|x)表示文字在待处理语句中的标记概率。
[0026] 具体的,根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体,包括:
[0027] 在实体标记序列中确定各文字对应的分词特征值,并根据所述分词特征值确定待处理语句的第一组候选实体。
[0028] 进一步的,该面向多数据源的药品类实体识别方法,还包括:
[0029] 在所述待处理语句未在预先设置的语料库中被标注,根据公式:确定待处理语句中各实体的不确定值;其中,
IEk为第k个实体的不确定值;kstart为第k个实体的实体标记的开始位置;kend为第k个实体的
实体标记的尾部位置; 为待处理语句中s位置的文字对应第j个实体标记的概率;
[0030] 将待处理语句中不确定值为1的实体与预先设置的药品本体库匹配,若匹配成功,则将匹配成功的实体的实体标记进行保存;
[0031] 确定待处理语句的预测置信度和字典匹配标记的实体比例;
[0032] 将预测置信度大于预设置信度阈值和字典匹配标记的实体比例大于预设比例阈值的待处理语句加入到所述语料库中,以进行语料库更新;
[0033] 其中,所述预测置信度为待处理语句中各文字对应的标记概率的乘积;
[0034] 所述字典匹配标记的实体比例为: 其中,C为待处理语句中预测出的实体总数中出现在预设字典中的实体数;B为待处理语句中预测出的实体总数。
[0035] 具体的,根据预先设置的药品类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体,包括:
[0036] 将待处理语句中的标点符号转换为半角,并将英文字母统一为大写英文字母;
[0037] 调用预先设置的非医学术语表,检查待处理语句中的原始字符串是否存在非医学术语表中的术语,并将待处理语句中存在的非医学术语表中的术语删除,形成预处理后的
待处理语句;
[0038] 将预处理后的待处理语句采用逆向最大匹配原则与预先设置的药品规格数据库和包装规格数据库进行匹配,将从药品规格数据库中匹配到的待处理语句的字符串确定为
规格实体,将从包装规格数据库中匹配到的待处理语句的字符串确定为包装规格实体;
[0039] 或者,识别预处理后的待处理语句中的数字组合;判断预处理后的待处理语句中所述数字组合后的字符串是否为计量单位;若预处理后的待处理语句中所述数字组合后的
字符串为计量单位,则根据计量单位类型,将所述数字组合和计量单位作为整体抽出,形成
规格实体或者包装规格实体;
[0040] 将预处理后的待处理语句中规格实体和包装规格实体之外的其他字符串,采用逆向最大匹配原则与预先设置的药品名称数据库、剂型数据库以及包材数据库进行匹配;将
从药品名称数据库中匹配到的,且对应药品名称数据库中的词语类型为产品名的待处理语
句的字符串确定为药品产品名实体;将从药品名称数据库中匹配到的,且对应药品名称数
据库中的词语类型为通用名的待处理语句的字符串确定为药品通用名实体;将从药品名称
数据库中匹配到的,且对应药品名称数据库中的词语类型为商品名的待处理语句的字符串
确定为药品商品名实体;将从剂型数据库中匹配到的待处理语句的字符串确定为剂型实
体;将从包材数据库中匹配到的待处理语句的字符串确定为包材实体;
[0041] 根据一预先设置的酸根碱根数据表,在预处理后的待处理语句中确定切分出的药品通用名实体或药品产品名实体之前是否存在分别与药品通用名实体或药品产品名实体
连续的酸根词;并在预处理后的待处理语句中确定切分出的药品通用名实体或药品产品名
实体之后是否存在分别与药品通用名实体或药品产品名实体连续的碱根词;
[0042] 将与药品通用名实体或药品产品名实体连续的酸根词抽出,并加入到其对应的药品通用名实体或药品产品名实体中,且实体类型不变;将与药品通用名实体或药品产品名
实体连续的碱根词抽出,并加入到其对应的药品通用名实体或药品产品名实体中,且实体
类型不变;
[0043] 若在预处理后的待处理语句中药品通用名实体与剂型实体相邻,则将药品通用名实体与剂型实体作为整体抽出,形成药品产品名实体;
[0044] 若在预处理后的待处理语句中药品通用名实体之后与预先设置的表示剂型的单字相邻,则将药品通用名实体与所述表示剂型的单字作为整体抽出,形成药品产品名实体;
[0045] 判断预处理后的待处理语句中是否存在药品名相关实体;所述药品名相关实体包括药品通用名实体、药品产品名实体和药品商品名实体;
[0046] 若预处理后的待处理语句中存在药品名相关实体,则将预处理后的待处理语句中抽取出的规格实体、包装规格实体、剂型实体、包材实体中的一个或多个实体与所述药品名
相关实体作为所述第二组候选实体;
[0047] 若预处理后的待处理语句中不存在药品名相关实体,则将预处理后的待处理语句中抽取出的规格实体、包装规格实体、剂型实体、包材实体舍弃。
[0048] 具体的,根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候选实体,包括:
[0049] 判断第一组候选实体和第二组候选实体中各候选实体的末尾字符是否为预先设置的非药品术语字符;
[0050] 若各候选实体的末尾字符为预先设置的非药品术语字符,将所述候选实体舍弃。
[0051] 一种面向多数据源的药品类实体识别装置,包括:
[0052] 待处理语句获取单元,用于获取原始数据中的待处理语句;
[0053] 单字切分单元,用于将所述待处理语句进行单字切分,确定待处理语句中的每个文字;
[0054] 实体标记序列确定单元,用于根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列;
[0055] 第一组候选实体确定单元,用于根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体;
[0056] 第二组候选实体确定单元,用于根据预先设置的药品类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体;
[0057] 候选实体筛选单元,用于根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候选
实体;
[0058] 药品类实体结果确定单元,用于在第一组药品类候选实体和第二组药品类候选实体不相同时,根据预先设置的判断策略从第一组药品类候选实体和第二组药品类候选实体
中确定药品类实体结果。
[0059] 具体的,所述药品类实体结果确定单元,包括:
[0060] 术语切分判断模块,用于确定待处理语句在进行术语切分时,是否通过预先设置的切分规则进行切分;
[0061] 药品类实体结果确定模块,用于在待处理语句在进行术语切分时,通过预先设置的切分规则进行切分,则选择所述第二组药品类候选实体中的候选实体作为药品类实体结
果;在待处理语句在进行术语切分时,未通过预先设置的切分规则进行切分,则选择所述第
一组药品类候选实体中的候选实体作为药品类实体结果;
[0062] 所述药品类实体结果确定模块,还用于确定来源于相同待处理语句的原始字符串的第一组药品类候选实体和第二组药品类候选实体中,实体个数少,且实体包含的字符数
多的一组实体作为药品类实体结果。
[0063] 具体的,所述待处理语句获取单元中的原始数据包括结构化数据;所述结构化数据包括结算单数据、门诊处方数据、住院医嘱数据、医药企业药品试验数据、医药企业销售
数据、医疗知识库及文献库数据、药品说明书数据。
[0064] 进一步的,所述实体标记序列确定单元,包括:
[0065] CRF统计特征值提取模块,用于从预先设置的语料库中提取待处理语句中的每个文字的CRF统计特征值;所述预先设置的语料库中记录有原始数据中各语句、各语句中的实
体、以及各语句中的实体在各语句中的位置以及实体类别;所述CRF统计特征值包括每个文
字在各语句中的分词特征值、词性特征值、字符特征值、上下文特征值以及术语表特征值;
[0066] 训练模型确定模块,用于根据每个字在各语句中的CRF统计特征值,确定一训练模型;所述训练模型为:
[0067]
[0068] 实体标记计算模块,用于根据所述训练模型,计算待处理语句中的每个文字的实体标记yj;
[0069] 实体标记序列确定模块,用于将每个文字的实体标记进行组合,形成待处理语句的实体标记序列;其中,x表示所述待处理语句;yj表示待处理语句中j位置对应的文字的实
体标记;fi(yj,yj-1,x)表示待处理语句中分词特征i的函数值;λi为模型参数;m表示分词特
征的个数;n表示待处理语句中的文字位置个数;Z(x)表示归一化因子;p(y|x)表示文字在
待处理语句中的标记概率。
[0070] 此外,所述第一组候选实体确定单元,具体用于:
[0071] 在实体标记序列中确定各文字对应的分词特征值,并根据所述分词特征值确定待处理语句的第一组候选实体。
[0072] 进一步的,所述的面向多数据源的药品类实体识别装置,还包括语料库更新单元,用于:
[0073] 在所述待处理语句未在预先设置的语料库中被标注,根据公式:确定待处理语句中各实体的不确定值;其中,
IEk为第k个实体的不确定值;kstart为第k个实体的实体标记的开始位置;kend为第k个实体的
实体标记的尾部位置; 为待处理语句中s位置的文字对应第j个实体标记的概率;
[0074] 将待处理语句中不确定值为1的实体与预先设置的药品本体库匹配,在匹配成功时,将匹配成功的实体的实体标记进行保存;
[0075] 确定待处理语句的预测置信度和字典匹配标记的实体比例;
[0076] 将预测置信度大于预设置信度阈值和字典匹配标记的实体比例大于预设比例阈值的待处理语句加入到所述语料库中,以进行语料库更新;
[0077] 其中,所述预测置信度为待处理语句中各文字对应的标记概率的乘积;
[0078] 所述字典匹配标记的实体比例为: 其中,C为待处理语句中预测出的实体总数中出现在预设字典中的实体数;B为待处理语句中预测出的实体总数。
[0079] 此外,所述第二组候选实体确定单元,包括:
[0080] 预处理模块,用于将待处理语句中的标点符号转换为半角,并将英文字母统一为大写英文字母;调用预先设置的非医学术语表,检查待处理语句中的原始字符串是否存在
非医学术语表中的术语,并将待处理语句中存在的非医学术语表中的术语删除,形成预处
理后的待处理语句;
[0081] 规格和包装规格实体识别模块,用于将预处理后的待处理语句采用逆向最大匹配原则与预先设置的药品规格数据库和包装规格数据库进行匹配,将从药品规格数据库中匹
配到的待处理语句的字符串确定为规格实体,将从包装规格数据库中匹配到的待处理语句
的字符串确定为包装规格实体;或者,识别预处理后的待处理语句中的数字组合;判断预处
理后的待处理语句中所述数字组合后的字符串是否为计量单位;若预处理后的待处理语句
中所述数字组合后的字符串为计量单位,则根据计量单位类型,将所述数字组合和计量单
位作为整体抽出,形成规格实体或者包装规格实体;
[0082] 其他实体识别模块,用于将预处理后的待处理语句中规格实体和包装规格实体之外的其他字符串,采用逆向最大匹配原则与预先设置的药品名称数据库、剂型数据库以及
包材数据库进行匹配;将从药品名称数据库中匹配到的,且对应药品名称数据库中的词语
类型为产品名的待处理语句的字符串确定为药品产品名实体;将从药品名称数据库中匹配
到的,且对应药品名称数据库中的词语类型为通用名的待处理语句的字符串确定为药品通
用名实体;将从药品名称数据库中匹配到的,且对应药品名称数据库中的词语类型为商品
名的待处理语句的字符串确定为药品商品名实体;将从剂型数据库中匹配到的待处理语句
的字符串确定为剂型实体;将从包材数据库中匹配到的待处理语句的字符串确定为包材实
体;
[0083] 酸根碱根词判断模块,用于根据一预先设置的酸根碱根数据表,在预处理后的待处理语句中确定切分出的药品通用名实体或药品产品名实体之前是否存在分别与药品通
用名实体或药品产品名实体连续的酸根词;并在预处理后的待处理语句中确定切分出的药
品通用名实体或药品产品名实体之后是否存在分别与药品通用名实体或药品产品名实体
连续的碱根词;
[0084] 实体调整模块,用于将与药品通用名实体或药品产品名实体连续的酸根词抽出,并加入到其对应的药品通用名实体或药品产品名实体中,且实体类型不变;将与药品通用
名实体或药品产品名实体连续的碱根词抽出,并加入到其对应的药品通用名实体或药品产
品名实体中,且实体类型不变;
[0085] 所述实体调整模块,还用于在预处理后的待处理语句中药品通用名实体与剂型实体相邻时,将药品通用名实体与剂型实体作为整体抽出,形成药品产品名实体;在预处理后
的待处理语句中药品通用名实体之后与预先设置的表示剂型的单字相邻时,将药品通用名
实体与所述表示剂型的单字作为整体抽出,形成药品产品名实体;
[0086] 第二组候选实体形成模块,用于判断预处理后的待处理语句中是否存在药品名相关实体;所述药品名相关实体包括药品通用名实体、药品产品名实体和药品商品名实体;在
预处理后的待处理语句中存在药品名相关实体时,将预处理后的待处理语句中抽取出的规
格实体、包装规格实体、剂型实体、包材实体中的一个或多个实体与所述药品名相关实体作
为所述第二组候选实体;在预处理后的待处理语句中不存在药品名相关实体时,将预处理
后的待处理语句中抽取出的规格实体、包装规格实体、剂型实体、包材实体舍弃。
[0087] 此外,所述候选实体筛选单元,包括:
[0088] 非药品术语字符判断模块,用于判断第一组候选实体和第二组候选实体中各候选实体的末尾字符是否为预先设置的非药品术语字符;
[0089] 候选实体舍弃模块,用于在各候选实体的末尾字符为预先设置的非药品术语字符时,将所述候选实体舍弃。
[0090] 本发明实施例提供的一种面向多数据源的药品类实体识别方法及装置,首先,获取原始数据中的待处理语句;将所述待处理语句进行单字切分,确定待处理语句中的每个
文字;根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的
实体标记,并确定待处理语句的实体标记序列;根据待处理语句的实体标记序列,确定待处
理语句的第一组候选实体;然后,根据预先设置的药品类术语切分策略,对所述待处理语句
进行术语切分,确定第二组候选实体;根据第一组候选实体和第二组候选实体中各候选实
体的末尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类
候选实体;若第一组药品类候选实体和第二组药品类候选实体不相同,根据预先设置的判
断策略从第一组药品类候选实体和第二组药品类候选实体中确定药品类实体结果。本发明
将条件随机场CRF统计机器学习方法与术语切分方法相结合,能够自动识别药品类实体,克
服了当前的实体识别的数据源较为单一,实体识别不准确的问题。

附图说明

[0091] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可
以根据这些附图获得其他的附图。
[0092] 图1为本发明实施例提供的一种面向多数据源的药品类实体识别方法的流程图一;
[0093] 图2为本发明实施例提供的一种面向多数据源的药品类实体识别方法的流程图二的A部分;
[0094] 图3为本发明实施例提供的一种面向多数据源的药品类实体识别方法的流程图二的B部分;
[0095] 图4为本发明实施例提供的一种面向多数据源的药品类实体识别装置的结构示意图一;
[0096] 图5为本发明实施例提供的一种面向多数据源的药品类实体识别装置的结构示意图二。

具体实施方式

[0097] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于
本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本发明保护的范围。
[0098] 如图1所示,本发明实施例提供一种面向多数据源的药品类实体识别方法,包括:
[0099] 步骤101、获取原始数据中的待处理语句。
[0100] 步骤102、将所述待处理语句进行单字切分,确定待处理语句中的每个文字。
[0101] 步骤103、根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列。
[0102] 步骤104、根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体。
[0103] 步骤105、根据预先设置的药品类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体。
[0104] 步骤106、根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候选实体。
[0105] 步骤107、若第一组药品类候选实体和第二组药品类候选实体不相同,根据预先设置的判断策略从第一组药品类候选实体和第二组药品类候选实体中确定药品类实体结果。
[0106] 本发明实施例提供的一种面向多数据源的药品类实体识别方法,首先,获取原始数据中的待处理语句;将所述待处理语句进行单字切分,确定待处理语句中的每个文字;根
据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标
记,并确定待处理语句的实体标记序列;根据待处理语句的实体标记序列,确定待处理语句
的第一组候选实体;然后,根据预先设置的药品类术语切分策略,对所述待处理语句进行术
语切分,确定第二组候选实体;根据第一组候选实体和第二组候选实体中各候选实体的末
尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候选实
体;若第一组药品类候选实体和第二组药品类候选实体不相同,根据预先设置的判断策略
从第一组药品类候选实体和第二组药品类候选实体中确定药品类实体结果。本发明将条件
随机场CRF统计机器学习方法与术语切分方法相结合,能够自动识别药品类实体,克服了当
前的实体识别的数据源较为单一,实体识别不准确的问题。
[0107] 为了使本领域的技术人员更好的了解本发明,下面结合具体的实例来说明本发明。如图2和图3所示(其中,图2为一种面向多数据源的药品类实体识别方法的A部分,图3为
一种面向多数据源的药品类实体识别方法的B部分,此处分为A、B部分是由于本发明实施例
的步骤较多,并非表示实际意义上的区别,A部分与B部分形成整个步骤201至步骤225,其中
图2示出了步骤201至步骤213,图3示出了步骤214至步骤225。),本发明实施例提供一种面
向多数据源的药品类实体识别方法,包括:
[0108] 步骤201、获取原始数据中的待处理语句。
[0109] 具体的,所述原始数据包括结构化数据;所述结构化数据包括结算单数据、门诊处方数据、住院医嘱数据、医药企业药品试验数据、医药企业销售数据、医疗知识库及文献库
数据、药品说明书数据等。可见,本发明实施例所能处理的原始数据多样,不仅仅局限于单
一数据源。
[0110] 步骤202、将所述待处理语句进行单字切分,确定待处理语句中的每个文字。
[0111] 例如,待处理语句为“注射用盐酸伊立替康(艾力)的副作用?”,则单字切分后,每个文字为:“注”、“射”、“用”、“盐”、“酸”、“伊”、“立”、“替”、“康”、“(”、“艾”、“力”、“)”、“的”、“副”、“作”、“用”、“?”。
[0112] 步骤203、从预先设置的语料库中提取待处理语句中的每个文字的CRF统计特征值。
[0113] 所述预先设置的语料库中记录有原始数据中各语句、各语句中的实体、以及各语句中的实体在各语句中的位置以及实体类别;所述CRF统计特征值包括每个文字在各语句
中的分词特征值、词性特征值、字符特征值、上下文特征值以及术语表特征值。
[0114] 对于预先设置的语料库可以由人为预先标注,例如语句:
[0115] “H▲注射用盐酸伊立替康|◆艾力”
[0116] “▲泰脂安胶囊△(含熊果酸35mg)(中)”
[0117] 则对于药品类实体,可以分别标注出:
[0118] c=注射用盐酸伊立替康 P=1:3 1:11 t=药品产品名;
[0119] c=艾力 P=1:14 1:15 t=药品商品名;
[0120] c=泰脂安胶囊 P=2:2 2:6 t=药品产品名;
[0121] c=35mg P=2:13 2:16 t=规格;
[0122] 其中,c表示药品类实体,P表示药品类实体所在语料中句子的行号及句子中字符位置,t表示药品实体类别(在本发明中药品实体类别包括药品通用名实体、药品产品名实
体、药品商品名实体、剂型实体、规格实体、包装规格实体)。
[0123] 对于CRF统计特征值,例如语句“注射用盐酸伊立替康(艾力)的副作用?”,其实体标记序列为“B I I I I I I I E O B E O O O O OO”。例如,对于“康”字,CRF统计特征说
明如下表1所示:
[0124] 表1:
[0125]
[0126]
[0127] 步骤204、根据每个字在各语句中的CRF统计特征值,确定一训练模型。
[0128] 其中,所述训练模型为:
[0129]
[0130] 步骤205、根据所述训练模型,计算待处理语句中的每个文字的实体标记yj。
[0131] 其中,x表示所述待处理语句;yj表示待处理语句中j位置对应的文字的实体标记;fi(yj,yj-1,x)表示待处理语句中分词特征i的函数值;λi为模型参数,训练得到的模型参数
可使句子的训练模型p(y|x)的和达到最大;m表示分词特征的个数;n表示待处理语句中的
文字位置个数;Z(x)表示归一化因子;p(y|x)表示文字在待处理语句中的标记概率。
[0132] 对于fi(yj,yj-1,x),其表示若yj、yj-1、x均出现在语料中,则fi(yj,yj-1,x)=1,否则为0。
[0133] 步骤206、将每个文字的实体标记进行组合,形成待处理语句的实体标记序列。
[0134] 例如语句“注射用盐酸伊立替康(艾力)的副作用?”,其实体标记序列为“B I I I I I I I E O B E O O O O OO”。
[0135] 步骤207、在实体标记序列中确定各文字对应的分词特征值,并根据所述分词特征值确定待处理语句的第一组候选实体。
[0136] 例如,对于“乳酸左氧氟沙星滴眼液的适应症?”,其实体标记序列为“O O B I I I I I I E O O O O O”,因此,可识别出第一组候选实体为“左氧氟沙星滴眼液”。
[0137] 步骤208、将待处理语句中的标点符号转换为半角,并将英文字母统一为大写英文字母。
[0138] 此处的英文字母不包括希腊字母。
[0139] 步骤209、调用预先设置的非医学术语表,检查待处理语句中的原始字符串是否存在非医学术语表中的术语,并将待处理语句中存在的非医学术语表中的术语删除,形成预
处理后的待处理语句。
[0140] 在步骤209之后执行步骤210或者步骤211。
[0141] 步骤210、将预处理后的待处理语句采用逆向最大匹配原则与预先设置的药品规格数据库和包装规格数据库进行匹配,将从药品规格数据库中匹配到的待处理语句的字符
串确定为规格实体,将从包装规格数据库中匹配到的待处理语句的字符串确定为包装规格
实体。
[0142] 此处的药品规格数据库可以包括例如表2所示的规格表:
[0143] 表2:
[0144]
[0145] 此处的包装规格数据库可以包括例如表3所示的包装规格表:
[0146] 表3:
[0147]标准包装规格 同义词
24片/盒 12片/板*2板/盒
24片/盒 6片*4板/盒
1片/盒 1只/盒
[0148] 步骤211、识别预处理后的待处理语句中的数字组合;判断预处理后的待处理语句中所述数字组合后的字符串是否为计量单位;若预处理后的待处理语句中所述数字组合后
的字符串为计量单位,则根据计量单位类型(可分为规格和包装规格),将所述数字组合和
计量单位作为整体抽出,形成规格实体或者包装规格实体。
[0149] 如原始数据“乳酸左氧氟沙星滴眼液(40mg)”,利用上述步骤210未抽出实体时,则采用步骤211在抽出数字“40”,根据单位表判断mg为规格单位后,将40mg作为规格实体抽
出。
[0150] 所述单位表可以如下表4所示:
[0151] 表4:
[0152]标准规格单位 同义词 类型
mg 毫克 规格
袋 代 包装规格
盒 合 包装规格
支 只 包装规格
[0153] 在步骤210和步骤211之后,继续执行后续步骤212。
[0154] 步骤212、将预处理后的待处理语句中规格实体和包装规格实体之外的其他字符串,采用逆向最大匹配原则与预先设置的药品名称数据库、剂型数据库以及包材数据库进
行匹配;将从药品名称数据库中匹配到的,且对应药品名称数据库中的词语类型为产品名
的待处理语句的字符串确定为药品产品名实体;将从药品名称数据库中匹配到的,且对应
药品名称数据库中的词语类型为通用名的待处理语句的字符串确定为药品通用名实体;将
从药品名称数据库中匹配到的,且对应药品名称数据库中的词语类型为商品名的待处理语
句的字符串确定为药品商品名实体;将从剂型数据库中匹配到的待处理语句的字符串确定
为剂型实体;将从包材数据库中匹配到的待处理语句的字符串确定为包材实体。
[0155] 此处,预处理后的待处理语句中规格实体和包装规格实体之外的其他字符串,可以是例如原始数据“乳酸左氧氟沙星滴眼液(40mg)”,抽出规格实体“40mg”后,剩下字符串
的内容为“乳酸左氧氟沙星滴眼液”。
[0156] 上述的药品名称数据库可以包括如下表5所示的药品名称表:
[0157] 表5:
[0158]
[0159]
[0160] 上述的剂型数据库可以包括如下表6所示的剂型表:
[0161] 表6:
[0162]药品标准剂型 同义词
片剂  
舌下片  
咀嚼片  
分散片  
肠溶片 片剂(肠溶片)
[0163] 上述的包材数据库可以包括如下表7所示的包材表:
[0164] 表7:
[0165]药品标准包装材质 包装材质
非PVC软袋  
玻璃瓶 玻瓶
塑料瓶 塑瓶
[0166] 步骤213、根据一预先设置的酸根碱根数据表,在预处理后的待处理语句中确定切分出的药品通用名实体或药品产品名实体之前是否存在分别与药品通用名实体或药品产
品名实体连续的酸根词;并在预处理后的待处理语句中确定切分出的药品通用名实体或药
品产品名实体之后是否存在分别与药品通用名实体或药品产品名实体连续的碱根词。
[0167] 上述的酸根碱根数据表可以如下表8所示,但不仅仅局限于此:
[0168] 表8:
[0169]名称
乳酸
硫酸


[0170] 步骤214、将与药品通用名实体或药品产品名实体连续的酸根词抽出,并加入到其对应的药品通用名实体或药品产品名实体中,且实体类型不变;将与药品通用名实体或药
品产品名实体连续的碱根词抽出,并加入到其对应的药品通用名实体或药品产品名实体
中,且实体类型不变。
[0171] 例如原始数据为“乳酸左氧氟沙星”,基于上述步骤212抽出的实体为“左氧氟沙星”(类型为药品通用名),“乳酸”为酸根,因此最终通过步骤213抽出实体为“乳酸左氧氟沙
星”,实体类型为药品通用名,即实体类型不变。
[0172] 步骤215、若在预处理后的待处理语句中药品通用名实体与剂型实体相邻,则将药品通用名实体与剂型实体作为整体抽出,形成药品产品名实体。
[0173] 例如,原始数据为“乳酸左氧氟沙星滴眼液”,基于上述步骤215之前的步骤抽出的实体为“左氧氟沙星”(类型为药品通用名实体),“滴眼液”为剂型实体,则最终抽出实体应
为“乳酸左氧氟沙星滴眼液”,实体类型为药品产品名实体。
[0174] 步骤216、若在预处理后的待处理语句中药品通用名实体之后与预先设置的表示剂型的单字相邻,则将药品通用名实体与所述表示剂型的单字作为整体抽出,形成药品产
品名实体。
[0175] 该预先设置的表示剂型的单字可以为“片”、“丸”、“丹”等,但不仅局限于此。
[0176] 例如原始数据为“复方感冒灵片”,基于步骤216之前的步骤抽出的实体为“复方感冒灵”(类型为药品通用名实体),剩下字符为“片”,则经过步骤216最终抽出的实体为“复方
感冒灵片”,实体类别为药品产品名。
[0177] 步骤217、判断预处理后的待处理语句中是否存在药品名相关实体。
[0178] 其中,所述药品名相关实体包括药品通用名实体、药品产品名实体和药品商品名实体。
[0179] 若预处理后的待处理语句中存在药品名相关实体,则执行步骤218。若预处理后的待处理语句中不存在药品名相关实体,则执行步骤219。
[0180] 此处的步骤217是考虑到药品类实体的特殊型,由于药品类实体不仅仅只有药品名相关实体,还存在规格实体、包装规格实体、剂型实体、包材实体,而规格实体、包装规格
实体、剂型实体、包材实体不能单独存在,即在有药品名相关实体存在的情况下,规格实体、
包装规格实体、剂型实体、包材实体一般才有效。
[0181] 步骤218、将预处理后的待处理语句中抽取出的规格实体、包装规格实体、剂型实体、包材实体中的一个或多个实体与所述药品名相关实体作为所述第二组候选实体。
[0182] 在步骤218之后,继续执行步骤220。
[0183] 步骤219、将预处理后的待处理语句中抽取出的规格实体、包装规格实体、剂型实体、包材实体舍弃。
[0184] 步骤220、判断第一组候选实体和第二组候选实体中各候选实体的末尾字符是否为预先设置的非药品术语字符。
[0185] 该预先设置的非药品术语字符可以是例如“手术、检查、病、术”等。
[0186] 步骤221、若各候选实体的末尾字符为预先设置的非药品术语字符,将所述候选实体舍弃。
[0187] 在步骤221之后,执行步骤222或者步骤225。
[0188] 步骤222、在第一组药品类候选实体和第二组药品类候选实体不相同时,确定待处理语句在进行术语切分时,是否通过预先设置的切分规则进行切分。
[0189] 在步骤222之后,执行步骤223或者步骤224。
[0190] 步骤223、若待处理语句在进行术语切分时,通过预先设置的切分规则进行切分,则选择所述第二组药品类候选实体中的候选实体作为药品类实体结果。
[0191] 步骤224、若待处理语句在进行术语切分时,未通过预先设置的切分规则进行切分,则选择所述第一组药品类候选实体中的候选实体作为药品类实体结果。
[0192] 例如,原始数据为“乳酸左氧氟沙星滴眼液(联邦左福康)(5ml:15mg)”,
[0193] 第一组药品类候选实体为“左氧氟沙星滴眼液【产品名】联邦左福康【商品名】5ml:15mg【规格】”;
[0194] 第二组药品类候选实体为“乳酸左氧氟沙星滴眼液【产品名】联邦左福康【商品名】5ml:15mg【规格】”,即第二组药品类候选实体是经过切分规则切分形成的。
[0195] 则,最终结果为“乳酸左氧氟沙星滴眼液【产品名】联邦左福康【商品名】5ml:15mg【规格】”。
[0196] 步骤225、在第一组药品类候选实体和第二组药品类候选实体不相同时,确定来源于相同待处理语句的原始字符串的第一组药品类候选实体和第二组药品类候选实体中,实
体个数少,且实体包含的字符数多的一组实体作为药品类实体结果。
[0197] 例如,原始数据“枯草杆菌、肠球菌二联活菌多维颗粒”,第一组药品类候选实体为“枯草杆菌、肠球菌二联活菌多维颗粒【产品名】”,第二组药品类候选实体为“肠球菌二联活
菌多维颗粒【产品名】”,则最终结果为“枯草杆菌、肠球菌二联活菌多维颗粒【产品名】”。
[0198] 通过上述步骤201至步骤225,最终可以得到药品类实体识别结果。
[0199] 另外,为了实现对语料库进行更新,可以由人工总结发现新的句型特征,并人工标注加入到语料库中;另外,还可以在所述待处理语句未在预先设置的语料库中被标注,根据
公式: 确定待处理语句中各实体的不确定值;
其中,IEk为第k个实体的不确定值;kstart为第k个实体的实体标记的开始位置;kend为第k个
实体的实体标记的尾部位置; 为待处理语句中s位置的文字对应第j个实体标记的概率。
[0200] 例如,“乳酸左氧氟沙星滴眼液的适应症?”,实体标记序列为“O O B I I I I I I E O O O O O”,位置序列为“0 1 2 3 4 5 6 7 8 9 10 11 12 13 14”,看出实体为左氧氟
沙星滴眼液,位置为“2 3 4 5 6 7 8 9”,因此,Kstart为2,Kend为9。
[0201] 将待处理语句中不确定值为1的实体与预先设置的药品本体库匹配,若匹配成功,则将匹配成功的实体的实体标记进行保存。
[0202] 确定待处理语句的预测置信度和字典匹配标记的实体比例。
[0203] 将预测置信度大于预设置信度阈值和字典匹配标记的实体比例大于预设比例阈值的待处理语句加入到所述语料库中,以进行语料库更新。
[0204] 其中,所述预测置信度为待处理语句中各文字对应的标记概率的乘积。
[0205] 所述字典匹配标记的实体比例为: 其中,C为待处理语句中预测出的实体总数中出现在预设字典中的实体数;B为待处理语句中预测出的实体总数。
[0206] 可见,通过语料库的更新,可以实现实体识别所需语料数据利用半监督自学习方法,实现语料库不断丰富,解决了语料库数目不足、不完整的问题。
[0207] 本发明实施例提供的一种面向多数据源的药品类实体识别方法,首先,获取原始数据中的待处理语句;将所述待处理语句进行单字切分,确定待处理语句中的每个文字;根
据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标
记,并确定待处理语句的实体标记序列;根据待处理语句的实体标记序列,确定待处理语句
的第一组候选实体;然后,根据预先设置的药品类术语切分策略,对所述待处理语句进行术
语切分,确定第二组候选实体;根据第一组候选实体和第二组候选实体中各候选实体的末
尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候选实
体;若第一组药品类候选实体和第二组药品类候选实体不相同,根据预先设置的判断策略
从第一组药品类候选实体和第二组药品类候选实体中确定药品类实体结果。本发明将条件
随机场CRF统计机器学习方法与术语切分方法相结合,能够自动识别药品类实体,克服了当
前的实体识别的数据源较为单一,实体识别不准确的问题。
[0208] 对应于上述图1、图2、图3所示的方法实施例,如图4所示,本发明实施例提供一种面向多数据源的药品类实体识别装置,包括:
[0209] 待处理语句获取单元31,用于获取原始数据中的待处理语句。
[0210] 单字切分单元32,用于将所述待处理语句进行单字切分,确定待处理语句中的每个文字。
[0211] 实体标记序列确定单元33,用于根据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标记,并确定待处理语句的实体标记序列。
[0212] 第一组候选实体确定单元34,用于根据待处理语句的实体标记序列,确定待处理语句的第一组候选实体。
[0213] 第二组候选实体确定单元35,用于根据预先设置的药品类术语切分策略,对所述待处理语句进行术语切分,确定第二组候选实体。
[0214] 候选实体筛选单元36,用于根据第一组候选实体和第二组候选实体中各候选实体的末尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候
选实体。
[0215] 药品类实体结果确定单元37,用于在第一组药品类候选实体和第二组药品类候选实体不相同时,根据预先设置的判断策略从第一组药品类候选实体和第二组药品类候选实
体中确定药品类实体结果。
[0216] 具体的,如图5所示,所述药品类实体结果确定单元37,包括:
[0217] 术语切分判断模块371,用于确定待处理语句在进行术语切分时,是否通过预先设置的切分规则进行切分。
[0218] 药品类实体结果确定模块372,用于在待处理语句在进行术语切分时,通过预先设置的切分规则进行切分,则选择所述第二组药品类候选实体中的候选实体作为药品类实体
结果;在待处理语句在进行术语切分时,未通过预先设置的切分规则进行切分,则选择所述
第一组药品类候选实体中的候选实体作为药品类实体结果。
[0219] 所述药品类实体结果确定模块372,还可以确定来源于相同待处理语句的原始字符串的第一组药品类候选实体和第二组药品类候选实体中,实体个数少,且实体包含的字
符数多的一组实体作为药品类实体结果。
[0220] 具体的,所述待处理语句获取单元31中的原始数据包括结构化数据;所述结构化数据包括结算单数据、门诊处方数据、住院医嘱数据、医药企业药品试验数据、医药企业销
售数据、医疗知识库及文献库数据、药品说明书数据。
[0221] 进一步的,如图5所示,所述实体标记序列确定单元33,包括:
[0222] CRF统计特征值提取模块331,用于从预先设置的语料库中提取待处理语句中的每个文字的CRF统计特征值;所述预先设置的语料库中记录有原始数据中各语句、各语句中的
实体、以及各语句中的实体在各语句中的位置以及实体类别;所述CRF统计特征值包括每个
文字在各语句中的分词特征值、词性特征值、字符特征值、上下文特征值以及术语表特征
值。
[0223] 训练模型确定模块332,用于根据每个字在各语句中的CRF统计特征值,确定一训练模型;所述训练模型为:
[0224]
[0225] 实体标记计算模块333,用于根据所述训练模型,计算待处理语句中的每个文字的实体标记yj。
[0226] 实体标记序列确定模块334,用于将每个文字的实体标记进行组合,形成待处理语句的实体标记序列;其中,x表示所述待处理语句;yj表示待处理语句中j位置对应的文字的
实体标记;fi(yj,yj-1,x)表示待处理语句中分词特征i的函数值;λi为模型参数;m表示分词
特征的个数;n表示待处理语句中的文字位置个数;Z(x)表示归一化因子;p(y|x)表示文字
在待处理语句中的标记概率。
[0227] 此外,所述第一组候选实体确定单元34,具体用于:
[0228] 在实体标记序列中确定各文字对应的分词特征值,并根据所述分词特征值确定待处理语句的第一组候选实体。
[0229] 进一步的,如图5所示,所述的面向多数据源的药品类实体识别装置,还包括语料库更新单元38用于:
[0230] 在所述待处理语句未在预先设置的语料库中被标注,根据公式:确定待处理语句中各实体的不确定值;其中,
IEk为第k个实体的不确定值;kstart为第k个实体的实体标记的开始位置;kend为第k个实体的
实体标记的尾部位置; 为待处理语句中s位置的文字对应第j个实体标记的概率。
[0231] 将待处理语句中不确定值为1的实体与预先设置的药品本体库匹配,在匹配成功时,将匹配成功的实体的实体标记进行保存。
[0232] 确定待处理语句的预测置信度和字典匹配标记的实体比例。
[0233] 将预测置信度大于预设置信度阈值和字典匹配标记的实体比例大于预设比例阈值的待处理语句加入到所述语料库中,以进行语料库更新。
[0234] 其中,所述预测置信度为待处理语句中各文字对应的标记概率的乘积。
[0235] 所述字典匹配标记的实体比例为: 其中,C为待处理语句中预测出的实体总数中出现在预设字典中的实体数;B为待处理语句中预测出的实体总数。
[0236] 此外,如图5所示,所述第二组候选实体确定单元35,包括:
[0237] 预处理模块351,用于将待处理语句中的标点符号转换为半角,并将英文字母统一为大写英文字母;调用预先设置的非医学术语表,检查待处理语句中的原始字符串是否存
在非医学术语表中的术语,并将待处理语句中存在的非医学术语表中的术语删除,形成预
处理后的待处理语句。
[0238] 规格和包装规格实体识别模块352,用于将预处理后的待处理语句采用逆向最大匹配原则与预先设置的药品规格数据库和包装规格数据库进行匹配,将从药品规格数据库
中匹配到的待处理语句的字符串确定为规格实体,将从包装规格数据库中匹配到的待处理
语句的字符串确定为包装规格实体;或者,识别预处理后的待处理语句中的数字组合;判断
预处理后的待处理语句中所述数字组合后的字符串是否为计量单位;若预处理后的待处理
语句中所述数字组合后的字符串为计量单位,则根据计量单位类型,将所述数字组合和计
量单位作为整体抽出,形成规格实体或者包装规格实体。
[0239] 其他实体识别模块353,用于将预处理后的待处理语句中规格实体和包装规格实体之外的其他字符串,采用逆向最大匹配原则与预先设置的药品名称数据库、剂型数据库
以及包材数据库进行匹配;将从药品名称数据库中匹配到的,且对应药品名称数据库中的
词语类型为产品名的待处理语句的字符串确定为药品产品名实体;将从药品名称数据库中
匹配到的,且对应药品名称数据库中的词语类型为通用名的待处理语句的字符串确定为药
品通用名实体;将从药品名称数据库中匹配到的,且对应药品名称数据库中的词语类型为
商品名的待处理语句的字符串确定为药品商品名实体;将从剂型数据库中匹配到的待处理
语句的字符串确定为剂型实体;将从包材数据库中匹配到的待处理语句的字符串确定为包
材实体。
[0240] 酸根碱根词判断模块354,用于根据一预先设置的酸根碱根数据表,在预处理后的待处理语句中确定切分出的药品通用名实体或药品产品名实体之前是否存在分别与药品
通用名实体或药品产品名实体连续的酸根词;并在预处理后的待处理语句中确定切分出的
药品通用名实体或药品产品名实体之后是否存在分别与药品通用名实体或药品产品名实
体连续的碱根词。
[0241] 实体调整模块355,用于将与药品通用名实体或药品产品名实体连续的酸根词抽出,并加入到其对应的药品通用名实体或药品产品名实体中,且实体类型不变;将与药品通
用名实体或药品产品名实体连续的碱根词抽出,并加入到其对应的药品通用名实体或药品
产品名实体中,且实体类型不变。
[0242] 所述实体调整模块355,还用于在预处理后的待处理语句中药品通用名实体与剂型实体相邻时,将药品通用名实体与剂型实体作为整体抽出,形成药品产品名实体;在预处
理后的待处理语句中药品通用名实体之后与预先设置的表示剂型的单字相邻时,将药品通
用名实体与所述表示剂型的单字作为整体抽出,形成药品产品名实体。
[0243] 第二组候选实体形成模块356,用于判断预处理后的待处理语句中是否存在药品名相关实体;所述药品名相关实体包括药品通用名实体、药品产品名实体和药品商品名实
体;在预处理后的待处理语句中存在药品名相关实体时,将预处理后的待处理语句中抽取
出的规格实体、包装规格实体、剂型实体、包材实体中的一个或多个实体与所述药品名相关
实体作为所述第二组候选实体;在预处理后的待处理语句中不存在药品名相关实体时,将
预处理后的待处理语句中抽取出的规格实体、包装规格实体、剂型实体、包材实体舍弃。
[0244] 此外,如图5所示,所述候选实体筛选单元36,包括:
[0245] 非药品术语字符判断模块361,用于判断第一组候选实体和第二组候选实体中各候选实体的末尾字符是否为预先设置的非药品术语字符。
[0246] 候选实体舍弃模块362,用于在各候选实体的末尾字符为预先设置的非药品术语字符时,将所述候选实体舍弃。
[0247] 值得说明的是,本发明实施例提供的一种面向多数据源的药品类实体识别装置的具体实现方式可以参见上述的方法实施例,此处不再赘述。
[0248] 本发明实施例提供的一种面向多数据源的药品类实体识别装置,首先,获取原始数据中的待处理语句;将所述待处理语句进行单字切分,确定待处理语句中的每个文字;根
据预先训练完成的CRF训练模型,确定待处理语句中的每个文字在待处理语句中的实体标
记,并确定待处理语句的实体标记序列;根据待处理语句的实体标记序列,确定待处理语句
的第一组候选实体;然后,根据预先设置的药品类术语切分策略,对所述待处理语句进行术
语切分,确定第二组候选实体;根据第一组候选实体和第二组候选实体中各候选实体的末
尾字符,对各候选实体进行筛选,分别形成第一组药品类候选实体和第二组药品类候选实
体;若第一组药品类候选实体和第二组药品类候选实体不相同,根据预先设置的判断策略
从第一组药品类候选实体和第二组药品类候选实体中确定药品类实体结果。本发明将条件
随机场CRF统计机器学习方法与术语切分方法相结合,能够自动识别药品类实体,克服了当
前的实体识别的数据源较为单一,实体识别不准确的问题。
[0249] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产
品的形式。
[0250] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0251] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
[0252] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
[0253] 本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,
依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内
容不应理解为对本发明的限制。