实体语义关系分类方法、模型训练方法、装置及电子设备与流程

文档序号:17665072发布日期:2019-05-15 22:38阅读:220来源:国知局
实体语义关系分类方法、模型训练方法、装置及电子设备与流程

本发明涉及文本识别技术领域,具体而言,涉及一种实体语义关系分类方法、模型训练方法、装置及电子设备。



背景技术:

深度学习是机器学习中一种基于对数据进行表征学习的方法。在深度学习的实际应用中,通常需要预先训练出深度学习模型。

训练深度学习模型所采用的样本数据通常包括多个维度的特征数据,根据训练数据集不断地对深度学习模型进行训练,得出更精确的预测模型,通过使用该预测模型对该深度学习模型进行更新,以使该预测模型用于在线执行数据预测操作。



技术实现要素:

本发明的目的在于提供一种实体语义关系分类方法、模型训练方法、装置及电子设备,能够提升实体语义关系的分类准确率。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种实体语义关系分类方法,应用于一电子设备,所述电子设备中预设有一实体语义关系分类模型,所述方法包括:

确定出语料中的第一实体与第二实体;

获得所述语料中每个文字各自与所述第一实体的第一位置距离以及与所述第二实体的第二位置距离;

将所述语料中所有文字各自对应的特征向量进行组合,得到所述语料对应的模型输入向量,其中,每个文字对应的所述特征向量由所述语料中每个文字对应的字向量与位置向量进行组合后获得,所述位置向量包括每个文字的第一位置距离和第二位置距离分别对应的向量;

将所述语料对应的模型输入向量,作为所述预设的实体语义关系分类模型的输入,确定出所述第一实体与所述第二实体两者的实体语义关系类型。

第二方面,本发明实施例提供了一种实体语义关系分类模型训练方法,应用于一电子设备,所述方法包括:

接收至少一个训练样本,识别所述至少一个训练样本中每个训练样本的第一实体和第二实体;

获得所述每个训练样本中每个文字各自与对应的所述第一实体的第一位置距离以及与对应的所述第二实体的第二位置距离;

将所述每个训练样本中所有文字各自对应的特征向量进行组合,得到所述每个训练样本对应的模型输入向量,其中,每个文字对应的所述特征向量由所述每个训练样本中每个文字对应的字向量与位置向量进行组合后获得,所述位置向量包括每个文字的第一位置距离和第二位置距离分别对应的向量;

将所述每个训练样本各自对应的模型输入向量作为所述实体语义关系分类模型的输入,以对所述实体语义关系分类模型进行训练。

第三方面,本发明实施例提供了一种实体语义关系分类装置,应用于一电子设备,所述电子设备中预设有一实体语义关系分类模型,所述装置包括:

第一处理模块,用于确定出语料中的第一实体与第二实体;

所述第一处理模块还用于,获得所述语料中每个文字各自与所述第一实体的第一位置距离以及与所述第二实体的第二位置距离;

识别模块,用于将所述语料中所有文字各自对应的特征向量进行组合,得到所述语料对应的模型输入向量,其中,每个文字对应的所述特征向量由所述语料中每个文字对应的字向量与位置向量进行组合后获得,所述位置向量包括每个文字的第一位置距离和第二位置距离分别对应的向量。

第四方面,本发明实施例提供了一种实体语义关系分类模型训练装置,应用于一电子设备,所述装置包括:

接收模块,用于接收至少一个训练样本,识别所述至少一个训练样本中每个训练样本的第一实体和第二实体;

第二处理模块,用于获得所述每个训练样本中每个文字各自与对应的所述第一实体的第一位置距离以及与对应的所述第二实体的第二位置距离;

所述第二处理模块还用于,将所述每个训练样本中所有文字各自对应的特征向量进行组合,得到所述每个训练样本对应的模型输入向量,其中,每个文字对应的所述特征向量由所述每个训练样本中每个文字对应的字向量与位置向量进行组合后获得,所述位置向量包括每个文字的第一位置距离和第二位置距离分别对应的向量;

训练模块,用于将所述每个训练样本各自对应的模型输入向量作为所述实体语义关系分类模型的输入,以对所述实体语义关系分类模型进行训练。

第五方面,本发明实施例提供了一种电子设备,所述电子设备包括存储器,用于存储一个或多个程序;处理器。当所述一个或多个程序被所述处理器执行时,实现上述的实体语义关系分类方法或实体语义关系分类模型训练方法。

第六方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的实体语义关系分类方法或实体语义关系分类模型训练方法。

相对于现有技术,本发明实施例所提供的一种实体语义关系分类方法、模型训练方法、装置及电子设备,通过确定获得语料中的第一实体和第二实体,并根据语料中每个文字距离第一实体的第一位置距离和的距离第二实体的第二位置距离,获得每个文字对应的特征向量,进而将语料中所有文字各自的特征向量进行组合,得到语料对应的模型输入向量,从而将语料对应的模型输入向量作为实体语义关系分类模型的输入,得到该语料对应的实体语义关系,相比于现有技术,能够提升实体语义关系的分类准确率。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它相关的附图。

图1为本发明一实施例所提供的一种电子设备的示意性结构框图;

图2为一种实体语义关系分类模型的示意性结构图;

图3为本发明一实施例所提供的一种实体语义关系分类模型训练方法的示意性流程图;

图4为图3中s204的子步骤的一种示意性流程图;

图5为图3中s204的子步骤的另一种示意性流程图;

图6为本发明一实施例所提供的一种实体语义分类方法的示意性流程图;

图7为图6中s303的子步骤的一种示意性流程图;

图8为图7中s3031的子步骤的一种示意性流程图;

图9为本发明一实施例所提供的一种实体语义关系分类模型训练装置的示意性结构图;

图10为本发明一实施例提供的一种实体语义关系分类装置的示意性结构图。

图中:100-电子设备;101-存储器;102-处理器;103-通信接口;400-实体语义关系分类模型训练装置;401-接收模块;402-第二处理模块;403-训练模块;500-实体语义关系分类装置;501-第一处理模块;502-识别模块。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

在文本信息抽取任务中,可以采用深度学习模型在实体识别的基础上,对文本信息进行深度挖掘,从而促进非结构化的语句结构化。其中,实体是一种命名性指称项,比如人名、地名、设备名、疾病名称等等。当然,可以理解的是,在不同的领域,会相应地定义领域内的各种实体类型。

对语料中的实体之间的语义进行分类的应用场景中,一般采用基于神经网络的模型方法对实体语义关系进行分类,具体手段是将大量已经分类好实体语义关系的语料作为神经网络模型的输入,以对该神经网络模型进行训练,然后再将训练好的模型用于对新的语料实体语义关系进行分类。例如,采用rntn(recursiveneuraltensornetwork,递归神经张量网络)、pcnn(pulsecoupledneuralnetwork,脉冲耦合神经网络)等基于卷积神经网络的模型方式,然而这些模型对某些领域语料中的实体语义关系进行分类的准确率可能达不到要求。

以电子病历(electronicmedicalrecord,emr)作为信息抽取对象为例,由于电子病历记录了患者的疾病和症状、治疗过程和治疗效果,基于建立的深度学习模型,挖掘电子病历中的实体并对实体语义关系进行分类,而实体语义关系的分类准确率不高,使得不能更加高效、精确地收集以往的临床信息作为历史数据,以辅助医疗决策。

请参阅图1,图1为本发明一实施例所提供的一种电子设备100的示意性结构框图。所述电子设备100可以是,但不限于服务器、个人电脑(personalcomputer,pc)、平板电脑、智能手机、个人数字助理(personaldigitalassistant,pda)等等。所述电子设备100包括存储器101、处理器102和通信接口103,该存储器101、处理器102和通信接口103相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。存储器101可用于存储软件程序及模块,如本发明实施例所提供的实体语义关系分类模型训练装置400或实体语义关系分类装置500对应的程序指令/模块,处理器102通过执行存储在存储器101内的软件程序及模块,从而执行各种功能应用以及数据处理。该通信接口103可用于与其他节点设备进行信令或数据的通信。

其中,存储器101可以是但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。

处理器102可以是一种集成电路芯片,具有信号处理能力。该处理器102可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、数字信号处理器(digitalsignalprocessing,dsp)、npu(neural-networkprocessunits,嵌入式神经网络处理器)等,还可以是专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。

可以理解,图1所示的结构仅为示意,电子设备100可以包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。

下面以挖掘语料中的实体并对实体语义关系进行分类的为例,对本发明实施例提供的一种对实体语义关系分类模型进行训练的方法进行说明,从而运用训练好的实体语义关系分类模型,对语料中实体语义关系进行分类。

可选地,请参阅图2,图2为一种实体语义关系分类模型的示意性结构图,作为一种可能的实现方式,该实体语义关系分类模型可以采用双向门控循环神经网络bigru(bigatedrecurrentunit)+注意力attention机制模型,该模型是在双向gru模型的基础上,在输出结果之前,添加注意力层。

其中,作为一种可能的实现方式,在该bigru+attention模型中,gru的层级设置为1,且gru中神经元的数量为230。具体实践中,用户也可根据实际需要将gru层级设置为2层或其他层级,对应地将gru中的神经元的数量设置为其他数量。本发明实施例仅提供一个较佳的可能的实现方式,并不对具体数量做限定。

作为一种可能的实现方式,该bigru+attention模型的dropout参数设置为1,即该bigru+attention模型在训练时gru层的每个神经元均不被舍弃。当然,用户在实践中,也可根据需要将dropout参数设置为其他,已确定将gru层的部分神经元进行失活处理。本发明实施例通过反复实现后,给出一个较佳的可能实现方式,但并不对具体的数量做限定。

值得说明的是,在本发明实施例其他的一些实施方式,该实体关系语义分类模型还可以采用其他的一些模型,比如gru(gatedrecurrentunit,门控循环神经网络)模型,而本发明实施例在bigru+attention模型的基础上进行举例说明。

请参阅图3,图3为本发明一实施例所提供的一种实体语义关系分类模型训练方法的示意性流程图,该实体语义关系分类模型训练方法应用于如图1所示的电子设备100,该电子设备100采用实体语义关系分类模型用于对语料中的实体对的实体语义关系进行分类。该实体语义关系分类模型训练方法包括以下步骤:

s201,接收至少一个训练样本,识别至少一个训练样本中每个训练样本的第一实体和第二实体。

其中,所述训练样本可以是一次接收多个,也可以一次接收一个,用户在实践过程中可根据实际的需要进行调整。

s202,获得每个训练样本中每个文字各自与对应的第一实体的第一位置距离以及与对应的第二实体的第二位置距离。

s203,将每个训练样本中所有文字各自对应的特征向量进行组合,得到每个训练样本对应的模型输入向量。

s204,将每个训练样本各自对应的模型输入向量作为实体语义关系分类模型的输入,以对实体语义关系分类模型进行训练。

在对实体语义关系分类模型进行训练时,需要将所有的训练样本,进行分批输入,每一批次包含的训练样本的数量称为批尺寸batch_size,每一训练样本所使用的次数称为epochs。

示例性地,该实体语义关系分类模型在训练时,可以对训练参数进行如下设置:batch_size设置为50;epochs设置为100,即每一个样本使用的次数是100次;每训练100次后,保存模型。该训练参数的意义在于,每一次采用50个训练样本对模型进行训练,且每一训练样本使用100次,每训练100次后保存模型。

则按照上述示例,采用每一批次的训练样本对实体语义关系模型进行训练时,电子设备需要接收50个训练样本,并识别每一训练样本中的第一实体和第二实体,其中,每一训练样本中的第一实体和第二实体均构成一个实体对。

其中,作为一种可能的实现方式,实体语义关系模型在利用训练样本进行训练之前,训练样本中的每一实体均具有实体标识,电子设备根据识别每一训练样本中的实体标识,获得每个训练样本中的第一实体和第二实体。

以训练样本为电子病历的场景为例,假定一训练样本为:心前区无<e1>隆起symptom</e1>、凹陷,心尖搏动正常,无心包摩擦感,心脏相对浊音界正常,<e2>心率test</e2>70次/分,心律齐,心脏各瓣膜听诊区未闻及病理性杂音,</e1></e1>作为第一实体的标识,</e2></e2>作为第二实体的标识,则电子设备在接收到该训练样本时,所获得的第一实体为“隆起”,类型为symptom,第二实体为“心率”,类型为test。

值得说明的是,在本发明实施例其他的一些实现方式中,还可以采用其他的一些方式识别训练样本中的第一实体和第二实体,比如,通过预设一实体库,在实体库中存储多个实体,从而基于该预设的实体库进行索引对训练样本进行识别,获得第一实体和第二实体。

在例如上述电子病历的应用场景中,单个训练样本中的每个字相对于第一实体和第二实体的位置不同,则各自对第一实体与第二实体两者的实体语义关系类型也不同,一般来说,距离两个实体越近的字,越有可能对两个实体的实体语义关系类型的识别有较大贡献。

因此,在本发明实施例中,加入位置嵌入的概念,在对模型进行训练时,获得的每个训练样本中每个文字各自与对应的第一实体的第二位置距离以及与对应的第二实体的第二位置距离。

并且,由于实体一般是由多个字组成,比如上述示例中的“隆起”和“心率”,所以在获得每个训练样本中每个文字的第一位置距离及第二位置距离时,可以预先确定训练样本中第一位置距离及第二位置距离的计算标准,比如说,可以约定,在计算第一位置距离时,按照语序顺序以第一实体中的第一个字作为第一位置距离的计算标准,在计算第二位置距离时,按照语序顺序以第二实体中的第一个字作为第二位置距离的计算标准,

例如,在上述示例性的训练样本中,如“心前区无<e1>隆起symptom</e1>、凹陷,心尖搏动正常,无心包摩擦感,心脏相对浊音界正常,<e2>心率test</e2>70次/分,心律齐,心脏各瓣膜听诊区未闻及病理性杂音”该训练样本中,若按照上述计算第一位置距离和第二位置距离的约定,则在该训练样本中,“心前区”中的“前”字的第一位置距离为3,第二位置距离为33;而“心前区”中的“区”字的第一位置距离则为2,第二位置距离则为32。

由于不同的两个字,相对于同一实体的位置距离可能相同,而区别在于按照语序顺序其中一个字位于该实体前,而另一个字则位于该实体后,比如说在上述示例性的训练样本中,“心前区”中的“区”字,与第一实体“隆起”的第一位置距离为2,但“凹陷”中的“凹”字,同样与第一实体“隆起”的第一位置距离为2。

因此,作为一种可能的实现方式,可以采用正负值的方式对位置距离的方向进行区分,按照语序的顺序,将位于实体的语序之前的字对应的位置距离用负值表示,而将位于实体的语序之后的字对应的位置距离用正值来表示。比如在上述示例中,按照语序的顺序,“心前区”中的“区”字位于第一实体“隆起”的语序之前,“凹陷”中的“凹”字则位于第一实体“隆起”的语序之后,则“区”字的第一位置距离为-2,凹”字的第一位置距离为2。

作为另一种可能的实现方式,在上述采用正负值的方式对位置距离的方向进行区分的基础上,还可以对每个位置距离的值均加上一预先设定的值,从而将每个位置距离的值变换为正值,比如在上述示例性的训练样本中,若将该预先设定的值赋为68,则“区”字的第一位置距离为66,“凹”字的第一位置距离为70。

根据上述获得每个训练样本中每个文字各自与对应的第一实体的第一位置距离以及对应的第二实体的第二位置距离,按照用于将文字转换为向量的字向量表,以及用于将位置距离转换为向量的位置嵌入向量表,将每个文字均向量化为字向量、并将每个第一位置距离及第二位置距离分别向量化,然后将每个文字各自的字向量与第一位置距离和第二位置距离分别对应的向量进行组合,得到每个文字对应的特征向量。

比如,在上述示例性的训练样本中,以“心前区”中的“前”字为例,假定“前”字向量化后得到的字向量为[0.1,0.5,0.4,0.3],“前”字的第一位置距离对应的向量为[0.4,0.6],第二位置距离对应的向量为[0.6,0.4],则“前”字对应的特征向量为[0.1,0.5,0.4,0.3,0.4,0.6,0.6,0.4]。

值得说明的是,上述“前”字向量化后得到的字向量为4维的向量[0.1,0.5,0.4,0.3]仅为示意,在本发明实施例其他的一些实施方式中,还可以使用预存于电子设备中其他维度的向量表,使得“前”字向量化后的维度不同,比如,利用预存于电子设备中维度为100的向量表,则“前”字向量化后具有100维度。

同理,上述第一位置距离对应的向量和第二位置距离对应的向量均为示意说明,使用了2维,在本发明实施例其他的一些实施方式中,还可以使用预存于电子设备中其他维度的向量表,比如具有4维。

然后将每个训练样本中所有文字各自对应的特征向量进行组合,得到每个训练样本对应的模型输入向量,其中,作为一种可能的实现方式,可以采用二维矩阵排列的方式记录每一训练样本对应的模型输入向量。

比如在上述示例性的训练样本中,将“心前区”中的“心”字对应的特征向量作为模型输入向量的第一行;将“心前区”中的“前”字对应的特征向量作为模型输入向量的第二行;以此类推,直至将该训练样本中的所有文字对应的特征向量进行组合后,得到该训练样本对应的模型输入向量。

由此,根据组合得到的每个训练样本对应的模型输入向量,将每个训练样本各自对应的模型输入向量作为实体语义关系分类模型的输入,以对该实体语义关系分类模型进行训练。

其中,作为一种可能的实现方式,在将模型输入向量作为实体语义关系分类模型的输入时,可以将多个训练样本各自对应的模型输入向量一起作为实体语义关系分类模型的输入,比如根据上述训练参数的设置,batch_size设置为50,则该实体语义关系分类模型的一次输入为50个训练样本对应的模型输入向量。

值得说明的是,在例如上述实体语义关系分类模型的一次输入为50个训练样本对应的模型输入向量的示例中,每一模型输入向量具有相同的维度。比如,以维度为100的字向量和向量化后维度为4的位置距离为例,训练样本1的模型输入向量的维度为70*108,则训练样本2的模型输入向量的维度同样为70*108。其中,70表征训练样本中包含有70个文字,108表征每个文字对应的特征向量包含108个元素。

并且,若多个训练样本一起作为实体语义关系分类模型的输入,由于不同的训练样本所包含的文字数量可能不尽相同,比如训练样本1包含60个字,训练样本2包含70个字,训练样本包含73个字,因此,需要将多个训练样本的模型输入向量统一化。示例性地,若将模型输入向量的维度统一设定为70*108,则可以将训练样本1中不足70字的部分,用预先设定的向量进行填充,比如用0向量进行填充,而将训练样本3中超出70字的部分进行剔除,只保留按照语序顺序的前70个字。

作为一种可能的实现方式,上述的训练样本可采用电子病历,且训练样本对应的模型输入向量为n个特征向量的组合,比如,上述示例中,模型输入向量的维度设置为70*108,表征该模型输入向量包含70个字对应的特征向量,每个特征向量的维度为108。

其中,作为一种可能的实现方式,n为至少一个电子病历中包含的平均字数,例如,若训练样本总计使用50个电子病历,且50个电子病历包含的平均字数为70,则n等于70。

可以理解,在本发明实施例其他的一些实现方式中,n还可以设定为固定的值,比如设定n等于100。

值得说明的是,在本发明实施例其他的一些实现方式中,还可以采用除电子遍历以外的以外语料作为训练样本,例如智能客服对话或者是咨询信息关键字提取等等。

作为另一种可能的实现方式,在将模型输入向量作为实体语义关系分类模型的输入时,还将单个训练样本对应的模型输入向量作为实体语义关系分类模型的输入,比如在上述训练参数的设置将,将batch_size设置为1,则该实体语义分类模型的一次输入为1个训练样本对应的模型输入向量。

下面结合如图2所示的实体语义关系分类模型,对例如维度为70*108的模型输入向量的训练过程进行举例说明,此时,在如图2所示的模型中,t=108,该模型的输入层获得70*108维的模型输入向量,经特征嵌入层预处理后,输入到gru层进行计算;gru层输出108个预测的实体语义分类至注意力层;注意力层根据获得的108个预测的实体语义分类中,计算每一预测的实体语义分类各自的概率值,并将得到的108个预测的实体语义分类中,概率值最大的实体语义分类,作为该训练样本对应的实体语义分类。

可选地,在例如上述其中一种可能的实现方式中,若将多个训练样本各自对应的模型输入向量一起作为实体语义关系分类模型的输入,以对实体语义关系分类模型进行训练,则在训练时,实体语义关系分类模型会为每一训练样本给出预测实体语义关系类型,比如上述示例中,输入50个训练样本对应的模型输入向量,则模型会得出50个训练样本各自对应的预测实体语义关系类型。

因此,请参阅图4,图4为图3中s204的子步骤的一种示意性流程图,作为一种可能的实现方式,s204包括以下子步骤:

s2041,获得每个训练样本通过实体语义关系分类模型训练后得到的第一实体与第二实体两者的实体语义关系类型。

s2042,获得每个训练样本中实体语义关系类型和,为每个训练样本对应预先存储的第一实体和第二实体的实体语义关系类型的偏差值。

s2043,获得每个训练样本的偏差值之和。

s2044,判断偏差值之和是否超过第一偏差阈值;若为是,则调整实体语义关系分类模型中的参数,以训练实体语义关系分类模型;若为否,训练结束。

示例性地,可以利用交叉熵函数计算每个训练样本的偏差值,比如,将每个训练样本对应训练得到的实体语义关系类型和为每个训练样本预先存储的实体语义关系类型作为该交叉熵函数的输入,进而将每个训练样本对应得到的交叉熵函数值作为每个训练样本对应的偏差值;然后将一次训练过程中,每个训练样本的偏差值相加,得到该次训练过程中每个训练样本的偏差值之和,将该偏差值之和表征该次训练过程的整体偏差程度;比如在上述batch_size设置为50的示例中,该偏差值之和为50个训练样本的偏差值相加得到的结果,若偏差值之和超过第一偏差阈值,表征该次训练过程的整体偏差程度较大,实体语义关系分类模型预测的实体语义关系与实际的实体语义关系相差较大,此时则调整实体语义关系模型中的参数,以训练该实体语义关系分类模型;反之,若偏差值之和未超过第一偏差阈值,表征实体语义关系分类模型预测的实体语义关系与实际的实体语义关系较为接近,此时则判定模型训练结束。

上述训练过程为利用实体语义关系分类模型单次训练的整体偏差程度对实体语义关系分类模型的参数进行调整,作为另一种可能的实现方式,还可以利用单个训练样本的输出结果对实体语义关系分类模型的参数进行调整。

请参阅图5,图5为图3中s204的子步骤的另一种示意性流程图,s204还可以包括以下子步骤:

s2041,获得每个训练样本通过实体语义关系分类模型训练后得到的第一实体与第二实体两者的实体语义关系类型。

s2042,获得每个训练样本中实体语义关系类型和,为每个训练样本对应预先存储的第一实体和第二实体的实体语义关系类型的偏差值。

s2045,判断目标训练样本的偏差值是否超过第二偏差阈值;若为是,则调整实体语义关系分类模型中的参数,以训练实体语义关系分类模型;若为否,训练结束。

如上述示例,利用交叉熵函数计算每个训练样本的偏差值;将输入模型的所有训练样本中,确定一目标训练样本,若该目标训练样本的偏差值超过第二偏差阈值,则表征该次训练过程的不满足训练要求,则调整实体语义关系模型中的参数,以训练该实体语义关系分类模型;反之,若目标训练样本的偏差值未超过第二偏差阈值,表征该次训练过程的满足训练要求,此时则判定模型训练结束。

其中,值得说明的是,该目标训练样本可以是输入模型的所有训练样本中的任一,可以是任一其偏差值超过第二偏差阈值的心凉样本,或者也可以是依次遍历输入模型的所有训练样本,将每一训练样本均作为目标训练样本进行判定,在本发明实施例其他的一些实施方式中,还可以是将输入模型的所有训练样本中,偏差值最大的训练样本作为目标训练样本。

值得说明的是,针对具体的对实体语义关系分类模型的参数进行调整时,图4对应的方式采用的是根据单次训练的整体偏差程度对实体语义关系分类模型的参数进行调整,图5对应的方式为利用单个训练样本的输出结果对实体语义关系分类模型的参数进行调整,用户可根据实际需求采用不同的方法。

作为一种可能的实现方式,在本发明实施例中,若实体语义关系分类模型为如图2所示的双向门控循环神经网络bigru+注意力attention机制模型,则在调整实体语义关系分类模型中的参数以训练实体语义关系分类模型时,调整bigru+attention模型中门控循环层gru的权重系数及偏置系数,以及注意力机制层的注意力矩阵,从而达到训练该实体语义关系分类模型的目的。

下面以挖掘语料中的实体并对实体语义关系进行分类的为例,对基于上述实体语义关系分类模型训练方法训练结束后得到的实体语义关系分类模型,对本发明实施例提供的一种实体语义分类方法进行说明。

请参阅图6,图6为本发明一实施例所提供的一种实体语义分类方法的示意性流程图,该实体语义分类方法可应用于如图1所示的电子设备,该实体语义分类方法包括以下步骤:

s301,确定出语料中的第一实体与第二实体。

s302,获得语料中每个文字各自与第一实体的第一位置距离以及与第二实体的第二位置距离。

s303,将语料中所有文字各自对应的特征向量进行组合,得到语料对应的模型输入向量。

s304,将语料对应的模型输入向量,作为预设的实体语义关系分类模型的输入,确定出第一实体与第二实体两者的实体语义关系类型。

作为一种可能的实现方式,该语料可以采用电子病历。示例性地,以电子病历“心前区无<e1>隆起symptom</e1>、凹陷,心尖搏动正常,无心包摩擦感,心脏相对浊音界正常,<e2>心率test</e2>70次/分,心律齐,心脏各瓣膜听诊区未闻及病理性杂音”作为语料为例,对上述实体语义分类方法进行说明。

电子设备在获得该语料中实体对间的实体语义关系类型时,作为一种可能的实现方式,可以根据该语料中包含的实体标识“</e1></e1>”和“</e2></e2>”,确定出该语料中的第一实体为“隆起”,第二实体为“心率”。

或者,作为另一种可能的实现方式,还可以利用在电子设备中预设的一实体库,在实体库中预先存储多个实体,从而基于该预设的实体库进行索引的方式,对该语料进行识别,从而获得上述的第一实体“隆起”和第二实体“心率”。

在本发明实施例中,根据该语料中每个字各自与第一实体“隆起”的位置距离,以及每个字各自与第二实体“心率”的位置距离,获得每个文字各自与第一实体的第一位置距离以及与第二实体的第二位置距离,从而将每个文字对应的字向量、以及每个文字的第一位置距离和第二位置距离分别对应的向量,进行组合,得到每个文字对应的特征向量,进而再将语料中所有文字的特征向量进行组合,得到语料对应的模型输入向量,并将该模型输入向量,作为电子设备中预设的实体语义关系分类模型的输入,确定出该语料中第一实体“隆起”与第二实体“心率”两者的实体语义关系类型。

基于上述设计,本发明实施例所提供的一种实体语义关系分类模型训练方法,通过确定获得语料中的第一实体和第二实体,并根据语料中每个文字距离第一实体的第一位置距离和的距离第二实体的第二位置距离,获得每个文字对应的特征向量,进而将语料中所有文字各自的特征向量进行组合,得到语料对应的模型输入向量,从而将语料对应的模型输入向量作为实体语义关系分类模型的输入,得到该语料对应的实体语义关系,相比于现有技术,能够提升实体语义关系的分类准确率。

可选地,请参阅图7,图7为图6中s303的子步骤的一种示意性流程图,作为一种可能的实现方式,s303包括以下子步骤:

s3031,获得语料中每个文字对应的字向量,以及每个文字的第一位置距离与第二位置距离各自对应的第一位置嵌入向量和第二位置嵌入向量。

s3032,将每个文字对应的字向量、第一位置嵌入向量和第二位置嵌入向量进行组合,获得每个文字对应的特征向量。

s3033,将语料中所有文字各自对应的特征向量进行组合,获得语料对应的模型输入向量。

电子设备在获得语料对应的模型输入向量时,以上述语料“心前区无<e1>隆起symptom</e1>、凹陷,心尖搏动正常,无心包摩擦感,心脏相对浊音界正常,<e2>心率test</e2>70次/分,心律齐,心脏各瓣膜听诊区未闻及病理性杂音”为例,首先获得该语料中的每个文字对应的特征向量,比如,以“心前区”中的“心”字为例,将“心”字向量化后得到的字向量,以及将“心”字与第一实体“隆起”的第一位置距离和“心”字与第二实体“心率”的第二位置距离各自对应的第一位置嵌入向量和第二位置嵌入向量进行组合,获得“心”字对应的特征向量。

同理,将该语料中的每一文字,均按照上述“心”字的方式,得到每一文字各自的特征向量,然后将语料的所有文字,按照如上述训练模型的步骤中,获得训练样本对应的模型输入向量的方式,得到该语料对应的模型输入向量。

可选地,请参阅图8,图8为图7中s3031的子步骤的一种示意性流程图,作为一种可能的实现方式,s3031包括以下子步骤:

s30311,获得位置嵌入向量表。

s30312,在位置嵌入向量表中分别确定出第一位置距离和第二位置距离各自对应的第一位置嵌入向量和第二位置嵌入向量。

在本发明实施例中,电子设备内存储有一位置嵌入向量表,该位置嵌入向量表有位置距离与位置嵌入向量的对应关系,根据该位置嵌入向量表,能够将第一位置距离转换得到第一位置嵌入向量,以及将第二位置距离转换得到第二位置嵌入向量。

比如,该位置嵌入向量表可以是维度为m×n的向量,位置嵌入向量表中的每一列元素均构成一个具体的位置嵌入向量,利用第一位置距离和第二位置距离具体的值,查询该位置嵌入向量表中对应的列数,则将对应列的所有元素,作为该第一位置距离对应的第一位置嵌入向量,以及第二位置距离对应的第二位置嵌入向量。比如,当第一位置距离为“3”时,则查询该位置嵌入向量表的第3列,将位置嵌入向量表中第3列包含的所有元素,作为第一位置嵌入向量;当第二位置距离为“33”时,则查询该位置嵌入向量表的第33列,将位置嵌入向量表中第33列包含的所有元素,作为第二位置嵌入向量。

值得说明的是,在本发明实施例其他的一些实施方式中,还可以利用位置距离值的大小来直接表示位置嵌入向量,比如上述示例中的第一位置距离为“3”,第二位置距离为“33”,但需要强调的是,采用位置距离值的大小直接表示,也可以看做是采用一维向量的表示方法。

值得说明的是,作为一种可能的实现方式,该位置嵌入向量表可以是上述模型在用于识别语料中第一实体与第二实体两者的实体语义关系类型之前,采用反向传播(backpropagation,bp)算法来生成。

示例性地,在采用bp算法生成位置嵌入向量表时,随机生成的初始向量表,经bp算法不断优化,进而得到该位置嵌入向量表。

比如,在一个优化示例中,设置4层神经网络结构,包括1个输入层l1,两个隐含层l2和l3,以及1个输出层l4,输入层l1的节点数设置为10,隐含层l2和l3的节点数设置为256,激活函数设置为修正线性单元relu(x)=max(0,x),输出层l4的节点数设置为3,输出层的函数设置为softmax(x)=exp(xi)/∑jexp(xj),其中,i,j=0,1,2...n,xi、xj为优化后得到的向量表,初始化网络权值设置为w,误差函数设置为其中,k=0,1,2...n,dk表示期望输出,ok表示实际输出,设置学习率ln为0.01,最大学习次数为20000次。

在优化的过程中,首先将多个初始向量表作为初始样本及各自对应的样本标签作为输入,计算隐含层各神经元的输入和输出;然后利用网络的期望输出和实际输出,计算误差函数对输出层的各神经元的偏导数δo(m)a;再利用隐含层到输出层的连接权值以及输出层的偏导数δo(m)和隐含层的输出,计算误差函数对隐含层各神经元的偏导数δh(m)a;然后利用输出层各神经元的偏导数δo(m)和隐含层各神经元的输出来修正连接权值w,以及利用隐含层各神经元的偏导数δh(m)a和输入层各神经元的输入来修正连接权值w;然后在每次循环中,对于输出层的结果,计算全局误差其中,m,n,q=0,1,2...n,在全局误差小于预设阈值时,则停止学习,将最后一次学习时输出层的输出结果作为位置嵌入向量表;或者是在全局误差并未小于预设阈值,但学习次数达到20000次时,也停止学习,将最后一次学习时输出层的输出结果作为位置嵌入向量表。

请参阅图9,图9为本发明一实施例所提供的一种实体语义关系分类模型训练装置400的示意性结构图,应用于一电子设备,该实体语义关系分类模型训练装置400包括接收模块401、第二处理模块402及训练模块403。

接收模块401用于接收至少一个训练样本,识别至少一个训练样本中每个训练样本的第一实体和第二实体。

第二处理模块402用于获得每个训练样本中每个文字各自与对应的第一实体的第一位置距离以及与对应的第二实体的第二位置距离。

第二处理模块402还用于将每个训练样本中所有文字各自对应的特征向量进行组合,得到每个训练样本对应的模型输入向量,其中,每个文字对应的特征向量由每个训练样本中每个文字对应的字向量与位置向量进行组合后获得,位置向量包括每个文字的第一位置距离和第二位置距离分别对应的向量。

训练模块403用于将每个训练样本各自对应的模型输入向量作为实体语义关系分类模型的输入,以对实体语义关系分类模型进行训练。

可选地,作为一种可能的实现方式,训练模块403具体用于:

获得每个训练样本通过实体语义关系分类模型训练后得到的第一实体与第二实体两者的实体语义关系类型;

获得每个训练样本中实体语义关系类型和,为每个训练样本对应预先存储的第一实体和第二实体的实体语义关系类型的偏差值;

获得每个训练样本的偏差值之和;

当偏差值之和超过第一偏差阈值,则调整实体语义关系分类模型中的参数,以训练实体语义关系分类模型。

可选地,作为另一种可能的实现方式,训练模块403具体用于:

获得每个训练样本通过实体语义关系分类模型训练后得到的第一实体与第二实体两者的实体语义关系类型;

获得每个训练样本中实体语义关系类型和,为每个训练样本对应预先存储的第一实体和第二实体的实体语义关系类型的偏差值;

每当至少一个训练样本中目标训练样本的偏差值超过第二偏差阈值时,则根据目标训练样本的偏差值调整实体语义关系分类模型中的参数,以训练实体语义关系分类模型。

可选地,作为一种可能的实现方式,实体语义关系分类模型为双向门控循环神经bigru+注意力attention机制模型,训练模块403调整实体语义关系分类模型中的参数时,具体用于:

调整bigru+attention模型中门控循环层gru的权重系数及偏置系数,以及注意力机制层的注意力矩阵。

可选地,作为一种可能的实现方式,bigru+attention模型在训练中gru的每个神经元不被舍弃。

可选地,作为一种可能的实现方式,至少一个训练样本为至少一个电子病历,训练样本对应的模型输入向量为n个特征向量的组合,其中,n为至少一个电子病历中包含的平均字数。

请参阅图10,图10为本发明一实施例提供的一种实体语义关系分类装置500的示意性结构图,应用于一电子设备,电子设备中预设有一实体语义关系分类模型,该实体语义关系分类装置500包括第一处理模块501及识别模块502。

第一处理模块501用于确定出语料中的第一实体与第二实体。

第一处理模块501还用于,获得语料中每个文字各自与第一实体的第一位置距离以及与第二实体的第二位置距离。

识别模块502用于将语料中所有文字各自对应的特征向量进行组合,得到语料对应的模型输入向量,其中,每个文字对应的特征向量由语料中每个文字对应的字向量与位置向量进行组合后获得,位置向量包括每个文字的第一位置距离和第二位置距离分别对应的向量。

可选地,作为一种可能的实现方式,第一处理模块501具体用于:

获得语料中每个文字对应的字向量,以及每个文字的第一位置距离与第二位置距离各自对应的第一位置嵌入向量和第二位置嵌入向量;

将每个文字对应的字向量、第一位置嵌入向量和第二位置嵌入向量进行组合,获得每个文字对应的特征向量;

将语料中所有文字各自对应的特征向量进行组合,获得语料对应的模型输入向量。

可选地,作为一种可能的实现方式,第一处理模块501具体用于:

获得位置嵌入向量表,其中,位置嵌入向量表记录有位置距离与位置嵌入向量的对应关系;

在位置嵌入向量表中分别确定出第一位置距离和第二位置距离各自对应的第一位置嵌入向量和第二位置嵌入向量。

可选地,作为一种可能的实现方式,实体语义关系分类模型为双向门控循环神经bigru+注意力attention机制模型,语料为电子病历。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

综上所述,本发明实施例所提供的一种实体语义关系分类方法、模型训练方法、装置及电子设备,通过确定获得语料中的第一实体和第二实体,并根据语料中每个文字距离第一实体的第一位置距离和的距离第二实体的第二位置距离,获得每个文字对应的特征向量,进而将语料中所有文字各自的特征向量进行组合,得到语料对应的模型输入向量,从而将语料对应的模型输入向量作为实体语义关系分类模型的输入,得到该语料对应的实体语义关系,相比于现有技术,能够提升实体语义关系的分类准确率。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其它的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1