CN114742045A - 一种语义文本相似度的计算方法、装置及存储介质 - Google Patents
一种语义文本相似度的计算方法、装置及存储介质 Download PDFInfo
- Publication number
- CN114742045A CN114742045A CN202210491887.3A CN202210491887A CN114742045A CN 114742045 A CN114742045 A CN 114742045A CN 202210491887 A CN202210491887 A CN 202210491887A CN 114742045 A CN114742045 A CN 114742045A
- Authority
- CN
- China
- Prior art keywords
- sentence
- training
- target
- training sentence
- vector corresponding
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
Abstract
本申请提供了一种语义文本相似度的计算方法、装置及存储介质,将第一目标句子和第二目标句子输入训练好的对比学习模型,以输出第一目标句子对应的第一句子向量和第二目标句子对应的第二句子向量;将第一目标句子对应的第一句子向量输入训练好的白化模型,以输出第一目标句子对应的第一转换向量;将第二目标句子对应的第二句子向量输入训练好的白化模型,以输出第二目标句子对应的第二转换向量;根据第一转换向量和第二转换向量,计算第一目标句子和第二目标句子的相似度,能够解决现有技术中存在的语义文本相似度计算结果与实际相似度偏差较大的问题。
Description
技术领域
本申请涉及自然语言处理技术领域,具体而言,涉及一种语义文本相似度的计算方法、装置及存储介质。
背景技术
近年来随着AI(Artificial Intelligence,人工智能),特别是NLP(NaturalLanguage Processing,自然语言处理)技术的迅猛发展,自然语言处理技术有了更多的落地应用场景。其中,文本语义相似度是NLP算法中比较核心的内容,在NLP技术中扮演者重要角色,为许多神经网络的算法带来了较好的性能提升,具有极大的研究价值。现有的语义文本相似度大多采用BERT-flow或BERT-whitening的结构,但这种计算方法的相似度结果与实际相似度偏差较大。
发明内容
有鉴于此,本申请的目的在于提供一种语义文本相似度的计算方法、装置及存储介质,能够解决现有技术中存在的语义文本相似度计算结果与实际相似度偏差较大的问题。
第一方面,本申请提供了语义文本相似度的计算方法,方法包括:将第一目标句子和第二目标句子输入训练好的对比学习模型,以输出第一目标句子对应的第一句子向量和第二目标句子对应的第二句子向量;将第一目标句子对应的第一句子向量输入训练好的白化模型,以输出第一目标句子对应的第一转换向量;将第二目标句子对应的第二句子向量输入训练好的白化模型,以输出第二目标句子对应的第二转换向量;根据第一转换向量和第二转换向量,计算第一目标句子和第二目标句子的相似度。
优选的,训练句子库包括多个训练句子集,针对每个训练句子集,通过以下方式生成训练好的对比学习模型:将该训练句子集输入初始对比学习模型,以输出该训练句子集中每个训练句子对应的训练句子向量;确定每个训练句子对应的一个负样本训练句子向量和一个正样本训练句子向量,并将该训练句子对应的训练句子向量、负样本训练句子向量和正样本训练句子向量输入目标损失函数,以输出该训练句子对应的损失值;根据每个训练句子对应的损失值,调整初始对比学习模型,以使每个训练句子对应的损失值最小。
优选的,编码器包括预设数量的归一化层,通过以下方式输出每个训练句子对应的训练句子向量:将训练句子集输入文本增强模块,以输出每个训练句子对应的多个相似训练句子;针对该训练句子和对应的多个相似训练句子中的任一个句子,在该句子前添加预设标签并输入编码器,以将编码器的最后一个归一化层的输出向量中与预设标签对应的部分作为该句子对应的训练句子向量并输出。
优选的,编码器包括预设数量的归一化层,针对输入初始对比学习模型的每个训练句子,通过以下方式输出该训练句子对应的训练句子向量:将该训练句子输入文本增强模块,以输出多个相似训练句子;针对该训练句子和对应的多个相似训练句子中的任一个句子,将该句子输入编码器,根据编码器的目标归一化层的输出向量的均值,确定该句子对应的训练句子向量并输出。
优选的,归一化层包括多个神经网络节点,通过以下方式确定每个训练句子对应的一个正样本训练句子向量:将该训练句子对应的训练句子向量中,除该训练句子外任一相似训练句子对应的训练句子向量,作为该训练句子对应的一个正样本训练句子向量;或将该训练句子和多个相似训练句子中的任一个句子输入编码器,将编码器的至少一个神经网络节点随机置零,以输出该训练句子对应的一个正样本训练句子向量;或将该训练句子和多个相似训练句子中的任一个句子输入编码器,将编码器中目标归一化层的输出向量的均值,作为该训练句子对应的一个正样本训练句子向量。
优选的,训练句子包括多个词语,将训练句子集输入文本增强模块,以输出每个训练句子对应的多个相似训练句子的步骤,具体包括:根据训练句子集中每个训练句子的词语,确定出所有词语;将该训练句子中的一个词语和其他词语中的任一个词语的位置交换;或将该训练句子中一个词语或多个连续的词语删除;或在该训练句子中的一个词语后插入其他词语中的任一个词语。
优选的,通过以下方式生成训练好的白化模型:确定与目标应用领域对应的至少一个目标训练句子集;将所有目标训练句子集输入训练好的对比学习模型,以输出每个目标训练句子集中每个训练句子对应的目标训练句子向量;根据所有目标训练句子向量,计算目标协方差矩阵;对目标协方差矩阵进行分解,以确定目标协方差矩阵的特征值和特征向量;根据目标协方差矩阵的特征值和特征向量,计算白化模型的参数,以生成训练好的白化模型。
第二方面,本申请提供了一种语义文本相似度的计算装置,装置包括:
提取模块,用于将第一目标句子和第二目标句子输入训练好的对比学习模型,以输出第一目标句子对应的第一句子向量和第二目标句子对应的第二句子向量;
转换模块,用于将第一目标句子对应的第一句子向量输入训练好的白化模型,以输出第一目标句子对应的第一转换向量;以及
将第二目标句子对应的第二句子向量输入训练好的白化模型,以输出第二目标句子对应的第二转换向量;
计算模块,用于根据第一转换向量和第二转换向量,计算第一目标句子和第二目标句子的相似度。
第三方面,本申请还提供一种电子设备,包括:处理器、存储器和总线,存储器存储有处理器可执行的机器可读指令,当电子设备运行时,处理器与存储器之间通过总线通信,机器可读指令被处理器执行时执行如上述的语义文本相似度的计算方法的步骤。
第四方面,本申请还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述的语义文本相似度的计算方法的步骤。
本申请提供的语义文本相似度的计算方法、装置及存储介质,将第一目标句子和第二目标句子输入训练好的对比学习模型,以输出所述第一目标句子对应的第一句子向量和第二目标句子对应的第二句子向量;将所述第一目标句子对应的第一句子向量输入训练好的白化模型,以输出第一目标句子对应的第一转换向量;将所述第二目标句子对应的第二句子向量输入训练好的白化模型,以输出第二目标句子对应的第二转换向量;根据所述第一转换向量和所述第二转换向量,计算所述第一目标句子和第二目标句子的相似度。通过对比学习模型生成句子的句子向量,再通过白化模型将句子向量转换,转换后的句子向量相关性更小,基于转换后的句子向量计算语义文本相似度,结果更贴近真实的文本相似度,语义文本相似度计算结果更准确。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例所提供的一种语义文本相似度的计算方法的流程图;
图2为本申请实施例所提供的一种对比学习模型的训练步骤的流程图;
图3为本申请实施例所提供的一种白化模型的训练步骤的流程图;
图4为本申请实施例所提供的一种语义文本相似度的计算装置的结构示意图;
图5为本申请实施例所提供的另一种语义文本相似度的计算装置的结构示意图;
图6为本申请实施例所提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的每个其他实施例,都属于本申请保护的范围。
首先,对本申请可适用的应用场景进行介绍。本申请可应用于文本相似度计算任务。
AI:人工智能(Artificial Intelligence),是计算机科学的一个分支,研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。
NLP:自然语言处理(Natural Language Processing),自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。
STS:语义文本相似度(Semantic Text Similarity),是NLP算法的核心部分,它通过比较两个句子来计算出相似度打分。
Contrastive Learning:对比学习,是一种自监督学习方法,用于在没有标签的情况下,通过让模型学习哪些数据点相似或不同来学习数据集的一般特征。
Whitening:白化,是一个线性转换,它将具有已知协方差矩阵的随机变量向量转换为一组新的变量,这些变量的协方差是单位矩阵。常见的白化方式包括,PCA(PrincipalComponent Analysis)、ZCA(Zero-phase Component Analysis)、Cholesky分解(Choleskydecomposition)等。
近年来随着AI特别是NLP技术的迅猛发展,自然语言处理技术有了更多的落地应用场景。其中,文本语义相似度是NLP算法中比较核心的内容,在NLP技术中扮演者重要角色,为许多神经网络的算法带来了较好的性能提升,具有极大的研究价值。现有的语义文本相似度大多采用BERT-flow或BERT-whitening的结构,但这种计算方法的相似度结果与实际相似度偏差较大。
基于此,本申请实施例提供了一种语义文本相似度的计算方法、装置及存储介质。
请参阅图1,图1为本申请实施例所提供的一种语义文本相似度的计算方法的流程图。所如图1中所示,本申请实施例提供的语义文本相似度的计算方法,包括:
S101、将第一目标句子和第二目标句子输入训练好的对比学习模型,以输出第一目标句子对应的第一句子向量和第二目标句子对应的第二句子向量。
在模型调用阶段,首先将待计算相似度的第一目标句子和第二目标句子以句子对的形式同时输入训练好的对比学习模型,以输出第一目标句子对应的第一句子向量和第二目标句子对应的第二句子向量。
具体的,这里的对比学习(ConSERT)模型,可以基于训练句子库训练生成。图2为本申请实施例所提供的一种对比学习模型的训练步骤的流程图。训练句子库包括多个训练句子集,针对每个训练句子集,可以通过以下方式生成训练好的对比学习模型:
S1010、将该训练句子集输入初始对比学习模型,以输出该训练句子集中每个训练句子对应的训练句子向量。
在训练之前,先建立训练句子库。每个训练句子集中包括多个训练句子。这里的句子可以是从网络收集的,可以包括目标应用领域内收集的常用句子。这里的初始对比学习模型,指的是ConSERT模型。该模型采用的是无监督训练的方式,不需要技术人员为训练句子标记标签,减轻了技术人员的工作负担。
这里的ConSERT模型包括三个主要部分,文本增强模块、BERT编码器和对比损失层。
具体的,编码器(即BERT编码器)包括预设数量的归一化层,通过以下方式输出每个训练句子对应的训练句子向量:
将训练句子集输入文本增强模块,以输出每个训练句子对应的多个相似训练句子。针对该训练句子和对应的多个相似训练句子中的任一个句子,在该句子前添加预设标签并输入编码器,以将编码器的最后一个归一化层的输出向量中与预设标签对应的部分作为该句子对应的训练句子向量并输出。
或针对输入初始对比学习模型的每个训练句子,通过以下方式输出该训练句子对应的训练句子向量:
将该训练句子输入文本增强模块,以输出多个相似训练句子。针对该训练句子和对应的多个相似训练句子中的任一个句子,将该句子输入编码器,根据编码器的目标归一化层的输出向量的均值,确定该句子对应的训练句子向量并输出。
输入ConSERT模型的训练句子集,先通过文本增强模块对训练句子集中每个训练句子进行增强,以生成每个训练句子的相似训练句子。再将每个训练句子输入BERT编码器进行编码。这里的BERT编码器可以包括12个归一化层。
这里可以根据需要选择编码器的输出类型。在一个方案中,可以将编码器输出的训练句子的向量中,提取出[cls]部分以作为ConSERT模型最后输出的句子向量。在另一个方案中,还可以分别获取BERT编码器最后一层或最后两层的词向量,并将其均值作为ConSERT模型最后输出的句子向量。
具体的,训练句子包括多个词语,将训练句子集输入文本增强模块,以输出每个训练句子对应的多个相似训练句子的步骤,具体包括:
根据训练句子集中每个训练句子的词语,确定出所有词语,将该训练句子中的一个词语和其他词语中的任一个词语的位置交换。或将该训练句子中一个词语或多个连续的词语删除。或在该训练句子中的一个词语后插入其他词语中的任一个词语。
增强方式分为两大类,一类是基于文本增强,一类是在句子编码阶段进行增强。这里的文本增强的方式可以为打乱词序,即随机将原始句子中部分词的顺序交换。删除词或特征,即随机删除句子的中的部分词或短语。词重复,即随机取句子中部分词语,将这些词按随机重复次数插入原词位置之后。
S1012、确定每个训练句子对应的一个负样本训练句子向量和一个正样本训练句子向量,并将该训练句子对应的训练句子向量、负样本训练句子向量和正样本训练句子向量输入目标损失函数,以输出该训练句子对应的损失值。
具体的,归一化层包括多个神经网络节点,通过以下方式确定每个训练句子对应的一个正样本训练句子向量:
将该训练句子对应的训练句子向量中,除该训练句子外任一相似训练句子对应的训练句子向量,作为该训练句子对应的一个正样本训练句子向量。
需要说明的是,针对每个训练句子,该训练句子经过文本增强模块增强后的每个相似训练句子都是该训练句子的正样本,而其他训练句子则是该训练句子的负样本。基于一个正样本编码生成的句子向量则作为该训练句子对应的一个正样本训练句子向量。基于一个负样本编码生成的句子向量则作为该训练句子对应的一个负样本训练句子向量。
还可以在句子编码阶段进行增强,以生成正样本训练句子向量,包括:
可以取不同次输入模型得到的带dropout的结果作为当前训练句子的相似语句对。例如,将该训练句子和多个相似训练句子中的任一个句子输入编码器,将编码器的至少一个神经网络节点随机置零,以输出该训练句子对应的一个正样本训练句子向量。或将该训练句子和多个相似训练句子中的任一个句子输入编码器,将编码器中目标归一化层的输出向量的均值,作为该训练句子对应的一个正样本训练句子向量。
这里可以在将训练句子输入编码器时,随机将编码器的神经网络节点置零,并将输出的训练句子向量作为正样本训练句子向量。或者可以随机提取编码器中间部分层的输出结果,取平均值后作为正样本训练句子向量。
这里可以采用模型采取NT-Xent loss(the normalized temperature-scaledcross entropy loss)作为损失函数进行训练,目标损失函数li为:
其中,hi为当前训练句子对应的训练句子向量,为当前训练句子对应的正样本训练句子向量,为当前训练句子对应的负样本训练句子向量,sim表示两个样本的余弦相似度计算,τ为温度系数,可以用来控制目标损失函数对负样本对的敏感程度。
S1014、根据每个训练句子对应的损失值,调整初始对比学习模型,以使每个训练句子对应的损失值最小。
根据损失值调整初始对比学习模型的超参,以得到最后的训练好的对比学习模型。
S102、将第一目标句子对应的第一句子向量输入训练好的白化模型,以输出第一目标句子对应的第一转换向量。
S103、将第二目标句子对应的第二句子向量输入训练好的白化模型,以输出第二目标句子对应的第二转换向量。
图3为本申请实施例所提供的一种白化模型的训练步骤的流程图。这里可以通过白化(whitening)模型对句子向量进行转换,可以通过以下方式生成训练好的白化模型:
S201、确定与目标应用领域对应的至少一个目标训练句子集。
这里可以根据用户的需求,确定出从目标应用领域采集生成的目标训练句子集。例如,若用户需要对保险领域的AI应用进行开发,其中涉及到语义文本相似度的计算,则此时可以选择基于保险领域采集的目标训练句子集,以用于训练白化模型,进而提高了本申请所提出的语义文本相似度的计算在目标应用领域的适用性和准确度。
S202、将所有目标训练句子集输入训练好的对比学习模型,以输出每个目标训练句子集中每个训练句子对应的目标训练句子向量。
在得到训练好的对比学习模型之后,获取实际应用领域的无标注文本输入训练好的对比学习模型,以获得句子向量训练数据。这里采取的白化模型可以包括PCA、ZCA和cholesky分解等方式。
S203、根据所有目标训练句子向量,计算目标协方差矩阵。
将步骤S202中获取的当前目标训练句子集中所有句子向量输入初始白化模型,以输出该目标训练句子集对应的目标协方差矩阵。可以理解的是,若目标训练句子集中有一百个句子,则目标协方差矩阵的大小为100×100。其中,目标协方差矩阵中每个向量是每两个句子之间计算的方差。
S204、对目标协方差矩阵进行分解,以确定目标协方差矩阵的特征值和特征向量。
对目标协方差矩阵进行矩阵SVD分解,以获得目标协方差矩阵的特征值和特征向量。
S205、根据目标协方差矩阵的特征值和特征向量,计算白化模型的参数,以生成训练好的白化模型。
根据目标协方差矩阵的特征值和特征向量,计算白化变换的kernel和bias,得到白化变换的计算参数。
对每个输入的句子向量x,采用如下公式计算得到句子的最终向量表示y(即白化模型的输出):
y=(x+bias).dot(kernel),
其中,dot表示矩阵运算。
这里训练好的白化模型是基于目标应用领域的样本训练生成的,将对比学习模型输出的句子向量通过该训练好的白化模型对句子向量进行转换,以获得转换向量,起到了根据目标应用领域进行调优的作用,进而提高了目标应用领域的句子的向量语义表达的准确性。
S104、根据第一转换向量和第二转换向量,计算第一目标句子和第二目标句子的相似度。
这里,根据第一转换向量和第二转换向量计算余弦相似度,两个句子的相似度值。
本申请实施例提供的语义文本相似度的计算方法,实现了两个句子级别的文本相似度计算,与现有技术中采用BERT-flow或BERT-whitening的模型结构以计算相似度相比,本申请采取无监督的训练方式,不需要带标注的训练文本,减轻了技术人员的工作负担。并且能够根据领域数据进行调优,计算出的文本相似度与实际相似度值更贴近。
基于同一发明构思,本申请实施例中还提供了与语义文本相似度的计算方法对应的语义文本相似度的计算装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述语义文本相似度的计算方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
请参阅图4和图5,图4为本申请实施例所提供的一种语义文本相似度的计算装置的结构示意图,图5为本申请实施例所提供的另一种语义文本相似度的计算装置的结构示意图。如图4和图5中所示,所述语义文本相似度的计算装置400包括:
提取模块410,用于将第一目标句子和第二目标句子输入训练好的对比学习模型,以输出第一目标句子对应的第一句子向量和第二目标句子对应的第二句子向量;
转换模块420,用于将第一目标句子对应的第一句子向量输入训练好的白化模型,以输出第一目标句子对应的第一转换向量;以及
将第二目标句子对应的第二句子向量输入训练好的白化模型,以输出第二目标句子对应的第二转换向量;
计算模块430,用于根据第一转换向量和第二转换向量,计算第一目标句子和第二目标句子的相似度。
在一优选实施例中,训练句子库包括多个训练句子集,还包括第一训练模块440,用于针对每个训练句子集,通过以下方式生成训练好的对比学习模型:将该训练句子集输入初始对比学习模型,以输出该训练句子集中每个训练句子对应的训练句子向量;确定每个训练句子对应的一个负样本训练句子向量和一个正样本训练句子向量,并将该训练句子对应的训练句子向量、负样本训练句子向量和正样本训练句子向量输入目标损失函数,以输出该训练句子对应的损失值;根据每个训练句子对应的损失值,调整初始对比学习模型,以使每个训练句子对应的损失值最小。
在一优选实施例中,编码器包括预设数量的归一化层,第一训练模块440具体用于通过以下方式输出每个训练句子对应的训练句子向量:将训练句子集输入文本增强模块,以输出每个训练句子对应的多个相似训练句子;针对该训练句子和对应的多个相似训练句子中的任一个句子,在该句子前添加预设标签并输入编码器,以将编码器的最后一个归一化层的输出向量中与预设标签对应的部分作为该句子对应的训练句子向量并输出。
在一优选实施例中,编码器包括预设数量的归一化层,第一训练模块440具体用于针对输入初始对比学习模型的每个训练句子,通过以下方式输出该训练句子对应的训练句子向量:将该训练句子输入文本增强模块,以输出多个相似训练句子;针对该训练句子和对应的多个相似训练句子中的任一个句子,将该句子输入编码器,根据编码器的目标归一化层的输出向量的均值,确定该句子对应的训练句子向量并输出。
在一优选实施例中,归一化层包括多个神经网络节点,第一训练模块440具体用于通过以下方式确定每个训练句子对应的一个正样本训练句子向量:将该训练句子对应的训练句子向量中,除该训练句子外任一相似训练句子对应的训练句子向量,作为该训练句子对应的一个正样本训练句子向量;或将该训练句子和多个相似训练句子中的任一个句子输入编码器,将编码器的至少一个神经网络节点随机置零,以输出该训练句子对应的一个正样本训练句子向量;或将该训练句子和多个相似训练句子中的任一个句子输入编码器,将编码器中目标归一化层的输出向量的均值,作为该训练句子对应的一个正样本训练句子向量。
在一优选实施例中,训练句子包括多个词语,第一训练模块440具体用于根据训练句子集中每个训练句子的词语,确定出所有词语;将该训练句子中的一个词语和其他词语中的任一个词语的位置交换;或将该训练句子中一个词语或多个连续的词语删除;或在该训练句子中的一个词语后插入其他词语中的任一个词语。
在一优选实施例中,还包括第二训练模块450,用于通过以下方式生成训练好的白化模型:确定与目标应用领域对应的至少一个目标训练句子集;将所有目标训练句子集输入训练好的对比学习模型,以输出每个目标训练句子集中每个训练句子对应的目标训练句子向量;根据所有目标训练句子向量,计算目标协方差矩阵;对目标协方差矩阵进行分解,以确定目标协方差矩阵的特征值和特征向量;根据目标协方差矩阵的特征值和特征向量,计算白化模型的参数,以生成训练好的白化模型。
请参阅图6,图6为本申请实施例所提供的一种电子设备的结构示意图。如图6中所示,所述电子设备600包括处理器610、存储器620和总线630。
所述存储器620存储有所述处理器610可执行的机器可读指令,当电子设备600运行时,所述处理器610与所述存储器620之间通过总线630通信,所述机器可读指令被所述处理器610执行时,可以执行如上述实施例中的语义文本相似度的计算方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时可以执行如上述实施例中的语义文本相似度的计算方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种语义文本相似度的计算方法,其特征在于,所述方法包括:
将第一目标句子和第二目标句子输入训练好的对比学习模型,以输出所述第一目标句子对应的第一句子向量和第二目标句子对应的第二句子向量;
将所述第一目标句子对应的第一句子向量输入训练好的白化模型,以输出第一目标句子对应的第一转换向量;
将所述第二目标句子对应的第二句子向量输入训练好的白化模型,以输出第二目标句子对应的第二转换向量;
根据所述第一转换向量和所述第二转换向量,计算所述第一目标句子和第二目标句子的相似度。
2.根据权利要求1所述的方法,其特征在于,训练句子库包括多个训练句子集,针对每个所述训练句子集,通过以下方式生成训练好的对比学习模型:
将该训练句子集输入初始对比学习模型,以输出该训练句子集中每个训练句子对应的训练句子向量;
确定每个训练句子对应的一个负样本训练句子向量和一个正样本训练句子向量,并将该训练句子对应的训练句子向量、负样本训练句子向量和正样本训练句子向量输入目标损失函数,以输出该训练句子对应的损失值;
根据每个训练句子对应的损失值,调整所述初始对比学习模型,以使每个训练句子对应的损失值最小。
3.根据权利要求2所述的方法,其特征在于,编码器包括预设数量的归一化层,通过以下方式输出每个训练句子对应的训练句子向量:
将训练句子集输入文本增强模块,以输出每个训练句子对应的多个相似训练句子;
针对该训练句子和对应的多个相似训练句子中的任一个句子,在该句子前添加预设标签并输入所述编码器,以将所述编码器的最后一个归一化层的输出向量中与所述预设标签对应的部分作为该句子对应的训练句子向量并输出。
4.根据权利要求2所述的方法,其特征在于,编码器包括预设数量的归一化层,针对输入初始对比学习模型的每个训练句子,通过以下方式输出该训练句子对应的训练句子向量:
将该训练句子输入文本增强模块,以输出多个相似训练句子;
针对该训练句子和对应的多个相似训练句子中的任一个句子,将该句子输入所述编码器,根据所述编码器的目标归一化层的输出向量的均值,确定该句子对应的训练句子向量并输出。
5.根据权利要求3或4所述的方法,其特征在于,所述归一化层包括多个神经网络节点,通过以下方式确定每个训练句子对应的一个正样本训练句子向量:
将该训练句子对应的训练句子向量中,除该训练句子外任一相似训练句子对应的训练句子向量,作为该训练句子对应的一个正样本训练句子向量;或
将该训练句子和多个相似训练句子中的任一个句子输入所述编码器,将所述编码器的至少一个神经网络节点随机置零,以输出该训练句子对应的一个正样本训练句子向量;或
将该训练句子和多个相似训练句子中的任一个句子输入所述编码器,将所述编码器中目标归一化层的输出向量的均值,作为该训练句子对应的一个正样本训练句子向量。
6.根据权利要求4所述的方法,其特征在于,训练句子包括多个词语,所述将训练句子集输入文本增强模块,以输出每个训练句子对应的多个相似训练句子的步骤,具体包括:
根据训练句子集中每个训练句子的词语,确定出所有词语;
将该训练句子中的一个词语和其他词语中的任一个词语的位置交换;或
将该训练句子中一个词语或多个连续的词语删除;或
在该训练句子中的一个词语后插入其他词语中的任一个词语。
7.根据权利要求2所述的方法,其特征在于,通过以下方式生成训练好的白化模型:
确定与目标应用领域对应的至少一个目标训练句子集;
将所有目标训练句子集输入训练好的对比学习模型,以输出每个目标训练句子集中每个训练句子对应的目标训练句子向量;
根据所有目标训练句子向量,计算目标协方差矩阵;
对目标协方差矩阵进行分解,以确定目标协方差矩阵的特征值和特征向量;
根据目标协方差矩阵的特征值和特征向量,计算白化模型的参数,以生成训练好的白化模型。
8.一种语义文本相似度的计算装置,其特征在于,所述装置包括:
提取模块,用于将第一目标句子和第二目标句子输入训练好的对比学习模型,以输出所述第一目标句子对应的第一句子向量和第二目标句子对应的第二句子向量;
转换模块,用于将所述第一目标句子对应的第一句子向量输入训练好的白化模型,以输出第一目标句子对应的第一转换向量;以及
将所述第二目标句子对应的第二句子向量输入训练好的白化模型,以输出第二目标句子对应的第二转换向量;
计算模块,用于根据所述第一转换向量和所述第二转换向量,计算所述第一目标句子和第二目标句子的相似度。
9.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1至7任一所述语义文本相似度的计算方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至7任一所述语义文本相似度的计算方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210491887.3A CN114742045A (zh) | 2022-05-07 | 2022-05-07 | 一种语义文本相似度的计算方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210491887.3A CN114742045A (zh) | 2022-05-07 | 2022-05-07 | 一种语义文本相似度的计算方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114742045A true CN114742045A (zh) | 2022-07-12 |
Family
ID=82285836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210491887.3A Pending CN114742045A (zh) | 2022-05-07 | 2022-05-07 | 一种语义文本相似度的计算方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114742045A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115525743A (zh) * | 2022-08-18 | 2022-12-27 | 贝壳找房(北京)科技有限公司 | 基于自学习白化网络的人机交互方法及电子设备 |
-
2022
- 2022-05-07 CN CN202210491887.3A patent/CN114742045A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115525743A (zh) * | 2022-08-18 | 2022-12-27 | 贝壳找房(北京)科技有限公司 | 基于自学习白化网络的人机交互方法及电子设备 |
CN115525743B (zh) * | 2022-08-18 | 2023-11-14 | 贝壳找房(北京)科技有限公司 | 基于自学习白化网络的人机交互方法及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113792818B (zh) | 意图分类方法、装置、电子设备及计算机可读存储介质 | |
CN111444340B (zh) | 文本分类方法、装置、设备及存储介质 | |
CN107085581B (zh) | 短文本分类方法和装置 | |
CN106502985B (zh) | 一种用于生成标题的神经网络建模方法及装置 | |
CN111460807B (zh) | 序列标注方法、装置、计算机设备和存储介质 | |
CN110737758A (zh) | 用于生成模型的方法和装置 | |
CN110210032B (zh) | 文本处理方法及装置 | |
CN112990296B (zh) | 基于正交相似度蒸馏的图文匹配模型压缩与加速方法及系统 | |
CN111444320A (zh) | 文本检索方法、装置、计算机设备和存储介质 | |
CN107480143A (zh) | 基于上下文相关性的对话话题分割方法和系统 | |
CN111966812B (zh) | 一种基于动态词向量的自动问答方法和存储介质 | |
CN110704621A (zh) | 文本处理方法、装置及存储介质和电子设备 | |
CN111401084A (zh) | 一种机器翻译的方法、设备以及计算机可读存储介质 | |
CN110796160A (zh) | 一种文本分类方法、装置和存储介质 | |
JP6738769B2 (ja) | 文ペア分類装置、文ペア分類学習装置、方法、及びプログラム | |
CN111859991A (zh) | 语言翻译处理模型训练方法和语言翻译处理方法 | |
CN111859940B (zh) | 一种关键词提取方法、装置、电子设备及存储介质 | |
CN113392209A (zh) | 一种基于人工智能的文本聚类方法、相关设备及存储介质 | |
CN113705196A (zh) | 基于图神经网络的中文开放信息抽取方法和装置 | |
CN111310411B (zh) | 一种基于多样性模型的文本相关性判定方法、装置和设备 | |
CN114048729A (zh) | 医学文献评价方法、电子设备、存储介质和程序产品 | |
CN112632253A (zh) | 基于图卷积网络的答案抽取方法、装置及相关组件 | |
CN114861673A (zh) | 一种语义分析方法、装置及设备 | |
CN114742045A (zh) | 一种语义文本相似度的计算方法、装置及存储介质 | |
CN116775497B (zh) | 数据库测试用例生成需求描述编码方法 |
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 |