CN111666770B - 一种语义匹配方法及装置 - Google Patents
一种语义匹配方法及装置 Download PDFInfo
- Publication number
- CN111666770B CN111666770B CN202010489729.5A CN202010489729A CN111666770B CN 111666770 B CN111666770 B CN 111666770B CN 202010489729 A CN202010489729 A CN 202010489729A CN 111666770 B CN111666770 B CN 111666770B
- Authority
- CN
- China
- Prior art keywords
- semantic
- matched
- probability distribution
- sentence
- answer
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3346—Query execution using probabilistic model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及语义匹配技术领域,尤其涉及一种语义匹配方法及装置,获取待匹配问题语句;基于已训练的第一语义匹配模型,以待匹配问题语句和各个目标答案语句为输入参数,分别确定待匹配问题语句的第一待匹配问题语义概率分布,以及各个目标答案语句的答案语义概率分布;根据确定出的第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定待匹配问题语句与各个目标答案语句之间的第一语义相似度;根据确定出的各个第一语义相似度,从各个目标答案语句中确定出与待匹配问题语句匹配的目标答案语句,这样,通过概率分布来表示待匹配问题语句和目标答案语句的语义,进而实现语义匹配,能够提高语义匹配的准确性。
Description
技术领域
本申请涉及语义匹配技术领域,尤其涉及一种语义匹配方法及装置。
背景技术
目前,语义匹配的应用非常广泛,例如,可以应用于智能文字客服、智能语音客服以及智能保险顾问等领域中,当用户输入问题语句之后,智能客服能够根据问题语句进行语义匹配,并输出相应的答案语句,因此,如何能够实现语义匹配,成为了一个亟待解决的问题。
现有技术中,通常可以通过将问题语句和答案语句通过特征向量表示,并通过特征向量进行语义匹配,但是,由于特征向量是确定性的一种矢量,而实际中用户的问题语句的语义通常是非确定性的,且有一定的概率性,因此,通过确定的特征向量来表示问题语句和答案语句的语义,会降低语义匹配的准确性。
发明内容
本申请实施例提供一种语义匹配方法及装置,以提高语义匹配的准确性。
本申请实施例提供的具体技术方案如下:
一种语义匹配方法,包括:
获取待匹配问题语句;
基于已训练的第一语义匹配模型,以所述待匹配问题语句和各个目标答案语句为输入参数,分别确定所述待匹配问题语句的第一待匹配问题语义概率分布,以及所述各个目标答案语句的答案语义概率分布,其中,预先存储有多个目标问题语句和目标答案语句对;
根据确定出的所述第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定所述待匹配问题语句与所述各个目标答案语句之间的第一语义相似度;
根据确定出的各个第一语义相似度,从所述各个目标答案语句中确定出与所述待匹配问题语句匹配的目标答案语句。
可选的,根据确定出的所述第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定所述待匹配问题语句与所述各个目标答案语句之间的第一语义相似度,具体包括:
分别计算所述第一待匹配问题语义概率分布和确定出的各个答案语义概率分布之间的交叉熵,获得所述第一待匹配问题语义概率分布与所述各个答案语义概率分布之间的第一分布距离;
分别将获得的各个第一分布距离,作为对应的所述待匹配问题语句与目标答案语句之间的第一语义相似度。
可选的,获取待匹配问题语句之后,进一步包括:
对所述待匹配问题语句进行关键词提取,获得所述待匹配问题语句的关键词;
根据所述关键词,筛选出前预设数个、与所述待匹配问题语句相似度最高的目标问题语句;
根据筛选出的各个目标问题语句,分别确定出与筛选出的各个目标问题语句对应的目标答案语句。
可选的,进一步包括:
基于已训练的第二语义匹配模型,以所述待匹配问题语句和所述各个目标问题语句为输入参数,分别确定所述待匹配问题语句的第二待匹配问题语义概率分布,以及所述各个目标问题语句的问题语义概率分布;
分别计算所述第二待匹配问题语义概率分布和确定出的各个问题语义概率分布之间的内积,获得所述第二待匹配问题语义概率分布与所述各个问题语义概率分布之间的第二分布距离;
分别将获得的各个第二分布距离,作为对应的所述待匹配问题语句与目标问题语句之间的第二语义相似度。
可选的,根据确定出的各个第一语义相似度,从所述各个目标答案语句中确定出与所述待匹配问题语句匹配的目标答案语句,具体包括:
分别将确定出的各个第一语义相似度与对应的第二语义相似度进行加权平均,确定出各个平均语义相似度;
确定出平均语义相似度最高对应的目标答案语句,并作为所述待匹配问题语句匹配到的答案语句。
可选的,所述第一语义匹配模型的训练方式为:
获取第一正例样本集,其中,所述正例样本集中包括多个问题语句样本和答案语句样本对;
分别将所述各个问题语句样本与各个对应非配对的答案语句样本进行组合,获得第一负例样本集;
将所述第一正例样本集和所述第一负例样本集输入到所述第一语义匹配模型中进行训练,分别计算所述第一正例样本集中的问题语句样本的概率分布与对应的答案语句样本的概率分布之间的交叉熵,获得所述第一正例样本集中的问题语句样本与对应的答案语句样本之间的语义相似度,并分别计算所述第一负例样本集中的问题语句样本的概率分布与对应的非匹配答案语句样本的概率分布之间的交叉熵,获得所述第一负例样本集中的问题语句样本与对应的非匹配答案语句样本之间的语义相似度,直至所述第一语义匹配模型的目标函数收敛,获得训练完成的第一语义匹配模型,
其中,所述目标函数为所述第一正例样本集和所述第一负例样本集之间的损失函数最小化,所述第一语义匹配模型用于使所述第一正例样本集中问题语句样本的概率分布和答案语句样本的概率分布之间的分布距离最小,使所述第一负例样本集中问题语句样本的概率分布和答案语句样本的概率分布之间的分布距离最大。
可选的,所述第二语义匹配模型的训练方式为:
获取第二正例样本集,其中,所述第二正例样本集中包括多个问题语句样本对,所述问题语句样本对中的问题语句样本的语义相同;
分别将所述各个问题语句样本与各个对应非配对的问题语句样本进行组合,获得第二负例样本集;
将所述第二正例样本集和所述第二负例样本集输入到所述第二语义匹配模型中进行训练,分别计算所述第二正例样本集中的问题语句样本对中的问题语句样本的概率分布之间的内积,获得所述第二正例样本集的问题语句样本对中的问题语句样本之间的语义相似度,并分别计算所述第二负例样本集中的问题语句样本对中的问题语句样本的概率分布之间的内积,获得所述第二负例样本集的问题语句样本对中的问题语句样本之间的语义相似度,直至所述第二语义匹配模型的目标函数收敛,获得训练完成的第二语义匹配模型,
其中,所述目标函数为所述第二正例样本集和所述第二负例样本集之间的损失函数最小化,所述第二语义匹配模型用于使所述第二正例样本集的问题语句样本对中的问题语句样本的概率分布之间的分布距离最小,使第二所述负例样本集的问题语句样本对中的问题语句样本的概率分布之间的分布距离最大。
一种语义匹配装置,包括:
第一获取模块,用于获取待匹配问题语句;
第一语义匹配模块,用于基于已训练的第一语义匹配模型,以所述待匹配问题语句和各个目标答案语句为输入参数,分别确定所述待匹配问题语句的第一待匹配问题语义概率分布,以及所述各个目标答案语句的答案语义概率分布,其中,预先存储有多个目标问题语句和目标答案语句对;
根据确定出的所述第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定所述待匹配问题语句与所述各个目标答案语句之间的第一语义相似度;
根据确定出的各个第一语义相似度,从所述各个目标答案语句中确定出与所述待匹配问题语句匹配的目标答案语句。
可选的,根据确定出的所述第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定所述待匹配问题语句与所述各个目标答案语句之间的第一语义相似度时,语义匹配模块具体用于:
分别计算所述第一待匹配问题语义概率分布和确定出的各个答案语义概率分布之间的交叉熵,获得所述第一待匹配问题语义概率分布与所述各个答案语义概率分布之间的第一分布距离;
分别将获得的各个第一分布距离,作为对应的所述待匹配问题语句与目标答案语句之间的第一语义相似度。
可选的,获取待匹配问题语句之后,进一步包括:
提取模块,用于对所述待匹配问题语句进行关键词提取,获得所述待匹配问题语句的关键词;
筛选模块,用于根据所述关键词,筛选出前预设数个、与所述待匹配问题语句相似度最高的目标问题语句;
第一确定模块,用于根据筛选出的各个目标问题语句,分别确定出与筛选出的各个目标问题语句对应的目标答案语句。
可选的,进一步包括:
第二语义匹配模块,用于基于已训练的第二语义匹配模型,以所述待匹配问题语句和所述各个目标问题语句为输入参数,分别确定所述待匹配问题语句的第二待匹配问题语义概率分布,以及所述各个目标问题语句的问题语义概率分布;
分别计算所述第二待匹配问题语义概率分布和确定出的各个问题语义概率分布之间的内积,获得所述第二待匹配问题语义概率分布与所述各个问题语义概率分布之间的第二分布距离;
分别将获得的各个第二分布距离,作为对应的所述待匹配问题语句与目标问题语句之间的第二语义相似度。
可选的,根据确定出的各个第一语义相似度,从所述各个目标答案语句中确定出与所述待匹配问题语句匹配的目标答案语句时,第一语义匹配模块具体用于:
分别将确定出的各个第一语义相似度与对应的第二语义相似度进行加权平均,确定出各个平均语义相似度;
确定出平均语义相似度最高对应的目标答案语句,并作为所述待匹配问题语句匹配到的答案语句。
可选的,针对所述第一语义匹配模块的训练方式,进一步包括:
第二获取模块,用于获取第一正例样本集,其中,所述正例样本集中包括多个问题语句样本和答案语句样本对;
第一组合模块,用于分别将所述各个问题语句样本与各个对应非配对的答案语句样本进行组合,获得第一负例样本集;
第一训练模块,用于将所述第一正例样本集和所述第一负例样本集输入到所述第一语义匹配模型中进行训练,分别计算所述第一正例样本集中的问题语句样本的概率分布与对应的答案语句样本的概率分布之间的交叉熵,获得所述第一正例样本集中的问题语句样本与对应的答案语句样本之间的语义相似度,并分别计算所述第一负例样本集中的问题语句样本的概率分布与对应的非匹配答案语句样本的概率分布之间的交叉熵,获得所述第一负例样本集中的问题语句样本与对应的非匹配答案语句样本之间的语义相似度,直至所述第一语义匹配模型的目标函数收敛,获得训练完成的第一语义匹配模型,
其中,所述目标函数为所述第一正例样本集和所述第一负例样本集之间的损失函数最小化,所述第一语义匹配模型用于使所述第一正例样本集中问题语句样本的概率分布和答案语句样本的概率分布之间的分布距离最小,使所述第一负例样本集中问题语句样本的概率分布和答案语句样本的概率分布之间的分布距离最大。
可选的,针对所述第二语义匹配模块的训练方式,进一步包括:
第三获取模块,用于获取第二正例样本集,其中,所述第二正例样本集中包括多个问题语句样本对,所述问题语句样本对中的问题语句样本的语义相同;
第二组合模块,用于分别将所述各个问题语句样本与各个对应非配对的问题语句样本进行组合,获得第二负例样本集;
第二训练模块,用于将所述第二正例样本集和所述第二负例样本集输入到所述第二语义匹配模型中进行训练,分别计算所述第二正例样本集中的问题语句样本对中的问题语句样本的概率分布之间的内积,获得所述第二正例样本集的问题语句样本对中的问题语句样本之间的语义相似度,并分别计算所述第二负例样本集中的问题语句样本对中的问题语句样本的概率分布之间的内积,获得所述第二负例样本集的问题语句样本对中的问题语句样本之间的语义相似度,直至所述第二语义匹配模型的目标函数收敛,获得训练完成的第二语义匹配模型,
其中,所述目标函数为所述第二正例样本集和所述第二负例样本集之间的损失函数最小化,所述第二语义匹配模型用于使所述第二正例样本集的问题语句样本对中的问题语句样本的概率分布之间的分布距离最小,使所述第二负例样本集的问题语句样本对中的问题语句样本的概率分布之间的分布距离最大。
一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述语义匹配方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述语义匹配方法的步骤。
本申请实施例中,获取待匹配问题语句,基于已训练的第一语义匹配模型,以待匹配问题语句和各个目标答案语句为输入参数,分别确定待匹配问题语句的第一待匹配问题语义概率分布,以及各个目标答案语句为输入参数,分别确定待匹配问题语句的第一待匹配问题语义概率分布,以及各个目标答案语句的答案语义概率分布,根据确定出的第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定待匹配语句与各个目标答案语句之间的第一语义相似度,根据确定出的各个第一语义相似度,从各个目标答案语句中确定出与待匹配问题语句匹配的目标答案语句,这样,将待匹配问题语句和目标答案语句的语义通过概率分布表示,能够更加准确表示语句的语义,并通过已训练的第一语义匹配模型,计算待匹配语句与各个目标答案语句之间的第一语义相似度,进而确定出与待匹配语句匹配的目标答案语句,能够提高语义匹配的准确度。
附图说明
图1为本申请实施例中一种语义匹配方法的流程图;
图2为本申请实施例中另一种语义匹配方法的流程图;
图3为本申请实施例中训练第一语义匹配模型的流程图;
图4为本申请实施例中训练第二语义匹配模型的流程图;
图5为本申请实施例中语义匹配装置的结构示意图;
图6为本申请实施例中电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,语义匹配的应用非常广泛,例如,可以应用于智能文字客服、智能语音客服以及智能保险顾问等领域中,语义匹配是智能问答系统的核心模块,当用户输入问题语句之后,智能客服能够根据输入的问题语句进行语义匹配,并输出相应的答案语句,因此,如何能够实现语义匹配,成为了一个亟待解决的问题。
现有技术中,通常是对问题语句和答案语句进行编码,并基于问题语句和答案语句的语义在高维空间中的特征矢量表示,进而评估问题语句和答案语句之间的匹配度,但是,在实际应用场景中,用户输入的问题语句的语义往往比较模糊,并非是确定性的,而是有一定的概率性,依赖于上下文的语义,因此,通过确定的特征向量来表示问题语句和答案语句的语义,无法描述语义的不确定性,这样,会降低语义匹配的准确性。
本申请实施例中,获取待匹配问题语句,基于已训练的第一语义匹配模型,以待匹配问题语句和各个目标答案语句为输入参数,分别确定待匹配问题语句的第一待匹配问题语义概率分布,以及各个目标答案语句的答案语义概率分布,根据确定出的第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定待匹配问题语句与各个目标答案语句之间的第一语义相似度,根据确定出的各个第一语义相似度,从各个目标答案语句中确定出与待匹配问题语句匹配的目标答案语句,这样,通过概率分布来表示待匹配问题语句和目标答案语句的语义,能够更加准确地描述语句的语义,并能够表征语义的不确定性,提高了语义匹配的准确性。
基于上述实施例,参阅图1所示,为本申请实施例中一种语义匹配方法的流程图,具体包括:
步骤100:获取待匹配问题语句。
本申请实施例中,在获取待匹配问题语句时,可以根据不同的应用场景进而调整获取待匹配问题语句的方式,例如,当本申请实施例中的语义匹配方法应用于智能语音客服时,首先获取用户的待匹配问题语音,然后通过语音转换,将待匹配问题语音转换为待匹配问题语句。
又例如,当本申请实施例中的语义匹配方法应用于智能文字客服时,则直接获取到用户的待匹配问题语句,进而根据待匹配问题语句执行后续的操作步骤,本申请实施例中对获取待匹配问题语句的方式并不进行限制。
进一步地,本申请实施例中,为了减少语义匹配模型的计算量,提高性能,因此,在获取待匹配问题语句之后,通过预设方式从知识库中检索到与待匹配问题语句的语义比较相近的目标问题语句和对应的目标答案语句,则获取待匹配问题语句之后,进一步包括:
S1:对待匹配问题语句进行关键词提取,获得待匹配问题语句的关键词。
本申请实施例中,提取到的关键词例如可以为待匹配问题语句中的每一个词,还可以是待匹配问题语句中的较为关键的词语,例如,假设待匹配问题语句为“请问如何填写核保表格”,由于该待匹配问题语句中的“请问”“如何”为疑问词,“填写”为动词,并不影响句子的整体语义,因此,可以将不影响待匹配问题语句的语义的疑问词和动词去掉,提取到的关键词为“核保”和“表格”,进而根据这两个关键词进行检索。
S2:根据关键词,筛选出前预设数个、与待匹配问题语句相似度最高的目标问题语句。
本申请实施例中,对于确定出的待匹配问题语句的关键词,例如可以通过弹性检索(Elasticsearch)在知识库中,筛选出与待匹配问题语句的语义比较接近的预设数个目标问题语句Sq,作为候选集。
其中,知识库中存储有多个目标问题语句和对应的目标答案语句对。
S3:根据筛选出的各个目标问题语句,分别确定出与筛选出的各个目标问题语句对应的目标答案语句。
本申请实施例中,在筛选出预设数个目标问题语句之后,根据筛选出的各个目标问题语句,分别确定出与各个目标问题语句对应的目标答案语句,并将确定出的各个目标问题语句和对应的目标答案语句对作为候选集{(Sq,Sa)}。
其中,Sq为目标问题语句,Sa为目标答案语句。
这样,将候选集中的目标问题语句和目标答案语句对输入到已训练的第一语义匹配模型中,在进行语义匹配时,只需要计算候选集中目标问题语句与待匹配问题语句,以及目标答案语句与待匹配问题语句之间的语义相似度,无需对知识库中的所有目标问题语句和目标答案语句都计算与待匹配问题之间的语义相似度,能够减少语义匹配模型的计算量,提高性能。
步骤110:基于已训练的第一语义匹配模型,以待匹配问题语句和各个目标答案语句为输入参数,分别确定待匹配问题语句的第一待匹配问题语义概率分布,以及各个目标答案语句的答案语义概率分布。
其中,预先存储有多个目标问题语句和目标答案语句对。
具体地,在获得待匹配问题语句之后,基于已训练的第一语义匹配模型,以待匹配问题语句为输入参数,确定待匹配问题语句的第一待匹配语义概率分布,并以各个目标答案语句为输入参数,分别确定各个目标答案语句的答案语义概率分布。
本申请实施例中,可以通过高斯分布N(x;μ,Σ)来表示待匹配问题语句,例如,可将待匹配问题语句表示为:N(x;μc,Σc)。
其中,x表示待匹配问题语句,μc表示待匹配问题语句的均值,Σc表示待匹配问题语句的协方差矩阵。
步骤120:根据确定出的第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定待匹配问题语句与各个目标答案语句之间的第一语义相似度。
具体地,在确定出待匹配问题语句的第一待匹配问题语义概率分布和各个目标答案语句的答案语义概率分布之后,根据确定出的第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定待匹配问题语句与各个预设答案语句之间的第一语义相似度。
本申请实施例中,分别确定待匹配问题语句与各个目标答案语句之间的第一语义相似度时,具体包括:
S1:分别计算第一待匹配问题语义概率分布和确定出的各个答案语义概率分布之间的交叉熵,获得第一待匹配问题语义概率分布与各个答案语义概率分布之间的第一分布距离。
本申请实施例中,由于待匹配问题语句与目标答案语句之间为非对称语义关系,因此在确定出待匹配问题语句的第一待匹配问题语义概率分布,以及各个目标答案语句的答案语义概率分布之后,根据确定出的第一待匹配问题概率分布,以及确定出的各个答案语义概率分布,通过计算二者之间的交叉熵,分别确定第一待匹配问题语义概率分布与各个答案语义概率分布之间的第一分布距离。
其中,第一分布距离表征的是待匹配问题语句与目标答案语句之间的语义相差程度,语义相差程度越小,则第一分布距离越小,语义相差程度越大,则第一分布距离越大。
本申请实施例中,由于待匹配问题语句和目标答案语句之间为非对称语义关系,因此,可以分别通过计算第一待匹配问题语义概率分布与答案语义概率分布之间的交叉熵,来确定第一待匹配问题语义概率分布与答案语义概率分布之间的第一分布距离。
例如,第一分布距离可以表示为:
其中,Sq表示待匹配问题语句,Sa表示目标答案语句,Nq表示待匹配问题语句的第一待匹配问题语义概率分布,Na表示目标答案语句的答案语义概率分布,d为第一待匹配问题语义概率分布和答案语义概率分布表示的维度,Rd为语义概率分布表示的取值空间,μq表示待匹配问题语句的均值,Σq表示待匹配问题语句的协方差矩阵,μa表示目标答案语句的均值,Σa表示目标答案语句的协方差矩阵,T表示转置。
S2:分别将获得的各个第一分布距离,作为对应的待匹配问题语句与目标答案语句之间的第一语义相似度。
本申请实施例中,例如,在获得各个第一分布距离之后,分别将获得的各个第一分布距离,作为对应的待匹配问题语句与目标答案语句之间的语义相似度。
又例如,在获得各个第一分布距离之后,还可以分别根据第一分布距离与语义相似度之间的关联关系,确定待匹配问题语句与目标答案语句之间的语义相似度。
进一步地,本申请实施例中,为了提高语义匹配的准确性,还可以通过第二语义匹配模型来确定待匹配问题语句与目标问题语句之间的第二语义相似度,然后结合第一语义相似度和第二语义相似度,进而确定待匹配问题匹配到的答案语句,具体包括:
S1:基于已训练的第二语义匹配模型,以待匹配问题语句和各个目标问题语句为输入参数,分别确定待匹配问题语句的第二待匹配问题语义概率分布,以及各个目标问题语句的问题语义概率分布。
本申请实施例中,将待匹配问题语句输入到已训练的第二语义匹配模型中,确定待匹配问题语句的第二待匹配问题语义概率分布,并分别将目标问题语句输入到已训练的第二语义匹配模型中,确定各个目标语句的问题语义概率分布。
其中,在确定待匹配问题语句的第二待匹配问题语义概率分布时,可以与第一语义匹配模型确定第一待匹配问题语义概率分布的方式相同,也可以不同,本申请实施例中对此并不进行限制。
S2:分别计算第二待匹配问题语义概率分布和确定出的各个问题语义概率分布之间的内积,获得第二待匹配问题语义概率分布与各个问题语义概率分布之间的第二分布距离。
本申请实施例中,在通过第二语义匹配模型获得待匹配问题的第二待匹配问题语义概率分布和各个目标问题语句的问题语义概率分布之后,分别计算第二待匹配问题语义概率分布和各个问题语义概率分布之间的内积,进而获得第二待匹配问题语义概率分布与各个问题语义概率分布之间的第二分布距离。
由于待匹配问题语句与目标问题语句都是问题语句,因此,待匹配问题语句与目标问题语句之间的分布距离应该是对称关系的,所以,基于内积的思想设计了第二语义匹配模型,具体可以通过计算第二待匹配问题语义概率分布和各个问题语义概率分布之间的内积,进而确定第二分布距离。
在计算第二分布距离,即P(Sc,Sq)时,由于P(Sc,Sq)表示的是待匹配问题语句与目标问题语句之间的分布距离,因此,并不适合采用待匹配问题语句与目标答案语句之间的分布距离的公式计算,这是因为待匹配问题语句与目标答案语句之间的分布距离公式是基于交叉熵的,是非对称的,也就是说Q(Sc,Sa)≠Q(Sa,Sc),这样的设计对于问题语句与答案语句的设计比较适合,因为二者本质上不是对等关系,但是在计算待匹配问题语句Sc和目标问题语句Sq之间的分布距离的时候,这样设计就不合适了,因为二者都是问题语句,二者之间的分布距离应该是对称关系,因此,在本申请实施例中基于内积的思想重新设计了对称的分布距离计算公式P(Sc,Sq),用于计算待匹配问题语句和目标问题语句之间的第二分布距离,具体可以表示为:
S3:分别将获得的各个第二分布距离,作为对应的待匹配问题语句与目标问题语句之间的第二语义相似度。
本申请实施例中,在获得各个第二分布距离之后,根据各个第二分布距离,确定待匹配问题语句与目标问题语句之间的第二语义相似度,例如,分别将获得的各个第二分布距离,作为对应的待匹配问题语句与目标问题语句之间的第二语义相似度。
又例如,在获得各个第二分布距离之后,还可以分别根据第二分布距离与语义相似度之间的关联关系,确定待匹配问题语句与目标问题语句之间的第二语义相似度。
进一步地,在获得待匹配问题语句与目标问题语句之间的第二语义相似度之后,则根据分别确定出的各个第一语义相似度和对应的第二语义相似度,从各个目标答案语句中确定出与待匹配问题语句匹配的目标答案语句,具体包括:
S1:分别将确定出的各个第一语义相似度与对应的第二语义相似度进行加权平均,确定出各个平均语义相似度。
本申请实施例中,分别将确定出的各个第一语义相似度与对应的第二语义相似度进行平均加权,确定出各个平均语义相似度,例如,可以表示为:
E(Sc,(Sq,Sa))=λ1P(Sc,Sq)+λ2Q(Sc,Sa)
其中,λ1表示第一语义相似度的权重,λ2表示第二语义相似度的权重,表示第一待匹配问题语义概率分布与答案语义概率分布之间的第一分布距离,P(Sc,Sq)表示第二待匹配问题语义概率分布与问题语义概率分布之间的第二分布距离。
进一步地,还可以将确定出的各个第一语义相似度与对应的第二语义相似度相加,确定出各个语义相似度之和,并将语义相似度之和最高对应的目标答案语句,作为待匹配问题匹配到的答案语句。
S2:确定出平均语义相似度最高对应的目标答案语句,并作为待匹配问题语句匹配到的答案语句。
本申请实施例中,获取待匹配问题语句,基于已训练的第一语义匹配模型,以待匹配问题语句为输入参数,分别确定待匹配问题语句的第一待匹配问题语义概率分布,以及各个目标答案语句的答案语义概率分布,根据确定出的第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定待匹配问题语句与各个目标答案语句之间的第一语义相似度,并根据确定出的各个第一语义相似度,从各个目标答案语句中确定出与待匹配问题语句匹配的目标答案语句,这样,通过概率分布表示待匹配问题语句和目标答案语句的语义,能够提高语义匹配的准确性。
基于上述实施例,参阅图2所示,为本申请实施例中另一种语义匹配方法的流程图,具体包括:
步骤200:获取待匹配问题语句。
步骤201:对待匹配问题语句进行关键词提取,获得待匹配问题语句的关键词。
步骤202:根据关键词,筛选出前预设数个、与待匹配问题语句相似度最高的目标问题语句。
步骤203:根据筛选出的各个目标问题语句,分别确定出与筛选出的各个目标问题语句对应的目标答案语句。
步骤204:基于已训练的第一语义匹配模型,以待匹配问题语句和各个目标答案语句为输入参数,分别确定待匹配问题语句的第一待匹配问题语义概率分布,以及各个目标答案语句的答案语义概率分布。
其中,预先存储有多个目标问题语句和目标答案语句对。
步骤205:分别计算第一待匹配问题语义概率分布和确定出的各个答案语义概率分布之间的交叉熵,获得第一待匹配问题语义概率分布与各个答案语义概率分布之间的第一分布距离。
步骤206:分别将获得的各个第一分布距离,作为对应的待匹配问题语句与目标答案语句之间的第一语义相似度。
步骤207:基于已训练的第二语义匹配模型,以待匹配问题语句和各个目标问题语句为输入参数,分别确定待匹配问题语句的第二待匹配问题语义概率分布,以及各个目标问题语句的问题语义概率分布。
步骤208:分别计算第二待匹配问题语义概率分布和确定出的各个问题语义概率分布之间的内积,获得第二待匹配问题语义概率分布与各个问题语义概率分布之间的第二分布距离。
步骤209:分别将获得的各个第二分布距离,作为对应的待匹配问题语句与目标问题语句之间的第二语义相似度。
步骤210:分别将确定出的各个第一语义相似度与对应的第二语义相似度进行加权平均,确定出各个平均语义相似度。
步骤211:确定出平均语义相似度最高对应的目标答案语句,并作为待匹配问题语句匹配到的答案语句。
本申请实施例中,在获取到待匹配问题语句、各个目标问题语句和目标答案语句之后,通过第一语义匹配模型分别确定待匹配问题语句与各个目标答案语句之间的第一语义相似度,并通过第二语义匹配模型分别确定待匹配问题语句与各个目标问题语句之间的第二语义相似度,进而根据确定出的各个第一语义相似度与对应的第二语义相似度,确定出平均语义相似度最高对应的目标答案语句,作为待匹配问题语句匹配到的答案语句,这样,通过概率分布来表示待匹配问题、目标问题语句和目标答案语句的语义,并通过第一语义匹配模型和第二语义匹配模型进行语义匹配,能够解决语义匹配过程中无法表征语义不确定性的问题,从而改善了在生产环境下语义中包含较多噪声和不确定性时语义匹配的性能和准确性,并提升了智能语音交互机器人等相关系统的核心算法能力。
基于上述实施例,参阅图3所示,为本申请实施例中训练第一语义匹配模型的流程图,具体包括:
步骤300:获取第一正例样本集。
其中,第一正例样本集中包括多个问题语句样本和答案语句样本对。
步骤310:分别将各个问题语句样本与各个对应非配对的答案语句样本进行组合,获得第一负例样本集。
本申请实施例中,本申请实施例中,在训练第一语义匹配模型时,首先构建两个训练集,分别为第一正例样本集和第一负例样本集。
第一正例样本集中的问题语句样本和对应的答案语句样本的语义是相同的,第一正例样本集可以表示为Γ={(Sq,Sa)}。
其中,Sq和Sa分别是来自真实客服对话记录的问题语句样本与答案语句样本,而且Sa是Sq的答案。
第一负例样本集中的问题语句样本和对应的答案语句样本的语义是不同的,第一负例样本集可以表示为Γ={(S'q,S'a)}。
其中,S'q和S'a分别来自于真实的客服对话记录,但是S'a并非S'q的答案,而是随机组合的非匹配的问答语句对。
步骤320:将第一正例样本集和第一负例样本集输入到第一语义匹配模型中进行训练,分别计算第一正例样本集中的问题语句样本的概率分布与对应的答案语句样本的概率分布之间的交叉熵,获得第一正例样本集中的问题语句样本与对应的答案语句样本之间的语义相似度,并分别计算第一负例样本集中的问题语句样本的概率分布与对应的非匹配答案语句样本的概率分布之间的交叉熵,获得第一负例样本集中的问题语句样本与对应的非匹配答案语句样本之间的语义相似度,直至第一语义匹配模型的目标函数收敛,获得训练完成的第一语义匹配模型。
其中,目标函数为第一正例样本集和第一负例样本集之间的损失函数最小化,第一语义匹配模型用于使第一正例样本集中问题语句样本的概率分布和答案语句样本的概率分布之间的分布距离最小,使第一负例样本集中问题语句样本的概率分布和答案语句样本的概率分布之间的分布距离最大。
本申请实施例中,通过分别计算第一正例样本集中的问题语句样本的概率分布与对应的答案语句样本的概率分布之间的交叉熵,获得第一正例样本集中的问题语句样本与对应的答案语句样本之间的分布距离,具体可以表示为:
然后,计算分布距离的梯度,该梯度用于第一语义匹配模型训练时更新模型参数,具体可以表示为:
其中,Sq表示问题语句样本,Sa表示答案语句样本,μq表示问题语句样本的均值,Q(Sq,Sa)为第一正例样本集中的问题语句样本与对应的答案语句样本之间的分布距离,μa为答案语句样本的均值。
其中,Σq为问题语句样本的协方差矩阵,Σa为答案语句样本的协方差矩阵。
在训练时,利用hinge loss对第一语义匹配模型进行训练,得到不同语句的概率分布表示,具体训练用的损失函数如下:
其中,这样设计损失函数的目标是迫使第一语义匹配模型生成语句向量,可以让匹配的问题语句样本和答案语句样本分别对应的概率分布表示之间的分布距离最小,同时可以让并不匹配的问题语句样本和答案语句样本的概率分布表示的分布距离比较大,此外损失函数还对误差有一定的容忍度,用γ表示。
本申请实施例中,通过概率分布表示问题语句样本和答案语句样本的语义,并且,由于问题语句样本和答案语句样本之间是对称语义关系,因此,通过计算问题语句样本和答案语句样本之间的交叉熵,训练第一语义匹配模型,使得匹配的问题语句样本和答案语句样本的之间的分布距离较小,并使得非匹配的问题语句样本和答案语句样本之间的分布距离最大,进而通过已训练的第一语义匹配模型输出匹配的答案语句,能够提高语义匹配的准确性。
基于上述实施例,参阅图4所示,为本申请实施例中训练第二语义匹配模型的流程图,具体包括:
步骤400:获取第二正例样本集。
其中,第二正例样本集中包括多个问题语句样本对,问题语句样本对中的问题语句样本的语义相同。
步骤410:分别将各个问题语句样本与各个对应非配对的问题语句样本进行组合,获得第二负例样本集。
本申请实施例中,本申请实施例中,在训练第二语义匹配模型时,首先构建两个训练集,分别为第二正例样本集和第二负例样本集。
第二正例样本集的问题语句样本对中的每一个问题语句样本语义是相同的,第二正例样本集可以表示为Γ={(Sq,Sc)}。
第二负例样本集中的问题语句样本对中的问题语句样本的语义是不同的,第二负例样本集可以表示为Γ={(S'q,S'c)}。
步骤420:将第二正例样本集和第二负例样本集输入到第二语义匹配模型中进行训练,分别计算第二正例样本集中的问题语句样本对中的问题语句样本的概率分布之间的内积,获得第二正例样本集的问题语句样本对中的问题语句样本之间的语义相似度,并分别计算第二负例样本集中的问题语句样本对中的问题语句样本的概率分布之间的内积,获得第二负例样本集的问题语句样本对中的问题语句样本之间的语义相似度,直至第二语义匹配模型的目标函数收敛,获得训练完成的第二语义匹配模型。
其中,目标函数为第二正例样本集和第二负例样本集之间的损失函数最小化,第二语义匹配模型用于使第二正例样本集的问题语句样本对中的问题语句样本的概率分布之间的分布距离最小,使第二负例样本集的问题语句样本对中的问题语句样本的概率分布之间的分布距离最大。
本申请实施例中,通过分别计算第二正例样本集的问题语句样本对中的问题语句样本的概率分布之间的内积,获得第二正例样本集的问题语句样本对中的问题语句样本之间的分布距离,具体可以表示为:
然后计算相应的梯度:
其中,Δcq=(Σc+Σq)-1(μc-μq)。
本申请实施例中,通过概率分布表示问题语句样本对的问题语句样本的语义,并且,由于问题语句样本对中的问题语句样本之间是对称语义关系,因此,通过计算问题语句样本对的问题语句样本之间的内积,训练第二语义匹配模型,使得语义相同的问题语句样本对中的问题语句样本的之间的分布距离较小,并使得语义不相同的问题语句样本对中的问题语句样本之间的分布距离最大,进而通过已训练的第二语义匹配模型、结合第一语义匹配模型输出匹配的答案语句,能够提高语义匹配的准确性。
基于同一发明构思,本申请实施例中提供了语义匹配装置,该语义匹配装置可以是硬件结构、软件模块、或硬件结构加软件模块。基于上述实施例,参阅图5所示,为本申请实施例中语义匹配装置的结构示意图,具体包括:
第一获取模块500,用于获取待匹配问题语句;
第一语义匹配模块501,用于基于已训练的第一语义匹配模型,以所述待匹配问题语句和各个目标答案语句为输入参数,分别确定所述待匹配问题语句的第一待匹配问题语义概率分布,以及所述各个目标答案语句的答案语义概率分布,其中,预先存储有多个目标问题语句和目标答案语句对;
根据确定出的所述第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定所述待匹配问题语句与所述各个目标答案语句之间的第一语义相似度;
根据确定出的各个第一语义相似度,从所述各个目标答案语句中确定出与所述待匹配问题语句匹配的目标答案语句。
可选的,根据确定出的所述第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定所述待匹配问题语句与所述各个目标答案语句之间的第一语义相似度时,第一语义匹配模块501具体用于:
分别计算所述第一待匹配问题语义概率分布和确定出的各个答案语义概率分布之间的交叉熵,获得所述第一待匹配问题语义概率分布与所述各个答案语义概率分布之间的第一分布距离;
分别将获得的各个第一分布距离,作为对应的所述待匹配问题语句与目标答案语句之间的第一语义相似度。
可选的,获取待匹配问题语句之后,进一步包括:
提取模块502,用于对所述待匹配问题语句进行关键词提取,获得所述待匹配问题语句的关键词;
筛选模块503,用于根据所述关键词,筛选出前预设数个、与所述待匹配问题语句相似度最高的目标问题语句;
第一确定模块504,用于根据筛选出的各个目标问题语句,分别确定出与筛选出的各个目标问题语句对应的目标答案语句。
可选的,进一步包括:
第二语义匹配模块505,用于基于已训练的第二语义匹配模型,以所述待匹配问题语句和所述各个目标问题语句为输入参数,分别确定所述待匹配问题语句的第二待匹配问题语义概率分布,以及所述各个目标问题语句的问题语义概率分布;
分别计算所述第二待匹配问题语义概率分布和确定出的各个问题语义概率分布之间的内积,获得所述第二待匹配问题语义概率分布与所述各个问题语义概率分布之间的第二分布距离;
分别将获得的各个第二分布距离,作为对应的所述待匹配问题语句与目标问题语句之间的第二语义相似度。
可选的,根据确定出的各个第一语义相似度,从所述各个目标答案语句中确定出与所述待匹配问题语句匹配的目标答案语句时,第一语义匹配模块501具体用于:
分别将确定出的各个第一语义相似度与对应的第二语义相似度进行加权平均,确定出各个平均语义相似度;
确定出平均语义相似度最高对应的目标答案语句,并作为所述待匹配问题语句匹配到的答案语句。
可选的,针对所述第一语义匹配模块的训练方式,进一步包括:
第二获取模块506,用于获取第一正例样本集,其中,所述正例样本集中包括多个问题语句样本和答案语句样本对;
第一组合模块507,用于分别将所述各个问题语句样本与各个对应非配对的答案语句样本进行组合,获得第一负例样本集;
第一训练模块508,用于将所述第一正例样本集和所述第一负例样本集输入到所述第一语义匹配模型中进行训练,分别计算所述第一正例样本集中的问题语句样本的概率分布与对应的答案语句样本的概率分布之间的交叉熵,获得所述第一正例样本集中的问题语句样本与对应的答案语句样本之间的语义相似度,并分别计算所述第一负例样本集中的问题语句样本的概率分布与对应的非匹配答案语句样本的概率分布之间的交叉熵,获得所述第一负例样本集中的问题语句样本与对应的非匹配答案语句样本之间的语义相似度,直至所述第一语义匹配模型的目标函数收敛,获得训练完成的第一语义匹配模型,
其中,所述目标函数为所述第一正例样本集和所述第一负例样本集之间的损失函数最小化,所述第一语义匹配模型用于使所述第一正例样本集中问题语句样本的概率分布和答案语句样本的概率分布之间的分布距离最小,使所述第一负例样本集中问题语句样本的概率分布和答案语句样本的概率分布之间的分布距离最大。
可选的,针对所述第二语义匹配模块的训练方式,进一步包括:
第三获取模块509,用于获取第二正例样本集,其中,所述第二正例样本集中包括多个问题语句样本对,所述问题语句样本对中的问题语句样本的语义相同;
第二组合模块510,用于分别将所述各个问题语句样本与各个对应非配对的问题语句样本进行组合,获得第二负例样本集;
第二训练模块511,用于将所述第二正例样本集和所述第二负例样本集输入到所述第二语义匹配模型中进行训练,分别计算所述第二正例样本集中的问题语句样本对中的问题语句样本的概率分布之间的内积,获得所述第二正例样本集的问题语句样本对中的问题语句样本之间的语义相似度,并分别计算所述第二负例样本集中的问题语句样本对中的问题语句样本的概率分布之间的内积,获得所述第二负例样本集的问题语句样本对中的问题语句样本之间的语义相似度,直至所述第二语义匹配模型的目标函数收敛,获得训练完成的第二语义匹配模型,
其中,所述目标函数为所述第二正例样本集和所述第二负例样本集之间的损失函数最小化,所述第二语义匹配模型用于使所述第二正例样本集的问题语句样本对中的问题语句样本的概率分布之间的分布距离最小,使所述第二负例样本集的问题语句样本对中的问题语句样本的概率分布之间的分布距离最大。
基于上述实施例,参阅图6所示为本申请实施例中电子设备的结构示意图。
本申请实施例提供了一种电子设备,该电子设备可以包括处理器610(CenterProcessing Unit,CPU)、存储器620、输入设备630和输出设备640等,输入设备630可以包括键盘、鼠标、触摸屏等,输出设备640可以包括显示设备,如液晶显示器(Liquid CrystalDisplay,LCD)、阴极射线管(Cathode Ray Tube,CRT)等。
存储器620可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器610提供存储器620中存储的程序指令和数据。在本申请实施例中,存储器620可以用于存储本申请实施例中任一种语义匹配方法的程序。
处理器610通过调用存储器620存储的程序指令,处理器610用于按照获得的程序指令执行本申请实施例中任一种语义匹配方法。
基于上述实施例,本申请实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意方法实施例中的语义匹配方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (8)
1.一种语义匹配方法,其特征在于,包括:
获取待匹配问题语句;
基于已训练的第一语义匹配模型,以所述待匹配问题语句和各个目标答案语句为输入参数,分别确定所述待匹配问题语句的第一待匹配问题语义概率分布,以及所述各个目标答案语句的答案语义概率分布,其中,预先存储有多个目标问题语句和目标答案语句对;
根据确定出的所述第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定所述待匹配问题语句与所述各个目标答案语句之间的第一语义相似度;
基于已训练的第二语义匹配模型,以所述待匹配问题语句和各个目标问题语句为输入参数,分别确定所述待匹配问题语句的第二待匹配问题语义概率分布,以及所述各个目标问题语句的问题语义概率分布;
分别计算所述第二待匹配问题语义概率分布和确定出的各个问题语义概率分布之间的内积,获得所述第二待匹配问题语义概率分布与所述各个问题语义概率分布之间的第二分布距离;
分别将获得的各个第二分布距离,作为对应的所述待匹配问题语句与目标问题语句之间的第二语义相似度;
分别将确定出的各个第一语义相似度与对应的第二语义相似度进行加权平均,确定出各个平均语义相似度;
确定出平均语义相似度最高对应的目标答案语句,并作为所述待匹配问题语句匹配到的答案语句。
2.如权利要求1所述的方法,其特征在于,根据确定出的所述第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定所述待匹配问题语句与所述各个目标答案语句之间的第一语义相似度,具体包括:
分别计算所述第一待匹配问题语义概率分布和确定出的各个答案语义概率分布之间的交叉熵,获得所述第一待匹配问题语义概率分布与所述各个答案语义概率分布之间的第一分布距离;
分别将获得的各个第一分布距离,作为对应的所述待匹配问题语句与目标答案语句之间的第一语义相似度。
3.如权利要求1所述的方法,其特征在于,获取待匹配问题语句之后,进一步包括:
对所述待匹配问题语句进行关键词提取,获得所述待匹配问题语句的关键词;
根据所述关键词,筛选出前预设数个、与所述待匹配问题语句相似度最高的目标问题语句;
根据筛选出的各个目标问题语句,分别确定出与筛选出的各个目标问题语句对应的目标答案语句。
4.如权利要求1所述的方法,其特征在于,所述第一语义匹配模型的训练方式为:
获取第一正例样本集,其中,所述正例样本集中包括多个问题语句样本和答案语句样本对;
分别将所述各个问题语句样本与各个对应非配对的答案语句样本进行组合,获得第一负例样本集;
将所述第一正例样本集和所述第一负例样本集输入到所述第一语义匹配模型中进行训练,分别计算所述第一正例样本集中的问题语句样本的概率分布与对应的答案语句样本的概率分布之间的交叉熵,获得所述第一正例样本集中的问题语句样本与对应的答案语句样本之间的语义相似度,并分别计算所述第一负例样本集中的问题语句样本的概率分布与对应的非匹配答案语句样本的概率分布之间的交叉熵,获得所述第一负例样本集中的问题语句样本与对应的非匹配答案语句样本之间的语义相似度,直至所述第一语义匹配模型的目标函数收敛,获得训练完成的第一语义匹配模型,
其中,所述目标函数为所述第一正例样本集和所述第一负例样本集之间的损失函数最小化,所述第一语义匹配模型用于使所述第一正例样本集中问题语句样本的概率分布和答案语句样本的概率分布之间的分布距离最小,使所述第一负例样本集中问题语句样本的概率分布和答案语句样本的概率分布之间的分布距离最大。
5.如权利要求1所述的方法,其特征在于,所述第二语义匹配模型的训练方式为:
获取第二正例样本集,其中,所述第二正例样本集中包括多个问题语句样本对,所述问题语句样本对中的问题语句样本的语义相同;
分别将所述各个问题语句样本与各个对应非配对的问题语句样本进行组合,获得第二负例样本集;
将所述第二正例样本集和所述第二负例样本集输入到所述第二语义匹配模型中进行训练,分别计算所述第二正例样本集中的问题语句样本对中的问题语句样本的概率分布之间的内积,获得所述第二正例样本集的问题语句样本对中的问题语句样本之间的语义相似度,并分别计算所述第二负例样本集中的问题语句样本对中的问题语句样本的概率分布之间的内积,获得所述第二负例样本集的问题语句样本对中的问题语句样本之间的语义相似度,直至所述第二语义匹配模型的目标函数收敛,获得训练完成的第二语义匹配模型,
其中,所述目标函数为所述第二正例样本集和所述第二负例样本集之间的损失函数最小化,所述第二语义匹配模型用于使所述第二正例样本集的问题语句样本对中的问题语句样本的概率分布之间的分布距离最小,使所述第二负例样本集的问题语句样本对中的问题语句样本的概率分布之间的分布距离最大。
6.一种语义匹配装置,其特征在于,包括:
获取模块,用于获取待匹配问题语句;
第一语义匹配模块,用于基于已训练的第一语义匹配模型,以所述待匹配问题语句和各个目标答案语句为输入参数,分别确定所述待匹配问题语句的第一待匹配问题语义概率分布,以及所述各个目标答案语句的答案语义概率分布,其中,预先存储有多个目标问题语句和目标答案语句对;
根据确定出的所述第一待匹配问题语义概率分布,以及确定出的各个答案语义概率分布,分别确定所述待匹配问题语句与所述各个目标答案语句之间的第一语义相似度;
第二语义匹配模块,用于基于已训练的第二语义匹配模型,以所述待匹配问题语句和各个目标问题语句为输入参数,分别确定所述待匹配问题语句的第二待匹配问题语义概率分布,以及所述各个目标问题语句的问题语义概率分布;
分别计算所述第二待匹配问题语义概率分布和确定出的各个问题语义概率分布之间的内积,获得所述第二待匹配问题语义概率分布与所述各个问题语义概率分布之间的第二分布距离;
分别将获得的各个第二分布距离,作为对应的所述待匹配问题语句与目标问题语句之间的第二语义相似度;
分别将确定出的各个第一语义相似度与对应的第二语义相似度进行加权平均,确定出各个平均语义相似度;
确定出平均语义相似度最高对应的目标答案语句,并作为所述待匹配问题语句匹配到的答案语句。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-5任一项所述方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1-5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010489729.5A CN111666770B (zh) | 2020-06-02 | 2020-06-02 | 一种语义匹配方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010489729.5A CN111666770B (zh) | 2020-06-02 | 2020-06-02 | 一种语义匹配方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111666770A CN111666770A (zh) | 2020-09-15 |
CN111666770B true CN111666770B (zh) | 2023-07-18 |
Family
ID=72385503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010489729.5A Active CN111666770B (zh) | 2020-06-02 | 2020-06-02 | 一种语义匹配方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111666770B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114417883B (zh) * | 2022-01-10 | 2022-10-25 | 马上消费金融股份有限公司 | 一种数据处理方法、装置及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018157805A1 (zh) * | 2017-03-03 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 一种自动问答处理方法及自动问答系统 |
CN108595413A (zh) * | 2018-03-22 | 2018-09-28 | 西北大学 | 一种基于语义依存树的答案抽取方法 |
CN110188362A (zh) * | 2019-06-10 | 2019-08-30 | 北京百度网讯科技有限公司 | 文本处理方法及装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9710547B2 (en) * | 2014-11-21 | 2017-07-18 | Inbenta | Natural language semantic search system and method using weighted global semantic representations |
CN106682194B (zh) * | 2016-12-29 | 2020-05-22 | 北京百度网讯科技有限公司 | 基于深度问答的答案定位方法及装置 |
CN107220380A (zh) * | 2017-06-27 | 2017-09-29 | 北京百度网讯科技有限公司 | 基于人工智能的问答推荐方法、装置和计算机设备 |
JP2019020893A (ja) * | 2017-07-13 | 2019-02-07 | 国立研究開発法人情報通信研究機構 | ノン・ファクトイド型質問応答装置 |
CN108629019B (zh) * | 2018-05-08 | 2021-04-30 | 桂林电子科技大学 | 一种面向问答领域含有人名的问句相似度计算方法 |
CN110597966A (zh) * | 2018-05-23 | 2019-12-20 | 北京国双科技有限公司 | 自动问答方法及装置 |
CN110895553A (zh) * | 2018-08-23 | 2020-03-20 | 国信优易数据有限公司 | 语义匹配模型训练方法、语义匹配方法及答案获取方法 |
CN109165288B (zh) * | 2018-09-17 | 2019-08-27 | 北京神州泰岳软件股份有限公司 | 一种多语义监督的词向量训练方法及装置 |
CN110309283B (zh) * | 2019-06-28 | 2023-03-21 | 创新先进技术有限公司 | 一种智能问答的答案确定方法及装置 |
CN110826337B (zh) * | 2019-10-08 | 2023-06-16 | 西安建筑科技大学 | 一种短文本语义训练模型获取方法及相似度匹配算法 |
CN111125335B (zh) * | 2019-12-27 | 2021-04-06 | 北京百度网讯科技有限公司 | 问答处理方法、装置、电子设备和存储介质 |
-
2020
- 2020-06-02 CN CN202010489729.5A patent/CN111666770B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018157805A1 (zh) * | 2017-03-03 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 一种自动问答处理方法及自动问答系统 |
CN108595413A (zh) * | 2018-03-22 | 2018-09-28 | 西北大学 | 一种基于语义依存树的答案抽取方法 |
CN110188362A (zh) * | 2019-06-10 | 2019-08-30 | 北京百度网讯科技有限公司 | 文本处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111666770A (zh) | 2020-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108920654B (zh) | 一种问答文本语义匹配的方法和装置 | |
CN105989040B (zh) | 智能问答的方法、装置及系统 | |
CN111506721B (zh) | 一种面向领域知识图谱的问答系统及构建方法 | |
US11238050B2 (en) | Method and apparatus for determining response for user input data, and medium | |
US11461613B2 (en) | Method and apparatus for multi-document question answering | |
CN111782826A (zh) | 知识图谱的信息处理方法、装置、设备及存储介质 | |
CN111259130A (zh) | 用于在对话中提供答复语句的方法及装置 | |
CN113722512A (zh) | 基于语言模型的文本检索方法、装置、设备及存储介质 | |
CN116881470A (zh) | 一种生成问答对的方法及装置 | |
CN117520503A (zh) | 基于llm模型的金融客服对话生成方法、装置、设备及介质 | |
CN111666770B (zh) | 一种语义匹配方法及装置 | |
CN114036276A (zh) | 一种信息抽取方法、装置、设备及存储介质 | |
CN111581365B (zh) | 一种谓词抽取方法 | |
CN116186223A (zh) | 一种金融文本处理方法、装置、设备和存储介质 | |
CN111767388B (zh) | 一种候选池生成方法 | |
CN114676703A (zh) | 专利新颖度评估方法、装置、设备及可读存储介质 | |
CN114265924A (zh) | 一种根据问句检索关联表格的方法与装置 | |
CN111382246B (zh) | 文本的匹配方法、匹配装置、终端及计算机可读存储介质 | |
CN112989001A (zh) | 一种问答处理方法、装置、介质及电子设备 | |
CN111949783A (zh) | 知识库中问答结果生成方法及装置 | |
CN111400413A (zh) | 一种确定知识库中知识点类目的方法及系统 | |
CN110955755A (zh) | 一种确定目标标准信息的方法和系统 | |
CN116227598B (zh) | 一种基于双阶段注意力机制的事件预测方法、设备及介质 | |
CN117609444B (zh) | 一种基于大模型的搜索问答方法 | |
US20240086768A1 (en) | Learning device, inference device, non-transitory computer-readable medium, learning method, and inference method |
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 |