System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及信息抽取、自然语言处理,具体而言,涉及一种病历文本变量抽取方法及装置。
技术介绍
1、近年来,随着医疗信息化产业的发展,以电子病历为代表的文本数据规模也呈现出了高速增长的趋势。电子病历因其便于共享、传输效率高、使用方便、便于管理、成本不高等各个方面的优点逐渐取代了传统的纸质病历。
2、从病历文本中提取变量,即从病历文本中获取指定变量的值,是医疗数据再应用的核心环节,主要应用于以下方向:
3、(1)专病数据库:针对某一种或某一类疾病,建立数据库来搜集科研可能使用到的可分析数据;
4、(2)在线crf(临床试验病例报告单)信息抽取:通常用于临床试验、真实世界研究,根据试验要求填充预定crf(临床试验病例报告单);
5、(3)单病种质量控制:针对诊疗流程比较固定的某一种疾病,搜集和评估该病种的质量相关指标或者费用控制。
6、例如:患者患有高血压十五年,最近半年加重,无头痛、胸闷;服用尼莫地平降压,提取变量列表如下:
7、 变量名 值 是否高血压 是 高血压病程 十五年
8、现阶段从病历文本中提取变量的方法主要包括以下两类:
9、第一类是以正则表达式为主的方法:首先由医生解释每个字段的含义,并且标注匹配逻辑、各类同义词;其次由程序员根据医生的配置编写正则表达式,然后分批测试数据,直到结果稳定。
10、第二类是基于nlp算法的方法,该方法的整体流程和第一类的区别在于:把“正则表达式”环节部分换成基于nlp算法首先进行命名实体识别和关系识别,再由程序员在该算法输出结果上编写查询规则。
11、然而,现有的上述两类方法存在以下缺点和难点问题:
12、1、采用以正则表达式为主的方法需要大量人工参与,反复badcase(异常案例)驱动调试,处理效率较低。
13、2、在一家医院调试出来的效果,到另一家医院不可复用,通用度不够。
14、3、逐条研究正则表达式实现医学逻辑,需要技术人员深度参与,生产过程复杂,非常依赖实现人员的熟练程度,非技术人员无法掌握。
15、4、无论第一类还是第二类方式,都没有实现“在线服务式”生产,添加新字段困难。
16、5、因为依靠正则表达式无法有效地参考上下文信息,所以造成提取变量的准确性较差。
17、6、基于nlp算法的方法没有完成全流程闭环,导致人工劳动量没有减少,对算法输出结果的处理,没有一定技术背景的人员无法掌握,病历变量抽取生产效率较低。
技术实现思路
1、鉴于此,本专利技术的目的在于提出一种病历文本变量抽取方法,主要基于三个要点实现:nlp算法标准化、配置描述语言、知识库沉淀,只需要医生按照简单格式表达,不再需要罗列各种变化情况,同时不再需要技术人员参与,以降低病历文本变量抽取的复杂度,解决现有技术的上述缺点和难点问题。
2、本专利技术提供一种病历文本变量抽取方法,包括以下步骤:
3、s1、根据病历文本变量抽取所需的字段配置算子语言脚本;
4、所述配置算子语言脚本的方法包括以下步骤:
5、s11、基于一阶逻辑的数理逻辑,实现基于逻辑推理的形式化语言;
6、基于一阶逻辑的形式化语言的含义举例如下:
7、对于当前手术x,存在y∈{从病历中识别出来发生在x之后的症状或疾病}∧{y∈知识库中x及其父类的并发症以及并发症的标志症状或子类};
8、如果存在,则为:是;如果不存在,则为:否;
9、s12、自定义用于变量生产的基本算子,通过每个所述基本算子将底层的匹配法则、同义词封装成为一个算子函数;
10、s13、配置自然语言描述,系统自动将自然语言转化成内部函数;
11、自然语言描述比如:
12、查找高血压实体|输出有无;
13、查找血压实体|数值大于140mmhg则输出有,否则输出无;
14、s2、嵌套命名文本中的实体识别和关系识别,基于自然语言处理算法将非结构化的电子病历转换成结构化的实体图谱,并输出所述实体图谱;
15、s3、根据所述算子语言脚本的参数,查询知识库中的实体,返回知识库中以该实体为中心的子图;
16、知识库是具有有向图结构的一个知识图谱,知识库中可能存在is-a(继承)和has-a(组合)之外的关系;
17、s4、根据知识库查询结果以及算子语言脚本的参数,查询到所述子图中的实体图谱;
18、s5、使用所述算子语言脚本配合s3步骤和s4步骤的处理结果,获得最终的变量抽取目标值。
19、进一步地,所述s2步骤的嵌套命名文本中的实体识别和关系识别的方法包括以下步骤:
20、s21、采用基于span的模型实现嵌套实体识别,获取不同粒度的医学信息;
21、所述基于span的模型包括encoder和decoder两个模块;
22、所述encoder模块实现对病历文本的向量化以及特征抽出,采用transform-encode模型和cnn卷积神经网络相结合的结构;
23、所述decoder模块通过构造n2矩阵并集合一个多分类器,同时得到不同粒度的实体;
24、s22、基于文本中实体的依存关系和医学关系实现关系识别;
25、通过依存关系抽取获取文本上直接表述的较浅层的医学实体之间的关系,参考nlp算法中依存句法分析任务,采用基于转移的方式实现关系识别;依存关系抽取模块中不仅包含基于dnn的分类模块,同时也包含了支持实体调度的堆栈和列表;
26、通过医学关系抽取获取更为抽象的医学关系,医学关系抽取模块中的算法通过pcnn模型改造而来;
27、s23、根据图联通规则以及定制的语义规则,补充隐含的关系,并删除多余的关系;对关系结构进行标准化,预定义一个标准的关系模板的集合,每个关系模板是一个三元组,把所有关系都归一化成标准的关系模板中的形式。
28、比如:无头痛、胸闷,原始输出为<无,依存,头痛><头痛,依存,胸闷>,归一化后为:<头痛,依本文档来自技高网...
【技术保护点】
1.一种病历文本变量抽取方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的病历文本变量抽取方法,其特征在于,所述S2步骤的嵌套命名文本中的实体识别和关系识别的方法包括以下步骤:
3.根据权利要求1所述的病历文本变量抽取方法,其特征在于,所述S12步骤的将底层的匹配法则、同义词封装成为一个算子函数的方法包括:
4.根据权利要求1所述的病历文本变量抽取方法,其特征在于,所述S12步骤的封装的算子函数包括:
5.根据权利要求1所述的病历文本变量抽取方法,其特征在于,所述S3步骤的查询知识库中的实体的方法包括:
6.根据权利要求5所述的病历文本变量抽取方法,其特征在于,所述查询算子的类型中的实体包括:
7.根据权利要求5所述的病历文本变量抽取方法,其特征在于,所述查询算子的类型中的实体e,关系r的关系能够向上继承,继承实体e的所有祖先类的r关系。
8.一种病历文本变量抽取装置,其特征在于,执行如权利要求1-7任一项所述的病历文本变量抽取方法,包括:
9.一种计算机可读存储介质,其上存储
10.一种计算机设备,所述计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7任一项所述的病历文本变量抽取方法的步骤。
...【技术特征摘要】
1.一种病历文本变量抽取方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的病历文本变量抽取方法,其特征在于,所述s2步骤的嵌套命名文本中的实体识别和关系识别的方法包括以下步骤:
3.根据权利要求1所述的病历文本变量抽取方法,其特征在于,所述s12步骤的将底层的匹配法则、同义词封装成为一个算子函数的方法包括:
4.根据权利要求1所述的病历文本变量抽取方法,其特征在于,所述s12步骤的封装的算子函数包括:
5.根据权利要求1所述的病历文本变量抽取方法,其特征在于,所述s3步骤的查询知识库中的实体的方法包括:
6.根据权利要求5所述的病历文本变量抽取方法,其特征在于,所述查询算子的类型中...
【专利技术属性】
技术研发人员:杜东泽,蒋江涛,徐辉,李资锐,周华威,
申请(专利权)人:超弦势能北京科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。