医疗文本纠错方法及装置、存储介质、电子设备与流程

文档序号:31064905发布日期:2022-08-09 20:16阅读:70来源:国知局
医疗文本纠错方法及装置、存储介质、电子设备与流程

1.本公开涉及自然语言处理技术领域,尤其涉及一种医疗文本纠错方法与医疗文本纠错装置、计算机可读存储介质及电子设备。


背景技术:

2.错字检查是nlp(natural language processing,自然语言处理)领域最重要的问题之一。虽然有多种经典方法能够实现错字检查,但是由于经典方法无法准确把握句子的真实语义,导致错字检查成本高,且扩展性差。因此,深度学习成功应用于自然语言处理中,并在多数任务中都超越了经典方法。
3.然而,在医学领域的文本中,由于术语的复杂性和语言的特殊性,常用的深度学习模型常常无功而返。不同语言的纠错方式也不同,国外的各种语言病历文本纠错中,大多应用了制定医学领域的相关规则的方式。而中文病历等医疗文本的纠正大多基于字典和规则,存在准确性差、维护难和扩展性弱等问题。
4.鉴于此,本领域亟需开发一种新的医疗文本纠错方法及装置。
5.需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。


技术实现要素:

6.本公开的目的在于提供一种医疗文本纠错方法、医疗文本纠错装置、计算机可读存储介质及电子设备,进而至少在一定程度上克服由于相关技术的限制而导致的准确性差、维护难和扩展性弱的技术问题。
7.本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
8.根据本公开的一个方面,提供一种医疗文本纠错方法,所述方法包括:获取目标医疗文本和医学命名实体,并对所述目标医疗文本进行语境置信度计算得到候选字和所述候选字的语境置信度;
9.对所述目标医疗文本和所述候选字进行字符相似度计算得到字符相似度,并对所述候选字和所述医学命名实体进行实体相似度计算得到实体相似度;
10.基于所述语境置信度、所述字符相似度和所述实体相似度,利用所述候选字对所述目标医疗文本进行文本纠错。
11.在本公开的一种示例性实施例中,所述对所述目标医疗文本进行语境置信度计算得到候选字和所述候选字的语境置信度,包括:
12.将所述目标医疗文本输入至预先训练好的医学语言表征模型中,以使所述预先训练好的医学语言表征模型对所述目标医疗文本进行语境置信度计算得到候选字和所述候选字的语境置信度。
13.在本公开的一种示例性实施例中,在所述将所述目标医疗文本输入至预先训练好
的医学语言表征模型中之前,所述方法还包括:
14.获取训练待训练的医学语言表征模型的医疗文本正样本;
15.将所述医疗文本正样本输入至所述待训练的医学语言表征模型中,以对所述待训练的医学语言表征模型进行训练,直至完成训练得到预先训练好的医学语言表征模型。
16.在本公开的一种示例性实施例中,所述对所述目标医疗文本和所述候选字进行字符相似度计算得到字符相似度,包括:
17.对所述目标医疗文本和所述候选字的字形进行字形相似度计算得到所述字形相似度;
18.对所述目标医疗文本和所述候选字的字音进行字音相似度计算得到所述字音相似度;
19.根据所述字形相似度和所述字音相似度确定所述目标医疗文本和所述候选字的字符相似度。
20.在本公开的一种示例性实施例中,所述对所述目标医疗文本和所述候选字的字形进行字形相似度计算得到所述字形相似度,包括:
21.对所述目标医疗文本进行表意文字描述得到目标文字描述符,并对所述候选字进行表意文字描述得到候选文字描述符;
22.对所述目标文字描述符和所述候选文字描述符进行编辑距离计算得到所述目标医疗文本和所述候选字的字形编辑距离;
23.对所述字形编辑距离进行字形相似度计算得到所述目标医疗文本和所述候选字的字形相似度。
24.在本公开的一种示例性实施例中,所述对所述目标医疗文本和所述候选字的字音进行字音相似度计算得到所述字音相似度,包括:
25.获取所述目标医疗文本的目标读音表征,并获取所述候选字的候选读音表征;
26.对所述目标读音表征和所述候选读音表征进行编辑距离计算得到所述目标医疗文本和所述候选字的字音编辑距离;
27.对所述字音编辑距离进行字音相似度计算得到所述目标医疗文本和所述候选字的字音相似度。
28.在本公开的一种示例性实施例中,所述根据所述字形相似度和所述字音相似度确定所述目标医疗文本和所述候选字的字符相似度,包括:
29.将所述字形相似度确定为所述目标医疗文本和所述候选字的字符相似度;或
30.将所述字音相似度确定为所述目标医疗文本和所述候选字的字符相似度;或
31.对所述字形相似度和所述字音相似度进行加权计算得到所述目标医疗文本和所述候选字的字符相似度。
32.在本公开的一种示例性实施例中,所述基于所述语境置信度、所述字符相似度和所述实体相似度,利用所述候选字对所述目标医疗文本进行文本纠错,包括:
33.获取与所述医疗文本正样本对应的医疗文本负样本,并对所述医疗文本正样本和所述医疗文本负样本进行消融试验得到消融平面;
34.根据所述语境置信度、所述字符相似度和所述实体相似度确定所述候选字相对于所述消融平面的位置坐标;
35.基于所述位置坐标,利用所述候选字对所述目标医疗文本进行文本纠错。
36.在本公开的一种示例性实施例中,所述基于所述位置坐标,利用所述候选字对所述目标医疗文本进行文本纠错,包括:
37.若所述位置坐标处于所述消融平面的上方,利用所述候选字对所述目标医疗文本进行文本纠错。
38.在本公开的一种示例性实施例中,所述利用所述候选字对所述目标医疗文本进行文本纠错,包括:
39.若多个所述候选字对应的位置坐标处于所述消融平面的上方,根据所述字符相似度确定多个所述候选字中的一个为目标候选字;
40.利用所述目标候选字对所述目标医疗文本进行文本纠错。
41.在本公开的一种示例性实施例中,所述方法还包括:
42.若所述位置坐标处于所述消融平面的下方,保留所述目标医疗文本。
43.在本公开的一种示例性实施例中,所述对所述候选字和所述医学命名实体进行实体相似度计算得到实体相似度,包括:
44.对所述候选字和所述医学命名实体进行编辑距离计算得到实体编辑距离;
45.对所述实体编辑距离进行归一化处理得到所述候选字和所述医学命名实体的实体相似度。
46.根据本公开的一个方面,提供一种医疗文本纠错装置,所述装置包括:第一计算模块,被配置为获取目标医疗文本和医学命名实体,并对所述目标医疗文本进行语境置信度计算得到候选字和所述候选字的语境置信度;
47.第二计算模块,被配置为对所述目标医疗文本和所述候选字进行字符相似度计算得到字符相似度,并对所述候选字和所述医学命名实体进行实体相似度计算得到实体相似度;
48.文本纠错模块,被配置为基于所述语境置信度、所述字符相似度和所述实体相似度,利用所述候选字对所述目标医疗文本进行文本纠错。
49.根据本公开的一个方面,提供一种电子设备,包括:处理器和存储器;其中,存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现上述任意示例性实施例的医疗文本纠错方法。
50.根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意示例性实施例中的医疗文本纠错方法。
51.由上述技术方案可知,本公开示例性实施例中的医疗文本纠错方法、医疗文本纠错装置、计算机存储介质及电子设备至少具备以下优点和积极效果:
52.在本公开的示例性实施例提供的方法及装置中,通过目标医疗文本和医学命名实体计算对应的语境置信度、字符相似度和实体相似度,为目标医疗文本的文本纠错提供了数据基础和理论支持,丰富了文本纠错可依据的数据维度,从数据全面性方面保证了错字检错和纠正的准确性。更进一步的,以语境置信度、字符相似度和实体相似度三者作为文本纠错的依据,有效提升了医疗文本的纠错效果,通过系统性的文本纠错方法提升了医疗文本纠错的扩展性,丰富了医疗文本纠错的应用场景,也无需使用和维护纠正词典,避免了维护性问题的产生。
53.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
54.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
55.图1示意性示出本公开示例性实施例中一种医疗文本纠错方法的流程示意图;
56.图2示意性示出本公开示例性实施例中训练医学语言表征模型的方法的流程示意图;
57.图3示意性示出本公开示例性实施例中训练bert深度双向语言模型的训练示意图;
58.图4示意性示出本公开示例性实施例中字符相似度计算的方法的流程示意图;
59.图5示意性示出本公开示例性实施例中字形相似度计算的方法的流程示意图;
60.图6示意性示出本公开示例性实施例中表意文字描述的字形分解示意图;
61.图7示意性示出本公开示例性实施例中字音相似度计算的方法的流程示意图;
62.图8示意性示出本公开示例性实施例中确定字符相似度的方法的流程示意图;
63.图9示意性示出本公开示例性实施例中实体相似度计算的方法的流程示意图;
64.图10示意性示出本公开示例性实施例中文本纠错的方法的流程示意图;
65.图11示意性示出本公开示例性实施例中进一步文本纠错的方法的流程示意图;
66.图12示意性示出本公开示例性实施例中应用场景下医疗文本纠错方法的系统示意图;
67.图13示意性示出本公开示例性实施例中一种医疗文本纠错装置的结构示意图;
68.图14示意性示出本公开示例性实施例中一种用于实现医疗文本纠错方法的电子设备;
69.图15示意性示出本公开示例性实施例中一种用于实现医疗文本纠错方法的计算机可读存储介质。
具体实施方式
70.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
71.本说明书中使用用语“一个”、“一”、“该”和“所述”用以表示存在一个或多个要素/
组成部分/等;用语“包括”和“具有”用以表示开放式的包括在内的意思并且是指除了列出的要素/组成部分/等之外还可存在另外的要素/组成部分/等;用语“第一”和“第二”等仅作为标记使用,不是对其对象的数量限制。
72.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。
73.错字检查是nlp领域最重要的问题之一。
74.早期的经典方法多是基于传统的规则、n-gram(一种基于统计语言模型的算法)或概率图模型。
75.xin,yang等借鉴了中文分词方法中常用的构建有向无环图的方法。由于错别字可能造成错误的分词结果,从而导致多种分词情况。该方法将所有切分结果的相似拼音的字或词加入到分词的有向无环图中,构造出了一个由相似词语组成的图模型,寻找图上最短路径作为最合理的分词结果。
76.zhao,hai等在此基础上加入条件随机场模型进行预测,并用大量规则改进了筛选候选词的步骤,改进了纠正的效果。但这类方法的问题在于无法准确把握句子的真实语义。当错别字来自一个高频出现的词语时,往往无法识别,同时加入规则的方法提高了成本,限制了方法的拓展性。
77.如今,深度学习已成功应用于自然语言处理,在多数任务中都超越了传统方法。因此,中文错别字检查方法越多的转向了基于字的端到端模型,通过庞大的语料库训练,获得了强大的深度语言模型,应用于中文错别字检查任务中,极大的提升了准确率。
78.然而,在医学领域的文本中,由于术语的复杂性和语言的特殊性,常用的模型常常无功而返。不同语言的纠错方式也不同,国外的各种语言病历文本纠错中,大多应用了制定医学领域的相关规则、利用医学语料获得 n-gram语言模型、词嵌入及深度学习等方法。
79.而中文病历错别字的纠正大多基于字典和规则,存在准确性差、维护难、拓展性弱等问题。
80.具体的,现有的中文病历纠错方法基于规则或者n-gram的传统语言模型,相比深度语言模型准确性差。同时,病历纠错需要医学知识,进一步加重了准确性的问题。
81.除此之外,随着医疗场景的变化或者医学的发展,基于规则的模型需要人工去更新相应的规则,维护存在困难,不同的场景需要制定不同的规则,拓展性弱。
82.针对相关技术中存在的问题,本公开提出了一种医疗文本纠错方法。图1示出了医疗文本纠错方法的流程图,如图1所示,医疗文本纠错方法至少包括以下步骤:
83.步骤s110.获取目标医疗文本和医学命名实体,并对目标医疗文本进行语境置信度计算得到候选字和候选字的语境置信度。
84.步骤s120.对目标医疗文本和候选字进行字符相似度计算得到字符相似度,并对候选字和医学命名实体进行实体相似度计算得到实体相似度。
85.步骤s130.基于语境置信度、字符相似度和实体相似度,利用候选字对目标医疗文本进行文本纠错。
86.在本公开的示例性实施例中,通过目标医疗文本和医学命名实体计算对应的语境置信度、字符相似度和实体相似度,为目标医疗文本的文本纠错提供了数据基础和理论支
持,丰富了文本纠错可依据数据维度,从数据全面性方面保证了错字检错和纠正的准确性。更进一步的,以语境置信度、字符相似度和实体相似度三者作为文本纠错的依据,有效提升了医疗文本的纠错效果,也通过系统性的文本纠错方法提升了医疗文本纠错的扩展性,丰富了医疗文本纠错的应用场景,也无需使用和维护纠正词典,避免了维护性问题的产生。
87.下面对医疗文本纠错方法的各个步骤进行详细说明。
88.在步骤s110中,获取目标医疗文本和医学命名实体,并对目标医疗文本进行语境置信度计算得到候选字和候选字的语境置信度。
89.在本公开的示例性实施例中,目标医疗文本可以是待识别是否存在错字和对应修改错字的医疗文本,例如待识别的医院病历文本等,本示例性实施例对此不做特殊限定。
90.在获取到目标医疗文本之后,可以进一步对目标医疗文本进行语境置信度计算。
91.在可选的实施例中,将目标医疗文本输入至预先训练好的医学语言表征模型中,以使预先训练好的医学语言表征模型对目标医疗文本进行语境置信度计算得到候选字和候选字的语境置信度。
92.在一些实施例中,对目标医疗文本中的每个字,均得到对应该字的多个候选字和各候选字的语境置信度。
93.在将目标医疗文本输入至预先训练好的医学语言表征模型之前,可以先将待训练的医学语言表征模型进行训练,以得到训练好的医学语言表征模型。
94.在可选的实施例中,图2示出了训练医学语言表征模型的方法的流程示意图,如图2所示,该方法至少包括以下步骤:在步骤s210中,获取训练待训练的医学语言表征模型的医疗文本正样本。
95.病历等目标医疗文本纠错的难点在于很多医学实体的错误是语言模型无法识别的,因此,可以搜集大量真实且正确的的医院病历数据。该医疗文本正样本可以是收集到的无错的医疗文本,例如人工检验正确的医院病历文本。
96.并且,该待训练的医学语言表征模型可以是bert(bidirectionalencoder representations from transformers,基于变换网络的双向编码表示) 的语言模型,也可以是其他语言模型,本示例性实施例对此不做特殊限定。
97.bert为深度双向语言模型,该深度双向语言模型具体包含多层结构层,分别是输入层、词向量构造层、bi-lstm(bi-directional longshort-term memory,双向长短时记忆)网络层、自注意力机制层和输出层。
98.在第一层输入层中,将待预测的医疗文本正样本输入到bert语言模型中;在第二层词向量构造层中,将每个词映射到低维向量;在第三层bi-lstm网络层中,基于各词向量和句向量,使用bi-lstm从词向量层抽取相关度特征;在第四层自注意力机制层中,生成与各词对应的权重向量,通过与各权重向量相乘,使每一次迭代中的词级的特征合并为句级的特征,以得到医疗文本正样本的特征数据;在第五层输出层中,将该医疗文本正样本的特征数据用于训练完成医学语言表征模型。
99.在步骤s220中,将医疗文本正样本输入至待训练的医学语言表征模型中,以对待训练的医学语言表征模型进行训练,直至完成训练得到预先训练好的医学语言表征模型。
100.当使用bert作为医学语言表征模型时,该bert深度双向语言模型主要使用双向transformer编码层,舍弃了rnn(recurrent neuralnetwork,循环神经网络)的循环式网
络结构,并完全基于注意力机制。
101.bert深度双向语言模型使用transformer的encoder进行文本特征抽取,encoder由自注意力机制(self-attention)和网络(feed fordwardneural network)组成。
102.其中,encoder的核心是self-attention,并且能够确定每一个词和当前文本句中其他词之间的关系,而且没有距离限制,由此,能够充分挖掘到每个词的左右上下文信息,从而得到词的双向表示。
103.图3示出了训练bert深度双向语言模型的训练示意图,如图3所示,bert是一个预训练的语言表征模型。bert结合了强大的特征抽取器transformer和双向语言模型,使用了masked language model(mlm,掩码语言模型)和next sentence prediction(下一句预测)的预训练方法,能够生成深度的双向语言表征。
104.在进行词语embedding(嵌入)表征的时候,每个医疗文本正样本都提取了三个维度的信息。
105.其中,token embedding就是原始概念中对应的词向量,其中的e
cls
标识了每一个句子的开始信息,e
sep
标识了两个句子的分割信息。
106.segment embedding是为进行sentence pair(句子对)任务的训练,其中ea和eb会随着模型进行训练。如果是针对只有一个句子的下游任务,那么只会有ea。
107.position embedding是用来标识词向量位置信息。
108.因此,三者相加构成了模型的输入部分。
109.接下来,通过mlm和next sentence prediction对模型进行预训练。
110.所谓mlm就是按照一定的概率(例如15%)随机的把一个句子中的某些词语用mask进行替换,然后任务是预测这些被mask掉的词语,相当于完形填空的任务。
111.例如,my dog is hairy

my dog is[mask]。这些[mask]也会对应一个embedding,并随着模型一起训练。
[0112]
其实在实做的时候,大约有80%的情况会使用[mask]替换,剩下的10%词语会被随机选出的其他词语进行替换,10%词语保持词语不动。
[0113]
所谓next sentence prediction就是为了应对下游任务利用sentencepair之间相互关联的任务而设定的,比方说问答任务,推理任务等。
[0114]
这个sentence pair中有50%的是真正的在原始语料中是连续存在的两个句子,有50%是随机挑选的没有关联关系的两个句子。有关联关系的句子被标注为1类,没有关联关系的句子被标注为0。
[0115]
需要注意的是,如果下游任务只是针对一个句子的任务,比方说单独句子的分类,那么就不需要构造next sentence prediction,只需要使用 mlm即可;如果下游任务需要利用到两个句子之间的相关关系,比方说阅读理解,自动问答等,就需要同时使用mlm和next sentence prediction。
[0116]
在对bert医学语言表征模型进行训练得到训练好的医学语言表征模型时,可以规定bert分类模型算法迭代20次,每次迭代过程中计算 bert分类模型算法的损失函数。在损失函数满足预定阈值的情况下,表明该bert医学语言表征模型完成。
[0117]
因此,使用bert模型作为医学语言表征模型,采用表义能力更强的双向transformer网络结构,对大量医疗文本正样本进行预训练,能够得到更通用的深度双向语
言模型,并能够提高模型的语言理解力,还能够提高模型精度。
[0118]
当bert医学语言表征模型训练完成之后,可以将目标医疗文本输入至该训练好的bert医学语言表征模型中。此时,该训练好的bert 医学语言表征模型能够对目标医疗文本进行语境置信度计算得到目标医疗文本对应的候选字和该候选字对应的语境置信度。其中,该候选字可以是目标医疗文本中每个字的排名靠前的n个候选字,本示例性实施例对此n的个数不做特殊限定。
[0119]
在本示例性实施例中,通过预先训练好的医学语言表征模型对目标医疗文本进行语境置信度计算,能够更加全面和更加准确的确定病历等目标医疗文本对应的候选字,为后续的文本纠错提供数据支持。除此之外,由于采用医学语言表征模型进行语境置信度的计算,也保证了医疗文本纠错中涉及到的语境置信度的维护性问题,进一步保证了医疗文本纠错的可维护性。
[0120]
在步骤s120中,对目标医疗文本和候选字进行字符相似度计算得到字符相似度,并对候选字和医学命名实体进行实体相似度计算得到实体相似度。
[0121]
在本公开的示例性实施例中,获取到目标医疗文本和候选字之后,还可以对目标医疗文本和候选字进行字符相似度计算。
[0122]
在可选的实施例中,图4示出了字符相似度计算的方法的流程示意图,如图4所示,该方法至少包括以下步骤:在步骤s410中,对目标医疗文本的字和对应候选字的字形进行字形相似度计算得到字形相似度。
[0123]
在可选的实施例中,图5示出了字形相似度计算的方法的流程示意图,如图5所示,该方法至少包括以下步骤:在步骤s510中,对目标医疗文本进行表意文字描述得到目标文字描述符,并对候选字进行表意文字描述得到候选文字描述符。
[0124]
为对目标医疗文本和候选字进行表意文字表述,可以利用unicode (统一码)编码标准中规范的ids(ideographic description sequences,象形文字描述序列)表征字符进行描述。
[0125]
其中,unicode是计算机科学领域里的一项业界标准,包括字符集、编码方案等。
[0126]
图6示出了表意文字描述的字形分解示意图,如图6所示,对于“贫”字而言,虚线上方是“贫”的ids字符串表征,虚线下方是ids树型表征。
[0127]
其中,
①‑③
三种表征方式表示不同细粒度的ids树形表征。可以发现,ids字符串表征即为ids树型表征的前序遍历路径。亦即,ids字符串可以是将ids树型表征中的各字符按照从上到下、从左到右的顺序遍历后得到的。
[0128]“贫”字最细粒度的ids树型表征(

树型表征),从上到下、从左到右依次为:丿、、、丿、丨、、丿、,则“贫”字的ids字符串即为:丿丿丨丿。
[0129]
其中,等符号表征字的汉字结构。具体的,表示上下结构,代表左右结构,表示右上包围结构,表示上三包围结构。
[0130]
值得说明的是,在利用ids表征字符对目标医疗文本和候选字进行表意文字描述时,获取任意一个粒度下的均可以。优选的,可以获取最细粒度下的ids表征字符。
[0131]
由于最细粒度下的ids表征字符能够更加详细地表征组成文字的各字符间的组成
顺序,因此能够在计算字形相似度的时候更加准确。
[0132]
因此,通过ids表征字符对目标医疗文本和候选字进行表意文字描述之后,能够得到目标文字描述符和候选文字描述符。
[0133]
在步骤s520中,对目标文字描述符和候选文字描述符进行编辑距离计算得到目标医疗文本和候选字的字形编辑距离。
[0134]
在得到目标文字描述和候选文字描述符之后,可以通过目标文字描述符和候选文字描述符计算目标医疗文本和候选字之间的字形编辑距离。该字形编辑距离可以表征将候选字修改为目标医疗文本所需替换的字符数。
[0135]
其中,编辑距离计算可以是通过levenshtein(莱文斯坦)编辑距离实现的,也可以是ids树型表征的树编辑距离,本示例性实施例对此不做特殊限定。
[0136]
在步骤s530中,对字形编辑距离进行字形相似度计算得到目标医疗文本和候选字的字形相似度。
[0137]
在计算出字形编辑距离之后,可以计算目标医疗文本的字和对应候选字的字形相似度。
[0138]
一般的,可以通过公式(1)计算字形相似度:
[0139][0140]
其中,字形编辑距离(目标文字描述符,候选文字描述符)表示目标医疗文本和候选字的字形编辑距离,length(目标文字描述符)表示目标文字描述符的ids表征字符的长度,length(候选文字描述符)表示候选文字描述符的ids表征字符的长度, max(length(目标文字描述符),length(候选文字描述符))表示目标医疗文本和候选字的字型编辑距离的最大值。
[0141]
对于同一个字来说,不同粒度下的ids表征字符的长度是不同的。长度越长,则表示粒度越细。
[0142]
在本示例性实施例中,对表意文字描述后的目标医疗文本和候选字进行字形相似度计算,充分利用了汉字为表意文字的特点,有效计算了目标医疗文本和候选字的字形相似度,能够进一步提高文本纠错的准确性。
[0143]
在步骤s420中,对目标医疗文本的字和对应候选字的字音进行字音相似度计算得到字音相似度。
[0144]
在可选的实施例中,图7示出了字音相似度计算的方法的流程示意图,如图7所示,该方法至少包括以下步骤:在步骤s710中,获取目标医疗文本的目标读音表征,并获取候选字的候选读音表征。
[0145]
考虑到中文同音字的影响,对于目标医疗文本和候选字,可以分别获取对应的不同预设语言类型中的汉字读音表征。举例而言,可以获取中文普通话(mc)拼音,中文粤语(cc)拼音,韩语(k)汉字拉丁拼音,日语汉读音读(jo)罗马字,越南语(v)汉字拼音以表征每个汉字的读音。这些语言类型中包含了大量汉字的读音表征信息,因此可以利用该读音表征信息得到目标读音表征和候选读音表征。
[0146]
在步骤s720中,对目标读音表征和候选读音表征进行编辑距离计算得到目标医疗文本和候选字的字音编辑距离。
[0147]
在获取到目标读音表征和候选读音表征之后,可以进一步计算目标医疗文本和候选字之间的字音编辑距离。该字音编辑距离记为候选字的候选读音表征修改为目标医疗文本的目标读音表征所需替换的字符数。
[0148]
其中,编辑距离计算可以是通过levenshtein编辑距离实现的,本示例性实施例对此不做特殊限定。
[0149]
在步骤s730中,对字音编辑距离进行字音相似度计算得到目标医疗文本和候选字的字音相似度。
[0150]
在计算出字音编辑距离之后,能够对字音编辑距离进行字音相似度计算。
[0151]
举例而言,可以利用公式(2)进行计算:
[0152][0153]
其中,字音编辑距离(目标读音表征,候选读音表征)表征目标医疗文本和候选字之间的字音编辑距离,length(目标读音表征)表示目标医疗文本的目标读音表征长度,length(候选读音表征)表示候选字的候选读音表征长度,max(length(目标读音表征),length(候选读音表征))表示目标医疗文本和候选字的字音编辑距离的最大值。
[0154]
在本示例性实施例中,通过目标医疗文本和候选字的对应读音表征计算字音相似度,计算方式简单准确,并且能够考虑到中文同音字的影响,进一步保证了文本纠错的准确度。
[0155]
在步骤s430中,根据字形相似度和字音相似度确定目标医疗文本和候选字的字符相似度。
[0156]
在可选的实施例中,图8示出了确定字符相似度的方法的流程示意图,如图8所示,该方法至少包括以下步骤:在步骤s810中,将字形相似度确定为目标医疗文本和候选字的字符相似度。
[0157]
在根据字形相似度和字音相似度确定目标医疗文本和候选字的字符相似度时,可以在字形相似度和字音相似度中任选其一表示。因此,可以确定字形相似度为目标医疗文本和候选字的字符相似度。
[0158]
在步骤s820中,将字音相似度确定为目标医疗文本和候选字的字符相似度。
[0159]
在根据字形相似度和字音相似度确定目标医疗文本和候选字的字符相似度时,可以在字形相似度和字音相似度中任选其一表示。因此,可以确定字音相似度为目标医疗文本和候选字的字符相似度。
[0160]
在步骤s830中,对字形相似度和字音相似度进行加权计算得到目标医疗文本和候选字的字符相似度。
[0161]
在根据字形相似度和字音相似度确定目标医疗文本和候选字的字符相似度时,也可以同时根据字形相似度和字音相似度计算得到。
[0162]
具体的,可以是对字形相似度和字音相似度进行加权计算得到目标医疗文本和候选字的字符相似度。
[0163]
其中,字形相似度和字音相似度分别对应的权重可以以不同应用场景下更看重字形或是字音确定。
[0164]
举例而言,可以将字形相似度和字音相似度分别对应的权重都设置为0.5,或者是
将字音相似度对应的权重设置的更大等,本示例性实施例对此不做特殊限定。
[0165]
值得说明的是,在步骤s810-步骤s830中提供的三种确定字符相似度的方式中,可根据实际情况和实际需求任选其一执行,本示例性实施例对此不做特殊限定。
[0166]
在本示例性实施例中,提供了三种根据字形相似度和/或字音相似度确定目标医疗文本和候选字的字符相似度的方法,进一步丰富了文本纠错的应用场景。
[0167]
除此之外,在获取到目标医疗文本的候选字之后,还可以对候选字和医学命名实体进行实体相似度计算。
[0168]
在可选的实施例中,图9示出了实体相似度计算的方法的流程示意图,如图9所示,该方法至少包括以下步骤:在步骤s910中,对候选字和医学命名实体进行编辑距离计算得到实体编辑距离。
[0169]
医学命名实体可以是构建好的生物医学命名实体数据库中的数据,并且,医学命名实体可以包括药品实体、疾病实体等,本示例性实施例对此不做特殊限定。
[0170]
为确定候选字所对应的医学命名实体,可以将候选字对应的目标医疗文本放回到对应位置,并对目标医疗文本进行分词得到候选字对应的目标医疗文本的所在词汇,以将该词汇对应的医学命名实体确定为候选字的医学命名实体。
[0171]
在对候选字和医学命名实体进行编辑距离计算之后得到实体编辑距离,该实体编辑距离表征将候选字修改为医学命名实体所需替换的字符数。
[0172]
其中,编辑距离计算可以是通过levenshtein编辑距离实现的,本示例性实施例对此不做特殊限定。
[0173]
当候选字对应的医学命名实体有多个时,还可以分别计算候选字与多个医学命名实体之间的编辑距离,并将最近的编辑距离确定为实体编辑距离。
[0174]
在步骤s920中,对实体编辑距离进行归一化处理得到候选字和医学命名实体的实体相似度。
[0175]
由于候选字和对应的医学命名实体会因为字数不同对实体编辑距离造成影响,因此可以对实体编辑距离进行归一化处理。
[0176]
其中,归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为标量。
[0177]
因此,在对实体编辑距离进行归一化处理之后能够得到候选字和医学命名实体的实体相似度。
[0178]
在本示例性实施例中,通过对候选字和医学命名实体进行编辑距离计算和归一化处理得到实体相似度,计算方式简单方便,并且考虑到了不同词的长度影响,保证了实体相似度的计算准确性。
[0179]
在步骤s130中,基于语境置信度、字符相似度和实体相似度,利用候选字对目标医疗文本进行文本纠错。
[0180]
在本公开的示例性实施例中,计算出语境置信度、字符相似度和实体相似度之后,可以将语境置信度、字符相似度和实体相似度作为候选字对目标医疗文本进行文本纠错的依据。
[0181]
在可选的实施例中,图10示出了文本纠错的方法的流程示意图,如图10所示,该方法至少包括以下步骤:在步骤s1010中,获取与医疗文本正样本对应的医疗文本负样本,并
对医疗文本正样本和医疗文本负样本进行消融试验得到消融平面。
[0182]
该医学文本负样本可以是收集到的有错的医疗文本,例如错误的医院病历文本等,本示例性实施例对此不做特殊限定。
[0183]“消融”的原始含义是手术切除身体组织。“消融研究”这一术语的根源于20世纪60年代和70年代的实验心理学领域,其中动物的大脑部分被移除以研究其对其行为的影响。
[0184]
在机器学习,特别是复杂的深度神经网络的背景下,已经采用“消融研究”来描述去除网络的某些部分的过程,以便更好地理解网络的行为。
[0185]
理解系统中的因果关系是产生可靠知识的最直接方式(任何研究的目标)。消融是一种非常省力的方式来研究因果关系。
[0186]
如果采用任何复杂的深度学习实验设置,可能会删除一些模块(或用随机的模块替换一些训练有素的功能)而不会降低性能。
[0187]
在利用医学文本正样本和医疗文本负样本进行消融试验时,可以是分别计算医疗文本正样本和医疗文本负样本的语境置信度、字符相似度和实体相似度。
[0188]
进一步的,以医疗文本正样本和医疗文本负样本的语境置信度、字符相似度和实体相似度为坐标,在三维空间内形成消融平面。该消融平面可以是使正确的医疗文本正样本和错误的医疗文本负样本尽可能分开的平面。
[0189]
那么,以医疗文本正样本的语境置信度、字符相似度和实体相似度确定的坐标可以位于消融平面的上方,或者以医疗文本负样本的语境置信度、字符相似度和实体相似度形成的坐标可以位于消融平面的下方。
[0190]
在步骤s1020中,根据语境置信度、字符相似度和实体相似度确定候选字相对于消融平面的位置坐标。
[0191]
与医疗文本正样本和医疗文本负样本的语境置信度、字符相似度和实体相似度确定对应坐标的方式相同,也可以根据目标医疗文本的语境置信度、字符相似度和实体相似度在三维空间内确定出对应坐标。并且,由于已经确定消融平面,也可以得到的坐标相对于消融平面的位置坐标。
[0192]
在步骤s1030中,基于位置坐标,利用候选字对目标医疗文本进行文本纠错。
[0193]
在可选的实施例中,若位置坐标处于消融平面的上方,利用候选字对目标医疗文本进行文本纠错。
[0194]
当语境置信度、字符相似度和实体相似度确定的位置坐标在消融平面的上方时,表明识别出目标医疗文本是错误的。因此,可以根据位置坐标对应的候选字对目标医疗文本进行文本纠错。
[0195]
对应的,当语境置信度、字符相似度和实体相似度确定的位置坐标在消融平面的下方时,无需利用候选字对目标医疗文本进行文本纠错。
[0196]
在可选的实施例中,若位置坐标处于消融平面的下方,保留目标医疗文本。
[0197]
当语境置信度、字符相似度和实体相似度确定的位置坐标在消融平面的下方时,表明识别出目标医疗文本是正确的,因此,无需对目标医疗文本进行文本纠错,可以保留对应的目标医疗文本不变。
[0198]
在可选的实施例中,图11示出了进一步文本纠错的方法的流程示意图,如图11所示,该方法至少包括以下步骤:在步骤s1110中,若多个候选字对应的位置坐标处于消融平
面的上方,根据字符相似度确定多个候选字中的一个为目标候选字。
[0199]
当目标医疗文本对应多个候选字时,那么,多个候选字对应的位置坐标都会位于消融平面的上方。
[0200]
在这种情况下,可以比较多个候选字的字符相似度的大小,将字符相似度最大的一个确定为目标候选字。
[0201]
其中,此时的字符相似度可以是字音相似度,本示例性实施例对此不做特殊限定。
[0202]
在步骤s1120中,利用目标候选字对目标医疗文本进行文本纠错。
[0203]
在确定出目标候选字之后,可以利用目标候选字对目标医疗文本进行文本纠错。
[0204]
具体的,可以利用目标候选字替换对应的目标医疗文本,实现文本纠错。
[0205]
在本示例性实施例中,在多个候选字的情况下提出了文本纠错的实现方式,在保证文本纠错的准确性的情况下,进一步保证了文本纠错的精准性。并且,通过消融平面的设计使得文本纠错考虑的数据维度更广,也从数据的全面性方面提升了文本纠错的精准性。
[0206]
下面结合一应用场景对本公开实施例中的医疗文本纠错方法做出详细说明。
[0207]
图12示出了应用场景下医疗文本纠错方法的系统示意图,如图12 所示,医疗文本纠错系统可以由一个降噪自动编码器和一个解码器组成。其中,降噪自动编码器为预训练好的医学语言表征模型。
[0208]
在训练医学语言表征模型时,可以获取训练待训练的医学语言表征模型的医疗文本正样本。
[0209]
病历等目标医疗文本纠错的难点在于很多医学实体的错误是语言模型无法识别的,因此,可以搜集大量真实且正确的的医院病历数据。因此,该医疗文本正样本可以是收集到的无错的医疗文本,例如正确的医院病历文本。
[0210]
并且,该待训练的医学语言表征模型可以是bert的语言模型,也可以是其他语言模型,本示例性实施例对此不做特殊限定。
[0211]
进一步的,将医疗文本正样本输入至待训练的医学语言表征模型中,以对待训练的医学语言表征模型进行训练,直至完成训练得到预先训练好的医学语言表征模型。
[0212]
在进行词语embedding表征的时候,每个医疗文本正样本都提取了三个维度的信息。
[0213]
其中,token embedding就是原始概念中对应的词向量,其中的e
cls
标识了每一个句子的开始信息,e
sep
标识了两个句子的分割信息。
[0214]
segment embedding是为进行sentence pair任务的训练,其中ea和eb会随着模型进行训练。如果是针对只有一个句子的下游任务,那么只会有ea。
[0215]
position embedding是用来标识词向量位置信息。
[0216]
因此,三者相加构成了模型的输入部分。
[0217]
接下来,通过mlm和next sentence prediction对模型进行预训练。
[0218]
所谓mlm就是按照一定的概率(例如15%)随机的把一个句子中的某些词语用mask进行替换,然后任务是预测这些被mask掉的词语,相当于完形填空的任务。
[0219]
例如,my dog is hairy

my dog is[mask]。这些[mask]也会对应一个embedding,并随着模型一起训练。
[0220]
其实在实做的时候,大约有80%的情况会使用[mask]替换,剩下的10%词语会被
随机选出的其他词语进行替换,10%词语保持词语不动。
[0221]
所谓next sentence prediction就是为了应对下游任务利用sentencepair之间相互关联的任务而设定的,比方说问答任务,推理任务等。这个 sentence pair中有50%的是真正的在原始语料中是连续存在的两个句子,有50%是随机挑选的没有关联关系的两个句子。有关联关系的句子被标注为1类,没有关联关系的句子被标注为0。
[0222]
需要注意的是,如果是利用sentece level的表征,那么就使用模型最后一层针对e
cls
表征来作为整个句子的代表。在训练好了这些语言模型之中用到的参数之后,就会很方便的迁移到下游的任务中去。
[0223]
值得说明的是,如果下游任务只是针对一个句子的任务,比方说单独句子的分类,那么就不需要构造next sentence prediction,只需要使用 mlm即可;如果下游任务需要利用到两个句子之间的相关关系,比方说阅读理解,自动问答等,就需要同时使用mlm和next sentence prediction。
[0224]
在对bert医学语言表征模型进行训练得到训练好的医学语言表征模型时,可以规定bert分类模型算法迭代20次,每次迭代过程中计算 bert分类模型算法的损失函数。在损失函数满足预定阈值的情况下,表明该bert医学语言表征模型完成。
[0225]
因此,对于目标医疗文本中的每个字,训练好的医学语言表征模型都能够生成若干个候选字和对应的语境置信度。该语境置信度可以是由 bert医学语言表征模型计算得到的,并且,能够反映候选字在上下文语境中的可信程度。
[0226]
举例而言,当目标医疗文本是“患者素腹部偶有刺痛”时,通过预先训练好的bert医学语言表征模型计算出“患”对应的候选字分别可以有“患”、“病”和“术”,并且,“患”对应的语境置信度为1.0000,“病”和“术”对应的语境置信度为0.0000;“者”对应的候选字可以是“者”、“儿”和“侧”,并且,“者”对应的语境置信度为0.9999,“儿”和“侧”对应的语境置信度为0.0000;“素”对应的候选字可以包括“诉”、“上”和“下”,并且,“诉”对应的语境置信度是0.6463,“上”和“下”对应的语境置信度为0.0000;
……

[0227]
解码器可以是一个候选字过滤器,用于计算候选字和目标医疗文本的字符相似度。该字符相似度包括字形相似度和字音相似度两部分。除此之外,也可以使用其他解码器用于过滤候选字。具体的,该解码器可以是基于简单规则形成,例如取第一个候选作为纠错结果的规则等。
[0228]
在计算字形相似度时,对目标医疗文本进行表意文字描述得到目标文字描述符,并对候选字进行表意文字描述得到候选文字描述符。
[0229]
其中,目标医疗文本可以是待识别是否存在错字和对应修改错字的医疗文本,例如待识别的医院病历文本等,本示例性实施例对此不做特殊限定。
[0230]
为对目标医疗文本和候选字进行表意文字表述,可以利用unicode 编码标准中规范的ids表征字符进行描述。
[0231]
通过ids表征字符对目标医疗文本和候选字进行表意文字描述之后,能够得到目标文字描述符和候选文字描述符。
[0232]
对目标文字描述符和候选文字描述符进行编辑距离计算得到目标医疗文本和候选字的字形编辑距离。
[0233]
在得到目标文字描述和候选文字描述符之后,可以通过目标文字描述符和候选文
字描述符计算目标医疗文本和候选字之间的字形编辑距离。该字形编辑距离可以表征将候选字修改为目标医疗文本所需替换的字符数。
[0234]
其中,编辑距离计算可以是通过levenshtein编辑距离实现的,也可以是ids树型表征的树编辑距离,本示例性实施例对此不做特殊限定。
[0235]
对字形编辑距离进行字形相似度计算得到目标医疗文本和候选字的字形相似度。
[0236]
在计算出字形编辑距离之后,可以计算目标医疗文本和候选字的字形相似度。
[0237]
一般的,可以通过公式(1)计算字形相似度,也可以利用其他方式计算,本示例性实施例对此不做特殊限定。
[0238]
在计算字音相似度时,获取目标医疗文本的目标读音表征,并获取候选字的候选读音表征。
[0239]
考虑到中文同音字的影响,对于目标医疗文本和候选字,可以分别获取对应的不同预设语言类型中的汉字读音表征。举例而言,可以获取中文普通话拼音,中文粤语拼音,韩语汉字拉丁拼音,日语汉读音读罗马字,越南语汉字拼音以表征每个汉字的读音。这些语言类型中包含了大量汉字的读音表征信息,因此可以利用该读音表征信息得到目标读音表征和候选读音表征。
[0240]
对目标读音表征和候选读音表征进行编辑距离计算得到目标医疗文本和候选字的字音编辑距离。
[0241]
在获取到目标读音表征和候选读音表征之后,可以进一步计算目标医疗文本和候选字之间的字音编辑距离。该字音编辑距离记为候选字的候选读音表征修改为目标医疗文本的目标读音表征所需替换的字符数。
[0242]
其中,编辑距离计算可以是通过levenshtein编辑距离实现的,本示例性实施例对此不做特殊限定。
[0243]
对字音编辑距离进行字音相似度计算得到目标医疗文本和候选字的字音相似度。
[0244]
在计算出字音编辑距离之后,能够对字音编辑距离进行字音相似度计算。
[0245]
举例而言,可以利用公式(2)进行计算,也可以利用其他方式计算,本示例性实施例对此不做特殊限定。
[0246]
进一步的,根据字形相似度和字音相似度确定目标医疗文本和候选字的字符相似度。
[0247]
将字形相似度确定为目标医疗文本和候选字的字符相似度。
[0248]
在根据字形相似度和字音相似度确定目标医疗文本和候选字的字符相似度时,可以在字形相似度和字音相似度中任选其一表示。因此,可以确定字形相似度为目标医疗文本和候选字的字符相似度。
[0249]
将字音相似度确定为目标医疗文本和候选字的字符相似度。
[0250]
在根据字形相似度和字音相似度确定目标医疗文本和候选字的字符相似度时,可以在字形相似度和字音相似度中任选其一表示。因此,可以确定字音相似度为目标医疗文本和候选字的字符相似度。
[0251]
对字形相似度和字音相似度进行加权计算得到目标医疗文本和候选字的字符相似度。
[0252]
在根据字形相似度和字音相似度确定目标医疗文本和候选字的字符相似度时,也
可以同时根据字形相似度和字音相似度计算得到。
[0253]
具体的,可以是对字形相似度和字音相似度进行加权计算得到目标医疗文本和候选字的字符相似度。
[0254]
其中,字形相似度和字音相似度分别对应的权重可以以不同应用场景下更看重字形或是字音确定。
[0255]
举例而言,可以将字形相似度和字音相似度分别对应的权重都设置为0.5,或者是将字音相似度对应的权重设置的更大等,本示例性实施例对此不做特殊限定。
[0256]
除了通过语境置信度和字符相似度的权衡之外,还可以结合生物医学命名实体数据库中的医学命名实体,对候选字进行过滤。
[0257]
对候选字和医学命名实体进行编辑距离计算得到实体编辑距离。
[0258]
医学命名实体可以是构建好的生物医学命名实体数据库中的数据,并且,医学命名实体可以包括药品实体、疾病实体等,本示例性实施例对此不做特殊限定。
[0259]
为确定候选字所对应的医学命名实体,可以将候选字对应的目标医疗文本放回到对应位置,并对目标医疗文本进行分词得到候选字对应的目标医疗文本的所在词汇,以将该词汇对应的医学命名实体确定为候选字的医学命名实体。
[0260]
在对候选字和医学命名实体进行编辑距离计算之后得到实体编辑距离,该实体编辑距离表征将候选字修改为医学命名实体所需替换的字符数。
[0261]
其中,编辑距离计算可以是通过levenshtein编辑距离实现的,本示例性实施例对此不做特殊限定。
[0262]
当候选字对应的医学命名实体有多个时,还可以分别计算候选字与多个医学命名实体之间的编辑距离,并将最近的编辑距离确定为实体编辑距离。
[0263]
对实体编辑距离进行归一化处理得到候选字和医学命名实体的实体相似度。
[0264]
由于候选字和对应的医学命名实体会因为字数不同对实体编辑距离造成影响,因此可以对实体编辑距离进行归一化处理。
[0265]
因此,在对实体编辑距离进行归一化处理之后能够得到候选字和医学命名实体的实体相似度。
[0266]
进而,在计算出语境置信度、字符相似度和实体相似度之后,可以将语境置信度、字符相似度和实体相似度作为候选字对目标医疗文本进行文本纠错的依据。
[0267]
获取与医疗文本正样本对应的医疗文本负样本,并对医疗文本正样本和医疗文本负样本进行消融试验得到消融平面。
[0268]
该医学文本负样本可以是收集到的有错的医疗文本,例如错误的医院病历文本等,本示例性实施例对此不做特殊限定。
[0269]
在利用医学文本正样本和医疗文本负样本进行消融试验时,可以是分别计算医疗文本正样本和医疗文本负样本的语境置信度、字符相似度和实体相似度。
[0270]
进一步的,以医疗文本正样本和医疗文本负样本的语境置信度、字符相似度和实体相似度为坐标,在三维空间内形成消融平面。该消融平面可以是使正确的医疗文本正样本和错误的医疗文本负样本尽可能分开的平面。
[0271]
那么,以医疗文本正样本的语境置信度、字符相似度和实体相似度确定的坐标可以位于消融平面的上方,或者以医疗文本负样本的语境置信度、字符相似度和实体相似度
形成的坐标可以位于消融平面的下方。
[0272]
根据语境置信度、字符相似度和实体相似度确定候选字在消融平面上的位置坐标。
[0273]
与医疗文本正样本和医疗文本负样本的语境置信度、字符相似度和实体相似度确定对应坐标的方式相同,也可以根据目标医疗文本的语境置信度、字符相似度和实体相似度在三维空间内确定出对应坐标。并且,由于已经确定消融平面,也可以得到的坐标相对于消融平面的位置坐标。
[0274]
若位置坐标处于消融平面的上方,利用候选字对目标医疗文本进行文本纠错。
[0275]
当语境置信度、字符相似度和实体相似度确定的位置坐标在消融平面的上方时,表明识别出目标医疗文本是错误的。因此,可以根据位置坐标对应的候选字对目标医疗文本进行文本纠错。
[0276]
举例而言,当目标医疗文本是“患者素腹部偶有刺痛”时,可以根据目标医疗文本的语境置信度、字符相似度和实体相似度确定“素”的位置坐标位于消融平面的上方,因此,可以利用对应的候选字对该字进行文本纠错。
[0277]
若多个候选字对应的位置坐标处于消融平面的上方,根据字符相似度确定多个候选字中的一个为目标候选字。
[0278]
当目标医疗文本对应多个候选字时,那么,多个候选字对应的位置坐标都会位于消融平面的上方。
[0279]
在这种情况下,可以比较多个候选字的字符相似度的大小,将字符相似度最大的一个确定为目标候选字。
[0280]
其中,此时的字符相似度可以是字音相似度,本示例性实施例对此不做特殊限定。
[0281]
利用目标候选字对目标医疗文本进行文本纠错。
[0282]
在确定出目标候选字之后,可以利用目标候选字对目标医疗文本进行文本纠错。
[0283]
具体的,可以利用目标候选字替换对应的目标医疗文本,实现文本纠错。
[0284]
对应的,当语境置信度、字符相似度和实体相似度确定的位置坐标在消融平面的下方时,无需利用候选字对目标医疗文本进行文本纠错。
[0285]
若位置坐标处于消融平面的下方,保留目标医疗文本。
[0286]
当语境置信度、字符相似度和实体相似度确定的位置坐标在消融平面的下方时,表明识别出目标医疗文本是正确的,因此,无需对目标医疗文本进行文本纠错,可以保留对应的目标医疗文本不变。
[0287]
举例而言,当目标医疗文本是“患者素腹部偶有刺痛”时,可以确定“患”、“者”、“腹”、“部”、“偶”、“有”、“刺”和“痛”的位置坐标均位于消融平面的下方,因此,保留对应的目标医疗文本不变。
[0288]
在本公开的示例性实施例中的医疗文本纠错方法中,通过目标医疗文本和医学命名实体计算对应的语境置信度、字符相似度和实体相似度,为目标医疗文本的文本纠错提供了数据基础和理论支持,丰富了文本纠错可依据数据维度,从数据全面性方面保证了错字检错和纠正的准确性。
[0289]
在数据集方面,对于错误检出任务,准确率和召回率都高于95%,在错误纠正任务上准确率和召回率也达到了80%以上。根据医疗文本纠错方法形成的纠错框架基础上是一
套适用于中文病历的自动错别字纠错的系统,能够在输入病历文本时实时检测出95%以上的错别字,并给出 80%以上正确率的修正建议。
[0290]
并且,这套方法不需要维护纠正词典,不存在维护的问题。
[0291]
以语境置信度、字符相似度和实体相似度三者作为文本纠错的依据,有效提升了医疗文本的纠错效果,也通过系统性的文本纠错方法提升了医疗文本纠错的扩展性,丰富了医疗文本纠错的应用场景。
[0292]
因此,在不同的病历场景下,医疗文本纠错方法的拓展性极强。例如,在在不同的医院和科室,根据医疗文本纠错方法形成的系统也能完成基本的纠错。为了提高准确性,可以通过过往的病历数据训练不同的 bert医学语言表征模型,使对应系统更适用于当前的场景。
[0293]
此外,在本公开的示例性实施例中,还提供一种医疗文本纠错装置。图13示出了医疗文本纠错装置的结构示意图,如图13所示,医疗文本纠错装置1300可以包括:第一计算模块1310、第二计算模块1320和文本纠错模块1330。其中:
[0294]
第一计算模块1310,被配置为获取目标医疗文本和医学命名实体,并对所述目标医疗文本进行语境置信度计算得到候选字和所述候选字的语境置信度;
[0295]
第二计算模块1320,被配置为对所述目标医疗文本和所述候选字进行字符相似度计算得到字符相似度,并对所述候选字和所述医学命名实体进行实体相似度计算得到实体相似度;
[0296]
文本纠错模块1330,被配置为基于所述语境置信度、所述字符相似度和所述实体相似度,利用所述候选字对所述目标医疗文本进行文本纠错。
[0297]
在本公开的一种示例性实施例中,所述对所述目标医疗文本进行语境置信度计算得到候选字和所述候选字的语境置信度,包括:
[0298]
将所述目标医疗文本输入至预先训练好的医学语言表征模型中,以使所述预先训练好的医学语言表征模型对所述目标医疗文本进行语境置信度计算得到候选字和所述候选字的语境置信度。
[0299]
在本公开的一种示例性实施例中,在所述将所述目标医疗文本输入至预先训练好的医学语言表征模型中之前,所述方法还包括:
[0300]
获取训练待训练的医学语言表征模型的医疗文本正样本;
[0301]
将所述医疗文本正样本输入至所述待训练的医学语言表征模型中,以对所述待训练的医学语言表征模型进行训练,直至完成训练得到预先训练好的医学语言表征模型。
[0302]
在本公开的一种示例性实施例中,所述对所述目标医疗文本和所述候选字进行字符相似度计算得到字符相似度,包括:
[0303]
对所述目标医疗文本和所述候选字的字形进行字形相似度计算得到所述字形相似度;
[0304]
对所述目标医疗文本和所述候选字的字音进行字音相似度计算得到所述字音相似度;
[0305]
根据所述字形相似度和所述字音相似度确定所述目标医疗文本和所述候选字的字符相似度。
[0306]
在本公开的一种示例性实施例中,所述对所述目标医疗文本和所述候选字的字形
进行字形相似度计算得到所述字形相似度,包括:
[0307]
对所述目标医疗文本进行表意文字描述得到目标文字描述符,并对所述候选字进行表意文字描述得到候选文字描述符;
[0308]
对所述目标文字描述符和所述候选文字描述符进行编辑距离计算得到所述目标医疗文本和所述候选字的字形编辑距离;
[0309]
对所述字形编辑距离进行字形相似度计算得到所述目标医疗文本和所述候选字的字形相似度。
[0310]
在本公开的一种示例性实施例中,所述对所述目标医疗文本和所述候选字的字音进行字音相似度计算得到所述字音相似度,包括:
[0311]
获取所述目标医疗文本的目标读音表征,并获取所述候选字的候选读音表征;
[0312]
对所述目标读音表征和所述候选读音表征进行编辑距离计算得到所述目标医疗文本和所述候选字的字音编辑距离;
[0313]
对所述字音编辑距离进行字音相似度计算得到所述目标医疗文本和所述候选字的字音相似度。
[0314]
在本公开的一种示例性实施例中,所述根据所述字形相似度和所述字音相似度确定所述目标医疗文本和所述候选字的字符相似度,包括:
[0315]
将所述字形相似度确定为所述目标医疗文本和所述候选字的字符相似度;或
[0316]
将所述字音相似度确定为所述目标医疗文本和所述候选字的字符相似度;或
[0317]
对所述字形相似度和所述字音相似度进行加权计算得到所述目标医疗文本和所述候选字的字符相似度。
[0318]
在本公开的一种示例性实施例中,所述基于所述语境置信度、所述字符相似度和所述实体相似度,利用所述候选字对所述目标医疗文本进行文本纠错,包括:
[0319]
获取与所述医疗文本正样本对应的医疗文本负样本,并对所述医疗文本正样本和所述医疗文本负样本进行消融试验得到消融平面;
[0320]
根据所述语境置信度、所述字符相似度和所述实体相似度确定所述候选字相对于所述消融平面的位置坐标;
[0321]
基于所述位置坐标,利用所述候选字对所述目标医疗文本进行文本纠错。
[0322]
在本公开的一种示例性实施例中,所述基于所述位置坐标,利用所述候选字对所述目标医疗文本进行文本纠错,包括:
[0323]
若所述位置坐标处于所述消融平面的上方,利用所述候选字对所述目标医疗文本进行文本纠错。
[0324]
在本公开的一种示例性实施例中,所述利用所述候选字对所述目标医疗文本进行文本纠错,包括:
[0325]
若多个所述候选字对应的位置坐标处于所述消融平面的上方,根据所述字符相似度确定多个所述候选字中的一个为目标候选字;
[0326]
利用所述目标候选字对所述目标医疗文本进行文本纠错。
[0327]
在本公开的一种示例性实施例中,所述方法还包括:
[0328]
若所述位置坐标处于所述消融平面的下方,保留所述目标医疗文本。
[0329]
在本公开的一种示例性实施例中,所述对所述候选字和所述医学命名实体进行实
体相似度计算得到实体相似度,包括:
[0330]
对所述候选字和所述医学命名实体进行编辑距离计算得到实体编辑距离;
[0331]
对所述实体编辑距离进行归一化处理得到所述候选字和所述医学命名实体的实体相似度。
[0332]
上述医疗文本纠错装置1300的具体细节已经在对应的医疗文本纠错方法中进行了详细的描述,因此此处不再赘述。
[0333]
应当注意,尽管在上文详细描述中提及了医疗文本纠错装置1300的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0334]
此外,在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
[0335]
下面参照图14来描述根据本发明的这种实施例的电子设备1400。图 14显示的电子设备1400仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0336]
如图14所示,电子设备1400以通用计算设备的形式表现。电子设备1400的组件可以包括但不限于:上述至少一个处理单元1410、上述至少一个存储单元1420、连接不同系统组件(包括存储单元1420和处理单元1410)的总线1430、显示单元1440。
[0337]
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1410执行,使得所述处理单元1410执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的步骤。
[0338]
存储单元1420可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)1421和/或高速缓存存储单元1422,还可以进一步包括只读存储单元(rom)1423。
[0339]
存储单元1420还可以包括具有一组(至少一个)程序模块1425的程序/实用工具1424,这样的程序模块1425包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0340]
总线1430可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
[0341]
电子设备1400也可以与一个或多个外部设备1600(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1400交互的设备通信,和/或与使得该电子设备1400能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口1450进行。并且,电子设备1400还可以通过网络适配器1460与一个或者多个网络(例如局域网 (lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器1440通过总线1430与电子设备1400的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1400使用其它硬件和/ 或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0342]
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储
介质(可以是 cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等) 执行根据本公开实施例的方法。
[0343]
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的步骤。
[0344]
参考图15所示,描述了根据本发明的实施例的用于实现上述方法的程序产品1500,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0345]
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0346]
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0347]
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
[0348]
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0349]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1