首页 / 专利库 / 人工智能 / 自然语言文本 / 一种将病历文本从自然语言转换为结构化元数据的方法

一种将病历文本从自然语言转换为结构化元数据的方法

阅读:412发布:2020-05-12

专利汇可以提供一种将病历文本从自然语言转换为结构化元数据的方法专利检索,专利查询,专利分析的服务。并且本 发明 涉及一种将病历文本从自然语言转换为结构化元数据的方法,包括以下步骤:步骤一:从历史病例报告中提取该文本格式中具体器官、部位和术式的特征值文本,并对其进行特征值分析,得出特征字典;步骤二:从医院导出需要分析的历史检测报告,合并成为一个待处理数据集;步骤三:遍历该数据集患者病例,并根据特征值字典分词,截取该器官、部位或术式的说明;步骤四:将该部位截取的数据内容持久化至结构化的 数据库 中。本发明利用历史病例,使用遍历 算法 ,降低了使用成本,免去了训练集的生成步骤,转换后的结构化病例可以方便的对不同器官和部位的病变进行统计、分析和查找,方便医生进行医学研究、编写论文和教学。,下面是一种将病历文本从自然语言转换为结构化元数据的方法专利的具体信息内容。

1.一种将病历文本从自然语言转换为结构化元数据的方法,其特征在于,包括以下步骤:
步骤一:从历史检测报告中提取该文本格式中具体器官、部位和术式的特征值文本,并对其进行特征值分析,得出特征值字典;
步骤二:从医院导出需要分析的历史检测报告,合并成为一个待处理数据集;
步骤三:遍历该数据集患者病例,并根据特征值字典分词,截取该器官、部位或术式的说明;
所述步骤三包括以下子步骤:
7)生成检测报告“内容”的结构化数据内容:遍历数据集每位患者的检测报告,在遍历的每行数据中,取每条的 “住院号”、“内容”和“检查项目”所在列的数据,根据“检测项目”,选择对应的特征值字典,根据特征值字典截取对应部位的说明;
8)生成检测报告“病症”和“治疗方法”的结构化数据内容:遍历数据集每位患者的检测报告,在遍历的每行数据中,取每条的 “住院号”、“病症”和“治疗方法”所在列的数据,如果出现了“术”字,且没有出现“术后”,则选择“病症”的特征值字典,如果出现了“术”字,则选择“治疗方法”的特征值字典,根据特征值字典截取对应部位的说明;
所述子步骤7)包括以下步骤:
7.1)对“内容”文本进行分段:如果报告中出现了逗号、句号、分号和冒号,则将文本按这些标点符号进行分段,生成一个以分段后独立语句为元素的一维矩阵;
7.2)根据特征值生成二维矩阵:遍历一维矩阵,将其中内容数据段与特征值字典进行比较,如果该数据段包括了特征值字典中的特征,则将该部分及该部分后没有见到下一个特征值前的元素放入矩阵数据格式的“列”,特征值作为该 “行”第一列;
7.3)二维矩阵行拆分:对二维矩阵的“行”进行遍历,得到每列数据,遍历“列”数据,如果该行除了第一“列”还有其他的文本在特征值字典中,则复制该“行”的所有“列”到新的“行”,并将该特征值作为新 “行”第一列;
7.4)二维矩阵行合并:对二维矩阵的“行”进行遍历,得到每列数据,遍历“列”数据,如果有多“行”第一列的特征值有相同的内容,这对这些“行”进行合并;
7.5)每个二维矩阵都是一个患者病例内“内容”的结构化内容,“住院号”是这个矩阵的唯一标志,将他们作为一个“键值对”数据结构进行存储,其“键”是“住院号”,“值”是结构化的“内容”;
步骤四:将该部位截取的数据内容持久化至结构化的数据库中。
2.根据权利要求1所述的一种将病历文本从自然语言转换为结构化元数据的方法,其特征在于:所述步骤一特征值提取包括如下子步骤:
1)导出历史检测报告,将检测报告合并后生成一个大的报告表格,表格内容中需要包括:“内容”,“检查项目”,“病症”,“治疗方法”;
2)将每个检查项目对应的“内容”,进行中文分词处理,并将每个不重复的词语列出,并在其后对其统计出现次数后排序;
3)将排序后得到的分词,经医生的删除和补充,得到该医院检查项目对应的内容的特征值字典;
4)重复步骤2)和3)可以生成每一个检查项目对应的病症和治疗方法的特征值字典。
3.根据权利要求1所述的一种将病历文本从自然语言转换为结构化元数据的方法,其特征在于:所述步骤二包括以下子步骤:
5)导出历史数据,以合并的方式准备数据集;
6)遍历数据集,并将导出的数据表合并,得到“住院号”、“患者姓名”、“患者年龄”、“就诊时间” 、“内容”、“病症”、“检查项目”和“治疗方法”,其中“住院号”是患者本次检查的唯一标志,如果报告中的病症和治疗方法是写在一起的, “治疗方法”为空。
4.根据权利要求1所述的一种将病历文本从自然语言转换为结构化元数据的方法,其特征在于:所述步骤四包括以下子步骤:
9)将“检查项目”对应的“内容”特征值字典中的值取出,转换为医学英文,并将其作为数据库的列字段,其中“主键”字段就是“住院号”,建立“检查项目”的“内容”表;
10)遍历“检查项目”的“内容”分析后的“键值对”数据结构,将“住院号”放入数据库主键字段,得到每个患者的“内容”结构化矩阵,遍历矩阵,将每“行”第一列和数据库列名进行比较,如果同属一类,则将本行内容放入该数据库字段;
11)“检查项目”的“病症”和“治疗方法” 如步骤9)至步骤10)的方法进行持久化,“肠镜”的“镜下诊断”和“镜下治疗”除特征值字典外,过程如步骤9)至步骤10)的方法一致。
5.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1至4任意一项所述方法的步骤。

说明书全文

一种将病历文本从自然语言转换为结构化元数据的方法

技术领域

[0001] 本发明属于医疗信息领域,具体涉及一种将病历文本从自然语言转换为结构化元数据的方法。

背景技术

[0002] 随着信息技术的发展和医疗信息化的建设,现在医院都在逐渐使用了结构化报告系统进行报告书写,但是输出到打印报告单上时,影像表现和诊断等信息显示形式单一,基
本都是标签和值的形式,又或者是带数字和值的模式,显然这种形式不能应用于所有类型
报告中,而国内的医院和各个系统需求又需要文本报告,那就需要医生再重新写一份报告,
或者在标签和值的报告形式上进行修改,生成我们的自然语言报告,这样,就增加了医生的
工作量,降低了效率。
[0003] 申请号为“CN201810375610.8”名称为“一种将预结构化数据生成医学报告的方法和系统”的专利采用封装模进行文字替换达到生成不同结构化报告的目的,然而这种方
法对于封装模块内的各字段文字描述无法单独编辑成医生惯用语句,对于医生体验而言仍
不符合使用习惯。

发明内容

[0004] 本发明的目的就是为了解决上述问题,提供这一种将病历文本从自然语言转化为结构化元数据的方法,为大数据分析提供基础的元数据支持。
[0005] 为了实现上述目的,本发明采用如下技术方案:
[0006] 一种将病历文本从自然语言转换为结构化元数据的方法,包括以下步骤:
[0007] 步骤一:从历史检测报告中提取该文本格式中具体器官、部位和术式的特征值文本,并对其进行特征值分析,得出特征值字典;
[0008] 步骤二:从医院导出需要分析的历史检测报告,合并成为一个待处理数据集;
[0009] 步骤三:遍历该数据集患者病例,并根据特征值字典分词,截取该器官、部位或术式的说明;
[0010] 步骤四:将该部位截取的数据内容持久化至结构化的数据库中。
[0011] 所述步骤一特征值提取包括如下子步骤:
[0012] 1)导出历史检测报告,将检测报告合并后生成一个大的报告表格,表格内容中需要包括:“内容”,“检查项目”,“病症”,“治疗方法”;
[0013] 2)将每个检查项目对应的“内容”,进行中文分词处理,并将每个不重复的词语列出,并在其后对其统计出现次数后排序;
[0014] 3)将排序后得到的分词,经医生的删除和补充,得到该医院检查项目对应的内容的特征值字典;
[0015] 4)重复步骤2)和3)可以生成每一个检查项目对应的病症和治疗方法的特征值字典。
[0016] 所述步骤二包括以下子步骤:
[0017] 5)导出历史数据,以合并的方式准备数据集;
[0018] 6)遍历数据集,并将导出的数据表合并,得到“住院号”、“患者姓名”、“患者年龄”、“就诊时间” 、“内容”、“病症”、“检查项目”和“治疗方法”,其中“住院号”是患者本次检查的唯一标志,如果报告中的病症和治疗方法是写在一起的, “治疗方法”为空。
[0019] 所述步骤三包括以下子步骤:
[0020] 7)生成检测报告“内容”的结构化数据内容:遍历数据集每位患者的检测报告,在遍历的每行数据中,取每条的 “住院号”、“内容”和“检查项目”所在列的数据,根据“检测项目”,选择对应的特征值字典,根据特征值字典截取对应部位的说明;
[0021] 8)生成检测报告“病症”和“治疗方法”的结构化数据内容:遍历数据集每位患者的检测报告,在遍历的每行数据中,取每条的 “住院号”、“病症”和“治疗方法”所在列的数据,如果出现了“术”字,且没有出现“术后”,则选择“病症”的特征值字典,如果如果出现了“术”字,则选择“治疗方法”的特征值字典,根据特征值字典截取对应部位的说明。
[0022] 所述子步骤7)包括以下步骤:
[0023] 7.1)对“内容”文本进行分段:如果报告中出现了逗号、句号、分号和冒号,则将文本按这些标点符号进行分段,生成一个以分段后独立语句为元素的一维矩阵;
[0024] 7.2)根据特征值生成二维矩阵:遍历一维矩阵,将其中内容数据段与特征值字典进行比较,如果该数据段包括了特征值字典中的特征,则将该部分及该部分后没有见到下
一个特征值前的元素放入矩阵数据格式的“列”,特征值作为该 “行”第一列;
[0025] 7.3)二维矩阵行拆分:对二维矩阵的“行”进行遍历,得到每列数据,遍历“列”数据,如果该行除了第一“列”还有其他的文本在特征值字典中,则复制该“行”的所有“列”到新的“行”,并将该特征值作为新 “行”第一列;
[0026] 7.4)二维矩阵行合并:对二维矩阵的“行”进行遍历,得到每列数据,遍历“列”数据,如果有多“行”第一列的特征值有相同的内容,这对这些“行”进行合并;
[0027] 7.5)每个二维矩阵都是一个患者病例内“内容”的结构化内容,“住院号”是这个矩阵的唯一标志,将他们作为一个“键值对”数据结构进行存储,其“键”是“住院号”,“值”是结构化的“内容”。
[0028] 所述步骤四包括以下子步骤:
[0029] 9)将“检查项目”对应的“内容”特征值字典中的值取出,转换为医学英文,并将其作为数据库的列字段,其中“主键”字段就是“住院号”,建立“检查项目”的“内容”表;
[0030] 10)遍历“检查项目”的“内容”分析后的“键值对”数据结构,将“住院号”放入数据库主键字段,得到每个患者的“内容”结构化矩阵,遍历矩阵,将每“行”第一列和数据库列名进行比较,如果同属一类,则将本行内容放入该数据库字段;
[0031] 11)“检查项目”的“病症”和“治疗方法” 如步骤9)至步骤10)的方法进行持久化,“肠镜”的“镜下诊断”和“镜下治疗”除特征值字典外,过程如步骤9)至步骤10)的方法一致。
[0032] 本发明具有以下有益效果:
[0033] 本发明利用医院沉积的历史病例,一次性转换和生成完成,不用每次使用都去分析,使用遍历算法替代传统递归和机器学习算法(超平面分类、神经元网络),降低了使用成本和可维护性,在每个医院都可以直接修改和生成,免去了训练集的生成步骤,转换后的结
构化病例可以方便的对不同器官和部位的病变进行统计、分析和查找,方便医生进行医学
研究、编写论文和教学。
附图说明
[0034] 图1为本发明原理框图
[0035] 图2为本发明步骤一原理图。
[0036] 图3为本发明步骤一的子步骤原理图。
[0037] 图4为本发明步骤三原理图。
[0038] 图5为本发明步骤四原理图。

具体实施方式

[0039] 如图1-4所示,一种将病历文本从自然语言转换为结构化元数据的方法,包括以下步骤:
[0040] 步骤一:从历史检测报告中提取该文本格式中具体器官、部位和术式的特征值文本,并对其进行特征值分析,得出特征值字典;
[0041] 步骤二:从医院导出需要分析的历史检测报告,合并成为一个待处理数据集;
[0042] 步骤三:遍历该数据集患者病例,并根据特征值字典分词,截取该器官、部位或术式的说明;
[0043] 步骤四:将该部位截取的数据内容持久化至结构化的数据库中。
[0044] 步骤一特征值提取包括如下子步骤:
[0045] 1)导出历史检测报告,将检测报告合并后生成一个大的报告表格,表格内容中需要包括:“镜下所见”、“镜下诊断”、“检查项目”和“镜下治疗”,其中“镜下所见”描述了消化胃肠镜镜下所见的内容,“检查项目”用于区分是胃镜还是肠镜,“镜下诊断”描述了具体的病症,“镜下治疗”描述了具体的治疗方法;
[0046] 2)将“检查项目”是“胃镜”的“镜下所见”列在程序中进行中文分词处理,并将每个不重复的词语列出,并在其后对其统计出现次数后排序,例如:“贲,次数2048”,“胃底,次数1024”,“幽门,次数512”;
[0047] 3)将排序后得到的分词,经医生的删除和补充,得到该医院“胃镜”的“镜下所见”特征值字典,例如:“咽部”,“会厌”,“消化道”,“食管”,“胃底”,“胃”,“胃窦”,“胃体”,“贲门”,“幽门”,“胃”,“十二指肠球部”,“十二指肠降部”,“十二指肠”这些关键词组成的“胃镜镜下所见”字典;
[0048] 4)按步骤2)和3)可以生成“胃镜”的“镜下诊断”和“镜下治疗”字典;
[0049] 5)将“检查项目”是“肠镜”的“镜下所见”列在程序中进行中文分词处理,并将每个不重复的词语列出,并在其后对其统计出现次数后排序,例如:“循腔进镜,次数2048”,“回盲瓣,次数1024”,“回肠,次数512”;
[0050] 6)将排序后得到的分词,经医生的删除和补充,得到该医院“胃镜”的“镜下所见”特征值字典,例如:“循腔进镜”,“进镜”,“回肠”,“回盲瓣”,“阑尾”,“肠道准备”,“横结肠”,“余结肠”,“升结肠”,“降结肠”,“乙状结肠”,“结肠”,“肝曲”,“脾曲”,“结直肠”,“直肠”,“这些关键词组成的“肠镜镜下所见”字典;
[0051] 7)按步骤5和6可以生成“肠镜”的“镜下诊断”和“镜下治疗”字典。
[0052] 步骤二包括以下子步骤:
[0053] 8)从工作站导出历史数据,再进行合并的方式准备数据集;
[0054] 9)遍历所有的数据集,并将导出的数据表合并,得到“住院号”、“患者姓名”、“患者年龄”、“就诊时间” 、“镜下所见”、“镜下诊断”、“检查项目”和“镜下治疗”,其中“住院号”是患者本次检查的唯一标志,需要注意:有些报告的“诊断”和“治疗”是写在一起的,如果是在一起的情况,“镜下治疗”为空。
[0055] 步骤三包括以下子步骤:
[0056] 10)生成胃肠镜检测报告“镜下所见”的结构化数据内容:遍历数据集每位患者的检测报告,在遍历的每行数据中,取每条的列“住院号”、“镜下所见”和“检查项目”的数据,根据“检测列表”取分类是“胃镜”还是“肠镜”并选择对应的特征值字典,根据特征值字典截取对应部位的说明;
[0057] 11)生成胃肠镜检测报告“镜下诊断”和“镜下治疗”的结构化数据内容:遍历数据集每位患者的检测报告,在遍历的每行数据中,取每条的列“住院号”、“镜下诊断”和“镜下治疗”的数据,如果出现了“术”字,且没有出现“术后”,则选择“镜下诊断”的特征值字典,如果出现了“术”字,则选择“镜下治疗”,根据特征值字典截取对应部位的说明,截取过程见上一段“镜下所见”。
[0058] 子步骤10)包括以下步骤:
[0059] 10.1)对“镜下所见”文本进行分段:如果报告中出现了逗号、句号、分号和冒号,则将文本按这些标点符号进行分段,生成一个以分词后独立语句为元素的一维矩阵;
[0060] 10.2)根据特征值生成二维矩阵:遍历一维矩阵,将其中内容数据段与特征值字典进行比较,如果该数据段包括了特征值字典中的特征,则将该部分及该部分后没有见到下
一个特征值前或的元素放入矩阵数据格式的“列”,特征值作为该 “行”第一列;
[0061] 10.3)二维矩阵行拆分:对二维矩阵的“行”进行遍历,得到每列数据,遍历“列”数据,如果该行除了第一“列”还有其他的文本在特征值字典中,则复制该“行”的所有“列”到新的“行”,并将该特征值作为该 “行”第一列;
[0062] 10.4)二维矩阵行合并:对二维矩阵的“行”进行遍历,得到每列数据,遍历“列”数据,如果有多“行”第一列的特征值有相同的内容,这对这些“行” 进行合并;
[0063] 10.5)每个二维矩阵都是一个患者病例内“镜下所见”的结构化内容,“住院号”是这个矩阵的唯一标志,将他们作为一个“键值对”数据结构进行存储,其“键”是“住院号”,“值”是结构化的“镜下所见”。
[0064] 步骤四包括以下子步骤:
[0065] 12)将“胃镜”的“镜下所见”特征值字典中的值取出,转换为医学英文,并将其作为数据库的列字段,其中“主键”字段就是“住院号”,建立“胃镜”的“镜下所见”表;
[0066] 13)遍历“胃镜”的“镜下所见”分析后的“键值对”数据结构,将“住院号”放入数据库主键字段,得到每个患者的“镜下所见”结构化矩阵,遍历矩阵,将每“行”第一列和数据库列名进行比较,如果同属一类,则将本行内容放入该数据库字段;
[0067] 14)“胃镜”的“镜下诊断”和“镜下治疗”同上述方法进行持久化,“肠镜”除特征值字典外,过程与“胃镜”一致。
[0068] 本发明利用医院沉积的历史病例,一次性转换和生成完成,不用每次使用都去分析,使用遍历算法替代传统递归和机器学习算法(超平面分类、神经元网络),降低了使用成本和可维护性,在每个医院都可以直接修改和生成,免去了训练集的生成步骤,转换后的结
构化病例可以方便的对不同器官和部位的病变进行统计、分析和查找,方便医生进行医学
研究、编写论文和教学。
[0069] 值得说明的是,文中所有出现“二维矩阵”的地方,矩阵也可以使用“键值对(Key-Value)”、“嵌套的链表(Linked list)”、“嵌套的数组(Array、Vector) ”、“集合(Set)”数据结构说明或表示,所有的“遍历”也都可以用“广度(Breadth First)”或“深度优先(depth-first)”、“递归(recursion)”替换,
[0070] 本发明实现上述实施例方法中的全部或部分步骤,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在
被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代
码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计
算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的
增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和
电信信号。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈