CN112562849B - 一种基于层次结构和共现结构的临床自动诊断方法及系统 - Google Patents
一种基于层次结构和共现结构的临床自动诊断方法及系统 Download PDFInfo
- Publication number
- CN112562849B CN112562849B CN202011445147.3A CN202011445147A CN112562849B CN 112562849 B CN112562849 B CN 112562849B CN 202011445147 A CN202011445147 A CN 202011445147A CN 112562849 B CN112562849 B CN 112562849B
- Authority
- CN
- China
- Prior art keywords
- modeling
- clinical
- codes
- patient
- diagnosis
- 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.)
- Active
Links
- 238000003745 diagnosis Methods 0.000 title claims abstract description 118
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000036541 health Effects 0.000 claims abstract description 54
- 238000009826 distribution Methods 0.000 claims abstract description 25
- 238000007781 pre-processing Methods 0.000 claims abstract description 16
- 230000007246 mechanism Effects 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 16
- 238000013528 artificial neural network Methods 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 9
- 238000012512 characterization method Methods 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 3
- 238000003860 storage Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 description 40
- 230000006870 function Effects 0.000 description 14
- 230000004913 activation Effects 0.000 description 6
- 208000024891 symptom Diseases 0.000 description 6
- 238000012549 training Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000009533 lab test Methods 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000003759 clinical diagnosis Methods 0.000 description 2
- 238000002405 diagnostic procedure Methods 0.000 description 2
- 201000010099 disease Diseases 0.000 description 2
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 238000000547 structure data Methods 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 238000007418 data mining Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000003475 lamination Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/20—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
- G16H10/60—ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/70—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients
-
- 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
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Public Health (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Epidemiology (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Databases & Information Systems (AREA)
- Pathology (AREA)
- Measuring And Recording Apparatus For Diagnosis (AREA)
- Medical Treatment And Welfare Office Work (AREA)
Abstract
本发明公开了一种基于层次结构和共现结构的临床自动诊断方法及系统,方法包括:收集基本数据,并对基本数据进行预处理,其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;基于预处理后的基本数据对临床记录文本特征建模;基于预处理后的基本数据对诊断代码语义表示建模;基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果。本发明通过引入对层次结构的建模,可以使用高级别的诊断结果来指导低级别的诊断代码的分配,从而解决了分布不均衡的问题,同时通过共现结构捕获诊断代码之间的相关性能够进一步提高临床自动诊断的准确率。
Description
技术领域
本发明涉及医疗数据挖掘技术领域,尤其涉及一种基于层次结构和共现结构的临床自动诊断方法及系统。
背景技术
临床记录是电子健康记录(EHR)的重要组成部分,包含了病史、主诉、当前症状和实验室检测结果等冗长且术语繁多的文本描述。为了避免大量文本造成的重复和歧义,世界卫生组织建议使用国际疾病分类(ICD)中的诊断代码来代表每种疾病、症状和体征等。临床诊断的目标是根据临床记录为患者分配最可能的诊断代码。传统的临床诊断是由训练有素的临床编码人员完成的,由于该编码系统庞大且不断发展,使得人工诊断仍然劳动强度大且容易出错。因此,基于电子健康记录的临床自动诊断任务引发了工业届和学术界的广泛关注。
目前,围绕电子健康记录的临床自动诊断方法,已有少许相关的技术方案与研究成果,部分代表性的公开技术包括:
(1)基于传统机器学习方法
早期的研究者多使用传统的机器学习方法进行临床自动诊断。常被应用与临床自动诊断的方法机器学习模型包括:K-近邻(K-nearest Neighbors)、支持向量机(SupportVector Machines,简称SVM)和贝叶斯独立分类器(Bayesian Independence Classifier)等,研究者们利用这些方法抽取临床记录的文本特征来为患者进行临床自动诊断。尽管这些方法已经取得了一定的成果,但是仍然存在一些局限性,一是极度依赖特征工程且泛化性较差,二是忽略了文本的上下文依赖关系以及关键词语的贡献,这样的方式难以对高噪声、高冗余的现代医疗记录进行临床自动诊断。
(2)基于深度学习方法
近期,随着深度学习的发展,有研究者将神经网络的架构应用到临床自动诊断任务中。这类方法主要将该任务建模成多标签文本分类任务,并使用基于卷积神经网络(Convolutional Neural Networks,CNN)或递归神经网络(Recurrent Neural Networks,RNN)的模型进行自动诊断。这些方法相较于传统的机器学习方法省略了繁杂的特征工程。然而这类方法依旧存在一定的问题,使其不能很好的应用于临床自动诊断,一是诊断编码数量庞大,分布极不平衡,这类方法难以对长尾代码进行建模;二是诊断代码之间的相关性被严重地忽略了,而是独立的为每个诊断代码进行预测。
综上所述,现有的技术方案虽然已经取得了一定的成效,但对于临床自动诊断仍然存在如下困难:1)传统的机器学习方法需要大量的特征工程,对特征的依赖性强,缺乏泛化性。2)现有的基于深度学习的方法忽略了对长尾诊断代码的建模,对于诊断代码之间的相关性也缺少合适的建模,难以保证预测结果的可靠性和准确性。
因此,如何有效的提高临床自动诊断的准确性和可靠性,是一项亟需解决的问题。
发明内容
有鉴于此,本发明提供了一种基于层次结构和共现结构的临床自动诊断方法,通过引入对层次结构的建模,可以使用高级别的诊断结果来指导低级别的诊断代码的分配,从而解决了分布不均衡的问题,同时通过共现结构捕获诊断代码之间的相关性能够进一步提高临床自动诊断的准确率。
本发明提供了一种基于层次结构和共现结构的临床自动诊断方法,包括:
收集基本数据,并对所述基本数据进行预处理,其中,所述基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
基于所述预处理后的基本数据对临床记录文本特征建模;
基于所述预处理后的基本数据对诊断代码语义表示建模;
基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果。
优选地,所述收集基本数据,并对所述基本数据进行预处理,包括:
收集基本数据,其中,所述基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
去除所述患者的电子健康记录中的文本信息中的停用词,并对去除停用词后的所述患者的电子健康记录中的文本信息进行向量化处理。
优选地,所述基于所述预处理后的基本数据对临床记录文本特征建模,包括:
对所述患者的电子健康记录中的临床记录进行向量化建模;
对临床记录的向量化表示进行特征抽取。
优选地,所述基于所述预处理后的基本数据对诊断代码语义表示建模,包括:
在每个层次级别使用共现特征构建诊断代码的共现图;
使用图卷积神经网络捕获诊断代码的表征以及诊断代码之间的相关性。
优选地,所述基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果,包括:
采用基于继承指导的层次联合学习机制,根据代码的层次结构,对患者由粗粒度逐步到细粒度进行临床自动诊断,得到临床自动诊断结果。
一种基于层次结构和共现结构的临床自动诊断系统,包括:
数据处理模块,用于收集基本数据,并对所述基本数据进行预处理,其中,所述基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
第一建模模块,用于基于所述预处理后的基本数据对临床记录文本特征建模;
第二建模模块,用于基于所述预处理后的基本数据对诊断代码语义表示建模;
第三建模模块,用于基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果。
优选地,所述数据处理模块,包括:
采集单元,用于收集基本数据,其中,所述基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
预处理单元,用于去除所述患者的电子健康记录中的文本信息中的停用词,并对去除停用词后的所述患者的电子健康记录中的文本信息进行向量化处理。
优选地,所述第一建模模块,包括:
嵌入单元,用于对所述患者的电子健康记录中的临床记录进行向量化建模;
特征抽取单元,用于对临床记录的向量化表示进行特征抽取。
优选地,所述第二建模模块,包括:
构建单元,用于在每个层次级别使用共现特征构建诊断代码的共现图;
语义抽取单元,用于使用图卷积神经网络捕获诊断代码的表征以及诊断代码之间的相关性。
优选地,所述第三建模模块具体用于:
采用基于继承指导的层次联合学习机制,根据代码的层次结构,对患者由粗粒度逐步到细粒度进行临床自动诊断,得到临床自动诊断结果。
综上所述,本发明公开了一种基于层次结构和共现结构的临床自动诊断方法,首先收集基本数据,并对基本数据进行预处理,其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;然后基于预处理后的基本数据对临床记录文本特征建模;基于预处理后的基本数据对诊断代码语义表示建模;基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果。本发明通过引入对层次结构的建模,可以使用高级别的诊断结果来指导低级别的诊断代码的分配,从而解决了分布不均衡的问题,同时通过共现结构捕获诊断代码之间的相关性能够进一步提高临床自动诊断的准确率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明公开的一种基于层次结构和共现结构的临床自动诊断方法实施例1的方法流程图;
图2为本发明公开的一种基于层次结构和共现结构的临床自动诊断方法实施例2的方法流程图;
图3为本发明公开的一种基于层次结构和共现结构的临床自动诊断系统实施例1的结构示意图;
图4为本发明公开的一种基于层次结构和共现结构的临床自动诊断系统实施例2的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,为本发明公开的一种基于层次结构和共现结构的临床自动诊断方法实施例1的方法流程图,所述方法可以包括以下步骤:
S101、收集基本数据,并对基本数据进行预处理,其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
当需要实现临床自动诊断时,首先收集基本数据,并对收集到的基本数据进行预处理。
其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构。
其中,患者的电子健康记录包括包含了病史、主诉、当前症状和实验室检测结果等冗长且术语繁多的文本描述。患者的诊断代码集合包含了若干唯一的诊断代码。诊断代码之间的层次结构以树状层次结构呈现,通过ICD-9或ICD-10分类规则获取。
S102、基于预处理后的基本数据对临床记录文本特征建模;
然后,根据预处理后的基本数据对临床记录文本特征建模。
S103、基于预处理后的基本数据对诊断代码语义表示建模;
然后,根据预处理后的基本数据对诊断代码语义表示建模。
S104、基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果。
最后,基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果。
综上所述,在上述实施例中,首先收集基本数据,并对基本数据进行预处理,其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;然后基于预处理后的基本数据对临床记录文本特征建模;基于预处理后的基本数据对诊断代码语义表示建模;基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果。通过引入对层次结构的建模,可以使用高级别的诊断结果来指导低级别的诊断代码的分配,从而解决了分布不均衡的问题,同时通过共现结构捕获诊断代码之间的相关性能够进一步提高临床自动诊断的准确率。
如图2所示,为本发明公开的一种基于层次结构和共现结构的临床自动诊断方法实施例的方法流程图,所述方法可以包括以下步骤:
S201、收集基本数据,其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
当需要实现临床自动诊断时,首先收集基本数据。
其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构。
其中,患者的电子健康记录包括包含了病史、主诉、当前症状和实验室检测结果等冗长且术语繁多的文本描述。患者的诊断代码集合包含了若干唯一的诊断代码。诊断代码之间的层次结构以树状层次结构呈现,通过ICD-9或ICD-10分类规则获取。
S202、去除患者的电子健康记录中的文本信息中的停用词,并对去除停用词后的患者的电子健康记录中的文本信息进行向量化处理;
患者的电子健康记录包含了丰富的文本信息。在对筛选出的数据进行预处理时,应去除文本信息中停用词,以免对文本信息向量化处理造成干扰。进而,对相应的文本信息进行向量化处理,以便于进行后续分析。本步骤可以采用主流的文本预训练模型(如本发明实施例中采用的Word2Vec模型),并基于公开的停用词表筛去部分停用词。
S203、对患者的电子健康记录中的临床记录进行向量化建模;
根据数据预处理获得的预训练模型对临床记录进行向量化建模。具体的,使用预训练词向量矩阵E=[e1,e2,...,e|E|]对临床记录的文本序列向量化为X=[x1,x2,...,xn]。
S204、对临床记录的向量化表示进行特征抽取;
由于每个诊断代码对应的临床记录的n-gram的长度会随着标签的改变而变化,多尺度卷积操作可以使用多个不同尺度的一维卷积单元捕获多种长度的文本模式。接着通过残差卷积操作扩大接受域,以捕获更长的文本模式。
首先,本发明利用含有m个过滤器的卷积神经网络来捕捉不同长度的单词序列:
其中,Fk(X,Wk)表示对矩阵X的卷积运算,Wk表示卷积运算的参数矩阵,sk表示卷积核大小,表示矩阵X的第j行到第j+sk-1行。随后,本发明将m个并行的残差单元与m个一维卷积单元相连,每个残差单元的卷积核大小与对应的一维卷积单元保持一致,其通过扩大接受域来捕捉较长的文本特征,如以下公式所示:
其中,为残差块中第ki个卷积层的权值矩阵。最终,本发明将m个残差块按行拼接形成临床记录的增强文本表示Xres,如下公式所示:
其中,concat(·)表示按行对矩阵进行拼接操作。由此,本发明完成了对于临床记录的文本特征表示。
S205、在每个层次级别使用共现特征构建诊断代码的共现图;
以往的研究忽视了诊断代码之间的相关性的建模,而诊断代码的相关性对单凭临床记录难以预测的代码可以起到辅助作用。本发明通过诊断代码的共现特征对其相关性进行建模,主要包括两个环节:
第一环节,将在t个层次中构建t个诊断代码的共现图。本发明中,将共图表示为Gt=(Lt,Et),其中Lt和Et分别表示层次t的诊断代码集合和边集。对于任何诊断代码如果电子健康记录数据集中有另一个代码共同出现,它们之间有一条边对应权重计算如下公式:
其中,count(·,·)表示这两个代码在整个电子健康记录数据集中共同出现的次数。随后,本发明将边集合表示如下公式:
S206、使用图卷积神经网络捕获诊断代码的表征以及诊断代码之间的相关性;
第二环节,先前的若干工作证明了图卷积网络(GCN)可以有效的处理复杂的图形结构数据和保存信息。在本发明中,将层次t中所有诊断代码的特征矩阵表示为Ht,(0)=Vt。为了简单起见,在本环节的其余部分省略上标t。随后,本发明应用GCN在共现图G=(L,E)上传播诊断代码的表示,具体的,以特征矩阵H(l)和邻接矩阵矩阵为输入,并利用共现的诊断代码的信息更其他诊断代码的语义表示:
其中,A是G的邻接矩阵,I是单位矩阵,W(l)是第l层GCN的参数矩阵。σ(·)为激活函数,例如ReLU(·)=max(0,·)。H(l)是是第l层GCN的隐藏层矩阵。最终,本发明使用最后一个隐含层作为诊断代码的语义表示,即Ht=Ht,(l+1),该语义表示包含了了诊断代码之间的相关性。
由此,可以为t个层次的诊断代码获得包含相关性的语义表示。
S207、采用基于继承指导的层次联合学习机制,根据代码的层次结构,对患者由粗粒度逐步到细粒度进行临床自动诊断,得到临床自动诊断结果。
在完成临床记录文本特征建模步骤和诊断代码语义表示建模步骤以后,本发明模拟人工诊断由浅到深的渐进过程,采用了一种基于继承指导的层次联合学习机制。具体来说,根据诊断代码的层次结构(ICD-9-CM或ICD-10),对患者从粗粒度到细粒度的逐步自动诊断。该步骤主要包括三个环节,以层次t为例,具体定义及实施方式如下:
直观地,患者的临床记录是由大量冗长的文本描述组成的,不同的代码可能针对文档的不同方面。因此,对于层次t,本发明采用|Lt|个部分来关注不同的诊断代码,以表示临床笔记的整体语义。接下来,将介绍本发明使用的两种注意机制。
对于一些仅用临床记录难以预测的诊断代码,可以通过临床记录和诊断代码的交互来改善。首先,通过一个前馈神经网络来传递文档特征矩阵Xres:
Ot 1=tanh(Wt 1·(Xres)T)
其中,Wt 1表示参数变换矩阵,Ot 1是中间结果。随后,为每个诊断代码生成注意力向量,如下公式所示:
其中,softmax(·)是对行操作的归一化指数函数。接着,注意力向量被用于计算每个标签的向量表示:
最后,将拼接起来,得到诊断代码指导的文档表征,表示为
相似的,本发明同时引入了特定诊断代码的注意力机制,可以形式化为下列公式:
Ot 2=tanh(Wt 2·(Xres)T),
At 2=softmax(Ut 2·Ot 2),
其中,Wt 2表示中间矩阵,Ot 2是中间结果,Ut 2是特定诊断代码注意力参数矩阵,表示特定诊断代码的文档表征。由此,本发明将两种注意力机制融合以表示包含交互信息的文档表征
对于层次t,本发明将多注意力单元的结果Rt与包含上一层次继承信息的向量ct-1进行融合,并为患者分配当前层的诊断代码集合。具体的,诊断代码分配单元针对每一个诊断代码采用一个全连接层和sigmoid进行线性激活,如下公式所示:
其中,broadcast(·)是将不同形状的矩阵转换为可用于算术运算的形状的过程,σ(·)表示一个激活函数,例如 为参数矩阵,为第t层预测的诊断代码集合。
然后,旨在保留重要信息的同时减少之前层次的错误结果带来的误差。因此,采用线性层和sigmoid(x)函数模拟门控机制,以过滤和整合信息,形式化如下公式:
其中,为层次依赖单元的参数矩阵。最终,可以获得包含前t个层次依赖信息的向量ct。
考虑到临床自动诊断问题可以转化一个经典的多标签问题,因此,设计的损失函数为多个二元交叉熵函数,用于衡量预测结果与真实结果的差距,如下式所示:
其中,yi为真实结果,而yi为本发明模型预测得到的结果,基于损失函数loss进行误差反向传播操作,即可以完成对于模型中的参数更新。
综上所述,本发明首先基于ICD定义的诊断代码层次继承结构设计了一种分层分配方法,该方法逐级进行诊断代码的分配。其次,基于电子健康记录数据构造一个诊断代码的共现图,并使用图卷积神经网络获取诊断代码的语义表示。最后利用注意力机制对诊断代码与临床记录之间的相关性建模,提高了临床自动诊断的准确性。
如图3所示,为本发明公开的一种基于层次结构和共现结构的临床自动诊断系统实施例1的结构示意图,所述系统可以包括:
数据处理模块301,用于收集基本数据,并对基本数据进行预处理,其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
当需要实现临床自动诊断时,首先收集基本数据,并对收集到的基本数据进行预处理。
其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构。
其中,患者的电子健康记录包括包含了病史、主诉、当前症状和实验室检测结果等冗长且术语繁多的文本描述。患者的诊断代码集合包含了若干唯一的诊断代码。诊断代码之间的层次结构以树状层次结构呈现,通过ICD-9或ICD-10分类规则获取。
第一建模模块302,用于基于预处理后的基本数据对临床记录文本特征建模;
然后,根据预处理后的基本数据对临床记录文本特征建模。
第二建模模块303,用于基于预处理后的基本数据对诊断代码语义表示建模;
然后,根据预处理后的基本数据对诊断代码语义表示建模。
第三建模模块304,用于基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果。
最后,基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果。
综上所述,在上述实施例中,首先收集基本数据,并对基本数据进行预处理,其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;然后基于预处理后的基本数据对临床记录文本特征建模;基于预处理后的基本数据对诊断代码语义表示建模;基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果。通过引入对层次结构和共现结构的建模,可以使用高级别的诊断结果来指导低级别的诊断代码的分配,从而解决了分布不均衡的问题,同时通过共现结构捕获诊断代码之间的相关性能够进一步提高临床自动诊断的准确率。
如图4所示,为本发明公开的一种基于层次结构和共现结构的临床自动诊断系统实施例2的结构示意图,所述系统可以包括:
采集单元401,用于收集基本数据,其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
当需要实现临床自动诊断时,首先收集基本数据。
其中,基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构。
其中,患者的电子健康记录包括包含了病史、主诉、当前症状和实验室检测结果等冗长且术语繁多的文本描述。患者的诊断代码集合包含了若干唯一的诊断代码。诊断代码之间的层次结构以树状层次结构呈现,通过ICD-9或ICD-10分类规则获取。
预处理单元402,用于去除患者的电子健康记录中的文本信息中的停用词,并对去除停用词后的患者的电子健康记录中的文本信息进行向量化处理;
患者的电子健康记录包含了丰富的文本信息。在对筛选出的数据进行预处理时,应去除文本信息中停用词,以免对文本信息向量化处理造成干扰。进而,对相应的文本信息进行向量化处理,以便于进行后续分析。本步骤可以采用主流的文本预训练模型(如本发明实施例中采用的Word2Vec模型),并基于公开的停用词表筛去部分停用词。
嵌入单元403,用于对患者的电子健康记录中的临床记录进行向量化建模;
根据数据预处理获得的预训练模型对临床记录进行向量化建模。具体的,使用预训练词向量矩阵E=[e1,e2,...,e|E|]对临床记录的文本序列向量化为X=[x1,x2,...,xn]。
特征抽取单元404,用于对临床记录的向量化表示进行特征抽取;
由于每个诊断代码对应的临床记录的n-gram的长度会随着标签的改变而变化,多尺度卷积操作可以使用多个不同尺度的一维卷积单元捕获多种长度的文本模式。接着通过残差卷积操作扩大接受域,以捕获更长的文本模式。
首先,本发明利用含有m个过滤器的卷积神经网络来捕捉不同长度的单词序列:
其中,Fk(X,Wk)表示对矩阵X的卷积运算,Wk表示卷积运算的参数矩阵,sk表示卷积核大小,表示矩阵X的第j行到第j+sk-1行。随后,本发明将m个并行的残差单元与m个一维卷积单元相连,每个残差单元的卷积核大小与对应的一维卷积单元保持一致,其通过扩大接受域来捕捉较长的文本特征,如以下公式所示:
其中,为残差块中第ki个卷积层的权值矩阵。最终,本发明将m个残差块按行拼接形成临床记录的增强文本表示Xres,如下公式所示:
其中,concat(·)表示按行对矩阵进行拼接操作。由此,本发明完成了对于临床记录的文本特征表示。
构建单元405,用于在每个层次级别使用共现特征构建诊断代码的共现图;
以往的研究忽视了诊断代码之间的相关性的建模,而诊断代码的相关性对单凭临床记录难以预测的代码可以起到辅助作用。本发明通过诊断代码的共现特征对其相关性进行建模,主要包括两个环节:
第一环节,将在t个层次中构建t个诊断代码的共现图。本发明中,将共图表示为Gt=(Lt,Et),其中Lt和Et分别表示层次t的诊断代码集合和边集。对于任何诊断代码如果电子健康记录数据集中有另一个代码共同出现,它们之间有一条边对应权重计算如下公式:
其中,count(·,·)表示这两个代码在整个电子健康记录数据集中共同出现的次数。随后,本发明将边集合表示如下公式:
语义抽取单元406,用于使用图卷积神经网络捕获诊断代码的表征以及诊断代码之间的相关性;
第二环节,先前的若干工作证明了图卷积网络(GCN)可以有效的处理复杂的图形结构数据和保存信息。在本发明中,将层次t中所有诊断代码的特征矩阵表示为Ht,(0)=Vt。为了简单起见,在本环节的其余部分省略上标t。随后,本发明应用GCN在共现图G=(L,E)上传播诊断代码的表示,具体的,以特征矩阵H(l)和邻接矩阵矩阵为输入,并利用共现的诊断代码的信息更其他诊断代码的语义表示:
其中,A是G的邻接矩阵,I是单位矩阵,W(l)是第l层GCN的参数矩阵。σ(·)为激活函数,例如ReLU(·)=max(0,·)。H(l)是是第l层GCN的隐藏层矩阵。最终,本发明使用最后一个隐含层作为诊断代码的语义表示,即Ht=Ht,(l+1),该语义表示包含了了诊断代码之间的相关性。
由此,可以为t个层次的诊断代码获得包含相关性的语义表示。
第三建模模块407,用于采用基于继承指导的层次联合学习机制,根据代码的层次结构,对患者由粗粒度逐步到细粒度进行临床自动诊断,得到临床自动诊断结果。
在完成临床记录文本特征建模步骤和诊断代码语义表示建模步骤以后,本发明模拟人工诊断由浅到深的渐进过程,采用了一种基于继承指导的层次联合学习机制。具体来说,根据诊断代码的层次结构(ICD-9-CM或ICD-10),对患者从粗粒度到细粒度的逐步自动诊断。该步骤主要包括三个环节,以层次t为例,具体定义及实施方式如下:
直观地,患者的临床记录是由大量冗长的文本描述组成的,不同的代码可能针对文档的不同方面。因此,对于层次t,本发明采用|Lt|个部分来关注不同的诊断代码,以表示临床笔记的整体语义。接下来,将介绍本发明使用的两种注意机制。
对于一些仅用临床记录难以预测的诊断代码,可以通过临床记录和诊断代码的交互来改善。首先,通过一个前馈神经网络来传递文档特征矩阵Xres:
Ot 1=tanh(Wt 1·(Xres)T)
其中,Wt 1表示参数变换矩阵,Ot 1是中间结果。随后,为每个诊断代码生成注意力向量,如下公式所示:
其中,softmax(·)是对行操作的归一化指数函数。接着,注意力向量被用于计算每个标签的向量表示:
最后,将拼接起来,得到诊断代码指导的文档表征,表示为
相似的,本发明同时引入了特定诊断代码的注意力机制,可以形式化为下列公式:
Ot 2=tanh(Wt 2·(Xres)T),
At 2=softmax(Ut 2·Ot 2),
其中,Wt 2表示中间矩阵,Ot 2是中间结果,Ut 2是特定诊断代码注意力参数矩阵,表示特定诊断代码的文档表征。由此,本发明将两种注意力机制融合以表示包含交互信息的文档表征
对于层次t,本发明将多注意力单元的结果Rt与包含上一层次继承信息的向量ct-1进行融合,并为患者分配当前层的诊断代码集合。具体的,诊断代码分配单元针对每一个诊断代码采用一个全连接层和sigmoid进行线性激活,如下公式所示:
其中,broadcast(·)是将不同形状的矩阵转换为可用于算术运算的形状的过程,σ(·)表示一个激活函数,例如 为参数矩阵,为第t层预测的诊断代码集合。
然后,旨在保留重要信息的同时减少之前层次的错误结果带来的误差。因此,采用线性层和sigmoid(x)函数模拟门控机制,以过滤和整合信息,形式化如下公式:
其中,为层次依赖单元的参数矩阵。最终,可以获得包含前t个层次依赖信息的向量ct。
考虑到临床自动诊断问题可以转化一个经典的多标签问题,因此,设计的损失函数为多个二元交叉熵函数,用于衡量预测结果与真实结果的差距,如下式所示:
其中,yi为真实结果,而yi为本发明模型预测得到的结果,基于损失函数loss进行误差反向传播操作,即可以完成对于模型中的参数更新。
综上所述,本发明首先基于ICD定义的诊断代码层次继承结构设计了一种分层分配方法,该方法逐级进行诊断代码的分配。其次,基于电子健康记录数据构造一个诊断代码的共现图,并使用图卷积神经网络获取诊断代码的语义表示。最后利用注意力机制对诊断代码与临床记录之间的相关性建模,提高了临床自动诊断的准确性。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (6)
1.一种基于层次结构和共现结构的临床自动诊断方法,其特征在于,包括:
收集基本数据,并对所述基本数据进行预处理,其中,所述基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
基于所述预处理后的基本数据对临床记录文本特征建模;
基于所述预处理后的基本数据对诊断代码语义表示建模;所述基于所述预处理后的基本数据对诊断代码语义表示建模,包括:在每个层次级别使用共现特征构建诊断代码的共现图;使用图卷积神经网络捕获诊断代码的表征以及诊断代码之间的相关性;
基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果;
所述基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果,包括:
采用基于继承指导的层次联合学习机制,根据代码的层次结构,对患者由粗粒度逐步到细粒度进行临床自动诊断,得到临床自动诊断结果;
其中,所述继承指导的层次联合学习机制指的是将当前层的多注意单元的结果与包含上一层次继承信息的向量进行融合,为患者分配当前层的诊断代码集合。
2.根据权利要求1所述的方法,其特征在于,所述收集基本数据,并对所述基本数据进行预处理,包括:
收集基本数据,其中,所述基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
去除所述患者的电子健康记录中的文本信息中的停用词,并对去除停用词后的所述患者的电子健康记录中的文本信息进行向量化处理。
3.根据权利要求2所述的方法,其特征在于,所述基于所述预处理后的基本数据对临床记录文本特征建模,包括:
对所述患者的电子健康记录中的临床记录进行向量化建模;
对临床记录的向量化表示进行特征抽取。
4.一种基于层次结构和共现结构的临床自动诊断系统,其特征在于,包括:
数据处理模块,用于收集基本数据,并对所述基本数据进行预处理,其中,所述基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
第一建模模块,用于基于所述预处理后的基本数据对临床记录文本特征建模;
第二建模模块,用于基于所述预处理后的基本数据对诊断代码语义表示建模;所述第二建模模块,包括:构建单元,用于在每个层次级别使用共现特征构建诊断代码的共现图;语义抽取单元,用于使用图卷积神经网络捕获诊断代码的表征以及诊断代码之间的相关性;
第三建模模块,用于基于临床记录文本特征建模结果和诊断代码语义表示建模结果对诊断代码分层分配建模,得到临床自动诊断结果;
所述第三建模模块具体用于:
采用基于继承指导的层次联合学习机制,根据代码的层次结构,对患者由粗粒度逐步到细粒度进行临床自动诊断,得到临床自动诊断结果;
其中,所述继承指导的层次联合学习机制指的是将当前层的多注意单元的结果与包含上一层次继承信息的向量进行融合,为患者分配当前层的诊断代码集合。
5.根据权利要求4所述的系统,其特征在于,所述数据处理模块,包括:
采集单元,用于收集基本数据,其中,所述基本数据至少包括:患者的电子健康记录、患者的诊断代码集合和诊断代码之间的层次结构;
预处理单元,用于去除所述患者的电子健康记录中的文本信息中的停用词,并对去除停用词后的所述患者的电子健康记录中的文本信息进行向量化处理。
6.根据权利要求5所述的系统,其特征在于,所述第一建模模块,包括:
嵌入单元,用于对所述患者的电子健康记录中的临床记录进行向量化建模;
特征抽取单元,用于对临床记录的向量化表示进行特征抽取。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011445147.3A CN112562849B (zh) | 2020-12-08 | 2020-12-08 | 一种基于层次结构和共现结构的临床自动诊断方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011445147.3A CN112562849B (zh) | 2020-12-08 | 2020-12-08 | 一种基于层次结构和共现结构的临床自动诊断方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112562849A CN112562849A (zh) | 2021-03-26 |
CN112562849B true CN112562849B (zh) | 2023-11-17 |
Family
ID=75061004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011445147.3A Active CN112562849B (zh) | 2020-12-08 | 2020-12-08 | 一种基于层次结构和共现结构的临床自动诊断方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112562849B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115101198B (zh) * | 2022-05-05 | 2024-06-21 | 东南大学 | 一种面向临床问诊记录的疾病预测方法与装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002328943A (ja) * | 2001-04-27 | 2002-11-15 | Ricoh Co Ltd | 意味情報推定装置、意味情報推定方法、プログラム及び記憶媒体 |
CN104615718A (zh) * | 2015-02-05 | 2015-05-13 | 北京航空航天大学 | 社交网络突发事件的层次分析方法 |
CN107634882A (zh) * | 2017-10-10 | 2018-01-26 | 安徽大学 | Sdn架构下基于电梯调度算法的负载均衡方法 |
CN109166105A (zh) * | 2018-08-01 | 2019-01-08 | 中国人民解放军南京军区南京总医院 | 人工智能医学影像的肿瘤恶性风险分层辅助诊断系统 |
CN109887606A (zh) * | 2019-02-28 | 2019-06-14 | 莫毓昌 | 一种基于注意力的双向递归神经网络的诊断预测方法 |
CN111540468A (zh) * | 2020-04-21 | 2020-08-14 | 重庆大学 | 一种诊断原因可视化的icd自动编码方法与系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020144627A1 (en) * | 2019-01-10 | 2020-07-16 | 3M Innovative Properties Company | Automated generation of codes |
-
2020
- 2020-12-08 CN CN202011445147.3A patent/CN112562849B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002328943A (ja) * | 2001-04-27 | 2002-11-15 | Ricoh Co Ltd | 意味情報推定装置、意味情報推定方法、プログラム及び記憶媒体 |
CN104615718A (zh) * | 2015-02-05 | 2015-05-13 | 北京航空航天大学 | 社交网络突发事件的层次分析方法 |
CN107634882A (zh) * | 2017-10-10 | 2018-01-26 | 安徽大学 | Sdn架构下基于电梯调度算法的负载均衡方法 |
CN109166105A (zh) * | 2018-08-01 | 2019-01-08 | 中国人民解放军南京军区南京总医院 | 人工智能医学影像的肿瘤恶性风险分层辅助诊断系统 |
CN109887606A (zh) * | 2019-02-28 | 2019-06-14 | 莫毓昌 | 一种基于注意力的双向递归神经网络的诊断预测方法 |
CN111540468A (zh) * | 2020-04-21 | 2020-08-14 | 重庆大学 | 一种诊断原因可视化的icd自动编码方法与系统 |
Non-Patent Citations (3)
Title |
---|
Huiqi Li ; Joo Hwee Lim ; Jiang Liu ; Damon Wing Kee Wong ; Ngan Meng Tan ; Shijian Lu ; Zhuo Zhang ; Tien Yin Wong.An automatic diagnosis system of nuclear cataract using slit-lamp images.IEEE.2009,全文. * |
基于概念共现图的多文档自动摘要研究;周进华;刘贵全;陈恩红;;中国科学技术大学学报(第11期);全文 * |
杜逸超 ; 徐童 ; 马建辉 ; 陈恩红 ; 郑毅 ; 刘同柱 ; 童贵显 ; .一种基于深度神经网络的临床记录ICD自动编码方法.大数据.2020,第3-15页. * |
Also Published As
Publication number | Publication date |
---|---|
CN112562849A (zh) | 2021-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sailasya et al. | Analyzing the performance of stroke prediction using ML classification algorithms | |
KR102153920B1 (ko) | 정제된 인공지능 강화학습 데이터 생성을 통한 의료영상 판독 시스템 및 그 방법 | |
Jäger | Computational historical linguistics | |
CN111967495B (zh) | 一种分类识别模型构建方法 | |
CN108766559B (zh) | 用于智能疾病筛查的临床决策支持方法及系统 | |
Pandya et al. | Unveiling the Power of Collective Intelligence: A Voting-based Approach for Dementia Classification | |
EP3968244A1 (en) | Automatically curating existing machine learning projects into a corpus adaptable for use in new machine learning projects | |
CN105678107A (zh) | 一种电子病历后结构化知识发现方法和装置 | |
CN110379508A (zh) | 识别病情陈述中疾病参考信息的装置、方法、设备及介质 | |
CN112926332A (zh) | 一种实体关系联合抽取方法及装置 | |
Ullah et al. | Detecting High‐Risk Factors and Early Diagnosis of Diabetes Using Machine Learning Methods | |
CN112562849B (zh) | 一种基于层次结构和共现结构的临床自动诊断方法及系统 | |
CN110610766A (zh) | 基于症状特征权重推导疾病概率的装置和存储介质 | |
Ganesh et al. | Multi class Alzheimer disease detection using deep learning techniques | |
Yadav et al. | Exploring Hyper-Parameters and Feature Selection for Predicting Non-Communicable Chronic Disease Using Stacking Classifier | |
Sampath et al. | Ensemble Nonlinear Machine Learning Model for Chronic Kidney Diseases Prediction | |
CN113990489A (zh) | 一种中医药临床证候诊疗智能数据处理和分析挖掘系统 | |
CN118171653A (zh) | 一种基于深度神经网络的健康体检文本治理方法 | |
Swetha et al. | Leveraging Scalable Classifier Mining for Improved Heart Disease Diagnosis | |
CN113096756A (zh) | 病情演变分类方法、装置、电子设备和存储介质 | |
Sumathi et al. | Machine learning based pattern detection technique for diabetes mellitus prediction | |
Wu et al. | OA-MedSQL: Order-Aware Medical Sequence Learning for Clinical Outcome Prediction | |
Parthiban et al. | Efficientnet with optimal wavelet neural network for DR detection and grading | |
Nandhini et al. | Random forest and genetic algorithm united with hyperparameter for diabetes prediction by using WBSMOTE, wrapper approach | |
Nwaneri et al. | Development of a graphical user interface software for the prediction of chronic kidney disease |
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 |