一种电子病历的分类方法与流程

文档序号:32004780发布日期:2022-11-02 12:41阅读:173来源:国知局
一种电子病历的分类方法与流程

1.本发明涉及自然语言处理技术领域,具体地,本发明涉及一种电子病历的分类方法。


背景技术:

2.在医疗领域,医疗信息的结构化可以有效提升医务人员的工作效率,减少医务人员的人力、物力和财力等资源的投入。而电子病历的分类,是医疗信息化的基础,也是医疗信息能够赋能自动化的关键所在。但是,由于医疗文本的特殊性,如电子病历之间的相似程度比较高、模板套用比较常见、病历文本的应用数据的稀缺性等,使得电子病历的分类工作一直是一个难点工作。
3.在电子病历的分类方面,相关技术的应用并不多,主要是电子病历的文档分类是比较具有挑战性的,电子病历分类的挑战主要表现在:(1)电子病历的类型众多,在医院中,电子病历的类型复杂不一,而且各个医疗机构都有自己的一套体系,这些体系的建立标准高低不齐;(2)电子病历的种类相近,电子病历有几类的书写内容非常相似,如病程记录和查房记录、病程记录和输血记录、查房记录和上级医师查房等,有的医疗机构对这些加以区分,而有的医疗机构却混淆在一起处理,这无疑增加了电子病历分类的难度;(3)各个医疗机构电子病历的分类标准不统一,电子病历的种类的划分应设置等级,分为一级大类和二级类目,但是很多病历类型的层级不清晰,以至于电子病历的分类标准难以制定。在我们的发明中,电子病历分类共分为30个大类,分类标准参考《病历书写基本规范》(2010版)。
4.目前,应用于电子病历文档分类的技术主要有基于关键词技术和基于机器学习技术,基于机器学习技术主要为基于贝叶斯模型分类和基于支持向量机分类,有的研究人员常使用过bert模型等深度学习模型分类,也取得了不错的效果。
5.在采用关键词技术进行分档分类时,存在的技术问题是非常明显的:
6.(1)关键词的权重难以区分,由于电子病历的关键词重合度非常高,所以基于关键词进行文档分类效果并不可观;
7.(2)并不是每一篇病历文本都存在关键词,很多病历文本的关键词难以挖掘,所以基于关键词进行病历分类并不全面,不能解决所有类型的分类问题;
8.(3)关键词的整理是一个长时间的问题,需要不断地去挖掘,所以这种方法的时间成本比较高;
9.在采用机器学习技术,如贝叶斯模型、支持向量机或者隐马尔可夫等模型,进行病历分类时,上面的问题同样不可忽视;
10.(1)这类机器学习模型在学习时难以学到比较短小的病历文本的特征,长度较长的病历文本字符达3000以上,而短小的病历文本字符数不足100,对于这些短小的病历的特征学习效率比较低下;
11.(2)对于相近类别的分类效果比较差,电子病历有很多病历的内容是像非常相近的,甚至是包含关系,对于这些种类的病历,分类效果不理想;
12.在采用bert等深度学习模型时,存在的技术问题主要表现在:
13.(1)bert模型提取的文本特征有限,不能将较长的文本进行有效的学习和处理;
14.(2)bert模型在进行特征学习时,对于某些具有较强特征的关键词分配的权重是相同的,不能有效突出这些关键特征的影响,以致于对于这些类型的病历的分类效果并不友好;
15.(3)bert模型的训练以及实施部署过程相对麻烦,对计算机环境的要求比较高,不利于高效、便捷地去实施项目。


技术实现要素:

16.为克服现有技术的上述缺陷,有效进行电子病历文本的分类,并且有效识别医务人员对电子病历的分类错误的情况,减少电子病历在信息化处理过程中错分类情况的发生,本发明提供了一种多元加权得分机制和机器学习模型概率加权机制相结合的分类方法,能够有效提高相似度很高的病历文本之间的分类效率。
17.本发明提供的一种电子病历的分类方法,包括以下步骤:
18.s10、计算输入电子病历文本在每一个已知文本分类下的多元加权得分s;
19.s20、将多元加权得分映射为多元加权概率ps;
20.s30、将所述电子病历文本输入神经网络分类模型,得到分类加权概率py;
21.s40、多元加权概率与分类概率根据权重相加,结果最大者对应的分类为所述电子病历文本的分类。
22.进一步地,所述步骤s10包括:
23.统计所述电子病历文本的关键词,计算关键词加权得分s1;
24.统计所述电子病历文本的句式结构数量,计算句式结构加权得分s2;
25.统计所述电子病历文本的模板结构数量,计算模板结构加权得分s3;
26.多元加权得分s的计算公式为:s=s1+s2+s3。
27.进一步地,关键词的权重《句式结构的权重《模板结构的权重。
28.进一步地,所述关键词加权得分的计算方法包括:
29.将所述电子病历文本与每个分类下的关键词库对比,获得一级正向关键词xi,二级正向关键词xj,一级负向关键词x
l
,二级负向关键词xm,权重分别为a1、a2、a3、a4,
30.计算关键词加权得分s1,计算公式为:s1=a1xi+a2x
j-a3x
l-a4xm;
31.优选的,a1∈[1,1.5]、a3∈[1,1.5]、a2∈[0.5,0.75],a4∈[0.5,0.75]。
[0032]
进一步地,所述句式结构加权得分的计算方法包括:
[0033]
将所述电子病历文本与每个分类下句式库进行对比,获得每一个分类下电子病历中出现句式库中句式的数量xz,然后根据下式计算:
[0034]
s2=a5xz,xz为所述输入文本中句式结构出现的数量;
[0035]
优选的,a5∈[2,3]。
[0036]
进一步地,句式结构包括表达时间的句式结构、表达地点的句式结构和表达事件的句式结构。
[0037]
进一步地,所述模板结构加权得分的计算方法包括:
[0038]
将所述电子病历与每一个分类下模板库进行对比,获得每一个分类下电子病历中
符合模板库中模板的数量xg,然后根据下式计算:
[0039]
模板结构得分s3的公式为:s3=a6xg,xg为模板结构出现的数量;
[0040]
优选的,a6∈[3,4]。
[0041]
进一步地,在所述步骤s20中,将多元加权得分映射为多元加权概率ps的公式为:
[0042][0043]
进一步地,在所述步骤s30中,用文本卷积神经网络对所述电子病历文本进行预测,输出每个分类的预测概率y,再乘以权重得到分类概率py:
[0044]
py=c2
·
y,c2∈[1/3,2/3],且c1+c2=1;
[0045]
优选的,卷积神经网络的卷积核为2*2,选取的句子长度为1500,向量维度为300,每一批次文本数量batch_size为12,训练轮次epoch为1000。
[0046]
进一步地,s2=2xz、s3=3xg、s=s1+s2+s3、py=c2
·
y、c1=c2=0.5。
[0047]
本发明的有益效果包括:
[0048]
1、相比于现有的规则和关键词模型,本模型提出了多元化的加权方式,从多角度划分影响因素的权重,而不是仅仅依赖关键词和规则,有效提高了文本分类的准确率;
[0049]
2、相比于现有的贝叶斯和支持向量机等机器学习模型,本模型不仅添加了多元加权机制,多元加权得分机制主要包含正负向关键词加权、句式关系结构加权和文本模板结构加权。关键词设置分为正负向关键词,对正负向关键词加权,本模型还将关键词分为两个等级,有效的考虑了不同权重关键词的作用。同时本模型应用了文本卷积神经网络,提取文本信息的分布情况,两者结合,进一步提高了文本分类的准确率;
[0050]
3、相比于现有的深度学习模型,本模型具有训练量级轻便,易于部署,而且本模型的多元加权机制能够防止模型过拟合,提高了文档分类效率;
[0051]
4、相比于其它类型的文本分类,电子病历的文本分类难度更高,要求更高,不仅局限于效率问题,更要充分考虑于医疗文本的契合问题,本发明提出的多元加权机制就是为医疗文本分类量身定制,充分考虑的医疗文本的特点和难点,有效解决了医疗文本分类难的问题。
附图说明
[0052]
图1为根据本发明一个实施例的电子病历的分类方法的流程示意图;
[0053]
图2为根据本发明另一个实施例的电子病历的分类方法的流程示意图。
[0054]
如图所示,为了能明确实现本发明的实施例的结构或者方法,在图中标注了特定的标记符号,但这仅为示意需要,并非意图将本发明限定在该特定设备和环境中,根据具体需要,本领域的普通技术人员可以将这些元件、标号、环境进行调整、修改,所进行的调整和修改仍然包括在后附的权利要求的范围中。
具体实施方式
[0055]
下面结合附图和具体实施例对本发明提供的电子病历的分类方法进行详细描述。
[0056]
在以下的描述中,将描述本发明的多个不同的方面,然而,对于本领域内的普通技术人员而言,可以仅仅利用本发明的一些或者全部结构来实施本发明。为了解释的明确性而言,阐述了特定的数目、配置和顺序,但是很明显,在没有这些特定细节的情况下也可以实施本发明。在其他情况下,为了不混淆本发明,对于一些众所周知的特征将不再进行详细阐述。
[0057]
如图1和2所示,本发明提出一种电子病历的分类方法,包括:
[0058]
s10、计算输入文本在每一个已知文本分类下的多元加权得分;
[0059]
s20、将多元加权得分映射为多元加权概率;
[0060]
s30、将输入的文本输入神经网络分类模型,得到分类概率;
[0061]
s40、多元加权概率与分类概率根据权重相加,结果最大所对应的分类为输入文本的分类。
[0062]
在步骤s10中,首先要对数据预处理,包括数据的去格式化和无关词过滤。数据的去格式化是对电子病历文本进行格式化处理,主要去除与内容无关的标签和字符,如网页格式标签。数据的无关词汇过滤是对电子病历的无关术语进行过滤,如病人的姓名、医院名称、住院号等涉及隐私的信息,以及与病历无关的描述。然后进行分词、分句,以在后面进行关键词数量、句式关系结构数量等的计算。
[0063]
在步骤s10中,然后计算输入的电子病历的多元加权得分。具体包括:
[0064]
(1)统计每个分类下的关键词数量,计算关键词加权得分;
[0065]
其中,关键词分为正向关键词和负向关键词。正向关键词为在每个分类中有助于分类的关键词提示,负向关键词为对分为该类起负向作用的关键词。在通常的文本分类中,都会有正向的关键词,而没有负向关键词,通过负向关键词,有助于更准确地进行分类。例如,在“入院记录”中,一级负向关键词为“出院诊断”、“出院医嘱”和“会诊意见”等,这些负向关键词的出现,明显提示该文本有极大的可能不属于“入院记录”这一类别。
[0066]
关键词加权,即对正向含义的关键词和负向含义的关键词分别加权,正负向关键词分为两级划分机制,包括一级正向关键词、二级正向关键词、一级负向关键词和二级负向关键词,有效解决了关键词权重不一的问题。例如,在入院记录中“主诉”和“现病史”作为一级正向关键词,“体格检查”和“血常规”作为二级正向关键词,一级关键词的特征权重要明显高于二级关键词的权重,通俗的讲就是“主诉”或“现病史”的存在更能说明该文本是入院记录。
[0067]
在现有的技术中,关键词的应用不仅缺少负向关键词,而且正向关键词的权重计算方式为tf-idf(频率-逆文档频率),这种计算方式非常依赖数据量的大小和范围,而且这些计算方式容易把不相关的词汇也计算进去,会导致在电子病历分类方面可靠性低下。
[0068]
在一个实施例中,一级正向关键词xi,二级正向关键词xj,一级负向关键词x
l
,二级负向关键词xm,权重分别为a1、a2、a3、a4,关键词加权得分s1的公式为:s1=a1xi+a2x
j-a3x
l-a4xm。针对电子病历,根据统计或回归拟合等方式确定其范围为:其中,a1∈[1,1.5]、a3∈[1,1.5],a2∈[0.5,0.75]、a4∈[0.5,0.75];优选的,一级关键词的权重是二级关键词权重的2倍,即一个一级关键词的得分是二级关键词的两倍,a1=2a2=a3=2a4。
[0069]
对于输入的电子病历的分词结果,查询该电子病历在每一个分类下的关键词库,从而确定其在每一个类别下的一级正向关键词的数量xi,二级正向关键词的数量xj,一级负
向关键词的数量x
l
,二级负向关键词的数量xm。
[0070]
一二级关键词通过已有电子病历中单词出现的频率、重要性等信息进行评判,再由医学专家进行审核、修改、确定,从而形成每类电子病历分类的关键词库。
[0071]
(2)统计句式结构数量,计算句式结构加权得分
[0072]
句式关系结构加权,即对不同表达句式的结构进行加权,句式关系结构包含时间、地点和事件表达的句式,可以有效地将关键句式的作用体现出来。例如,“某某医师今日查房”和“专科目的和专科后的注意事项为...”等,这些句式的出现同样有一定的概率说明该文本为“查房记录”或“转科记录”类型。
[0073]
在一个实施例中,句式结构分为三类,即表达时间的句式结构(如“患者的入院时间为...”、“患者的手术时间为...”等)、表达地点的句式结构(如“患者的转入科室为...”和“患者于某某地点进行某项操作”等)和表达事件的句式结构(如“患者行某项手术和操作”和“医师于今日对患者进行某项治疗”等),由于不同的句式结构只会出现在特定的文本中,所以句式结构的加权机制要比关键词更高一些。
[0074]
计算句式结构加权得分时,首先将电子病历与每一个分类下句式库进行对比,获得每一个分类下电子病历中出现句式库中句式的数量xz,然后根据下式计算:
[0075]
s2=a5xz,xz为所述输入文本中句式结构出现的数量;a5∈[2,3]。
[0076]
句式库可以通过已有的电子病历进行统计确定,具体实现的技术手段为现有技术,不再赘述。
[0077]
(3)统计模板结构数量,计算模板结构加权得分
[0078]
文本的模板结构加权主要针对于套用病历模板的病历文本,病历模板分为入院记录、首次病程、手术记录、会诊记录以及出院记录等类型。本步骤的作用在于既参考了模板又不完全依赖模板,给予了模板一定的代表意义。电子的病历的模板并不是每一类都会有相应的模板,本发明针对的30类病历,只有入院记录、会诊记录、出院记录、手术记录、首次病程、疑难病例讨论等10类拥有模板设定,模板来源于医院统一制定的病历模板。
[0079]
模板加权得分即根据模板的类型来进行评分,电子病历的模板目前比较明确的有入院记录、首次病程、会诊记录、手术记录、疑难病例讨论记录、出院记录等10类,我们会根据待分类病历的模板结果进行分类评分,每类模板的得分权重比关键词和句式关系结构更为重要,因此其权重更高,比如3分。电子病历的模板来源于三甲医院统一制定的模板,如术前小结的模板内容为“术前诊断:...,诊断依据:...,手术适应症和禁忌症:...,术前准备:...,手术计划:...,术后处理:...”,术前小结采用的模板为上述模板的话,那么很有可能为术前小结,所以模板的配套识别是非常有助于提高文档分类的准确性。但是首先并非所有病历的书写都会采用模板,其次,模板使用错误的情况时有发生,所以模板识别只是文档分类的一个环节,仍需要和其它环节搭配共同分类。
[0080]
计算模板结构加权得分时,首先将电子病历与每一个分类下模板库进行对比,获得每一个分类下电子病历中符合模板库中模板的数量xg,然后根据下式计算:
[0081]
模板结构得分s3的公式为:s3=a6xg,xg为模板结构出现的数量,a6∈[3,4]。
[0082]
根据关键词、句式结构、模板结构的特性,可以知道:关键词的权重《句式结构的权重《模板结构的权重。
[0083]
模板库可以通过已有的电子病历进行统计确定,具体实现的技术手段为现有技
术,不再赘述。
[0084]
(4)计算多元加权得分s,计算公式为:
[0085]
s=s1+s2+s3[0086]
s1、s2、s3分别为关键词加权得分、句式关系结构加权得分、模板结构加权得分。
[0087]
在步骤s20中,将多元加权得分映射为多元加权概率,因为多元加权得分和后续的神经网络预测的概率值的级别不统一,比如此处s的值可能为3、5、7等,而神经网络预测的概率在0-1之间,因此本步骤先对其进行映射处理。多元加权分类概率为ps:
[0088][0089]
此处的公式、参数和textcnn分类模型密切相关,与其预测概率和权重息息相关。textcnn分类模型得分的权重为c2,c1+c2=1,并且c1∈[1/3,2/3]、c2∈[1/3,2/3],c1和c2这样的区间里能取得最优解,使综合模型的准确率p和f1值能够达到最大化,但是由于训练数据质量、维度以及实际操作过程产生误差的影响,所以c1和c2是波动变化的。
[0090]
在步骤s30中,用textcnn卷积神经网络文本分类模型对病历文本进行预测,获得分类的预测概率。
[0091]
由于卷积神经网络的每篇文本的字符长度是可以自定义的,可以有效提取文本信息的所有特征。bert神经网络每篇文本的字符长度最大为512个,而病历文本的字符长度可能达到上千,所以采用bert会丢掉大部分特征信息。lstm神经网络的记忆字符长度也是有限的,且不及bert的性能。故本发明选取了卷积神经网络进行文本分类。
[0092]
准备带有标准标签的电子病历脱敏数据(脱去了与病人相关的所有隐私信息),共计30w条数据,总共30类,平均每一类数据10000条左右,按照7:2:1的概率进行划分,划分训练集和验证集和测试集。
[0093]
用卷积神经网络对病历文本训练数据进行训练,拟定的训练轮次为1000,经验证集和测试集验证测试得出,模型的准确率p为96.75%左右,f1值为93.31%左右。
[0094]
输入参数为病历的整个文本,输出为病历的分类类型,根据模型的损失值loss、准确率p,以及综合指数f值,来调整模型的参数。传统的textcnn模型只有一层卷积,一层max-pooling,最后将输出外接softmax来进行分类。但实际效果并不理想。对于卷积核大小,每次输入的文本数量batch_size,词向量维度,字符长度sentence_len,训练轮次epoch,经过不断的测试最后选取的参数为采用2层卷积,卷积核为2*2,选取的句子长度为1500,向量维度为300,batch_size为12,训练轮次epoch为1000。
[0095]
分类模型训练完成后,得到每个分类的预测概率y,再乘以权重得到分类概率py:
[0096]
py=c2
·
y,c2∈[1/3,2/3],且c1+c2=1
ꢀꢀꢀ
公式(5)
[0097]
在步骤s40中,多元加权概率和textcnn分类概率相加得到每个分类的综合概率值p:
[0098]
p=ps+pyꢀꢀꢀ
公式(6)
[0099]
针对一个电子病历的文档,每一类都会生成一个综合概率值,综合概率是综合考虑了卷积神经网络和多元关键词加权的结果得出的,最大的p值对应的类别,即文档的分类结果。
[0100]
在一个实施例中,多元加权的权重和神经网络结果的权重优选为相关,即c1+c2=
1,并且c1∈[1/3,2/3]、c2∈[1/3,2/3]。多元加权结果的权重和神经网络结果的权重分配是经过不断的实验得出的最优分配比。
[0101]
在本发明中,多元加权得分机制主要包含正负向关键词加权、句式关系结构加权和文本模板结构加权,多元加权机制能够有效解决单一因素对病历分类结果影响过大的副作用;同时结合了文本卷积神经网络(textcnn),可以提取没有明显加权的病历文本,解决了相似度很高的病历文本之间的分类问题。同时,本发明所述的文档分类方法,具有高准确率、模型的轻量、易部署和维护等优点。
[0102]
在一个实施例中,s2=2xz、s3=3xg、s=s1+s2+s3py=c2
·
y,c1=c2=0.5。在此权重下,本发明提出的方法和textcnn、贝叶斯、svm、bert、bert+bi_lstm分别做了比较,结果效果如下:
[0103]
模型名称测试数据量准确率p综合指标f多元加权+textcnn3万96.75%93.31%textcnn3万85.51%82.23%贝叶斯模型3万80.34%75.33%支持向量机3万75.51%72.26%bert3万86.22%84.58%bert+bi_lstm3万88.76%85.71%
[0104]
从中可以发现,在电子病历文本分类的结果中,多元加权+textcnn模型的准确率达到了96.75%,综合指标f值达到了93.31%,明显优于bert+bi_lstm模型的分类结果。
[0105]
本技术提供一种电子病历的分类方法,能够有效提高相似度很高的病历文本之间的分类效率。多元加权得分机制主要包含正负向关键词加权、句式关系结构加权和文本模板结构加权,正负向关键词加权即对正向含义的关键词和负向含义的关键词分别加权,正负向关键词分为两级划分机制,包括一级正向关键词、二级正向关键词、一级负向关键词和二级负向关键词;句式关系结构加权即对不同表达句式的结构进行加权,句式关系结构包含时间、地点和事件表达句式;文本的模板结构加权主要针对于套用病历模板的病历文本,病历模板分为入院记录、首次病程、手术记录、会诊记录以及出院记录等类型。通过本发明,够有效解决单一因素(关键词、句式、句意、事件等单一因素)对病历分类结果影响过大的副作用,我们同时结合了文本卷积神经网络(textcnn)提取没有明显加权的病历文本,解决了相似度很高的病历文本之间的分类问题。
[0106]
最后应说明的是,以上实施例仅用以描述本发明的技术方案而不是对本技术方法进行限制,本发明在应用上可以延伸为其他的修改、变化、应用和实施例,并且因此认为所有这样的修改、变化、应用、实施例都在本发明的精神和教导范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1