CN116028648A - 一种细粒度各场景通用的医疗文本结构化信息抽取方法 - Google Patents
一种细粒度各场景通用的医疗文本结构化信息抽取方法 Download PDFInfo
- Publication number
- CN116028648A CN116028648A CN202310113159.3A CN202310113159A CN116028648A CN 116028648 A CN116028648 A CN 116028648A CN 202310113159 A CN202310113159 A CN 202310113159A CN 116028648 A CN116028648 A CN 116028648A
- Authority
- CN
- China
- Prior art keywords
- data
- medical
- medical text
- primary structure
- template
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Medical Treatment And Welfare Office Work (AREA)
Abstract
本发明公开了一种细粒度各场景通用的医疗文本结构化信息抽取方法,涉及医疗信息结构化技术领域,用于解决现有医疗文本的类型及场景较为复杂,对结构化抽取造成障碍,并且结构化抽取的粒度比较粗的问题,本发明包括以下步骤:步骤一:获取待抽取的医疗文本数据,通过预处理模块对医疗文本数据进行预处理,剔除无效或脏数据;步骤二:对完成预处理后的医疗文本数据利用分类模块进行定义,本发明可针对不同场景的医疗文本数据进行结构化抽取,且不同场景所对应的不同类别分类较细,涵括范围广,可灵活适用于不同类型或场景的医疗文本数据进行抽取,也能解决目前主流的医疗文本结构化信息粒度粗,结构化不彻底,信息抽取缺失遗漏等问题。
Description
技术领域
本发明涉及医疗信息结构化技术领域,具体为一种细粒度各场景通用的医疗文本结构化信息抽取方法。
背景技术
医疗文本结构化,主要是从各种医疗数据源数据等非结构化或者半结构化文本信息中抽取重要信息,得到结构化信息。医疗NLP文本结构化信息抽取技术方案与应用,可以说遍布医疗领域的方方面面,包括电子病历、患者信息检索、医疗支持决策、专病信息抽取等都离不开医疗信息的结构化。
疗大数据可以分为三类:结构化数据、半结构化数据和非结构化数据。其中,非结构化的临床文本是医疗活动过程中产生的一类重要的信息资源,也是医疗大数据的重要组成部分。
目前的医疗文本结构化信息抽取过程中,针对医疗文本的类型及场景较为复杂,对结构化抽取造成障碍,并且抽取的粒度比较粗,由于实体和关系schema类别的定义有限,难以将实体以及关系等的修饰、特殊属性、限制等细粒度信息进行精准的识别,医疗嵌套实体等识别也存在问题,因此,设计一种细粒度各场景通用的医疗文本结构化信息抽取方法。
为了解决上述缺陷,现提供一种技术方案。
发明内容
本发明的目的就在于为了解决现有医疗文本的类型及场景较为复杂,对结构化抽取造成障碍,并且结构化抽取的粒度比较粗的问题,而提出一种细粒度各场景通用的医疗文本结构化信息抽取方法。
本发明的目的可以通过以下技术方案实现:
一种细粒度各场景通用的医疗文本结构化信息抽取方法,包括以下步骤:
步骤一:获取待抽取的医疗文本数据,通过预处理模块对医疗文本数据进行预处理,剔除无效或脏数据;
步骤二:对完成预处理后的医疗文本数据利用分类模块进行定义,确定医疗文本数据的类型,并统计不同类型的医疗文本数据的数量,得到本次抽取的医疗文本数据所属类型分布状况;
步骤三:将同一类型的医疗文本数据通过识别模块进行实体及关系识别,确定得到不同类型医疗文本数据的初级结构数据,并建立存储库对新的实体标签或关系录入至存储模块中;
步骤四:通过优化模块对获得的初级结构数据进行校对,得到不合格的初级结构数据,并将不合格的初级结构数据进行优化,降低不合格的初级结构数据量;
步骤五:将优化后的初级结构数据和步骤三得到的初级结构数据经由抽取预设规则配合抽取模块进行二次抽取,得到最终结构数据;
步骤六:通过验证模块对得到的最终结构数据进行验证,判断数据的完整性和准确性。
进一步的,所述预处理模块对医疗文本数据进行预处理的具体操作步骤如下;
预处理模块内分别设置有缺失值处理单元、离群点处理单元及不一致数据处理单元;
缺失值处理单元获取待抽取医疗文本数据,并抓取数据中的缺失值,针对缺失值,通过基于缺失值的分布特性和重要率进行相对应的处理方法;
当缺失率高于80%,覆盖率和重要率低于预设值时,则将缺失值的数据直接删除,即为缺失值删除;
当缺失率小于95%时,且重要率低于预设值时,则根据数据的分布情况用基于统计量填充进行填充,即为缺失值的填充;
利用离群点处理单元对处于特定分布区域范围之外的数据进行删除,处于特定分布区域范围之外的数据为离群点或异常值,也称此类数据为异常或噪声;
通过不一致数据处理单元对与原始数据不一致或错误数据进行修正,可通过与原始数据进行比对和更正,同时利用知识工程工具对违反规则的数据进行检测。
进一步的,所述分类模块判断待抽取的医疗文本数据的类型的具体操作步骤如下:
医疗文本数据类型由诊疗数据、研发数据、患者数据及支付或医保数据组成;根据医疗文本数据类型中的诊疗数据、研发数据、患者数据及支付或医保数据分别建立四个文本数据模板,并将经过预处理的医疗文本数据分别与四个文本数据模板进行比对,判断经过预处理的医疗文本数据跟四个文本数据模板重合度最高,以得到医疗文本数据的类型,医疗文本数据类型分为治疗数据类别、研发数据类别、患者数据类别及支付或医保数据类别;
诊疗数据模板内包含电子病历数据模板、传统检测项目结果数据模板、新兴检测项目结果数据模板、医生用药选择数据模板及诊疗路径记录数据模板,并将经过预处理的医疗文本数据与诊疗数据模板内包含的若干个数据模板进行比对,得到诊疗数据模板重合度;
研发数据模板内包含医院临床试验数据模板及科研机构最新科研进展数据模板,并将经过预处理的医疗文本数据与研发数据模板内包含的两种数据模板进行比对,得到研发数据模板重合度;
患者数据模板内包含可穿戴设备收集的体征类的健康管理数据模板及网络行为数据模板,并将经过预处理的医疗文本数据与患者数据模板内包含的两种数据模板进行比对,得到患者数据模板重合度;
支付或医保数据模板包含患者支付记录数据模板、报销记录数据模板及医药流通记录数据模板,并将经过预处理的医疗文本数据与支付或医保数据模板内包含的若干个数据模板进行比对,得到支付或医保数据模板重合度;
分别将诊疗数据模板重合度、研发数据模板重合度、患者数据模板重合度及支付或医保数据模板重合度进行比对,得到最高值,以此判断经过预处理的医疗文本数据所处的数据模板,得到待抽取医疗文本数据的类型;
分别对位于治疗数据类别、研发数据类别、患者数据类别及支付或医保数据类别四个类别的医疗文本数据数量进行统计,得到本次抽取的医疗文本数据所属类型分布状况。
进一步的,所述优化模块对获得的初级结构数据进行校对的具体操作步骤如下:将异常的初级结构数据量和初级结构数据总量分别标定为y和z,利用公式得到初级结构数据的合格率H,将初级数据合格率H与预设合格率进行比对,判断初级数据合格率H是否达标;将异常的初级结构数据进行分析,判断异常的初级结构数据的异常原因,并根据异常的初级结构数据的异常原因得到异常初级结构数据的可修复率,将可修复率与预设可修复率进行比对,当可修复率大于预设可修复率则对异常的初级结构数据进行修复;当可修复率小于预设可修复率,则对此部分的异常的初级结构数据进行剔除,降低异常或不合格的初级结构数据量;
进一步的,所述优化模块对异常的初级结构数据进行修复的具体操作步骤如下:
对存在缺失值的异常初级结构数据进行数据忽略,当数据忽略量或忽略的数据连贯性大于预设值时,利用均值填充法对缺失值进行填充,使用样本的均值替换异常初级结构数据中的忽略量,对样本较为平滑的数据极为合适,当出现填充或修复的效果未达到预计效果时,利用矩阵分解或链式方程对异常的初级结构数据中的缺失值进行多源插补修复。
进一步的,所述抽取模块对初级结构数据及优化后的初级结构数据抽取的具体操作步骤如下:
将得到的初级结构数据及优化后的初级结构数据经由抽取预设规则进行二次抽取得到最终结构数据,其中抽取预设规则即从schema设计上囊括所有医疗文书涉及到的医疗实体,同时在文本标注与模型训练上采用最细粒度信息单元进行数据标注与模型训练,并且提供除实体识别、关系抽取之外的通用属性识别以及特殊属性识别的能力。
进一步的,所述验证模块对最终结构数据完整性和准确性进行验证的具体操作步骤如下:
数据完整性及准确性分别通过数据的查全率及准确率作为结构数据的验证指标,对最终结构数据中所有正确抽取指标值数目、所有待抽取信息指标值数目及所有抽取到的指标值数目进行采集,并将所有正确抽取指标值数目、所有待抽取信息指标值数目及所有抽取到的指标值数目分别标定为Z、D及S,代入公式:及中,同时对指标名添加项数目的设置分别得到查全率C及准确率L,以查全率C及准确率L来判断最终结构数据完整性和准确性。
与现有技术相比,本发明的有益效果是:
(1)本发明,可针对不同场景的医疗文本数据进行结构化抽取,且不同场景所对应的不同类别分类较细,涵括范围广,可灵活适用于不同类型或场景的医疗文本数据进行抽取,同时可对每轮的医疗文本数据数量的分类数量进行统计,得到本次抽取的医疗文本数据所属类型分布状况;
(2)本发明,经过双重结构化信息抽取配合优化模块及验证模块可大大降低异常结构数据量,从而整体提高最终结构数据的抽取准确度;
(3)本发明,对文本标注与模型训练上采用最细粒度信息单元进行数据标注与模型训练,并且提供了除了实体识别、关系抽取之外的通用属性识别以及特殊属性识别的能力,保证以最细粒度抽取出非结构化文本信息中包含的全部信息,解决目前主流的医疗文本结构化信息粒度粗,结构化不彻底,信息抽取缺失遗漏等问题。
附图说明
为了便于本领域技术人员理解,下面结合附图对本发明作进一步的说明;
图1为本发明的系统总框图;
图2为本发明中结构化信息抽取系统总框图。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
应当理解,本披露的说明书和权利要求书中使用的术语“包括”和 “包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本披露说明书中所使用的术语仅仅是出于描述特定实施例的目的,而并不意在限定本披露。如在本披露说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本披露说明书和权利要求书中使用的术语“和/ 或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如图1所示,一种细粒度各场景通用的医疗文本结构化信息抽取方法,包括结构化信息抽取系统,结构化信息抽取系统包括预处理模块、分类模块、识别模块、存储模块、优化模块、抽取模块及验证模块;
预处理模块用于对获取的待抽取医疗文本数据进行清洗,提高待抽取医疗文本的数据质量;预处理模块内设置有缺失值处理单元、离群点处理单元和不一致数据处理单元;缺失值处理单元,在获取待抽取医疗文本数据过程中,会存在数据的丢失和空缺,针对这些缺失值,可基于缺失值的分布特性和重要率进行相对应的处理方法,当缺失率高于80%,覆盖率和重要率较低时,则可将缺失值的数据直接删除,即为缺失值删除;当缺失率小于95%时,且重要率低于预设值时,则根据数据的分布情况用基于统计量填充进行填充,即为缺失值的填充;
离群点处理单元用于对处于特定分布区域范围之外的数据进行删除,此类数据为离群点或异常值,离群点为数据分布的常态,通常也称此类数据为异常或噪声;
不一致数据处理单元用于对一些与原始数据不一致或错误数据进行修正,可通过与原始数据进行比对和更正,也能利用知识工程工具对违反规则的数据进行检测,其中违反规则的数据即为一些与原始数据不一致或出现错误的数据部分;
分类模块用于对经过预处理的医疗文本数据进行定义,判断待抽取的医疗文本数据的类型;医疗文本数据类型由诊疗数据、研发数据、患者数据及支付或医保数据组成;其中诊疗数据来自患者在医院诊所就医过程中产生的数据,主要的采集端为医疗机构,包括电子病历、传统检测项目结果、新兴检测项目结果、医生用药选择及诊疗路径记录;研发数据的主要采集端为器械医药研究企业、研发外包公司或科研机构研发过程中产生的数据,主要数据来源为医药研发过程中的医院临床试验及科研机构的最新科研进展;患者数据即患者自身的、在院外行为和感官产生的数据,主要采集端是可穿戴设备和各类轻医疗平台,由通过可穿戴设备收集的体征类的健康管理数据及网络行为数据组成,其中网络行为数据为挂号问诊、网络购药、健康管理、医患病友交流等;支付或医保数据即一切与付费方相关的审核或报销记录,包括患者支付记录、报销记录及医药流通记录;
根据医疗文本数据类型中的诊疗数据、研发数据、患者数据及支付或医保数据分别建立四个文本数据模板,并将经过预处理的医疗文本数据分别与四个文本数据模板进行比对,判断经过预处理的医疗文本数据跟四个文本数据模板重合度最高,以此得到医疗文本数据的类型,医疗文本数据类型分为治疗数据类别、研发数据类别、患者数据类别及支付或医保数据类别;
其中,诊疗数据模板内包含电子病历数据模板、传统检测项目结果数据模板、新兴检测项目结果数据模板、医生用药选择数据模板及诊疗路径记录数据模板,并将经过预处理的医疗文本数据与诊疗数据模板内包含的多种数据模板进行比对,得到诊疗数据模板重合度,并标定为H1;研发数据模板内包含医院临床试验数据模板及科研机构最新科研进展数据模板,并将经过预处理的医疗文本数据与研发数据模板内包含的两种数据模板进行比对,得到研发数据模板重合度,并标定为H2;患者数据模板内包含可穿戴设备收集的体征类的健康管理数据模板及网络行为数据模板,并将经过预处理的医疗文本数据与患者数据模板内包含的两种数据模板进行比对,得到患者数据模板重合度,并标定为H3;支付或医保数据模板包含患者支付记录数据模板、报销记录数据模板及医药流通记录数据模板,并将经过预处理的医疗文本数据与支付或医保数据模板内包含的多种数据模板进行比对,得到支付或医保数据模板重合度,并标定为H4;分别将诊疗数据模板重合度H1、研发数据模板重合度H2、患者数据模板重合度H3及支付或医保数据模板重合度H4进行比对,得到最高值,以此判断经过预处理的医疗文本数据所处的数据模板,得到待抽取医疗文本数据的类型;分别对位于治疗数据类别、研发数据类别、患者数据类别及支付或医保数据类别四个类别的医疗文本数据数量进行统计,得到本次抽取的医疗文本数据所属类型分布状况;
识别模块用于对治疗数据类别、研发数据类别、患者数据类别及支付或医保数据类别四个类别的医疗文本数据分别进行实体识别,实体识别采用bert_softmax、bert_crf、bert_span、bert_globalpointer等以及常用的bilstm+crf、span指针、GlobalPointer等进行实体的识别,并对识别后的实体进行关系识别;
存储模块用于对新的实体标签进行录入,将识别的实体标签与数据库中现有的实体标签进行比对,选出存在差别的实体标签,并进行标记,将标记的实体标签录入至存储模块中,使存储模块与数据库中的现有实体标签进行更新,使同样的实体标签在下次识别中更加迅速;
优化模块用于对获得的初级结构数据进行校对,得到异常的初级结构数据,将异常的初级结构数据量和初级结构数据总量分别标定为y和z,利用公式得到初级结构数据的合格率H,将初级数据合格率H与预设合格率进行比对,判断初级数据合格率H是否达标;将异常的初级结构数据进行分析,判断异常的初级结构数据的异常原因,并根据异常的初级结构数据的异常原因得到异常初级结构数据的可修复率,将可修复率与预设可修复率进行比对,当可修复率大于预设可修复率则尝试对异常的初级结构数据进行修复;修复过程可对存在缺失值的异常初级结构数据进行数据忽略,当数据忽略量或忽略的数据连贯性大于预设值时,利用均值填充法对缺失值进行填充,使用样本的均值替换异常初级结构数据中的忽略量,对样本较为平滑的数据极为合适,当出现填充或修复的效果未达到预计效果时,利用矩阵分解或链式方程对异常的初级结构数据中的缺失值进行多源插补修复;
当可修复率小于预设可修复率,则对此部分的异常的初级结构数据进行剔除;实现对初级结构数据的优化,降低异常或不合格的初级结构数据量;
抽取模块用于将得到的初级结构数据及优化后的初级结构数据经由抽取预设规则进行二次抽取得到最终结构数据,从而保证以最细粒度抽取出非结构化文本信息及待抽取的医疗文本中包含的全部信息,其中抽取预设规则即从schema设计上囊括所有医疗文书涉及到的医疗实体,然后文本标注与模型训练上采用最细粒度信息单元进行数据标注与模型训练,并且提供了除了实体识别、关系抽取之外的通用属性识别(否定的、既往的等)以及特殊属性识别(限定、剂量、单位等)的能力,从而避免医疗文本数据结构化信息粒度粗,结构化不彻底,信息抽取缺失遗漏的问题;
验证模块用于对抽取的最终结构数据完整性和准确性进行验证,其中数据完整性及准确性分别通过数据的查全率及准确率作为结构数据的验证指标;对最终结构数据中所有正确抽取指标值数目、所有待抽取信息指标值数目及所有抽取到的指标值数目进行采集,并将所有正确抽取指标值数目、所有待抽取信息指标值数目及所有抽取到的指标值数目分别标定为Z、D及S,代入公式:及中通过对指标名添加项数目的设置分别得到查全率C及准确率L;并通过对所有正确抽取指标值数目、所有待抽取信息指标值数目及所有抽取到的指标值数目及数据的查全率及准确率和指标名添加项数目的设置比对得出:对待抽取医疗文本数据分析不充分时,信息的准确性和完整性较低;待抽取医疗文本数据分析充分时,能获得较高的查全率和准确率;
具体的应用场景:
实例:医疗文本数据:“12017-12-29外院C:右肺中叶多发微小结节*,左肺未见结节*”;
首先将获取的医疗文本数据“12017-12-29外院C:右肺中叶多发微小结节*,左肺未见结节*”通过预处理模块进行预处理,利用预处理模块中的缺失值处理单元抓取文本数据中的缺失值,判断医疗文本数据中的缺失率,小于95%时,本数据的分布情况用基于统计量填充对数据填充,得到新的文本数据“12017-12-29外院CT:右肺中叶多发微小结节*,左肺未见结节*”,并利用离群点处理单元对处于特定分布区域范围之外的数据进行删除,得到“2017-12-29外院CT:右肺中叶多发微小结节*,左肺未见结节*”,再通过不一致数据处理单元对“2017-12-29外院CT:右肺中叶多发微小结节*,左肺未见结节*”与源数据“12017-12-29外院C:右肺中叶多发微小结节*,左肺未见结节*”进行比对,修正完成后得到“2017-12-29外院CT:右肺中叶多发微小结节,左肺未见结节”;
利用分类模块对完成预处理的医疗文本进行定义,通过将文本数据“2017-12-29外院CT:右肺中叶多发微小结节,左肺未见结节”与建立的医疗文本数据类型中的诊疗数据模板、研发数据模板、患者数据模板及支付或医保数据模板四个文本数据模板进行比对,分别与电子病历数据模板、传统检测项目结果数据模板、新兴检测项目结果数据模板、医生用药选择数据模板、诊疗路径记录数据模板、临床试验数据模板、科研机构最新科研进展数据模板、可穿戴设备收集的体征类的健康管理数据模板、网络行为数据模板、患者支付记录数据模板、报销记录数据模板及医药流通记录数据模板进行比对,从而得到重合度最高的模板,此文本数据通过比对与传统检测项目结果数据模板重合度最高,达到92%,即判定此文本数据为诊疗数据模板范围内,并定义为治疗数据类别医疗文本数据;
对“2017-12-29外院CT:右肺中叶多发微小结节,左肺未见结节”进行实体及关系识别得到初级结构数据:
"sentence": "2017-12-29外院CT:右肺中叶多发微小结节,左肺未见结节。",
"entities": [
{
"ident": "T_日期_0_10_2017-12-29",
"type_name": "日期",
"target": "2017-12-29",
"first_type": "时间",
"begin_char": 0,
"end_char": 10,
"from": "bert",
"uni_attribute": [],
"sep_attribute": []
},
{
"ident": "T_检查_12_14_CT",
"type_name": "检查",
"target": "CT",
"first_type": "检查检验",
"begin_char": 12,
"end_char": 14,
"from": "bert",
"uni_attribute": [
[
"既往的",
0.9609889388084412
]
],
"sep_attribute": []
},
{
"ident": "T_位置_15_16_右",
"type_name": "位置",
"target": "右",
"first_type": "空间概念",
"begin_char": 15,
"end_char": 16,
"from": "bert",
"uni_attribute": [],
"sep_attribute": []
},
{
"ident": "T_解剖结构_16_19_肺中叶",
"type_name": "解剖结构",
"target": "肺中叶",
"first_type": "解剖结构",
"begin_char": 16,
"end_char": 19,
"from": "bert",
"uni_attribute": [],
"sep_attribute": [
[
"位置",
"T_位置_15_16_右",
0.975136399269104
]
]
},
{
"ident": "T_限定语_19_21_多发",
"type_name": "限定语",
"target": "多发",
"first_type": "限定语",
"begin_char": 19,
"end_char": 21,
"from": "bert",
"uni_attribute": [],
"sep_attribute": []
},
{
"ident": "T_限定语_21_23_微小",
"type_name": "限定语",
"target": "微小",
"first_type": "限定语",
"begin_char": 21,
"end_char": 23,
"from": "bert",
"uni_attribute": [],
"sep_attribute": []
},
{
"ident": "T_疾病_23_25_结节",
"type_name": "疾病",
"target": "结节",
"first_type": "疾病",
"begin_char": 23,
"end_char": 25,
"from": "bert",
"uni_attribute": [
[
"既往的",
0.8899813294410706
]
],
"sep_attribute": [
[
"限定语",
"T_限定语_19_21_多发",
0.9652578234672546
],
[
"限定语",
"T_限定语_21_23_微小",
0.9688517451286316
]
]
},
{
"ident": "T_位置_26_27_左",
"type_name": "位置",
"target": "左",
"first_type": "空间概念",
"begin_char": 26,
"end_char": 27,
"from": "bert",
"uni_attribute": [],
"sep_attribute": []
},
{
"ident": "T_解剖结构_27_28_肺",
"type_name": "解剖结构",
"target": "肺",
"first_type": "解剖结构",
"begin_char": 27,
"end_char": 28,
"from": "bert",
"uni_attribute": [],
"sep_attribute": [
[
"位置",
"T_位置_26_27_左",
0.9751249551773071
]
]
},
{
"ident": "T_疾病_30_32_结节",
"type_name": "疾病",
"target": "结节",
"first_type": "疾病",
"begin_char": 30,
"end_char": 32,
"from": "bert",
"uni_attribute": [
[
"否定的",
0.9360377192497253
],
[
"既往的",
0.6561043858528137
]
],
"sep_attribute": []
}
],
"relations": [
{
"from": "T_检查_12_14_CT",
"to": "T_日期_0_10_2017-12-29",
"label": "时间关系-现在",
"prob": 0.77472323179245
},
{
"from": "T_疾病_23_25_结节",
"to": "T_解剖结构_16_19_肺中叶",
"label": "位置关系",
"prob": 0.8902782797813416
},
{
"from": "T_疾病_30_32_结节",
"to": "T_解剖结构_27_28_肺",
"label": "位置关系",
"prob": 0.9049229025840759
}
]
},
"msg": ""
}
其中:sentence 即输入的text句子
entities为识别到的实体,包括实体type,开始结束位置,实体类别以及实体的一级类别,以及该实体的通用属性(否定的、既往的等),以及该实体的特殊属性(属性值来源于句子中的其他实体值)
from_to:表示对外透出可用的模型识别到的实体关系(不含其他,且高阈值,概率大于0.6)
完成识别后,利用存储模块对新的实体标签进行录入,将识别的实体标签与数据库中现有的实体标签进行比对,未存在差别实体标签,故无需进行录入操作;
再通过优化模块对上述获得的初级结构数据进行校对,为判断到初级结构数据的异常则跳到下一步;
最后利用抽取模块将得到的初级结构数据经由抽取预设规则进行二次抽取得到最终结构数据,其中抽取预设规则即从schema设计上囊括所有医疗文书涉及到的医疗实体,然后文本标注与模型训练上采用最细粒度信息单元进行数据标注与模型训练,并且提供了除了实体识别、关系抽取之外的通用属性识别(否定的、既往的等)以及特殊属性识别(限定、剂量、单位等)的能力,从而避免医疗文本数据结构化信息粒度粗,完成最终结构化数据的抽取后,通过验证模块对得到的最终结构数据进行验证,判断数据的完整性和准确性均得到预设标准,即为合格的最终结构化数据。
工作原理:本发明在使用时,首先获取待抽取的医疗文本数据,其中医疗文本数据由诊疗数据、研发数据、患者数据及支付或医保数据四个类别组成,对医疗文本数据进行预处理,剔除无效或脏数据,并对确实文本数据的缺失部分进行填充,然后对完成预处理后的医疗文本数据进行定义,确定医疗文本数据的类型,其中定义过程可通过将医疗文本数据与诊疗数据模板、研发数据模板、患者数据模板及支付或医保数据模板四个文本数据模板进行比对,从而得到重合度最高的模板,从而对医疗文本数据进行类型的确定,同时可统计不同类型的医疗文本数据的数量,得到本次抽取的医疗文本数据所属类型分布状况,再将同一类型的医疗文本数据进行实体及关系识别,确定得到不同类型医疗文本数据的初级结构数据,并建立存储库对新的实体标签或关系进行录入,便于对整个存储库进行实体及实体关系的实时更新,并且对获得的初级结构数据进行校对,得到不合格的初级结构数据,并将不合格的初级结构数据进行优化,降低不合格的初级结构数据量,最后将优化后的初级结构数据和最初的初级结构数据经由抽取预设规则进行二次抽取,得到最终结构数据,其中抽取预设规则即从schema设计上囊括所有医疗文书涉及到的医疗实体,然后文本标注与模型训练上采用最细粒度信息单元进行数据标注与模型训练,并且提供了除了实体识别、关系抽取之外的通用属性识别以及特殊属性识别的能力,从而避免医疗文本数据结构化信息粒度粗,结构化不彻底,信息抽取缺失遗漏的问题。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (7)
1.一种细粒度各场景通用的医疗文本结构化信息抽取方法,包括以下步骤:
步骤一:获取待抽取的医疗文本数据,通过预处理模块对医疗文本数据进行预处理,剔除无效或脏数据;
步骤二:对完成预处理后的医疗文本数据利用分类模块进行定义,确定医疗文本数据的类型,并统计不同类型的医疗文本数据的数量,得到本次抽取的医疗文本数据所属类型分布状况;
步骤三:将同一类型的医疗文本数据通过识别模块进行实体及关系识别,确定得到不同类型医疗文本数据的初级结构数据,并建立存储库对新的实体标签或关系录入至存储模块中;
步骤四:通过优化模块对获得的初级结构数据进行校对,得到不合格的初级结构数据,并将不合格的初级结构数据进行优化,降低不合格的初级结构数据量;
步骤五:将优化后的初级结构数据和步骤三得到的初级结构数据经由抽取预设规则配合抽取模块进行二次抽取,得到最终结构数据;
步骤六:通过验证模块对得到的最终结构数据进行验证,判断数据的完整性和准确性。
2.根据权利要求1所述的一种细粒度各场景通用的医疗文本结构化信息抽取方法,其特征在于,所述预处理模块对医疗文本数据进行预处理的具体操作步骤如下:
预处理模块内分别设置有缺失值处理单元、离群点处理单元及不一致数据处理单元;
缺失值处理单元获取待抽取医疗文本数据,并抓取数据中的缺失值,针对缺失值,通过基于缺失值的分布特性和重要率进行相对应的处理方法;
当缺失率高于80%,覆盖率和重要率低于预设值时,则将缺失值的数据直接删除,即为缺失值删除;
当缺失率小于95%时,且重要率低于预设值时,则根据数据的分布情况用基于统计量填充进行填充,即为缺失值的填充;
利用离群点处理单元对处于特定分布区域范围之外的数据进行删除,处于特定分布区域范围之外的数据为离群点或异常值,也称此类数据为异常或噪声;
通过不一致数据处理单元对与原始数据不一致或错误数据进行修正,可通过与原始数据进行比对和更正,同时利用知识工程工具对违反规则的数据进行检测。
3.根据权利要求1所述的一种细粒度各场景通用的医疗文本结构化信息抽取方法,其特征在于,所述分类模块判断待抽取的医疗文本数据的类型的具体操作步骤如下:
医疗文本数据类型由诊疗数据、研发数据、患者数据及支付或医保数据组成;根据医疗文本数据类型中的诊疗数据、研发数据、患者数据及支付或医保数据分别建立四个文本数据模板,并将经过预处理的医疗文本数据分别与四个文本数据模板进行比对,判断经过预处理的医疗文本数据跟四个文本数据模板重合度最高,以得到医疗文本数据的类型,医疗文本数据类型分为治疗数据类别、研发数据类别、患者数据类别及支付或医保数据类别;
诊疗数据模板内包含电子病历数据模板、传统检测项目结果数据模板、新兴检测项目结果数据模板、医生用药选择数据模板及诊疗路径记录数据模板,并将经过预处理的医疗文本数据与诊疗数据模板内包含的若干个数据模板进行比对,得到诊疗数据模板重合度;
研发数据模板内包含医院临床试验数据模板及科研机构最新科研进展数据模板,并将经过预处理的医疗文本数据与研发数据模板内包含的两种数据模板进行比对,得到研发数据模板重合度;
患者数据模板内包含可穿戴设备收集的体征类的健康管理数据模板及网络行为数据模板,并将经过预处理的医疗文本数据与患者数据模板内包含的两种数据模板进行比对,得到患者数据模板重合度;
支付或医保数据模板包含患者支付记录数据模板、报销记录数据模板及医药流通记录数据模板,并将经过预处理的医疗文本数据与支付或医保数据模板内包含的若干个数据模板进行比对,得到支付或医保数据模板重合度;
分别将诊疗数据模板重合度、研发数据模板重合度、患者数据模板重合度及支付或医保数据模板重合度进行比对,得到最高值,以此判断经过预处理的医疗文本数据所处的数据模板,得到待抽取医疗文本数据的类型;
分别对位于治疗数据类别、研发数据类别、患者数据类别及支付或医保数据类别四个类别的医疗文本数据数量进行统计,得到本次抽取的医疗文本数据所属类型分布状况。
4.根据权利要求1所述的一种细粒度各场景通用的医疗文本结构化信息抽取方法,其特征在于,所述优化模块对获得的初级结构数据进行校对的具体操作步骤如下:
将异常的初级结构数据量和初级结构数据总量利用公式得到初级结构数据的合格率,将初级数据合格率与预设合格率进行比对,判断初级数据合格率是否达标;将异常的初级结构数据进行分析,判断异常的初级结构数据的异常原因,并根据异常的初级结构数据的异常原因得到异常初级结构数据的可修复率,将可修复率与预设可修复率进行比对,当可修复率大于预设可修复率则对异常的初级结构数据进行修复;当可修复率小于预设可修复率,则对此部分的异常的初级结构数据进行剔除,降低异常或不合格的初级结构数据量。
5.根据权利要求1所述的一种细粒度各场景通用的医疗文本结构化信息抽取方法,其特征在于,所述优化模块对异常的初级结构数据进行修复的具体操作步骤如下:
对存在缺失值的异常初级结构数据进行数据忽略,当数据忽略量或忽略的数据连贯性大于预设值时,利用均值填充法对缺失值进行填充,使用样本的均值替换异常初级结构数据中的忽略量,对样本较为平滑的数据极为合适,当出现填充或修复的效果未达到预计效果时,利用矩阵分解或链式方程对异常的初级结构数据中的缺失值进行多源插补修复。
6.根据权利要求1所述的一种细粒度各场景通用的医疗文本结构化信息抽取方法,其特征在于,所述抽取模块对初级结构数据及优化后的初级结构数据抽取的具体操作步骤如下:
将得到的初级结构数据及优化后的初级结构数据经由抽取预设规则进行二次抽取得到最终结构数据,其中抽取预设规则即从schema设计上囊括所有医疗文书涉及到的医疗实体,同时在文本标注与模型训练上采用最细粒度信息单元进行数据标注与模型训练,并且提供除实体识别、关系抽取之外的通用属性识别以及特殊属性识别的能力。
7.根据权利要求1所述的一种细粒度各场景通用的医疗文本结构化信息抽取方法,其特征在于,所述验证模块对最终结构数据完整性和准确性进行验证的具体操作步骤如下:
数据完整性及准确性分别通过数据的查全率及准确率作为结构数据的验证指标,对最终结构数据中所有正确抽取指标值数目、所有待抽取信息指标值数目及所有抽取到的指标值数目进行采集,并将所有正确抽取指标值数目、所有待抽取信息指标值数目及所有抽取到的指标值数目分别利用公式配合指标名添加项数目的设置分别得到查全率及准确率,并以查全率及准确率来判断最终结构数据完整性和准确性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310113159.3A CN116028648B (zh) | 2023-02-15 | 2023-02-15 | 一种细粒度各场景通用的医疗文本结构化信息抽取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310113159.3A CN116028648B (zh) | 2023-02-15 | 2023-02-15 | 一种细粒度各场景通用的医疗文本结构化信息抽取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116028648A true CN116028648A (zh) | 2023-04-28 |
CN116028648B CN116028648B (zh) | 2023-06-09 |
Family
ID=86073928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310113159.3A Active CN116028648B (zh) | 2023-02-15 | 2023-02-15 | 一种细粒度各场景通用的医疗文本结构化信息抽取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116028648B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180025121A1 (en) * | 2016-07-20 | 2018-01-25 | Baidu Usa Llc | Systems and methods for finer-grained medical entity extraction |
CN110597970A (zh) * | 2019-08-19 | 2019-12-20 | 华东理工大学 | 一种多粒度医疗实体联合识别的方法及装置 |
WO2020211275A1 (zh) * | 2019-04-18 | 2020-10-22 | 五邑大学 | 基于预训练模型与微调技术的医疗文本关系抽取方法 |
CN113343680A (zh) * | 2021-05-19 | 2021-09-03 | 大连东软教育科技集团有限公司 | 一种基于多类型病历文本的结构化信息提取方法 |
CN113361230A (zh) * | 2021-05-27 | 2021-09-07 | 重庆南鹏人工智能科技研究院有限公司 | 一种基于临床诊疗指南进行电子病历诊疗质控的方法 |
CN113779983A (zh) * | 2021-04-16 | 2021-12-10 | 南京擎盾信息科技有限公司 | 文本数据处理方法以及装置、存储介质、电子装置 |
CN114861663A (zh) * | 2022-04-13 | 2022-08-05 | 南京大学 | 一种实体关系联合抽取方法 |
CN115438198A (zh) * | 2022-11-07 | 2022-12-06 | 四川大学 | 一种基于知识库的可解释性医疗数据结构化方法和系统 |
WO2023279684A1 (zh) * | 2021-07-06 | 2023-01-12 | 中电科大数据研究院有限公司 | 一种基于命名规则和缓存机制的知识图谱构建的操作方法 |
-
2023
- 2023-02-15 CN CN202310113159.3A patent/CN116028648B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180025121A1 (en) * | 2016-07-20 | 2018-01-25 | Baidu Usa Llc | Systems and methods for finer-grained medical entity extraction |
CN107644011A (zh) * | 2016-07-20 | 2018-01-30 | 百度(美国)有限责任公司 | 用于细粒度医疗实体提取的系统和方法 |
WO2020211275A1 (zh) * | 2019-04-18 | 2020-10-22 | 五邑大学 | 基于预训练模型与微调技术的医疗文本关系抽取方法 |
CN110597970A (zh) * | 2019-08-19 | 2019-12-20 | 华东理工大学 | 一种多粒度医疗实体联合识别的方法及装置 |
CN113779983A (zh) * | 2021-04-16 | 2021-12-10 | 南京擎盾信息科技有限公司 | 文本数据处理方法以及装置、存储介质、电子装置 |
CN113343680A (zh) * | 2021-05-19 | 2021-09-03 | 大连东软教育科技集团有限公司 | 一种基于多类型病历文本的结构化信息提取方法 |
CN113361230A (zh) * | 2021-05-27 | 2021-09-07 | 重庆南鹏人工智能科技研究院有限公司 | 一种基于临床诊疗指南进行电子病历诊疗质控的方法 |
WO2023279684A1 (zh) * | 2021-07-06 | 2023-01-12 | 中电科大数据研究院有限公司 | 一种基于命名规则和缓存机制的知识图谱构建的操作方法 |
CN114861663A (zh) * | 2022-04-13 | 2022-08-05 | 南京大学 | 一种实体关系联合抽取方法 |
CN115438198A (zh) * | 2022-11-07 | 2022-12-06 | 四川大学 | 一种基于知识库的可解释性医疗数据结构化方法和系统 |
Non-Patent Citations (4)
Title |
---|
HAOHUA WANG 等: "Construction of Therapy-Disease Knowledge Graph (TDKG) Based on Entity Relationship Extraction", 2021 4TH INTERNATIONAL CONFERENCE ON ADVANCED ELECTRONIC MATERIALS, COMPUTERS AND SOFTWARE ENGINEERING (AEMCSE), pages 1 - 5 * |
周侗: "面向中文电子病历的医疗实体及关系识别技术研究", 中国优秀硕士学位论文全文数据库 (医药卫生科技辑), pages 053 - 269 * |
宁尚明;滕飞;李天瑞;: "基于多通道自注意力机制的电子病历实体关系抽取", 计算机学报, no. 05, pages 916 - 929 * |
田驰远;陈德华;王梅;乐嘉锦;: "基于依存句法分析的病理报告结构化处理方法", 计算机研究与发展, no. 12, pages 2669 - 2680 * |
Also Published As
Publication number | Publication date |
---|---|
CN116028648B (zh) | 2023-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8762180B2 (en) | Claims analytics engine | |
CN113159502B (zh) | 用于评估临床试验风险的方法 | |
CN111611458A (zh) | 大数据治理中基于元数据和数据分析技术实现系统数据架构梳理的方法 | |
WO2008046108A2 (en) | System and method for detecting and updating geographical information dataset versions | |
CN111949535B (zh) | 基于开源社区知识的软件缺陷预测装置及方法 | |
CN110472209B (zh) | 基于深度学习的表格生成方法、装置和计算机设备 | |
WO2015117056A1 (en) | Evaluating data quality of clinical trials | |
Song et al. | Auto-validate: Unsupervised data validation using data-domain patterns inferred from data lakes | |
CN112768058B (zh) | 一种计量信息类型的医疗数据的处理方法及装置 | |
Tran et al. | How good are my search strings? Reflections on using an existing review as a quasi-gold standard | |
CN116028648B (zh) | 一种细粒度各场景通用的医疗文本结构化信息抽取方法 | |
CN111680082B (zh) | 基于数据整合的政府财政数据采集系统及数据采集方法 | |
CN112786124A (zh) | 一种问题排查方法、装置、存储介质及设备 | |
CN112506903B (zh) | 采用标本线的数据质量表示方法 | |
CN109446192B (zh) | 数据测试方法及装置 | |
Restat et al. | Towards a Holistic Data Preparation Tool. | |
CN114676207A (zh) | 一种用于金融长文本复核系统的金融数据勾稽关系审核模块 | |
Wang et al. | What Makes a Good TODO Comment? | |
CN114049925A (zh) | 临床试验开发计划生成方法、系统和设备 | |
CN113722421A (zh) | 一种合同审计方法和系统,及计算机可读存储介质 | |
Penning et al. | Information quality assessment and improvement of student information in the university environment | |
CN117473128A (zh) | 一种基于逻辑核查的临床试验数据核查方法 | |
WO2024098513A1 (zh) | 一种用于口腔管理系统的诊疗记录合规化管理方法 | |
CN118069701B (zh) | 反向查询链路的构建方法、装置、计算机设备及存储介质 | |
CN117807217A (zh) | 一种医疗费用清单明细识别结果的后处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |