基于对比学习的相似句子搜索方法及装置制造方法及图纸

技术编号:38377587 阅读:10 留言:0更新日期:2023-08-05 17:37
本发明专利技术涉及一种基于对比学习的相似句子搜索方法及装置,方法包括:接收来自用户的待搜索语句;基于预训练好的句子相似特征提取模型,确定所述待搜索语句的第一特征以及句子库中的各个语句的第二特征;其中,所述句子相似特征提取模型为基于对比学习的自监督学习模型;通过各个分布式计算节点,确定所述第一特征与所述句子库中的各个语句的第二特征的第一相似度;基于在各个分布式计算节点上分别确定的多个第一相似度,确定与所述句子库中与所述待搜索语句相似的句子。基于此,提高相似句子搜索的准确性以及进行相似句子的搜索的速度。度。度。

【技术实现步骤摘要】
基于对比学习的相似句子搜索方法及装置


[0001]本专利技术涉及人工智能
,特别是涉及基于对比学习的相似句子搜索方法及装置。

技术介绍

[0002]基于机器学习或深度学习的相似句子的搜索,通常没有标注数据,因此通常难以进行有监督的学习,使用无监督的方式进行相似句子的搜索,句向量的表示往往质量不高,导致相似句子的搜索准确性很难得到保证。且由于进行相似句子的搜索通常是海量搜索,因此,存在搜索耗时严重的问题。
[0003]因此,如何在没有标注数据的情况下,提高相似句子搜索的准确性以及进行相似句子的搜索的速度是目前的一个研究方向。

技术实现思路

[0004]本专利技术提供一种基于对比学习的相似句子搜索方法及装置,用以解决现有技术中句向量的表示往往质量不高,导致相似句子的搜索准确性很难得到保证,且由于进行相似句子的搜索通常是海量搜索,因此,存在搜索耗时严重的问题,实现提高相似句子搜索的准确性以及进行相似句子的搜索的速度。
[0005]一种基于对比学习的相似句子搜索方法,所述方法包括:接收来自用户的待搜索语句;基于预训练好的句子相似特征提取模型,确定所述待搜索语句的第一特征以及句子库中的各个语句的第二特征;其中,所述句子相似特征提取模型为基于对比学习的自监督学习模型;通过各个分布式计算节点,确定所述第一特征与所述句子库中的各个语句的第二特征的第一相似度;基于在各个分布式计算节点上分别确定的多个第一相似度,确定与所述句子库中与所述待搜索语句相似的句子。
[0006]在其中一个实施例中,在所述基于预训练好的句子相似特征提取模型,确定所述待搜索语句的第一特征以及句子库中的各个语句的第二特征之前,所述方法还包括:基于预设的句子库中的各个语句和预设的预训练方法,训练得到预训练好的Bert模型;其中,预设的预训练方法中包括对所述各个语句的预处理,所述预处理过程中包括:先对各个语句进行分词处理得到各个语句的分词序列,针对每个语句的分词序列中的不同长度的词语采用不同的百分比进行掩码处理;基于所述预设的句子库中的各个语句、所述预训练好的Bert模型的参数和预设的对比学习损失函数,训练得到所述预训练好的句子相似特征提取模型。
[0007]在其中一个实施例中,所述预训练好的句子相似特征提取模型为MoCo模型中的encoder,所述基于所述预设的句子库中的各个语句、所述预训练好的Bert模型的参数和预设的对比学习损失函数,训练得到所述预训练好的句子相似特征提取模型,包括:对同批次输入的各个目标语句分别进行词语重复以及同义词替换,确定各个目标语句的正样本;所述同批次输入的各个目标语句为所述预设的句子库中的目标语句;基于同批次输入的各个
目标语句中与各个目标语句本身不同的其他样本,确定各个目标语句的负样本;并基于所述预训练好的Bert模型的参数,确定MoCo模型中的momentum encoder和encoder的初始参数值;基于各个目标语句的正样本和负样本,以及所述momentum encoder和encoder的初始参数值以及所述预设的对比学习损失函数,训练得到最终的momentum encoder和encoder;基于所述最终的encoder对应的参数确定为预训练好的句子相似特征提取模型的参数。
[0008]在其中一个实施例中,所述预设的对比学习损失函数为:其中,表示第i个目标语句的编码表示hi与第i个目标语句对应的第s个正样本的momentum encoder编码表示的相似度;表示第i个目标语句的编码表示hi与第i个目标语句对应的第p个正样本的encoder编码表示的相似度;表示第i个目标语句的编码表示hi与第i个目标语句对应的第j个负样本的momentum encoder编码表示的相似度;表示第i个目标语句的编码表示hi与第i个目标语句对应的第m个负样本的encoder编码表示的相似度,S表示第i个目标语句对应的正样本的总数量,N表示第i个目标语句对应的负样本的总数量,τ为可学习的温度系数。
[0009]在其中一个实施例中,所述基于在各个分布式计算节点上分别确定的多个第一相似度,确定与所述句子库中与所述待搜索语句相似的句子,包括:通过各个分布式计算节点中的主节点获取在各个分布式计算节点的从节点上分别确定的多个第一相似度,并对所述多个第一相似度进行排序,基于排序小于预设阈值的第一相似度确定至少一个第二相似度;基于所述第二相似度确定与所述句子库中与所述待搜索语句相似的句子。
[0010]在其中一个实施例中,所述确定所述第一特征与所述句子库中的各个语句的第二特征的第一相似度,包括:基于faiss相似度搜索库,确定所述第一特征与所述句子库中的各个语句的第二特征的第一相似度。
[0011]在其中一个实施例中,所述对同批次输入的各个目标语句分别进行词语重复以及同义词替换,确定各个目标语句的正样本,包括:对各个目标语句进行分词处理,得到各个目标语句的第一分词序列;基于均匀分布从每个目标语句的第一分词序列中随机抽取预设个数的词语,对抽取到的词语进行重复,确定每个目标语句的第一正样本;基于均匀分布从每个目标语句的第一分词序列中随机抽取预设个数的词语,基于同义词典对抽取到的词语进行同义词替换,确定每个目标语句的第二正样本。
[0012]本专利技术还提供一种基于对比学习的相似句子搜索装置,所述装置包括:第一获取模块,用于接收来自用户的待搜索语句;第一确定模块,用于基于预训练好的句子相似特征提取模型,确定所述待搜索语句的第一特征以及句子库中的各个语句的第二特征;其中,所述句子相似特征提取模型为基于对比学习的自监督学习模型;第二确定模块,用于通过各
个分布式计算节点,确定所述第一特征与所述句子库中的各个语句的第二特征的第一相似度;第三确定模块,用于基于在各个分布式计算节点上分别确定的多个第一相似度,确定与所述句子库中与所述待搜索语句相似的句子。
[0013]本专利技术还提供计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述所述基于对比学习的相似句子搜索方法的步骤。
[0014]本专利技术还提供存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述所述基于对比学习的相似句子搜索方法的步骤。
[0015]上述基于对比学习的相似句子搜索方法及装置,通过使用基于对比学习的自监督学习方法,较无监督学习,在一定程度上保证相似句子搜索的准确性。通过使用分布式计算节点,确定每个句子与含有海量句子的句子库中的其他句子的相似度,从而节省相似度的计算时间,从而确定海量句子库中与待搜索的句子相似的句子,提高相似句子搜索的效率。
附图说明
[0016]图1为本专利技术提供的基于对比学习的相似句子搜索方法的流程示意图之一;
[0017]图2为本专利技术提供的基于对比学习的相似句子搜索方法的流程示意图之二;
[0018]图3为本专利技术提供的基于对比学习的相似句子搜索方法的流程本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于对比学习的相似句子搜索方法,其特征在于,所述方法包括:接收来自用户的待搜索语句;基于预训练好的句子相似特征提取模型,确定所述待搜索语句的第一特征以及句子库中的各个语句的第二特征;其中,所述句子相似特征提取模型为基于对比学习的自监督学习模型;通过各个分布式计算节点,确定所述第一特征与所述句子库中的各个语句的第二特征的第一相似度;基于在各个分布式计算节点上分别确定的多个第一相似度,确定与所述句子库中与所述待搜索语句相似的句子。2.如权利要求1所述的基于对比学习的相似句子搜索方法,其特征在于,在所述基于预训练好的句子相似特征提取模型,确定所述待搜索语句的第一特征以及句子库中的各个语句的第二特征之前,所述方法还包括:基于预设的句子库中的各个语句和预设的预训练方法,训练得到预训练好的Bert模型;其中,预设的预训练方法中包括对所述各个语句的预处理,所述预处理过程中包括:先对各个语句进行分词处理得到各个语句的分词序列,针对每个语句的分词序列中的不同长度的词语采用不同的百分比进行掩码处理;基于所述预设的句子库中的各个语句、所述预训练好的Bert模型的参数和预设的对比学习损失函数,训练得到所述预训练好的句子相似特征提取模型。3.如权利要求2所述的基于对比学习的相似句子搜索方法,其特征在于,所述预训练好的句子相似特征提取模型为MoCo模型中的encoder,所述基于所述预设的句子库中的各个语句、所述预训练好的Bert模型的参数和预设的对比学习损失函数,训练得到所述预训练好的句子相似特征提取模型,包括:对同批次输入的各个目标语句分别进行词语重复以及同义词替换,确定各个目标语句的正样本;所述同批次输入的各个目标语句为所述预设的句子库中的目标语句;基于同批次输入的各个目标语句中与各个目标语句本身不同的其他样本,确定各个目标语句的负样本;并基于所述预训练好的Bert模型的参数,确定MoCo模型中的momentum encoder和encoder的初始参数值;基于各个目标语句的正样本和负样本,以及所述momentum encoder和encoder的初始参数值以及所述预设的对比学习损失函数,训练得到最终的momentum encoder和encoder;基于所述最终的encoder对应的参数确定为预训练好的句子相似特征提取模型的参数。4.如权利要求3所述的基于对比学习的相似句子搜索方法,其特征在于,所述预设的对比学习损失函数为:其中,表示第i个目标语句的编码表示hi与第i个目标语句对应的第s个正样本的momentum encoder编码表示的相似度;表示第i个目标语句的编码表示hi与第i个目
标语句对应的第p个正样本的encoder编码表示的相似度;表示第i个目标语句的编码表示hi与第i个目标语句对应的第j...

【专利技术属性】
技术研发人员:邹游聂虎何英杰
申请(专利权)人:特斯联科技集团有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1