CN115660871B - 医学临床过程无监督建模方法、计算机设备、存储介质 - Google Patents
医学临床过程无监督建模方法、计算机设备、存储介质 Download PDFInfo
- Publication number
- CN115660871B CN115660871B CN202211393587.8A CN202211393587A CN115660871B CN 115660871 B CN115660871 B CN 115660871B CN 202211393587 A CN202211393587 A CN 202211393587A CN 115660871 B CN115660871 B CN 115660871B
- Authority
- CN
- China
- Prior art keywords
- data
- text
- medical
- ssp
- layer
- 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
- 238000000034 method Methods 0.000 title claims abstract description 89
- 230000008569 process Effects 0.000 title abstract description 34
- 238000012549 training Methods 0.000 claims abstract description 36
- 238000013528 artificial neural network Methods 0.000 claims abstract description 28
- 239000013598 vector Substances 0.000 claims description 57
- 238000012545 processing Methods 0.000 claims description 21
- 239000003814 drug Substances 0.000 claims description 20
- 238000003745 diagnosis Methods 0.000 claims description 18
- 201000010099 disease Diseases 0.000 claims description 14
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 12
- 229940079593 drug Drugs 0.000 claims description 12
- 238000003776 cleavage reaction Methods 0.000 claims description 10
- 230000007017 scission Effects 0.000 claims description 10
- 230000000873 masking effect Effects 0.000 claims description 9
- 230000011218 segmentation Effects 0.000 claims description 9
- 101100269850 Caenorhabditis elegans mask-1 gene Proteins 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 238000013499 data model Methods 0.000 claims description 7
- 238000000547 structure data Methods 0.000 claims description 2
- 238000005259 measurement Methods 0.000 abstract description 5
- 238000012954 risk control Methods 0.000 abstract description 3
- 235000019580 granularity Nutrition 0.000 abstract 1
- 230000006870 function Effects 0.000 description 12
- 238000003058 natural language processing Methods 0.000 description 10
- WQZGKKKJIJFFOK-GASJEMHNSA-N Glucose Chemical compound OC[C@H]1OC(O)[C@H](O)[C@@H](O)[C@@H]1O WQZGKKKJIJFFOK-GASJEMHNSA-N 0.000 description 7
- 206010057190 Respiratory tract infections Diseases 0.000 description 7
- 206010046306 Upper respiratory tract infection Diseases 0.000 description 7
- 230000001154 acute effect Effects 0.000 description 6
- LSQZJLSUYDQPKJ-NJBDSQKTSA-N amoxicillin Chemical compound C1([C@@H](N)C(=O)N[C@H]2[C@H]3SC([C@@H](N3C2=O)C(O)=O)(C)C)=CC=C(O)C=C1 LSQZJLSUYDQPKJ-NJBDSQKTSA-N 0.000 description 6
- 229960003022 amoxicillin Drugs 0.000 description 6
- LSQZJLSUYDQPKJ-UHFFFAOYSA-N p-Hydroxyampicillin Natural products O=C1N2C(C(O)=O)C(C)(C)SC2C1NC(=O)C(N)C1=CC=C(O)C=C1 LSQZJLSUYDQPKJ-UHFFFAOYSA-N 0.000 description 6
- 239000006188 syrup Substances 0.000 description 6
- 235000020357 syrup Nutrition 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 238000012512 characterization method Methods 0.000 description 4
- 239000008103 glucose Substances 0.000 description 4
- 229940090044 injection Drugs 0.000 description 4
- 238000002347 injection Methods 0.000 description 4
- 239000007924 injection Substances 0.000 description 4
- 238000011176 pooling Methods 0.000 description 4
- 239000000243 solution Substances 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 229940093181 glucose injection Drugs 0.000 description 3
- 208000014617 hemorrhoid Diseases 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 150000001875 compounds Chemical class 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- HTIQEAQVCYTUBX-KRWDZBQOSA-N (S)-amlodipine Chemical compound CCOC(=O)C1=C(COCCN)NC(C)=C(C(=O)OC)[C@@H]1C1=CC=CC=C1Cl HTIQEAQVCYTUBX-KRWDZBQOSA-N 0.000 description 1
- 101150007054 AMD1 gene Proteins 0.000 description 1
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 101100371857 Caenorhabditis elegans unc-71 gene Proteins 0.000 description 1
- 230000003276 anti-hypertensive effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 229950008554 levamlodipine Drugs 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- HYIMSNHJOBLJNT-UHFFFAOYSA-N nifedipine Chemical compound COC(=O)C1=C(C)NC(C)=C(C(=O)OC)C1C1=CC=CC=C1[N+]([O-])=O HYIMSNHJOBLJNT-UHFFFAOYSA-N 0.000 description 1
- 229960001597 nifedipine Drugs 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000001373 regressive effect Effects 0.000 description 1
- 210000002345 respiratory system Anatomy 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
- 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
- Medical Treatment And Welfare Office Work (AREA)
Abstract
本发明提供一种医学临床过程无监督建模方法及相应的计算机设备、计算机可读存储介质。所述医学临床过程无监督建模方法包括:预训练医学文本模型,具体包括:把每个人的医学数据中的所有的文本类数据导出成一个文本数据集;把所述文本数据集的数据中的文本部分提取出来,生成一个文本序列S;文本序列S中的每个文本元素进行语素切割;训练神经网络transformer,训练任务为遮盖预测。本发明提高模型在实际应用中的泛化能力,可以处理专家知识难以描述或者难以穷举的复杂临床组合,完全基于大数据和无监督学习,迭代速度快,无需大量专家介入,成本低,可以实现不同粒度的,量化的费用测算和风险控制。
Description
技术领域
本发明属于医疗保险和计算机领域,特别涉及一种医学临床过程无监督建模方法及相应的计算机设备、计算机可读存储介质。
背景技术
近几年来,随着电子病历和社保自动支付的广泛普及,国内积累了大量的医疗过程数据。与此同时由于人口平均寿命增加等各种因素,社会医疗保障的资金压力日益增大,商业险中的商业健康险比例也明显增加,无论是社保还是商保都对于医疗费用测算和控费有着迫切的需求。
目前的社保和商业健康险对于医疗费用的控制手段主要包括两种方法。
一种方法是针对个例提出的,比如某些病和药品器材的临床医学实施合理性,这种方法中,通过专家认定设定规则。但这种方法的缺点在于专家维护成本非常高,规则泛化性差,更新速度慢,针对一些复杂模糊情况难以做出合适的规则进行描述,难以给出量化指标。
另一种方法是针对过往医疗记录中的费用,使用传统统计学的方式进行费用测算来作为控费的标准,包括DRGs和DIP。DRGs和DIP基于过往数据的统计和专家经验,设定临床路径组合,并将临床路径组合分组归类,在组别基础之上进行历年数据统计,以此为根据确定临床费用标准。并且,这种方法还通过医院评级指标,综合考虑费用以及疗效之间的平衡,从费用结算端对医院运营进行优化。这种方法一定程度上解决了专家规则难以处理量化逻辑的问题,但是对于临床过程中的具体细节把控不足,只能从最后的费用结果中倒逼。
发明内容
针对上述问题,本发明提供一种医学临床过程无监督建模方法。
本发明提供的医学临床过程无监督建模方法,包括:
预训练医学文本模型,具体包括:
把每个人的医学数据中的所有的文本类数据导出成一个文本数据集;
把所述文本数据集的数据中的文本部分提取出来,生成一个文本序列S=(s1,s2,s3,s4,...,sN1),文本序列S中的文本元素sj为文本数据集中的文本,j为整数且1≤j≤N1,N1为整数,指所述文本数据集中的文本总个数;
使用分词器对所述文本序列S中的每个文本元素进行语素切割,获得语素序列TS=([ssp1,1,...,ssp1,J1],...,[sspj,1,...,sspj,Jj],...,[sspN1,1,...,sspN1,JN1]),其中,[ssp1,1,...,ssp1,J1]为对文本元素s1进行语素切割后得到的语素,...,[sspj,1,...,sspj,Jj]为对文本元素sj进行语素切割后得到的语素,...,[sspN1,1,...,sspN1,JN1]为对文本元素sN1进行语素切割后得到的语素,J1为对文本元素s1进行语素切割后得到的语素个数,...,Jj为对文本元素sj进行语素切割后得到的语素个数,...,JN1为对文本元素sN1进行语素切割后得到的语素个数,J1,...,Jj,...,JN1均为不小于1的整数;
训练神经网络transformer,训练任务为遮盖预测。
进一步,
所述训练神经网络transformer中,需注意:
对所述语素序列TS中的语素进行随机遮盖,生成遮盖语素序列TSmask=([ssp1,1,...,ssp1,J1],...,[MASK,...MASK],...,[sspN1,1,...,sspN1,JN1]),其中MASK代表特殊的遮盖标识,对单独的文本元素sj进行遮盖;
随机遮盖后把TSmask中的语素拉平成为一个大序列TSmask1,TSmask1=(ssp1,1,...,ssp1,J1,...,MASK,...MASK,...,sspN1,1,...,sspN1,JN1),并将所述大序列TSmask1作为所述神经网络transformer的输入;
所述神经网络transformer的训练目标为预测被遮盖的部分的真实值,任务类型为分类任务,使用的loss为MCE(multi-class cross-entropy error)。
进一步,还包括:
所述语素切割采用sentence piece tokenizer算法,根据语料集中字符串共同出现的频率判断是否需要进行切割。
进一步,还包括:
将所述医学数据按照个人为单位,从上到下分层为四层结构的数据:第一层为个人信息层,第二层为就诊信息层,第三层为医疗大项层,第四层为医疗明细层,所述四层结构的数据中,前面层次的数据为后面层次数据的高层级数据;
所述个人信息层包括人口学信息,既性别,身高,体重,病史,不良嗜好史;
所述就诊信息层包括本次就诊的出入院日期,住院天数,诊断出的疾病名称,就诊时的年龄,就诊总费用,医院名称;
所述医疗大项层包括大项的名称,即包括西药费,手术费,检查费和大项的金额;
医疗明细层包括明细的名称和费用。
进一步,还包括:
所述四层结构的数据中的每一层数据均包括时序信息、非时序信息、金额信息和无金额信息,
其中,
所述时序信息包括就诊时间和就诊时年龄;
所述非时序信息包括性别和工作信息;
所述金额信息包括费用明细中的费用项目和具体费用;
所述无金额信息包括患者所诊断出的疾病名称。
进一步,还包括:
把所述四层结构的数据中每一层的数据内容区分为文本类型数据,时间类型数据,数值类型数据即金额信息后进行如下处理:
对所述文本类型数据进行所述语素切割;
对所述时间类型数据采用相对时间编码,即换算为相对时间,并记录时间戳之间的日期差值;
对所述金额信息取对数来缓解数据的不稳定性,同时对于小于1元的金额取1处理,既log为0。
进一步,还包括:
进行所述处理后,对生成的数据进行随机遮盖,
其中,
对所述文本类型数据的遮盖使用随机生成的遮盖字符串;
对所述金额信息使用-1遮盖。
进一步,还包括:
所述对生成的数据进行随机遮盖时,根据知识库随机替换一些可替换用药。
进一步,还包括:
完成所述对生成的数据进行随机遮盖后,把经过所述随机遮盖后的数据,从第四层数据依次至第一层数据,分别输入transformer神经网络,其中,将所述文本类型数据通过医学文本数据模型编码后得到第一语义向量,数值类型数据和时间类型数据分别通过transformer神经网络进行编码得到对应的语义向量,然后,把得到的各语义向量合并处理,得到与所述第四层数据至第一层数据分别对应的医学语义向量。
进一步,
所述医学数据为单次就诊记录数据。
本发明还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述医学临床过程无监督建模方法的步骤。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行上述医学临床过程无监督建模方法的步骤。
本发明提供的医学临床过程无监督建模方法能够解决以下技术问题:
1、将医学概念投射到语义向量空间可以有效解决医学概念的稀疏性,相似的病症药会聚集到一起,拥有相似的计算特性,从而提高模型在实际应用中的泛化能力。
2、对临床路径中病症药之间复杂的多元互动关系进行模糊建模,可以处理专家知识难以描述或者难以穷举的复杂临床组合。
3、完全基于大数据和无监督学习,迭代速度快,无需大量专家介入,成本低。
4、获得临床过程中,包括临床机构,单个患者,单次就诊,具体明细等不同角色和不同层级的向量表征。从而可以实现不同粒度的,量化的费用测算和风险控制。
本发明是将整个临床过程进行多层级时间序列化建模。将整个临床过程中的医疗明细,费用和使用时间作为输入,通过基于大数据的无监督深度学习技术,将诊断,用药,器材和手术映射到统一的语义向量空间中去,并学习不同临床概念之间的相互关系和临床过程中的使用情况以及费用区间。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所指出的结构来实现和获得。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本发明实施例的语言模型训练流程图;
图2示出了根据本发明实施例的临床语义模型训练流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地说明,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”、“第三”等是用于区别不同对象,而不是用于描述特定顺序或主次关系。本申请中出现的“多个”指的是两个以上(包括两个)。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明提供的医学临床过程无监督建模方法主要包括两个步骤:A、模型训练过程;B、模型使用过程。
模型训练过程包括:
A1、预训练医学文本数据模型。因为现实的医学概念数据(简称为医学数据,例如可为临床记录)中,各种医学术语不统一,不规范,直接使用临床医学中的各种诊断,明细等信息作为最小语义单元来进行建模会碰到非常严重的数据稀疏性,同时也不利于充分利用自然语言的语素特性进行不同相似术语之间的语义关联的学习。针对医学数据尤其是医保数据、临床记录而言,一份住院病历的诊断信息中,明细可多达几百条,如果考虑多次就诊的历史,其中的明细因子可以达到数千,加上医学数据是时序型的数据,医学数据中前后数据的相互关联极其复杂,因而医学数据中包含相互关联及其复杂的大量信息。
在传统统计或者机器学习中,会将所有医学数据编入一个词典V中(通常所述词典V的容量或大小N会有几万到几十万的大小,所述容量N为整数、是指词典V中的词条数目),然后把每个医学数据在词典V中的编号作为传统统计或者机器学习中输入的特征编码(简称为输入特征)。设把第i个(1≤i≤N)医学数据对应的输入特征在传统统计或者机器学习中输入,则会得到一个与该输入特征对应的、大小和词典V相同的稀疏向量v,v=(0,0,...,1,...,0,0),其中vi=1对应于第i个医学数据在词典V中的编号。这种情况下,特征向量v非常的稀疏,这会导致两个缺陷:1)当某个医学数据出现次数少的时候,模型很难学习到合适的权重;2)相似的医学数据在特征中是独立无关的两个维度,难以捕捉到相关性。因此,我们采用深度学习的技术路径,将每个医学数据都映射到一个低维向量中,低维向量的维度n通常在1024以下,来解决上述问题。
考虑到自然语言处理(NLP)中的单词和医学数据有相似的特点,因此我们参考NLP处理的概念。早期NLP对于每个单词建立词典后,再采用稀疏向量的方式处理。后来在此基础上产生了基于词向量,字向量的处理方式。其中,词向量的优点是:每个词都有自己的语义向量,语义表达能力强,但词向量的缺点是:通过分词得到的词表会很大,在预测的时候容易碰上词典中不存在的词,既出现OOV(out of vocabulary),同时在对中文,日语等没有空格的语言进行处理的时候,需要预先进行分词处理,而分词本身就会带来一定的错误。字向量的优点是:通过分词得到的字表小,预测的时候基本不会碰到OOV,但字向量缺点是:单个字的语义表达能力受限,而且用字向量来表达一句话,所需的向量序列太长,对神经网络的处理能力,内存大小和计算能力都提出很高要求。最新的处理方式是sentence piecetokenization,其原理是从信息熵出发,通过统计学方法,对训练语料进行预处理后自动生成词表,这个词表的内容是自动切分的语素,语素的大小介于字和词之间,这种切分成语素的方式较好地找到一个平衡点来平衡字向量和词向量各自的优缺点。在医学数据的映射中,也存在和上述分词类似的问题,如果把每个医学数据都直接映射到语义向量中去,那么由于现实中医学数据的不规范性,出现OOV的可能性非常高,故而我们在这里先对非数值类型和非时间类型的医学概念数据(即医学文本数据),参考了自然语言处理(NLP)的方式进行了预处理。所述预训练医学文本数据模型包括如下步骤:
AA、获取每个人单次就诊记录数据(即医学概念数据或医学数据),包括(性别,年龄,诊断,明细1,明细2,...),其中,诊断指诊断结果(主要指诊断后确诊的疾病得名称),明细1,明细2,...等各条明细可为费用明细清单(主要包括针对确诊的疾病所开的药品明细)等信息。
BB、把所述每个人单次就诊记录数据中的所有的文本类数据导出成一个文本数据集,再用文本数据集训练sentence piece tokenizer(下文简称分词器)。
CC、将文本数据集的(如包括:文本1如性别,文本2如诊断,文本3如明细1,文本4如明细2,...,文本N1,其中,N1为整数,指文本数据集中的文本总个数)数据中的文本部分提取出来,生成一个文本序列S=(s1,s2,s3,s4,...,sN1),文本序列S中的文本元素sj为文本数据集中的文本,j为整数且1≤j≤N1。
DD、使用分词器对文本序列S中的每个文本元素进行语素切割,以获得语素序列TS,TS=([ssp1,1,...,ssp1,J1],...,[sspj,1,...,sspj,Jj],...,[sspN1,1,...,sspN1,JN1]),其中,[ssp1,1,...,ssp1,J1]为对文本元素s1进行语素切割后得到的语素,...,[sspj,1,...,sspj,Jj]为对文本元素sj进行语素切割后得到的语素,...,[sspN1,1,...,sspN1,JN1]为对文本元素sN1进行语素切割后得到的语素,J1为对文本元素s1进行语素切割后得到的语素个数,...,Jj为对文本元素sj进行语素切割后得到的语素个数,...,JN1为对文本元素sN1进行语素切割后得到的语素个数,J1,...,Jj,...,JN1均为不小于1的整数。
EE、训练基于自注意力的神经网络transformer,训练任务为遮盖预测,其中,需注意:
EE1、对语素序列TS中的语素进行随机遮盖,生成遮盖语素序列TSmask=([ssp1,1,...,ssp1,J1],...,[MASK,...MASK],...,[sspN1,1,...,sspN1,JN1]),其中MASK代表特殊的遮盖标识。这里注意一定要以文本序列S中的医学概念(即单独的一个文本元素sj)为单位进行遮盖,而不是普通NLP中以单个语素为单位进行替换。因为我们要学习的是整个医学概念,而不是医学概念中间的语素构成(医学术语构词法)。
EE2、随机遮盖后把TSmask中的语素拉平成为一个大序列,TSmask1=(ssp1,1,...,ssp1,J1,...,MASK,...MASK,...,sspN1,1,...,sspN1,JN1),并将大序列TSmask1作为神经网络的输入。
EE3、神经网络的训练目标为预测被遮盖的部分的真实值,任务类型为分类任务,使用的loss为MCE(multi-class cross-entropy error)。
在本步骤中,首先、将海量临床医学记录中的诊断结果(主要指诊断后确诊的疾病得名称),费用明细清单(主要包括针对确诊的疾病所开的药品明细)等医学数据以单次就诊为单位拼接成明细序列,所述拼接本质上是将结构化数据扁平化形成文本序列。举例:一次就诊中,诊断为“上呼吸道感染”,开药为“阿莫西林”和“急支糖浆”,将这些信息拼接为一个文本“上呼吸道感染阿莫西林急支糖浆”作为一个明细(即前述文本元素)。然后,每个明细使用分词器进行语素切割。语素可为复合词如“上呼吸道感染”,也可为单词如“阿莫西林”和“急支糖浆”,语素切割就是把复合词语素切割为单词语素。语素切割采用sentencepiece tokenizer算法,根据语料集中字符串共同出现的频率判断是否需要进行切割,举例:把“上呼吸道感染”切割为“上呼吸道”和“感染”。之后,再以明细为单位进行随机遮盖,如把“上呼吸道感染阿莫西林急支糖浆”随机遮盖后得到“上呼吸道感染阿莫西林<mask>”,其中,被遮盖的是文本元素“急支糖浆”。
再使用6层transformer神经网络模型对被遮盖的明细进行预测,通过对比预测结果和真实被遮盖项目,使用梯度下降算法对模型参数进行更新训练,最后获得的6层transformer神经网络模型即为医学概念数据的文本编码模型。
综上,在本步骤中,将原始的医学数据通过借鉴NLP语言模型处理,生成了非数值类型且非时间类型部分数据的语义向量。
A2、将医学数据按照个人为单位,从上到下分层。
把所述医学数据进行分层处理,依次分为四层结构的数据:个人信息层(即第一层),就诊信息层(即第二层),医疗大项层(即第三层),医疗明细层(即第四层),所述四层结构的数据中,前面层次的数据为后面层次数据的高层级数据。所述四层结构的数据中的每一层数据均包括时序信息(包括就诊时间,就诊时年龄),非时序信息(包括性别,工作信息),金额信息(包括费用明细中的费用项目和具体费用)和无金额信息(包括患者所诊断出的疾病名称)。其中,个人信息层包括人口学信息,既性别,身高,体重,病史,不良嗜好史。就诊信息层包括本次就诊的出入院日期,住院天数,诊断,就诊时的年龄,就诊总费用,医院名称。医疗大项层包括大项的名称,如西药费,手术费,检查费等和大项的金额。医疗明细层包括明细的名称和费用。所述分层是根据业务意义进行的,如性别不随着时间改变,那就是个人层级的;年龄随着就诊时间改变,那就是就诊层级的;某一项如手术费是医疗中的大项,那就是医疗大项层;某个明细的费用就是明细层级的。
A3、对步骤A2生成的数据结构进行处理。
包括把所述四层结构的数据中每一层的数据内容区分为文本类型,时间类型,数值类型(主要指金额信息),并采用不同方式对不同类型的数据进行处理:
参照上述步骤A1,对文本类型数据使用预训练时相同的分词器进行语素切割;
对时间类型数据采用相对时间编码(即换算为相对时间),记录时间戳之间的日期差值,换算为相对时间的意义在于:一个人两次或多次就诊之间的相对时间间隔比具体的发生时间更有意义,而且从算法角度来说,本发明处理的是和以往数据相似的数据,而绝对时间是不断向前发展的,2020年训练的数据,如果用绝对时间,在未来是不会出现的,从本质上来说,本发明要处理的是微观的医学关联,不是宏观的发病率趋;
对金额信息取对数来缓解数据的不稳定性,同时对于小于1元的金额取1处理,既log为0。
A4、对生成的数据进行随机遮盖。
遮盖对象为金额,诊断结果,明细等作为输入信息单元的数据。其中,文本类型的数据比如诊断、明细名称的遮盖使用特定的、随机生成的遮盖字符串<mask>;金额信息的遮盖使用-1。遮盖过程中还会根据知识库随机替换一些可替换用药,如降压药中的硝苯地平和左旋氨氯地平可以用来相互替换,需注意,不对时间类型数据进行遮盖。
A5、由步骤A3得到的数据得到与各层数据对应的医学语义向量。
对步骤A3输出的数据(即特征),从第四层数据依次至第一层数据,分别将特征输入transformer神经网络,得到与各层数据分别对应的医学语义向量。其中,将所述医学数据中文本型数据通过医学文本数据模型编码后得到语义向量,数值类型数据和时间类型数据分别通过特定的神经网络(如transformer神经网络)进行编码,然后和所述语义向量合并处理,所述合并处理主要用两种方式:加和和拼接来实现,加和就是两个向量直接加在一起,相加的两个向量维度一致,结果向量维度保值不变,每一位值为输入向量的对应值的和。拼接是把两个n和m维的向量拼成一个n+m维的向量;编码时,高层级的神经网络不仅包含本身的特征,还包括低层级的医学语义向量的池化结果;神经网络通过池化层对不同层级,不同模态的数据进行融合;transformer神经网络处理每个层级时,将上一个层级的语义向量通过池化获得新的语义向量序列。例如,处理就诊信息层,会把所有医疗大项层和医疗明细层的语义向量通过池化获得就诊语义向量;在处理个人信息层时,会把个人所有的就诊信息层通过池化获得个人语义向量。所述模态包括上述的文本类型,时间类型,数值类型。
A6、对模型进行检测及调整。
参见图2,将步骤A4中被遮盖单元的医学语义向量提取出来,输入到全连接神经网络分类器和回归器,对被遮盖单元的原始值进行预测。通过预测结果的反馈计算损失函数,并使用adam trainer对神经网络参数进行梯度下降训练。
如果遮盖的是文本,对应的结果是分类结果,使用的是multi-class cross-entropy loss,如果遮盖的是金额数值,对应的结果是回归结果mean squared error。
本发明中,在模型的训练中,在语言模型的基础上加入了对多模态类型数据的遮盖和对应不同类型损失函数的多任务混合学习,从而得到精确的模型。
本发明所处理的医学数据和普通的文本有以下区别:
一、结构性,医学数据中个人的性别,每次就诊时的年龄,住院天数,诊断,每个医疗明细,在逻辑上有明确的层次结构,有些类似一篇文章的标题,章节,段落。现有的NLP模型由于处理能力的限制和语义上的模糊性,并没有对这种层次结构的数据进行明确的建模处理。而对于医学数据,这些层次结构是明确的,并且蕴含着非常有意义的信息。
二、时序性,医学数据中的医学事件是在时间尺度上顺序出现的,它不仅仅是一个序列,两次相邻就诊之间的时间差异可以带来很大的变化。而在普通的文本处理中是不存在时序性的问题。
三、多模态,医学数据中的数值信息如时间信息,年龄信息,项目金额都有独特的意义,本身可以直接进行数学计算,不需要也不应该被当做文本。在本发明中,上述数值信息是以词表的形式映射到一个多维向量里面去。
基于以上的特点,本发明在NLP处理之后,进一步把初步的语义向量输入到更加复杂的多层级,多模态的时间序列神经网络中去,获得最终的语义向量。
模型使用过程包括:
B1、采用模型训练过程中的步骤A2,A3对数据进行建模和特征处理。
B2、采用模型训练过程中的步骤A5对数据进行医学语义向量编码。
B3、将获得的编码应用到下游评估和风控任务中。
图1所示是作为本发明实施例的语言(即医学文本数据)模型训练的流程图。图2所示是作为本发明另一实施例的临床语义(即医学数据)模型训练的流程图。图2所示的临床语义模型训练中使用了采用图1中流程训练好的语言模型。
本发明举例实施如下:
参见图1,进行下面步骤1和步骤2。
1.准备(即图1中“结构化临床记录数据”)并加载原始数据,数据模型为
2.语言模型训练
2a、若个人数据中包括多次就诊记录,先将个人数据中多次就诊记录按照就诊次数展开为多条单次就诊记录,既{person:...,admissions:[amd1,adm2,adm3]}展开成{person:...,adm1},{person,adm2},{person,adm3}。每条单次就诊记录包含多条明细数据,选择其中一条单次就诊记录进行如下训练步骤。
2b、将所述选中的单次就诊记录中多条明细数据拼接(即图1中“医疗明细文本拼接”)后进行文本化表达,变成“男性,31岁,住院,痔疮,床位费,西药费,葡萄糖注射液,...”,需注意,年龄不是时间类型数据,而是文本类型数据。
2c、将文本化表达后的数据进行语素切割(即图1中“文本语素切割”)成为语素[‘男性’,31岁,住院,痔疮,床位费,西药费,‘葡萄糖’,‘注射液’,...]。
2d、将切割后得到的语素对应到原数据(即图1中“文本语素指派到医疗明细”),例如{name:‘葡萄糖注射液’,ssp:[‘葡萄糖’,‘注射液’]},所述对应的目的是为了将语义向量指派回原始的概念。
2e、对语素进行随机遮盖(即图1中“随机遮盖医疗明细”),比如遮盖掉输入单元“葡萄糖注射液”切割得到的语素,获得“男性,31岁,住院,痔疮,床位费,西药费,<mask><mask>,...”,得到被遮盖后的语素序列X,同时提取进行遮盖之前的待遮盖语素Y(例如步骤d)中的‘葡萄糖’,‘注射液’)。
2f、把语素序列X输入transformer模型并对<mask><mask>进行预测得到预测的语素Y1,对比预测结果Y1和待遮盖语素Y,根据Y和Y1计算损失函数如Cross-entropy loss,并通过训练器针对损失函数采用梯度下降算法更新transformer模型参数。
通过不断重复上述步骤2e和2f得到最终的语言模型即医学文本数据模型。然后参见图2,进行下面步骤3。
3.多任务/多层级语义模型训练(用于有效地获取更好的预训练结果)
3a、参照步骤2a-2d使用相同的语素切割方法对每个人的所有医疗记录进行处理并形成4个层级:个人信息层,就诊信息层,医疗大项层,医疗明细层。
3b、在每个层级随机遮盖掉一些信息,比如明细名称,金额,性别,分别形成被遮盖之后的语素序列X1、时间序列、金额序列。
3c、使用语言模型对医疗记录的文本部分进行编码,即把语素序列X1输入语言模型得到序列语义向量,再把语义向量指派到医疗明细。
3d、使用时序模型即特征编码网络1对时间序列进行编码。
3e、使用归一化normalization模型对金额序列进行编码。
3f、通过前述的加和或拼接将上述三种编码融合即合并后输入到多层级编码网络如transformer中进行多模态编码。
3g、在多层级编码网络中,对于每个层级,将下一级的语义向量和本层级的语义向量进行融合。
3h、参考步骤2e,对每个层级遮盖的部分进行预测,通过分类器预测文本型数据,通过回归器预测数值型数据。
3i、参考步骤2f,对比预测结果和遮盖的真实值,计算分类器的损失函数(即损失函数1如cross-entropy loss)和回归器的损失函数(即损失函数2如meas squared errorloss)。
3j、将不同层级(前述第一层至第四层),不同类型任务的损失函数(即损失函数1和损失函数2)相加即融合,并进行模型参数更新,所述相加为加权相加,加权参数由工作人员根据具体计算对象确定。
3k、通过训练器迭代训练重复步骤3i和3j直至获得最终的模型。
预测过程:训练过程去掉3b,3i,3j,3k几个步骤。
本发明提供的医学临床过程无监督建模方法包括如下基本步骤。
A、将临床明细费用记录采用多层级时间序列的数据结构进行表达。其中,对多层级时间序列原始数据的特征化技术包括:医学概念的文本切割,时间戳的相对编码,个人时序特征(如年龄)和非时序特征(如性别)的处理。
B、在多层级时间序列特征化之后,使用深度学习序列模型对每个层级中的所有单元进行编码,投射到医学语义向量空间中,其中,涉及多层神经网络对于不同层次,时序+非时序医学概念/角色的融合建模。
C、针对海量医学数据设计关于费用预测,诊断预测,用药预测的无监督学习任务及相关损失函数和训练算法。
本发明还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述医学临床过程无监督建模方法的步骤。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行上述医学临床过程无监督建模方法的步骤。
本发明将医学概念投射到语义向量空间可以有效解决医学概念的稀疏性,相似的病症药会聚集到一起,拥有相似的计算特性,从而提高模型在实际应用中的泛化能力;对临床路径中病症药之间复杂的多元互动关系进行模糊建模,可以处理专家知识难以描述或者难以穷举的复杂临床组合;完全基于大数据和无监督学习,迭代速度快,无需大量专家介入,成本低;获得临床过程中,包括临床机构,单个患者,单次就诊,具体明细等不同角色和不同层级的向量表征。从而可以实现不同粒度的,量化的费用测算和风险控制。
尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (11)
1.医学临床过程无监督建模方法,其特征在于,包括:
预训练医学文本模型,具体包括:
把每个人的医学数据中的所有的文本类数据导出成一个文本数据集,将所述医学数据按照个人为单位,从上到下分层为四层结构的数据:第一层为个人信息层,第二层为就诊信息层,第三层为医疗大项层,第四层为医疗明细层,所述四层结构的数据中,前面层次的数据为后面层次数据的高层级数据;
所述个人信息层包括人口学信息,即性别,身高,体重,病史,不良嗜好史;
所述就诊信息层包括本次就诊的出入院日期,住院天数,诊断出的疾病名称,就诊时的年龄,就诊总费用,医院名称;
所述医疗大项层包括大项的名称,即包括西药费,手术费,检查费和大项的金额;
医疗明细层包括明细的名称和费用;
把所述文本数据集的数据中的文本部分提取出来,生成一个文本序列S=(s1,s2,s3,s4,...,sN1),文本序列S中的文本元素sj为文本数据集中的文本,j为整数且1≤j≤N1,N1为整数,指所述文本数据集中的文本总个数;
使用分词器对所述文本序列S中的每个文本元素进行语素切割,获得语素序列TS=([ssp1,1,...,ssp1,J1],...,[sspj,1,...,sspj,Jj],...,[sspN1,1,...,sspN1,JN1]),其中,[ssp1,1,...,ssp1,J1]为对文本元素s1进行语素切割后得到的语素,...,[sspj,1,...,sspj,Jj]为对文本元素sj进行语素切割后得到的语素,...,[sspN1,1,...,sspN1,JN1]为对文本元素sN1进行语素切割后得到的语素,J1为对文本元素s1进行语素切割后得到的语素个数,...,Jj为对文本元素sj进行语素切割后得到的语素个数,...,JN1为对文本元素sN1进行语素切割后得到的语素个数,J1,...,Jj,...,JN1均为不小于1的整数;
训练神经网络transformer,训练任务为遮盖预测。
2.根据权利要求1所述的医学临床过程无监督建模方法,其特征在于,
所述训练神经网络transformer中,需注意:
对所述语素序列TS中的语素进行随机遮盖,生成遮盖语素序列TSmask=([ssp1,1,...,ssp1,J1],...,[MASK,...MASK],...,[sspN1,1,...,sspN1,JN1]),其中MASK代表特殊的遮盖标识,对单独的文本元素sj进行遮盖;
随机遮盖后把TSmask中的语素拉平成为一个大序列TSmask1,TSmask1=(ssp1,1,...,ssp1,J1,...,MASK,...MASK,...,sspN1,1,...,sspN1,JN1),并将所述大序列TSmask1作为所述神经网络transformer的输入;
所述神经网络transformer的训练目标为预测被遮盖的部分的真实值,任务类型为分类任务,使用的loss为MCE(multi-class cross-entropyerror)。
3.根据权利要求2所述的医学临床过程无监督建模方法,其特征在于,还包括:
所述语素切割采用sentencepiecetokenizer算法,根据语料集中字符串共同出现的频率判断是否需要进行切割。
4.根据权利要求3所述的医学临床过程无监督建模方法,其特征在于,还包括:
所述四层结构的数据中的每一层数据均包括时序信息、非时序信息、金额信息和无金额信息,
其中,
所述时序信息包括就诊时间和就诊时年龄;
所述非时序信息包括性别和工作信息;
所述金额信息包括费用明细中的费用项目和具体费用;
所述无金额信息包括患者所诊断出的疾病名称。
5.根据权利要求4所述的医学临床过程无监督建模方法,其特征在于,还包括:
把所述四层结构的数据中每一层的数据内容区分为文本类型数据,时间类型数据,数值类型数据即金额信息后进行如下处理:
对所述文本类型数据进行所述语素切割;
对所述时间类型数据采用相对时间编码,即换算为相对时间,并记录时间戳之间的日期差值;
对所述金额信息取对数来缓解数据的不稳定性,同时对于小于1元的金额取1处理,即log为0。
6.根据权利要求5所述的医学临床过程无监督建模方法,其特征在于,还包括:
进行所述处理后,对生成的数据进行随机遮盖,
其中,
对所述文本类型数据的遮盖使用随机生成的遮盖字符串;
对所述金额信息使用-1遮盖。
7.根据权利要求6所述的医学临床过程无监督建模方法,其特征在于,还包括:
所述对生成的数据进行随机遮盖时,根据知识库随机替换一些可替换用药。
8.根据权利要求7所述的医学临床过程无监督建模方法,其特征在于,还包括:
完成所述对生成的数据进行随机遮盖后,把经过所述随机遮盖后的数据,从第四层数据依次至第一层数据,分别输入transformer神经网络,其中,将所述文本类型数据通过医学文本数据模型编码后得到第一语义向量,数值类型数据和时间类型数据分别通过transformer神经网络进行编码得到对应的语义向量,然后,把得到的各语义向量合并处理,得到与所述第四层数据至第一层数据分别对应的医学语义向量。
9.根据权利要求1-8任一所述的医学临床过程无监督建模方法,其特征在于,
所述医学数据为单次就诊记录数据。
10.计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1-9中任一项所述的方法的步骤。
11.计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行上述权利要求1-9中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211393587.8A CN115660871B (zh) | 2022-11-08 | 2022-11-08 | 医学临床过程无监督建模方法、计算机设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211393587.8A CN115660871B (zh) | 2022-11-08 | 2022-11-08 | 医学临床过程无监督建模方法、计算机设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115660871A CN115660871A (zh) | 2023-01-31 |
CN115660871B true CN115660871B (zh) | 2023-06-06 |
Family
ID=85015730
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211393587.8A Active CN115660871B (zh) | 2022-11-08 | 2022-11-08 | 医学临床过程无监督建模方法、计算机设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115660871B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116894685B (zh) * | 2023-09-11 | 2024-02-23 | 之江实验室 | 一种面向医疗行为片段的费用自动测算方法与系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107220506A (zh) * | 2017-06-05 | 2017-09-29 | 东华大学 | 基于深度卷积神经网络的乳腺癌风险评估分析系统 |
CN114490950A (zh) * | 2022-04-07 | 2022-05-13 | 联通(广东)产业互联网有限公司 | 编码器模型的训练方法及存储介质、相似度预测方法及系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210183484A1 (en) * | 2019-12-06 | 2021-06-17 | Surgical Safety Technologies Inc. | Hierarchical cnn-transformer based machine learning |
CN112507695A (zh) * | 2020-12-01 | 2021-03-16 | 平安科技(深圳)有限公司 | 文本纠错模型建立方法、装置、介质及电子设备 |
CN112685561A (zh) * | 2020-12-26 | 2021-04-20 | 广州知汇云科技有限公司 | 一种跨病种的小样本临床医疗文本后结构化处理方法 |
US20220293267A1 (en) * | 2021-03-15 | 2022-09-15 | Siemens Medical Solutions Usa, Inc. | Generating reasons for imaging studies |
CN114707491A (zh) * | 2022-03-15 | 2022-07-05 | 灵犀量子(北京)医疗科技有限公司 | 基于自然语言处理的数量提取方法和系统 |
CN115238026A (zh) * | 2022-08-31 | 2022-10-25 | 翼方健数(北京)信息科技有限公司 | 一种基于深度学习的医疗文本主题分割方法和装置 |
-
2022
- 2022-11-08 CN CN202211393587.8A patent/CN115660871B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107220506A (zh) * | 2017-06-05 | 2017-09-29 | 东华大学 | 基于深度卷积神经网络的乳腺癌风险评估分析系统 |
CN114490950A (zh) * | 2022-04-07 | 2022-05-13 | 联通(广东)产业互联网有限公司 | 编码器模型的训练方法及存储介质、相似度预测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115660871A (zh) | 2023-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109471895B (zh) | 电子病历表型抽取、表型名称规范化方法及系统 | |
Shickel et al. | Deep EHR: a survey of recent advances in deep learning techniques for electronic health record (EHR) analysis | |
Yu et al. | Automatic ICD code assignment of Chinese clinical notes based on multilayer attention BiRNN | |
Teng et al. | Automatic medical code assignment via deep learning approach for intelligent healthcare | |
CN106611375A (zh) | 一种基于文本分析的信用风险评估方法及装置 | |
CN112735597A (zh) | 半监督自学习驱动的医学文本病症辨识方法 | |
Wang et al. | Long short-term memory recurrent neural networks for multiple diseases risk prediction by leveraging longitudinal medical records | |
CN110277167A (zh) | 基于知识图谱的慢性非传染性疾病风险预测系统 | |
CN111881292B (zh) | 一种文本分类方法及装置 | |
Jiang et al. | A hybrid intelligent model for acute hypotensive episode prediction with large-scale data | |
Ding et al. | An attentive neural sequence labeling model for adverse drug reactions mentions extraction | |
CN111540470B (zh) | 一种基于bert迁移学习的社交网络抑郁倾向检测模型及其训练方法 | |
Kaswan et al. | AI-based natural language processing for the generation of meaningful information electronic health record (EHR) data | |
CN115660871B (zh) | 医学临床过程无监督建模方法、计算机设备、存储介质 | |
Zhu et al. | Using deep learning based natural language processing techniques for clinical decision-making with EHRs | |
CN111145914B (zh) | 一种确定肺癌临床病种库文本实体的方法及装置 | |
Ren et al. | Medical treatment migration prediction based on GCN via medical insurance data | |
Gong et al. | Prognosis analysis of heart failure based on recurrent attention model | |
CN114783603A (zh) | 基于多源图神经网络融合的患病风险预测方法及系统 | |
Yang et al. | Named entity recognition of medical text based on the deep neural network | |
Kholifah et al. | Mental disorder detection via social media mining using deep learning | |
Zhang et al. | Transformer-and Generative Adversarial Network–Based Inpatient Traditional Chinese Medicine Prescription Recommendation: Development Study | |
Jin et al. | TBLC-rAttention: A deep neural network model for recognizing the emotional tendency of Chinese medical comment | |
Faris et al. | Automatic symptoms identification from a massive volume of unstructured medical consultations using deep neural and BERT models | |
CN115936014B (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 |