语义匹配方法、装置、设备及可读存储介质与流程
未命名
10-19
阅读:107
评论:0
1.本技术涉及数据处理技术领域,尤其涉及一种语义匹配方法、装置、设备及可读存储介质。
背景技术:
2.语义匹配是自然语言处理中的基础任务,目标是识别两个句子或文本段落是否表达同一含义。相关技术中,在进行语义匹配时,通常将两个待识别的句子进行语义特征提取,获取用于表示两个句子语义特征的向量,通过计算该两个句子语义特征的向量的相似度,进而判别所述两个句子的含义是否相同,这种语义匹配方式的识别准确度低,无法精确区分语义相似的两个句子。
技术实现要素:
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.本技术实施例提供的技术方案可以包括以下有益效果:
56.在本技术提供的技术方案中,通过获取待匹配句子对的多个维度的特征信息,至少结合句子对的语义特征和句子字词序列的差异特征进行语义匹配,利用语义向量识别句
子的基础语义信息,基于用词差异特征识别句子的字词上的差异,提高了语义匹配的精准度。
57.应当理解的是,以上的一般描述和后文的细节描述仅是示例性的和解释性的,并不能限制本技术。此外,本技术中的任一实施例并不需要达到上述的全部效果。
附图说明
58.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
59.图1是本技术一示例性实施例示出的一种语义匹配方法流程示意图;
60.图2是本技术一示例性实施例示出的一种确定待处理句子的输入向量的过程示意图;
61.图3是本技术一示例性实施例示出的一种语义匹配装置的结构示意图;
62.图4是本技术一示例性实施例示出的一种电子设备的硬件示意图。
具体实施方式
63.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
64.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
65.应当理解,尽管在本技术可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一分类阈值也可以被称为第二分类阈值,类似地,第二分类阈值也可以被称为第一分类阈值。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
66.在自然语言处理中,语义匹配任务用于判断两个句子或文本段落是否表示相同含义,在表示同一含义时输出匹配结果为正类,否则输出匹配结果为负类。例如,对于句子a“浙江省会是杭州”和句子b“杭州是浙江省会”,句子a和b表达相同的意思,通过语义匹配得到的匹配结果为正类。
67.相关技术中,通常直接将两个句子进行向量化,分别获取每个句子的语义特征向量,通过计算两个句子的语义特征响亮的相似度,进而判断所述两个句子是否表示相同含义。
68.然而,这种语义匹配方式只考虑句子的基本语义信息,无法精确区分语义相似的两个句子,如句子c“浙江的省会是杭州”和句子d“浙江的省会不是杭州”,句子c和d的语义特征向量极为相似,但是二者表述的是完全相反的两个意思,相关技术中的语义匹配无法准确的区分出句子c和句子d。
69.因此,为解决上述技术问题,本技术提供一种语义匹配方法,参见图1所示,所述方法可以包括以下步骤:
70.s101,获取待进行语义匹配的句子对,所述句子对包括第一句子和第二句子;
71.其中,所述待进行语义匹配的句子对是两个需要判断是否表示相同含义的句子或者文本段落;所述第一句子和第二句子可以是一句话,或可以为多句文本数据组合后得到的句子,并不限于指一句话。
72.所述待进行语义匹配的句子对可以通过下述任一种方式获取,所述方式至少包括:所述句子对可以由用户提供,比如用户直接输入两个特定的句子作为待匹配的句子对;该句子对也可以是从文本文件中读取得到,比如在获取到文本文件后,可以根据用于表示待匹配句子的标识符,从所述文本文件中提取出待匹配的两个句子或文本段落。
73.例如,用户直接输入句子a“浙江省会是杭州”和句子b“杭州是浙江省会”,获取句子a和句子b作为所述句子对;又比如,用户在大段文本数据中标出待匹配的两个句子,由预设的处理程序根据“##”、[sep]等标识符自动确定所述句子对。
[0074]
s102,获取所述句子对的多个维度的特征信息,所述多个维度的特征信息至少包括:语义特征和用词差异特征,所述用词差异特征用于表征所述第一句子和第二句子在字词序列上的区别信息;
[0075]
所述多个维度的特征信息用于从句子对的字词、字词顺序、句子结构、字词含义和逻辑关联等多方面来描述该句子对;其中,所述多个维度的特征信息至少包括语义特征和用词差异特征,所述语义特征和用词差异特征可以进行向量化,分别通过语义向量、用词差异向量表示该句子对的特征。
[0076]
所述语义特征是用于描述句子对的,可以通过相关技术中的语义特征分析和提取的方式直接获取。例如,可以通过现有的双向语言表征网络bert获取句所述句子对的语义特征。
[0077]
例如,所述句子对包含第一句子“浙江省会是杭州”和第二句子“浙江省会不是杭州”,将第一句子和第二句子使用句子分隔符拼接在一起作为bert输入,如“浙江省会是杭州##浙江省会不是杭州”,得到双向语言表征网络bert输出的语义向量,所述语义向量用于表示该句子对的语义特征。
[0078]
所述用词差异特征可以表征句子对中的两个句子的字词、字词位置、字词之间的相关度等多方面的差异信息,可以通过提取句子对中的每个句子的字词、字词位置、字词之间的相关度等特征,并分别计算两个句子相互之间的特征差异以得到所述句子对的用词差异特征。
[0079]
s103,根据所述多个维度的特征信息,得到所述句子对的语义匹配概率;
[0080]
所述多个维度的特征信息用于从句子语义、句法、语序等多个方面去描述句子对中的两个句子各自所表述的含义;根据该特征信息做特征分析和比对以识别所述两个句子所表示的含义是否相同,对应计算语义相同的概率、以及语义不相同的概率。
[0081]
所述句子对的语义匹配概率可以有多种表达形式,可以预先设置其表达形式。例如,句子对中包含第一句子“浙江省会是杭州”和第二句子“浙江省会不是杭州”,得到的语义匹配概率是[0.037,0.963],两个维度分别对应匹配的概率和不匹配的概率,该维度的顺序为预先设置的。
[0082]
s104,基于所述语义匹配概率,确定所述句子对的语义匹配结果。
[0083]
所述语义匹配概率用于表示句子对中的两个句子匹配的概率、以及不匹配的概率,其中,较大的概率值用于指示所述句子对的匹配结果。因此,可以先确定所述语义匹配概率中的较大概率值,将该较大概率值对应的类别确定为所述句子对的语义匹配结果。
[0084]
例如,句子对“浙江省会是杭州”和“浙江省会不是杭州”,所述语义匹配概率是[0.037,0.963],两个维度分别对应匹配的概率和不匹配的概率,较大概率值0.963对应不匹配的概率,因此,确定所述句子对的匹配结果为不匹配,即该句子对中的两个句子表示不同的含义。
[0085]
在本技术实施例中,通过获取待匹配句子对的多个维度的特征信息,至少结合句子对的语义特征和句子字词序列的差异特征进行语义匹配,利用语义向量识别句子的基础语义信息,基于用词差异特征识别句子的字词上的差异,提高了语义匹配的精准度。
[0086]
在一些实施例中,所述句子对的用词差异特征可以通过下述方式得到,所述方式包括步骤:
[0087]
s201,分别获取所述第一句子和所述第二句子的字词序列特征;
[0088]
s202,根据两个句子的所述字词序列特征,确定所述句子对的用词差异特征。
[0089]
也即,可以通过预设置的句子字词序列特征提取网络,获取第一句子的字词序列特征以及第二句子的字词序列特征;基于句子对的用词差异特征是指第一句子与第二句子之间的特征差异,可以获取第一句子和第二句子的字词序列特征中的差异特征,将该差异特征作为用词差异特征。
[0090]
在本公开实施例中,通过句子对中两个句子的字词序列特征来确定句子对的用词差异特征,以获取较为准确的句子对的用词差异特征,从而提高语义匹配精准度。
[0091]
在一些实施例中,在确定所述句子对的用词差异特征的过程中,所述分别获取所述第一句子和所述第二句子的字词序列特征可以通过下述步骤实现,所述步骤可以包括:
[0092]
s2011,确定待处理句子对应的输入向量,所述输入向量至少包括字词向量、位置向量,所述字词向量用于表示所述句子的分词特征,所述位置向量用于指示所述句子的分词的句中位置特征,所述待处理句子包括所述第一句子和所述第二句子;
[0093]
s2012,根据所述待处理句子对应的输入向量,分别获取所述待处理句子的向量化矩阵,所述向量化矩阵是所述输入向量在不同空间上的投影结果矩阵;所述向量化矩阵用于表示所述待处理句子的字词序列特征。
[0094]
其中,所述输入向量还可以包括分句向量,所述分句向量用于表示所述句子的分词属于第一句子或者第二句子。
[0095]
所述输入向量可以通过下述方式确定:将待处理句子做向量化处理,可以先句子进行分词处理并向量化,得到句子对应的字词向量;该待处理句子中的每个字词在句中的位置是先后顺序的,将所述每个字词的位置特征用向量表示,得到句子对应的位置向量;可以将所述字词向量和位置向量按照纵向拼接在一起,得到待处理句子的输入向量。
[0096]
例如,待处理句子是句子c“浙江的省会是杭州”,如图2所示,对待处理句子做分词处理得到的结果是“浙江/的/省会/是/杭州”,对句子的分词进行处理确定如图2所示的输入向量。
[0097]
在本公开实施例中,通过向量化方式提取第一句子、第二句子的分词序列特征,以
便于准确表示句子的特征信息。
[0098]
在一些实施例中,步骤s2012所述的根据所述待处理句子对应的输入向量,分别获取所述待处理句子的向量化矩阵,可以通过下述方式实现:
[0099]
将预设的每个所述权重矩阵参数与所述输入向量的点乘结果作为所述待处理句子的向量化矩阵,所述权重矩阵参数表示不同的投影空间。
[0100]
其中,可以预先设置三个权重矩阵参数,用于对句子的输入向量做x线性变换。例如,预设权重矩阵参数w1、w2、w3,分别将上述待处理句子c对应的输入向量x与w1、w2、w3相乘,确定三个乘积q1=xw1、k1=xw2、v1=xw3对应的矩阵为所述待处理句子c的向量化矩阵。
[0101]
在本公开实施例中,通过使用预设的权重矩阵参数获取待处理句子的向量化矩阵,所述向量化矩阵包含不同投影空间,以增强后续步骤中确定句子对的差异向量的处理,提高语义匹配精度。
[0102]
在一些实施例中,上述步骤s202所述的根据两个句子的所述字词序列特征,确定所述句子对的用词差异特征,可以包括以下步骤:
[0103]
s2021,根据预设的提取字词差异向量方式和所述待处理句子的向量化矩阵,分别获取第一差异向量和第二差异向量,所述第一差异向量表示第一句子相对于第二句子的字词序列差异特征,所述第二差异向量表示第二句子相对于第一句子的字词序列差异特征;
[0104]
s2022,将所述第一差异向量和第二差异向量进行拼接整合,得到所述句子对的用词差异向量,所述用词差异向量用于表示所述用词差异特征。
[0105]
其中,所述预设的提取字词差异向量方式可以包括对第一句子和第二句子的向量化矩阵进行相似度计算、归一化、加权求和处理,以获取两个句子之间相互比较的差异向量。
[0106]
在得到第一差异向量和第二差异向量后,可以将两个差异向量横向拼接,确定横向拼接所得到的向量为句子对的差异向量。
[0107]
在本公开实施例中,通过分别获取第一句子相对于第二句子的差异向量、以及第二句子相对于第一句子的差异向量,增强了获取的句子对用词差异向量的特征丰富度,以提高句子对的语义匹配准确性。
[0108]
在一些实施例中,所述向量化矩阵包括第一矩阵、第二矩阵和第三矩阵,所述第一矩阵和第二矩阵用于确定所述待处理句子的字词向量之间的相关度,第三矩阵用于表示所述待处理句子的字词向量的内容特征;
[0109]
所述预设的提取字词差异向量方式包括:
[0110]
s301,获取第三句子的目标矩阵乘积与所述第一矩阵的维度的比值,其中,所述目标矩阵乘积是第一矩阵差与第二矩阵差的乘积,所述第一矩阵差是第三句子与第四句子的第一矩阵的差,所述第二矩阵差是第三句子与第四句子的第二矩阵的差,所述第三句子和第四句子属于一个句子对;
[0111]
s302,确定所述比值经激活函数处理输出的值为目标权重值;
[0112]
s303,获取所述目标权重值与第三句子的第三矩阵的乘积,将所述乘积确定为所述第三句子相对于所述第四句子的差异向量。
[0113]
其中,所述激活函数可以是softmax函数。
[0114]
比如说,假设第三句子对应的向量化矩阵中的三个矩阵分别为q3、k3、v3,第四矩阵对应的三个矩阵为q4、k4、v4,其中,q3和k3、q4和k4分别用于确定第三句子、第四句子的字词之间的相关度权重值。
[0115]
该实施例中的预设的提取字词差异向量方式可以通过下述公式(1)表示:
[0116][0117]
其中,i和j表示句子是第三句子或第四句子,i和j不相同;dk是矩阵qi的维度。
[0118]
基于公式(1),所述第三句子相对于第四句子的差异向量可以用公式(2)计算得到:
[0119][0120]
同理,所述第四句子相对于第三句子的差异向量可以用公式(3)计算得到:
[0121][0122]
在本公开实施例中,通过计算两个句子的向量化矩阵的差值矩阵并进行softmax概率处理,确定句子之间的用词差异所对应的目标权重值,分别确定出两个句子相对的差异向量,增强了获取的句子对用词差异向量的准确性。
[0123]
在一些实施例中,所述多个维度的特征信息还包括所述句子对的句法特征;上述步骤s103所述的根据所述多个维度的特征信息,得到所述句子对的语义匹配概率,可以通过下述过程实现:
[0124]
s1031,将所述语义特征、句法特征和用词差异特征进行整合,得到整合的句子对特征;
[0125]
s1032,根据整合的句子对特征进行二分类处理,得到所述句子对的语义匹配概率,所述二分类的分类类型包括指示所述句子对匹配的类型、以及指示所述句子对不匹配的类型。
[0126]
其中,所述将所述语义特征、句法特征和用词差异特征进行整合的方式为三个特征对应的特征向量进行横向拼接。例如,语义特征、句法特征和用词差异特征分别对应为100维、200维和300维,所述维指的是特征向量的列数,将三个特征向量横向拼接处理得到的是一个600维的向量,该600维的向量表示所述句子对特征。
[0127]
在不包含句法特征的情况下,可以将语义特征和用词特征进行横向拼接,以得到整合的句子对特征。
[0128]
在本公开实施例中,通过获取整合的包含句子语义特征、句法特征和用词差异特征,多维特征综合分析确定句子对的语义匹配概率,提高了语义匹配的精准度。
[0129]
在一些实施例中,获取所述句子对的多个维度的特征信息,并根据该多个维度的特征信息得到所述句子对的语义匹配概率的处理过程,可以通过语义匹配网络实现,所述语义匹配网络可以包括语义特征获取网络、句法特征获取网络和用词差异特征获取网络;
[0130]
其中,所述语义特征获取网络用于获取句子对的语义向量,所述句法特征获取网
络用语获取句子对的句法向量,所述用词差异特征获取网络用于获取句子对的用词差异向量,每个所述特征获取网络可以根据获取的特征向量和网络内的全连接层输出句子对的预测属于正类或负类的概率。例如,语义特征获取网络基于该语义向量输出句子对的预测属于正类或者负类的概率;
[0131]
所述语义匹配网络可以通过下述方式训练得到:
[0132]
s401,获取句子对样本,所述句子对样本已标注语义匹配结果是正类或负类,所述正类表示该句子对表示相同的含义,负类表示该句子对表示不同的含义;
[0133]
s402,将句子对样本输入到所述语义匹配网络中以训练所述语义网络中的参数,所述语义匹配网络分别利用上述的三个特征获取网络获取句子对的语义向量、句法向量和用词差异向量,以及该三个特征获取网络基于获取的特征向量输出的预测属于正类或者负类的概率;
[0134]
s403,根据上述的三个特征获取网络输出的预测属于正类或者负类的概率,分别得到所述特征获取网络对应的语义损失、句法损失和用词差异损失;
[0135]
其中,可以通过下述交叉熵损失函数分别计算语义损失、句法损失和用词差异损失,所述公式(4)为:
[0136][0137]
其中,n为所述句子对样本的总数,ym表示第m个样本的真实类,1表示正类,0表示负类,pm为第m个样本对应的上述的特征获取网络输出的预测语义匹配概率。
[0138]
例如,第m个样本是句子对“浙江的省会是杭州”和“浙江的省会不是杭州”,该样本对应的真实类是负类,ym为0,而语义特征获取网络输出的预测概率是[0.275,0.725],两个维度分别对应正类概率和负类概率,即第m个样本属于正类的概率为0.275,属于负类的概率为0.725,取较大值所在维度作为预测的语义匹配概率,即pm为0.725。
[0139]
获取n个样本各自对应的真实类ym和语义特征获取网络输出的预测概率pm,代入所述公式(4)得到本轮训练的语义损失;句法损失和用词差异损失计算方法类似,本技术对此不再赘述。
[0140]
在本实施例中,所述计算语义损失、句法损失和用词差异损失的损失函数并不局限于交叉熵损失函数,可以采用其他现有的损失函数进行计算。
[0141]
s404,根据所述语义损失、句法损失和用词差异损失,确定语义匹配网络总损失,并基于该总损失调整所述语义匹配网络中的参数;
[0142]
其中,可以利用下述公式(5)计算所述语义匹配网络总损失,所述公式(5)可以是:
[0143]
l
total
=a*l
sem
+b*l
syn
+c*l
diff
[0144]
其中,所述l
total
为所述总损失,l
sem
是所述语义损失,l
syn
是所述语法损失,l
diff
是所述用词差异损失,a、b、c为超参数,可根据实际情况进行人为设定,该超参数值越大表示该部分损失越重要。
[0145]
s405,在训练达到设定的迭代次数或所述语义匹配网络总损失满足要求的情况下,完成对语义匹配网络的训练。
[0146]
例如,设定的迭代次数为5次,则基于所获取的句子对样本,完成对所述语义匹配
的5轮训练后停止训练,并将该完成训练的语义匹配网络作为预训练的语义匹配网络,该预训练的语义匹配网络用于对输入的待匹配句子对进行特征提取和语义匹配概率计算。
[0147]
在一些实施例中,所述语义特征获取网络可以包括语义提取网络bert;和/或所述句法特征获取网络可以是句法提取网络syntax-bert;和/或所述用词差异特征获取网络可以利用注意力机制增强获取的用词差异特征的内容丰富度。
[0148]
与前述语义匹配方法的实施例相对应,参见图3所示,本技术还提供了语义匹配装置的实施例,所述装置包括:
[0149]
句子对获取模块501,用于获取待进行语义匹配的句子对,所述句子对包括第一句子和第二句子;
[0150]
特征信息获取模块502,用于获取所述句子对的多个维度的特征信息,所述多个维度的特征信息至少包括:语义特征和用词差异特征,所述用词差异特征用于表征所述第一句子和第二句子在字词序列上的区别信息;
[0151]
匹配概率确定模块503,用于根据所述多个维度的特征信息,得到所述句子对的语义匹配概率;
[0152]
匹配结果确定模块504,用于基于所述语义匹配概率,确定所述句子对的语义匹配结果。
[0153]
可选地,所述用词差异特征通过下述方式获取:
[0154]
序列特征获取模块,用于分别获取所述第一句子和所述第二句子的字词序列特征;
[0155]
差异特征确定模块,用于根据两个句子的所述字词序列特征,确定所述句子对的用词差异特征。
[0156]
可选地,所述序列特征获取模块具体用于:
[0157]
输入向量确定模块,用于确定待处理句子对应的输入向量,所述输入向量至少包括字词向量、位置向量,所述字词向量用于表示所述句子的分词特征,所述位置向量用于指示所述句子的分词的句中位置特征,所述待处理句子包括所述第一句子和所述第二句子;
[0158]
向量化矩阵获取模块,用于根据所述待处理句子对应的输入向量,分别获取所述待处理句子的向量化矩阵,所述向量化矩阵是所述输入向量在不同空间上的投影结果矩阵;所述向量化矩阵用于表示所述待处理句子的字词序列特征。
[0159]
可选地,所述向量化矩阵获取模块具体用于:
[0160]
将预设的每个所述权重矩阵参数与所述输入向量的点乘结果作为所述待处理句子的向量化矩阵,所述权重矩阵参数表示不同的投影空间。
[0161]
可选地,所述差异特征确定模块具体用于:
[0162]
根据预设的提取字词差异向量方式和所述待处理句子的向量化矩阵,分别获取第一差异向量和第二差异向量,所述第一差异向量表示第一句子相对于第二句子的字词序列差异特征,所述第二差异向量表示第二句子相对于第一句子的字词序列差异特征;
[0163]
将所述第一差异向量和第二差异向量进行拼接整合,得到所述句子对的用词差异向量,所述用词差异向量用于表示所述用词差异特征。
[0164]
可选地,所述向量化矩阵包括第一矩阵、第二矩阵和第三矩阵,所述第一矩阵和第二矩阵用于确定所述待处理句子的字词向量之间的相关度,第三矩阵用于表示所述待处理
句子的字词向量的内容特征;
[0165]
所述预设的提取字词差异向量方式包括:
[0166]
获取第三句子的目标矩阵乘积与所述第一矩阵的维度的比值,其中,所述目标矩阵乘积是第一矩阵差与第二矩阵差的乘积,所述第一矩阵差是第三句子与第四句子的第一矩阵的差,所述第二矩阵差是第三句子与第四句子的第二矩阵的差,所述第三句子和第四句子属于一个句子对;
[0167]
确定所述比值经激活函数处理输出的值为目标权重值;
[0168]
获取所述目标权重值与第三句子的第三矩阵的乘积,将所述乘积确定为所述第三句子相对于所述第四句子的差异向量。
[0169]
可选地,所述多个维度的特征信息还包括所述句子对的句法特征;所述匹配概率确定模块具体用于:
[0170]
将所述语义特征、句法特征和用词差异特征进行整合,得到整合的句子对特征;
[0171]
根据整合的句子对特征进行二分类处理,得到所述句子对的语义匹配概率,所述二分类的分类类型包括指示所述句子对匹配的类型、以及指示所述句子对不匹配的类型。
[0172]
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0173]
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本技术方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0174]
本技术实施例还提供了一种电子设备,该电子设备的结构示意图如图4所示,该电子设备600包括至少一个处理器601、存储器602和总线603,至少一个处理器601均与存储器602电连接;存储器602被配置用于存储有至少一个计算机可执行指令,处理器601被配置用于执行该至少一个计算机可执行指令,从而执行如本技术中任意一个实施例或任意一种可选实施方式提供的任意一种语义匹配方法的步骤。
[0175]
进一步,处理器601可以是fpga(field-programmable gate array,现场可编程门阵列)或者其它具有逻辑处理能力的器件,如mcu(microcontroller unit,微控制单元)、cpu(central process unit,中央处理器)。
[0176]
在本技术实施例中,通过获取待匹配句子对的多个维度的特征信息,至少结合句子对的语义特征和句子字词序列的差异特征进行语义匹配,利用语义向量识别句子的基础语义信息,基于用词差异特征识别句子的字词上的差异,提高了语义匹配的精准度。
[0177]
本技术实施例还提供了另一种可读存储介质,存储有计算机程序,该计算机程序用于被处理器执行时实现本技术中任意一个实施例或任意一种可选实施方式提供的任意一种语义匹配方法的步骤。
[0178]
本技术实施例提供的可读存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、cd-rom、和磁光盘)、rom(read-only memory,只读存储器)、ram(random access memory,随即存储器)、eprom(erasable programmable read-only memory,可擦写可编程
只读存储器)、eeprom(electrically erasable programmable read-only memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读存储介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
[0179]
在本技术实施例中,通过获取待匹配句子对的多个维度的特征信息,至少结合句子对的语义特征和句子字词序列的差异特征进行语义匹配,利用语义向量识别句子的基础语义信息,基于用词差异特征识别句子的字词上的差异,提高了语义匹配的精准度。
[0180]
由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。
[0181]
虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。
[0182]
以上所述仅为本技术的较佳实施例而已,并不用以限制本技术,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术保护的范围之内。
技术特征:
1.一种语义匹配方法,其特征在于,所述方法包括:获取待进行语义匹配的句子对,所述句子对包括第一句子和第二句子;获取所述句子对的多个维度的特征信息,所述多个维度的特征信息至少包括:语义特征和用词差异特征,所述用词差异特征用于表征所述第一句子和第二句子在字词序列上的区别信息;根据所述多个维度的特征信息,得到所述句子对的语义匹配概率;基于所述语义匹配概率,确定所述句子对的语义匹配结果。2.根据权利要求1所述的方法,其特征在于,所述用词差异特征通过下述方式获取:分别获取所述第一句子和所述第二句子的字词序列特征;根据两个句子的所述字词序列特征,确定所述句子对的用词差异特征。3.根据权利要求2所述的方法,其特征在于,所述分别获取所述第一句子和所述第二句子的字词序列特征,包括:确定待处理句子对应的输入向量,所述输入向量至少包括字词向量、位置向量,所述字词向量用于表示所述句子的分词特征,所述位置向量用于指示所述句子的分词的句中位置特征,所述待处理句子包括所述第一句子和所述第二句子;根据所述待处理句子对应的输入向量,分别获取所述待处理句子的向量化矩阵,所述向量化矩阵是所述输入向量在不同空间上的投影结果矩阵;所述向量化矩阵用于表示所述待处理句子的字词序列特征。4.根据权利要求3所述的方法,其特征在于,所述根据所述待处理句子对应的输入向量,分别获取所述待处理句子的向量化矩阵,包括:将预设的每个权重矩阵参数与所述输入向量的点乘结果作为所述待处理句子的向量化矩阵,所述权重矩阵参数表示不同的投影空间。5.根据权利要求3所述的方法,其特征在于,所述根据两个句子的所述字词序列特征,确定所述句子对的用词差异特征,包括:根据预设的提取字词差异向量方式和所述待处理句子的向量化矩阵,分别获取第一差异向量和第二差异向量,所述第一差异向量表示第一句子相对于第二句子的字词序列差异特征,所述第二差异向量表示第二句子相对于第一句子的字词序列差异特征;将所述第一差异向量和第二差异向量进行拼接整合,得到所述句子对的用词差异向量,所述用词差异向量用于表示所述用词差异特征。6.根据权利要求5所述的方法,其特征在于,所述向量化矩阵包括第一矩阵、第二矩阵和第三矩阵,所述第一矩阵和第二矩阵用于确定所述待处理句子的字词向量之间的相关度,第三矩阵用于表示所述待处理句子的字词向量的内容特征;所述预设的提取字词差异向量方式包括:获取第三句子的目标矩阵乘积与所述第一矩阵的维度的比值,其中,所述目标矩阵乘积是第一矩阵差与第二矩阵差的乘积,所述第一矩阵差是第三句子与第四句子的第一矩阵的差,所述第二矩阵差是第三句子与第四句子的第二矩阵的差,所述第三句子和第四句子属于一个句子对;确定所述比值经激活函数处理输出的值为目标权重值;获取所述目标权重值与第三句子的第三矩阵的乘积,将所述乘积确定为所述第三句子
相对于所述第四句子的差异向量。7.根据权利要求1所述的方法,其特征在于,所述多个维度的特征信息还包括所述句子对的句法特征;所述根据所述多个维度的特征信息,得到所述句子对的语义匹配概率,包括:将所述语义特征、句法特征和用词差异特征进行整合,得到整合的句子对特征;根据整合的句子对特征进行二分类处理,得到所述句子对的语义匹配概率,所述二分类的分类类型包括指示所述句子对匹配的类型、以及指示所述句子对不匹配的类型。8.一种语义匹配装置,其特征在于,所述装置包括:句子对获取模块,用于获取待进行语义匹配的句子对,所述句子对包括第一句子和第二句子;特征信息获取模块,用于获取所述句子对的多个维度的特征信息,所述多个维度的特征信息至少包括:语义特征和用词差异特征,所述用词差异特征用于表征所述第一句子和第二句子在字词序列上的区别信息;匹配概率确定模块,用于根据所述多个维度的特征信息,得到所述句子对的语义匹配概率;匹配结果确定模块,用于基于所述语义匹配概率,确定所述句子对的语义匹配结果。9.一种电子设备,其特征在于,包括:存储器、处理器;所述存储器,用于存储计算机程序;所述处理器,用于调用所述计算机程序以实现如权利要求1-7任一项所述的句子对语义匹配方法。10.一种可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-7任一项所述的句子对语义匹配方法。
技术总结
本申请提供一种语义匹配方法、装置、设备及可读存储介质,所述方法包括获取待进行语义匹配的句子对,所述句子对包括第一句子和第二句子;获取所述句子对的多个维度的特征信息,所述多个维度的特征信息至少包括:语义特征和用词差异特征,所述用词差异特征用于表征所述第一句子和第二句子在字词序列上的区别信息;根据所述多个维度的特征信息,得到所述句子对的语义匹配概率;基于所述语义匹配概率,确定所述句子对的语义匹配结果。应用本申请提供的技术方案,利用语义向量识别句子的基础语义信息,基于用词差异特征识别句子的字词上的差异,提高了语义匹配的精准度。提高了语义匹配的精准度。提高了语义匹配的精准度。
技术研发人员:吴钟强 车皓阳 姚雷
受保护的技术使用者:浙江吉利控股集团有限公司
技术研发日:2023.07.18
技术公布日:2023/10/15
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
