一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

疾病部位识别方法、装置、电子设备及存储介质与流程

2022-04-16 16:13:02 来源:中国专利 TAG:


1.本技术涉及人工智能及数字医疗技术领域,尤其涉及一种疾病部位识别方法、装置、电子设备及存储介质。


背景技术:

2.目前被广泛应用于疾病部位识别的人工智能系统大多依靠预先构建的词典来进行文本模糊匹配,对疾病部位识别的精度较低,此外,该方式往往需要对词典不断地迭代更新,以扩充词典内的词段文本来提高自身的匹配性能,需要花费较大的时间成本和人力成本。因此,如何提供一种疾病部位识别方法,能够提高疾病部位识别的准确性,成为了亟待解决的技术问题。


技术实现要素:

3.本技术实施例的主要目的在于提出一种疾病部位识别方法、装置、电子设备及存储介质,旨在提高疾病部位识别的准确性。
4.为实现上述目的,本技术实施例的第一方面提出了一种疾病部位识别方法,所述方法包括:
5.获取原始病情文本;
6.通过预先训练的病情匹配模型对所述原始病情文本进行匹配处理,得到第一疾病部位;
7.通过预先训练的语义分析模型对所述原始病情文本进行语义分析处理,得到病情语义向量;
8.对所述病情语义向量进行识别处理,得到第二疾病部位;
9.根据所述第一疾病部位和所述第二疾病部位,得到目标疾病部位。
10.在一些实施例,所述通过预先训练的病情匹配模型对所述原始病情文本进行匹配处理,得到第一疾病部位的步骤,包括:
11.通过所述病情匹配模型的分词器对所述原始病情文本进行分割处理,得到病情文本字段;
12.通过所述病情匹配模型内预设的字典树遍历每一所述病情文本字段,得到病情文本关键词;
13.根据所述病情匹配模型内预设的疾病部位对照表,匹配与所述病情文本关键词对应的第一疾病部位。
14.在一些实施例,在通过预先训练的语义分析模型对所述原始病情文本进行语义分析处理,得到病情语义向量的步骤之前,所述方法还包括预先训练所述语义分析模型,具体包括:
15.获取样本病情文本;
16.通过预设的对比学习模型对样本病情文本进行编码处理,得到初始嵌入数据;
17.根据初始嵌入数据构建样本对,其中,所述样本对包括正例对和负例对;
18.通过所述对比学习模型的损失函数计算出所述正例对的第一相似度和所述负例对的第二相似度;
19.根据所述第一相似度和所述第二相似度对所述比学习模型的损失函数进行优化,以更新所述对比学习模型,得到所述语义分析模型。
20.在一些实施例,在所述预先训练所述语义分析模型的步骤之前,所述方法还包括构建对比学习模型,具体包括:
21.获取原始的预训练模型,其中,所述预训练模型为bert模型,所述bert模型包括bert编码器;
22.对预训练模型进行参数微调,以更新所述预训练模型,得到对比学习模型。
23.在一些实施例,所述通过预先训练的语义分析模型对所述原始病情文本进行语义分析处理,得到病情语义向量的步骤,包括:
24.通过所述语义分析模型的嵌入层对所述原始病情文本进行数据预处理,得到标准病情文本;
25.通过所述语义分析模型内的bert编码器对所述标准病情文本进行编码处理,得到病情文本嵌入数据;
26.对所述病情文本嵌入数据进行向量化处理,得到病情语义向量。
27.在一些实施例,所述对所述病情语义向量进行识别处理,得到第二疾病部位的步骤,包括:
28.对所述病情语义向量进行特征提取,得到局部病情特征向量;
29.对所述局部病情特征向量进行最大池化处理,得到目标病情特征向量;
30.利用预设的激活函数对所述目标病情特征向量进行激活处理,得到每一疾病类别对应的疾病概率值;
31.根据所述疾病概率值,得到第二疾病部位。
32.在一些实施例,所述根据所述第一疾病部位和所述第二疾病部位,得到目标疾病部位的步骤,包括:
33.对所述第一疾病部位和所述第二疾病部位进行比对分析,得到分析结果;
34.若所述分析结果为所述第一疾病部位和所述第二疾病部位相同,则将所述第一疾病部位或者所述第二疾病部位作为目标疾病部位;
35.若所述分析结果为所述第一疾病部位与所述第二疾病部位不相同,则获取所述第一疾病部位和所述第二疾病部位的优先级,并根据所述优先级将所述第一疾病部位或者所述第二疾病部位作为目标疾病部位。
36.为实现上述目的,本技术实施例的第二方面提出了一种疾病部位识别装置,所述装置包括:
37.原始病情文本获取模块,用于获取原始病情文本;
38.匹配模块,用于通过预先训练的病情匹配模型对所述原始病情文本进行匹配处理,得到第一疾病部位;
39.语义分析模块,用于通过预先训练的语义分析模型对所述原始病情文本进行语义分析处理,得到病情语义向量;
40.识别模块,用于对所述病情语义向量进行识别处理,得到第二疾病部位;
41.比较模块,用于根据所述第一疾病部位和所述第二疾病部位,得到目标疾病部位。
42.为实现上述目的,本技术实施例的第三方面提出了一种电子设备,所述电子设备包括存储器、处理器、存储在所述存储器上并可在所述处理器上运行的程序以及用于实现所述处理器和所述存储器之间的连接通信的数据总线,所述程序被所述处理器执行时实现上述第一方面所述的方法。
43.为实现上述目的,本技术实施例的第四方面提出了一种存储介质,所述存储介质为计算机可读存储介质,用于计算机可读存储,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述第一方面所述的方法。
44.本技术提出的疾病部位识别方法、装置、电子设备及存储介质,其通过获取原始病情文本;通过预先训练的病情匹配模型对原始病情文本进行匹配处理,得到第一疾病部位。这样一来,通过病情匹配模型能够较为方便地根据原始病情文本的文本内容,匹配出与原始病情文本相关性较高的第一疾病部位,提高了匹配效率。另一方面,通过预先训练的语义分析模型对原始病情文本进行语义分析处理,得到病情语义向量,从而对病情语义向量进行识别处理,得到第二疾病部位,能够基于深度语义学习模型来对原始病情文本进行语义识别,得到第二疾病部位。最后,通过比较第一疾病部位和第二疾病部位,得到目标疾病部位。本技术的疾病部位识别方法能够通过病情匹配和深度语义学习两方面来识别疾病部位,相较于传统技术的基于词典的文本模糊匹配,极大地提高了疾病部位识别的准确性。
附图说明
45.图1是本技术实施例提供的疾病部位识别方法的流程图;
46.图2是图1中的步骤s102的流程图;
47.图3是本技术实施例提供的疾病部位识别方法的另一流程图;
48.图4是本技术实施例提供的疾病部位识别方法的另一流程图;
49.图5是图1中的步骤s103的流程图;
50.图6是图1中的步骤s104的流程图;
51.图7是图1中的步骤s105的流程图;
52.图8是本技术实施例提供的疾病部位识别装置的结构示意图;
53.图9是本技术实施例提供的电子设备的硬件结构示意图。
具体实施方式
54.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。
55.需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
56.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的
技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
57.首先,对本技术中涉及的若干名词进行解析:
58.人工智能(artificial intelligence,ai):是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学;人工智能是计算机科学的一个分支,人工智能企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能可以对人的意识、思维的信息过程的模拟。人工智能还是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
59.自然语言处理(natural language processing,nlp):nlp用计算机来处理、理解以及运用人类语言(如中文、英文等),nlp属于人工智能的一个分支,是计算机科学与语言学的交叉学科,又常被称为计算语言学。自然语言处理包括语法分析、语义分析、篇章理解等。自然语言处理常用于机器翻译、手写体和印刷体字符识别、语音识别及文语转换、信息检索、信息抽取与过滤、文本分类与聚类、舆情分析和观点挖掘等技术领域,它涉及与语言处理相关的数据挖掘、机器学习、知识获取、知识工程、人工智能研究和与语言计算相关的语言学研究等。
60.信息抽取(information extraction,ner):从自然语言文本中抽取指定类型的实体、关系、事件等事实信息,并形成结构化数据输出的文本处理技术。信息抽取是从文本数据中抽取特定信息的一种技术。文本数据是由一些具体的单位构成的,例如句子、段落、篇章,文本信息正是由一些小的具体的单位构成的,例如字、词、词组、句子、段落或是这些具体的单位的组合。抽取文本数据中的名词短语、人名、地名等都是文本信息抽取,当然,文本信息抽取技术所抽取的信息可以是各种类型的信息。
61.字典树(trie树):又称单词查找树或键树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减少无谓的字符串比较。trie的核心思想是空间换时间。利用字符串的公共前缀来降低查询时间的开销以达到提高效率的目的。前缀树的3个基本性质:(1)根节点不包含字符,除根节点外每一个节点都只包含一个字符。(2)从根节点到某一节点,路径上经过的字符连接起来,为该节点对应的字符串。(3)每个节点的所有子节点包含的字符都不相同。
62.对比学习(contrastive learning)是自监督学习的一种,不需要依赖人工标注的类别标签信息,直接利用数据本身作为监督信息。对比学习是一种为深度学习模型描述相似和不同事物的任务的方法。利用对比学习方法,可以训练机器学习模型来区分相似和不同的图像。在图像领域的自监督学习分为两种类型:生成式自监督学习、判别式自监督学习。对比学习应用的是典型的判别式自监督学习。对比学习的核心要点是:通过自动构造相似实例和不相似实例,也就是正样本和负样本,学习将正样本和负样本在特征空间进行对比,使得相似的实例在特征空间中距离拉近,而不相似的实例在特征空间中的距离拉远,差异性变大,通过这样的学习过程得到的模型表征就可以去执行下游任务,在较小的标记数据集上进行微调,从而实现无监督的模型学习过程。对比学习的指导原则是:通过自动构造
相似实例和不相似实例,通过学习得到一个学习模型,利用这个模型,使得相似的实例在投影空间中比较接近,而可不相似的实例在投影空间中距离比较远。
63.嵌入(embedding):embedding是一种向量表征,是指用一个低维的向量表示一个物体,该物体可以是一个词,或是一个商品,或是一个电影等等;这个embedding向量的性质是能使距离相近的向量对应的物体有相近的含义,比如embedding(复仇者联盟)和embedding(钢铁侠)之间的距离就会很接近,但embedding(复仇者联盟)和embedding(乱世佳人)的距离就会远一些。embedding实质是一种映射,从语义空间到向量空间的映射,同时尽可能在向量空间保持原样本在语义空间的关系,如语义接近的两个词汇在向量空间中的位置也比较接近。embedding能够用低维向量对物体进行编码还能保留其含义,常应用于机器学习,在机器学习模型构建过程中,通过把物体编码为一个低维稠密向量再传给dnn,以提高效率。
64.bert(bidirectional encoder representation from transformers)模型:bert模型进一步增加词向量模型泛化能力,充分描述字符级、词级、句子级甚至句间关系特征,基于transformer构建而成。bert中有三种embedding,即token embedding,segment embedding,position embedding;其中token embeddings是词向量,第一个单词是cls标志,可以用于之后的分类任务;segment embeddings用来区别两种句子,因为预训练不光做lm还要做以两个句子为输入的分类任务;position embeddings,这里的位置词向量不是transfor中的三角函数,而是bert经过训练学到的。但bert直接训练一个position embedding来保留位置信息,每个位置随机初始化一个向量,加入模型训练,最后就得到一个包含位置信息的embedding,最后这个position embedding和word embedding的结合方式上,bert选择直接拼接。
65.mask(掩码、掩膜):mask是深度学习中的常见操作;简单而言,mask相当于在原始张量上盖上一层掩膜,从而屏蔽或选择一些特定元素,因此常用于构建张量的过滤器。线性激活函数relu(根据输出的正负区间进行简单粗暴的二分)、dropout机制(根据概率进行二分)都可以理解为泛化的mask操作。
66.encoder:编码,就是将输入序列转化成一个固定长度的向量;解码(decoder),就是将之前生成的固定向量再转化成输出序列;其中,输入序列可以是文字、语音、图像、视频;输出序列可以是文字、图像。
67.反向传播:反向传播的大致原理为:将训练集数据输入到神经网络的输入层,经过神经网络的隐藏层,最后达到神经网络的输出层并输出结果;由于神经网络的输出结果与实际结果有误差,则计算估计值与实际值之间的误差,并将该误差从输出层向隐藏层反向传播,直至传播到输入层;在反向传播的过程中,根据误差调整各种参数的值;不断迭代上述过程,直至收敛。
68.目前被广泛应用于疾病部位识别的人工智能系统大多依靠预先构建的词典来进行文本模糊匹配,对疾病部位识别的精度较低,此外,该方式往往需要对词典不断地迭代更新,以扩充词典内的词段文本来提高自身的匹配性能,需要花费较大的时间成本和人力成本。因此,如何提供一种疾病部位识别方法,能够提高疾病部位识别的准确性,成为了亟待解决的技术问题。
69.基于此,本技术实施例提供了一种疾病部位识别方法、装置、电子设备及存储介
质,旨在提高疾病部位识别的准确性。
70.本技术实施例提供的疾病部位识别方法、装置、电子设备及存储介质,具体通过如下实施例进行说明,首先描述本技术实施例中的疾病部位识别方法。
71.本技术实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
72.人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
73.本技术实施例可以基于医疗云技术实现对患者的历史病情的分析。其中,医疗云(medical cloud),是指在云计算、移动技术、多媒体、4g通信、大数据、以及物联网等新技术基础上,结合医疗技术,使用“云计算”来创建医疗健康服务云平台,实现了医疗资源的共享和医疗范围的扩大。因为云计算技术的运用于结合,医疗云提高医疗机构的效率,方便居民就医。像现在医院的预约挂号、电子病历、医保等都是云计算与医疗领域结合的产物,医疗云还具有数据安全、信息共享、动态扩展、布局全局的优势。
74.本技术实施例提供的疾病部位识别方法,涉及人工智能及数字医疗技术领域。本技术实施例提供的疾病部位识别方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现疾病部位识别方法的应用等,但并不局限于以上形式。
75.本技术可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本技术可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
76.图1是本技术实施例提供的疾病部位识别方法的一个可选的流程图,图1中的方法可以包括但不限于包括步骤s101至步骤s105。
77.步骤s101,获取原始病情文本;
78.步骤s102,通过预先训练的病情匹配模型对原始病情文本进行匹配处理,得到第一疾病部位;
79.步骤s103,通过预先训练的语义分析模型对原始病情文本进行语义分析处理,得
到病情语义向量;
80.步骤s104,对病情语义向量进行识别处理,得到第二疾病部位;
81.步骤s105,根据第一疾病部位和第二疾病部位,得到目标疾病部位。
82.经过以上步骤s101至步骤s105,本技术实施例一方面通过预先训练的病情匹配模型对原始病情文本进行匹配处理,得到第一疾病部位。使得能够较为方便地根据原始病情文本的文本内容,匹配出与原始病情文本相关性较高的第一疾病部位,提高了匹配效率。另一方面,通过预先训练的语义分析模型对原始病情文本进行语义分析处理,得到病情语义向量,从而对病情语义向量进行识别处理,得到第二疾病部位,能够基于深度语义学习模型来对原始病情文本进行语义识别,得到第二疾病部位。最后,通过比较第一疾病部位和第二疾病部位,得到目标疾病部位。本技术的疾病部位识别方法能够通过病情匹配和深度语义学习两方面来识别疾病部位,相较于传统技术的基于词典的文本模糊匹配,极大地提高了疾病部位识别的准确性。
83.在一些实施例的步骤s101中,可以通过编写网络爬虫,设置好数据源之后进行有目标性的爬取数据,得到原始病情文本。需要说明的是,该原始病情文本为自然语言文本。
84.在一种可能的实现方式中,上述自然语言文本为医疗文本,医疗文本可以是医疗电子记录(electronic healthcare record),电子化的个人健康记录,包括病历、心电图、医学影像等一系列具备保存备查价值的电子化记录。
85.在一些实施例中,在步骤s102之前,该方法还包括预先训练病情匹配模型,该病情匹配模型为基于字典树的esim模型,该病情匹配模型的训练过程具体可以包括:获取样本病情文本,该样本病情文本上带有疾病部位类别标签,对样本病情文本进行分割处理,得到样本病情文本你字段,通过预设的字典树遍历所有的样本病情文本字段,得到样本病情关键词。根据样本病情关键词与疾病类别标签,构建疾病部位对照表。根据疾病部位对照表的样本病情关键词与疾病部位的匹配关系,更新病情匹配模型的损失函数,直至迭代次数满足预设的迭代条件,停止更新病情匹配模型的损失函数,得到最终的病情匹配模型。
86.请参阅图2,在一些实施例中,步骤s102可以包括但不限于包括步骤s201至步骤s203:
87.步骤s201,通过病情匹配模型的分词器对原始病情文本进行分割处理,得到病情文本字段;
88.步骤s202,通过病情匹配模型内预设的字典树遍历每一病情文本字段,得到病情文本关键词;
89.步骤s203,根据病情匹配模型内预设的疾病部位对照表,匹配与病情文本关键词对应的第一疾病部位。
90.具体地,在步骤s201中,为了提高识别效率,可以在病情匹配模型中的jieba分词器内预设符合需求的字段长度、语句类别等等,从而通过jieba分词器对原始病情文本进行分割处理,得到多个病情文本字段。
91.在步骤s202中,由于病情匹配模型内预设的字典树中预先存储有相应的病情关键词,该病情关键词作为字典树的子节点,病情关键词的全称为字典树的叶子节点;将病情文本字段输入至病情匹配模型中,对病情文本关键词进行提取,在字典树中从根节点开始,逐步向下查找,遍历所有的叶子节点,计算每一叶子节点的病情关键词与当前病情文本字段
的相似度,提取相似度大于预设阈值的叶子节点的病情关键词,将这一系列病情关键词中,相似度最大的病情关键词作为病情文本关键词。
92.在步骤s203中,根据病情匹配模型内预设的病位对照表,可以查找与该病情文本关键词对应的疾病数据,即实现病情文本关键词与疾病部位的匹配,得到根据关键词识别到的第一疾病部位。
93.通过步骤s201至步骤s203能够较为方便地根据原始病情文本的文本内容,匹配出与原始病情文本相关性较高的第一疾病部位,提高了匹配效率。
94.请参阅图3,在一些实施例中,在步骤s103之前,该方法还包括预先训练语义分析模型,具体可以包括但不限于包括步骤s301至步骤s305:
95.步骤s301,获取样本病情文本;
96.步骤s302,通过预设的对比学习模型对样本病情文本进行编码处理,得到初始嵌入数据;
97.步骤s303,根据初始嵌入数据构建样本对,其中,样本对包括正例对和负例对;
98.步骤s304,通过对比学习模型的损失函数计算出正例对的第一相似度和负例对的第二相似度;
99.步骤s305,根据第一相似度和第二相似度对比学习模型的损失函数进行优化,以更新对比学习模型,得到语义分析模型。
100.需要说明的是,上述语义分析模型包括输入层、嵌入层、卷积池化层和全连接层。
101.具体地,执行步骤s301和步骤s302,首先获取样本病情文本,对样本病情文本进行编码处理,将样本病情文本内的样本数据映射至嵌入空间、并对样本数据进行向量表示,从而可以得到初始嵌入数据(即初始embedding数据),该初始嵌入数据包括正样本数据和负样本数据。
102.在一些实施例的步骤s303中,通过dropout mask机制对初始嵌入数据进行数据增强处理;本技术实施例通过dropout mask机制替换了传统的数据增强方法,即将同一个样本数据两次输入dropout编码器得到的两个向量作为对比学习的正例对,效果就足够好了,因为比如bert内部每次dropout都随机会生成一个不同的dropout mask,所以只需要将同一个样本数据(即本实施例的初始嵌入数据)输入至simcse模型两次,得到的两个向量就是应用两次不同dropout mask的结果了。可以理解的是,dropout mask是一种网络模型的随机,是对模型参数w的mask,起到防止过拟合的作用。
103.在一个batch中,经过数据增强处理得到的数据(即第一向量和第二向量)是正例对,未经过数据增强的其他数据为负例对。本技术实施例中,可以将一个batch中的其中一部分初始嵌入数据经过数据增强处理得到正例对,另一部分初始嵌入数据作为负例对。
104.在一些实施例中,通过随机采样dropout mask来生成正例对。
105.在一些具体应用场景中,在进行对比学习的阶段,采用典型的batch内的对比学习方法,在batch内部进行数据增强处理,即将上述得到的完整的初始embedding数据进行数据增强处理,让正例的两个样本(第一样本数据和第二样本数据)有所差异。通过随机采样dropout mask来生成正例对,更具体地,将同一个样本重复两次输入到同一个带dropout编码器中(即相同的第一样本数据和第二样本数据分别输入至dropout编码器进行数据增强处理),从而可以得到两个不同的表示向量z(第一向量)和z

(第二向量),将第一向量与第
二向量作为一个正例对《z,z

》。
106.在一些实施例的步骤s304中,第一相似度和第二相似度均为余弦相似度,根据第一相似度和第二相似度对对比学习模型的损失函数进行优化,可以包括但不限于包括:
107.将第一相似度最大化为第一数值和将第二相似度最小化为第一数值,以对损失函数进行优化;其中,第一相似度为损失函数的分子,第一相似度和第二相似度为损失函数的分母,第一数值取值为1,第二数值取值为0。该损失函数中,分子是对应正例对的第一相似度,分母是第一相似度以及所有负例对的第二相似度,然后将分子和分母构成的分子式的值包装在-log()中,这样最大化分子且最小化分母,就能实现最小化损失函数。本公开实施例中,最小化损失函数infonce loss,就是最大化分子且最小化分母,也就是最大化正例对的第一相似度且最小化负例对的第二相似度,并对该损失函数进行最小化,实现对损失函数的优化。更具体地,损失函数为公式(1)所示:
[0108][0109]
该损失函数中,正例对是《z,z

》,n是batch的大小(n是变量),该损失函数表示的是第i个样本要与batch中的每个样本计算相似度,batch里的每个样本都会按照该损失函数进行计算,因此,该损失函数表示的是样本i的损失(loss);该损失函数中,分子是正例对的相似度,分母是正例对以及所有负例对的相似度,然后将该值包装在-log()中,这样最大化分子且最小化分母,就能实现最小化损失函数。
[0110]
请参阅图4,在一些实施例中,在预先训练语义分析模型之前,该方法还包括构建对比学习模型,具体可以包括但不限于包括步骤s401至步骤s402:
[0111]
步骤s401,获取原始的预训练模型,其中,预训练模型为bert模型,bert模型包括bert编码器;
[0112]
步骤s402,对预训练模型进行参数微调,以更新所预训练模型,得到对比学习模型。
[0113]
具体地,在一些实施例,预设的预训练模型可以是bert模型;将bert模型作为基础模型进行参数微调,以更新bert模型,从而得到对比学习模型。该bert模型作为encoder模型(编码模型),bert模型内部包括bert编码器,以将进行数据增强处理后得到的正例对进行对比学习,而该正例对是映射到嵌入空间中进行表示的数据,从而使语义相近的数据距离拉近,语义不相近的距离拉远。通过这种方式可以获得高质量的embedding。
[0114]
具体地,步骤s402中,对预训练模型进行参数微调,以更新预训练模型,得到对比学习模型,包括:
[0115]
根据正例对和负例对构建损失函数;
[0116]
根据样本数据集对损失函数进行计算,对损失函数的损失参数进行微调;
[0117]
将微调后的损失函数作为预训练模型的模型参数,以更新预训练模型,得到对比学习模型。
[0118]
需要理解的是,还可以采用其他方式,将bert模型作为基础模型进行训练,得到对比学习模型,例如可以采用知识蒸馏的方式进行训练,应理解,本技术实施可以采用常规的知识蒸馏的方式进行训练,本技术实施例不做限定。
[0119]
在一些具体实施例,根据正例对和负例对构建损失函数,具体包括:
[0120]
获取正例对的第一相似度和负例对的第二相似度;
[0121]
将第一相似度作为损失函数的分子,第一相似度和第二相似度作为损失函数的分母;其中,将第一相似度和所有负例对的第二相似度作为损失函数的分母。
[0122]
请参阅图5,在一些实施例中,步骤s103可以包括但不限于包括步骤s501至步骤s503:
[0123]
步骤s501,通过语义分析模型的嵌入层对原始病情文本进行数据预处理,得到标准病情文本;
[0124]
步骤s502,通过语义分析模型内的bert编码器对标准病情文本进行编码处理,得到病情文本嵌入数据;
[0125]
步骤s503,对病情文本嵌入数据进行向量化处理,得到病情语义向量。
[0126]
具体地,首先执行步骤s501,通过语义分析模型的嵌入层对原始病情文本上的文本字段进行实体改写、大小写转换、简繁体转换、同义词替换、同音词替换等等,得到标准病情文本。
[0127]
进一步地,可以执行步骤s502,可以是利用预设的bert编码器对标准病情文本进行编码处理,使得标准病情文本上的每个字符都带上对应的编码,从而得到病情文本嵌入数据。
[0128]
最后,执行步骤s503,对病情文本嵌入数据的向量化处理也是基于bert模型的,bert模型对病情文本嵌入数据的每个字符都会转化为一个向量,即字向量,由于病情文本嵌入数据上的文字是有顺序的,因而对这一系列字向量进行排序,能够得到字符矩阵,即病情语义向量。
[0129]
请参阅图6,在一些实施例,步骤s104还可以包括但不限于包括步骤s601至步骤s604:
[0130]
步骤s601,对病情语义向量进行特征提取,得到局部病情特征向量;
[0131]
步骤s602,对局部病情特征向量进行最大池化处理,得到目标病情特征向量;
[0132]
步骤s603,利用预设的激活函数对目标病情特征向量进行激活处理,得到每一疾病类别对应的疾病概率值;
[0133]
步骤s604,根据疾病概率值,得到第二疾病部位。
[0134]
具体地,可以通过预先训练病情识别模型来对病情语义向量进行识别处理,其中,该病情识别模型可以是改进的esim模型,该病情识别模型包括卷积层、池化层、embedding层、全连接层。
[0135]
首先执行步骤s601,可以通过病情识别模型中的embedding层和卷积层对病情语义向量进行特征提取,即采用transformer算法对病情语义向量进行编码处理,得到局部病情特征向量。
[0136]
进一步地,执行步骤s602,利用病情识别模型中的池化层对局部病情特征向量进行最大池化处理,得到最大池化值,得到目标病情特征向量。
[0137]
进一步地,执行步骤s603,在全连接层通过softmax函数对目标病情特征向量进行激活处理,也可以是采用其他激活函数(例如tanh函数)进行处理,不限于此。例如,当采用softmax函数对目标病情特征向量进行激活处理时,通过softmax函数在预设的疾病类别标
签上创建一个概率分布,从而根据概率分布对目标病情特征向量进行标记分类,得到每一疾病类别对应的疾病概率值。
[0138]
最后,执行步骤s604,根据疾病概率值,将疾病概率值最大的疾病类别对应的疾病部位作为第二疾病部位。
[0139]
请参阅图7,在一些实施例,步骤s105还可以包括但不限于包括步骤s701至步骤s703:
[0140]
步骤s701,对第一疾病部位和第二疾病部位进行比对分析,得到分析结果;
[0141]
步骤s702,若分析结果为第一疾病部位和第二疾病部位相同,则将第一疾病部位或者第二疾病部位作为目标疾病部位;
[0142]
步骤s703,若分析结果为第一疾病部位与第二疾病部位不相同,则获取第一疾病部位和第二疾病部位的优先级,并根据优先级将第一疾病部位或者第二疾病部位作为目标疾病部位。
[0143]
具体地,首先执行步骤s701,对第一疾病部位和第二疾病部位进行比对分析,判断第一疾病部位和第二疾病部位是否相同,从而得到分析结果。进而,执行步骤s702,若分析结果为第一疾病部位和第二疾病部位相同,则将第一疾病部位或者第二疾病部位作为目标疾病部位或者,执行步骤s703,若分析结果为第一疾病部位与第二疾病部位不相同,则获取第一疾病部位和第二疾病部位的优先级,并根据优先级将第一疾病部位或者第二疾病部位作为目标疾病部位。例如将第一疾病部位设置为高优先级,将第二疾病部位设置为低优先级,则当第一疾病部位和第二疾病部位不相同时,将高优先级的第一疾病部位作为目标疾病部位。
[0144]
本技术实施例通过获取原始病情文本;通过预先训练的病情匹配模型对原始病情文本进行匹配处理,得到第一疾病部位。这样一来,通过病情匹配模型能够较为方便地根据原始病情文本的文本内容,匹配出与原始病情文本相关性较高的第一疾病部位,提高了匹配效率。另一方面,通过预先训练的语义分析模型对原始病情文本进行语义分析处理,得到病情语义向量,从而对病情语义向量进行识别处理,得到第二疾病部位,能够基于深度语义学习模型来对原始病情文本进行语义识别,得到第二疾病部位。最后,通过比较第一疾病部位和第二疾病部位,得到目标疾病部位。本技术的疾病部位识别方法能够通过病情匹配和深度语义学习两方面来识别疾病部位,相较于传统技术的基于词典的文本模糊匹配,极大地提高了疾病部位识别的准确性。
[0145]
请参阅图8,本技术实施例还提供一种疾病部位识别装置,可以实现上述疾病部位识别方法,该装置包括:
[0146]
原始病情文本获取模块801,用于获取原始病情文本;
[0147]
匹配模块802,用于通过预先训练的病情匹配模型对原始病情文本进行匹配处理,得到第一疾病部位;
[0148]
语义分析模块803,用于通过预先训练的语义分析模型对原始病情文本进行语义分析处理,得到病情语义向量;
[0149]
识别模块804,用于对病情语义向量进行识别处理,得到第二疾病部位;
[0150]
比较模块805,用于根据第一疾病部位和第二疾病部位,得到目标疾病部位。
[0151]
该疾病部位识别装置的具体实施方式与上述疾病部位识别方法的具体实施例基
本相同,在此不再赘述。
[0152]
本技术实施例还提供了一种电子设备,电子设备包括:存储器、处理器、存储在存储器上并可在处理器上运行的程序以及用于实现处理器和存储器之间的连接通信的数据总线,程序被处理器执行时实现上述疾病部位识别方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
[0153]
请参阅图9,图9示意了另一实施例的电子设备的硬件结构,电子设备包括:
[0154]
处理器901,可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本技术实施例所提供的技术方案;
[0155]
存储器902,可以采用只读存储器(readonlymemory,rom)、静态存储设备、动态存储设备或者随机存取存储器(randomaccessmemory,ram)等形式实现。存储器902可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器902中,并由处理器901来调用执行本技术实施例的疾病部位识别方法;
[0156]
输入/输出接口903,用于实现信息输入及输出;
[0157]
通信接口904,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信;
[0158]
总线905,在设备的各个组件(例如处理器901、存储器902、输入/输出接口903和通信接口904)之间传输信息;
[0159]
其中处理器901、存储器902、输入/输出接口903和通信接口904通过总线905实现彼此之间在设备内部的通信连接。
[0160]
本技术实施例还提供了一种存储介质,存储介质为计算机可读存储介质,用于计算机可读存储,计算机可读存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现上述疾病部位识别方法。
[0161]
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0162]
本技术实施例描述的实施例是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
[0163]
本领域技术人员可以理解的是,图1-7中示出的技术方案并不构成对本技术实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
[0164]
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0165]
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设
备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
[0166]
本技术的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0167]
应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
[0168]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0169]
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0170]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0171]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例的方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等各种可以存储程序的介质。
[0172]
以上参照附图说明了本技术实施例的优选实施例,并非因此局限本技术实施例的权利范围。本领域技术人员不脱离本技术实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本技术实施例的权利范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献