一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种文本相似度计算方法、装置、设备及存储介质与流程

2022-02-22 03:41:02 来源:中国专利 TAG:


1.本发明涉及人工智能技术领域,尤其涉及一种文本相似度计算方法、装置、设备及存储介质。


背景技术:

2.文本相似度计算作为自然语言处理领域的经典任务,在长期实践中已经形成了很多方法。主要思路可分为几类。第一类是基于特征工程的方法。通过抽取文档中的关键词、主题词等信息,综合利用各种相似度方法计算与对比文档之间的语义相似度;第二类方法为了克服第一类方法只在字符层面匹配相似度的缺陷,通过深度神经网络将原始文本映射为更高语义层面的向量,再计算语义相似度,这类方法的泛化程度更高,健壮性更好。
3.针对文本中既包含文字,又包含数字和数学运算符号的情形,当前主流方法都是分别对文字、数字部分进行独立的相似度计算,后为每种方法赋予不同权重,最后以加权和为最终的文本相似度。
4.但是发明人发现,如此对每个部分的相似度不能从全局反映文本之间的实际相似度,而且权重的设置有较大的主观性,影响了最终结果的准确率和稳定性。


技术实现要素:

5.本发明实施例的目的在于提出一种文本相似度计算方法、装置、设备及存储介质,解决了现有技术中由于主观性设置参数影响到相似度计算结果的准确率和稳定性的问题。
6.为了解决上述技术问题,本发明实施例提供一种文本相似度计算方法,包括:识别待比对文本中的数学符号,根据预设的符号-文字字典查找所述数学符号对应的文字描述,并将所述待比对文本中的数学符号替换成查找到的文字描述;对待比对文本进行分词,基于所述分词计算所述待比对文本中每个句子的初级表征向量,其中所述待比对文本至少为两个;将不同的所述待比对文本中每个句子的初级表征向量输入到语义编码器,通过所述对应的语义编码器计算得到所述待比对文本的最终表征向量,所述语义编码器至少为两个;及所述语义编码器将所述待比对文本的最终表征向量输入到相似度计算器,获取不同两个待比对文本的相似度。
7.进一步的,所述基于所述分词计算所述待比对文本中每个句子的初级表征向量的步骤,具体包括:根据词向量模型,获得所述分词的词嵌入向量;根据题库模型,获得所述分词的语义角色向量;根据所述分词在句子中的索引位置,获得所述分词的位置向量;将所述待比对文本中每个句子分词后的词嵌入向量、语义角色向量和位置向量中每个维度的元素相加,得到每个句子的初级表征向量。
8.进一步的,所述题库模型预设了词语的核心论元、辅助论元和词语的语义角色所述根据题库模型,获得所述分词的语义角色向量的步骤,具体包括:统计所述待比对文本中各语义角色出现的频次,除以语义角色出现的总频次数,得到语义角色权重;根据所述核心论元、辅助论元和语义角色权重形成所述语义角色向量。
9.进一步的,所述根据所述核心论元、辅助论元和语义角色权重形成所述语义角色向量的步骤,具体包括:识别语义角色的种类,以所述词语的核心论元的种类为主,辅助论元的种类为辅,采用独热编码形式形成n维向量;在所述n维向量的所述核心论元所在的维度上,分别加上分词的所述语义角色权重,以形成所述语义角色向量。
10.进一步的,根据所述分词在句子中的索引位置,获得所述分词的位置向量的步骤,具体包括:根据以下公式计算所述位置向量:
[0011][0012][0013]
其中,pos表示分词在句子中处于第几个词,i为位置向量中的维度,dmodel表示给定的位置向量的维度。
[0014]
进一步的,所述将不同的所述待比对文本中每个句子的初级表征向量输入到对应的语义编码器的步骤之前,还包括:预先构建多语义编码器汇入相似度计算器的文本相似度计算模型,其中语义编码器至少为两个;所述语义编码器结构相同。
[0015]
进一步的,所述语义编码器将所述待比对文本的最终表征向量输入到相似度计算器,获取不同两个待比对文本的相似度的步骤,具体包括:基于所述多语义编码器汇入相似度计算器的文本相似度计算模型,每个所述语义编码器将接收到的待比对文本的最终表征向量输入到相似度计算器,所述相似度计算器对不同待比对文本的进行两两相似度计算,获取不同两个待比对文本的相似度。
[0016]
为了解决上述技术问题,本发明实施例还提供一种文本相似度计算装置,包括:第一处理模块,用于识别待比对文本中的数学符号,根据预设的符号-文字字典查找所述数学符号对应的文字描述,并将所述待比对文本中的数学符号替换成查找到的文字描述;第二处理模块,用于对待比对文本进行分词,基于所述分词计算所述待比对文本中每个句子的初级表征向量,其中所述待比对文本至少为两个;第三处理模块,用于将不同的所述待比对文本中每个句子的初级表征向量输入到语义编码器,通过所述对应的语义编码器计算得到所述待比对文本的最终表征向量,所述语义编码器至少为两个;文本相似度计算模块,用于接收至少两个语义编码器输入的所述待比对文本的最终表征向量,计算不同两个待比对文本的相似度。
[0017]
为了解决上述技术问题,本发明实施例还提供一种文本相似度计算设备,所述文本相似度计算设备包括处理器,存储器以及存储在所述存储器中的文本相似度计算程序,所述文本相似度计算程序被所述处理器运行时,实现如前所述的文本相似度计算方法的步骤。
[0018]
为了解决上述技术问题,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有文本相似度计算程序,所述文本相似度计算程序被处理器运行时,实现实现如前所述的文本相似度计算方法的步骤。
[0019]
与现有技术相比,本发明实施例主要有以下有益效果:通过识别待比对文本中的数学符号,根据符号-文字字典查找数学符号对应的文字描述,并将待比对文本中的数学符
号替换成查找到的文字描述,从而避免了现有技术中比对文本即包含文字,又包含数字和数学运算符号导致需要分别对文字、数字部分进行独立的相似度计算,主观设置各部分权重的缺点,从而提高了相似度计算最终结果的准确率和稳定性。
[0020]
此外,通过对待比对文本进行分词,并根据每个句子分词后的词嵌入向量、语义角色向量、位置向量三个方面来计算每个句子的初级表征向量,尤其是通过语义角色向量从语义角色考虑了句子中不同词的重要性,进一步提高了相似性度计算的准确性;基于多语义编码器汇入相似度计算器的文本相似度计算模型,能够简便的对不同的待比对文本进行两两比对,也提高了相似性度计算的效率。
附图说明
[0021]
为了更清楚地说明本发明中的方案,下面将对本发明实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0022]
图1根据本发明文本相似度计算方法的一个实施例的流程图;
[0023]
图2是根据本发明文本相似度计算模型的一个实施例的结构示意图;
[0024]
图3是根据本发明文本相似度计算装置的一个实施例的结构示意图;
[0025]
图4是根据本发明的文本相似度计算设备的一个实施例的结构示意图。
具体实施方式
[0026]
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明;本发明的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本发明的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
[0027]
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0028]
为了使本技术领域的人员更好地理解本发明方案,下面将结合附图,对本发明实施例中的技术方案进行清楚、完整地描述。
[0029]
本发明实施例提出了一种文本相似度计算方法、装置、设备及存储介质。本发明实施例的文本相似度计算方法一般由终端设备执行,该终端设备可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、mp3播放器(moving picture experts group audio layer iii,动态影像专家压缩标准音频层面3)、mp4(moving picture experts group audio layer iv,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
[0030]
如图1所示,示出了根据本发明的文本相似度计算方法的一个实施例的流程图。所述的文本相似度计算方法,包括以下步骤:
[0031]
步骤101,识别待比对文本中的数学符号,根据符号-文字字典查找所述数学符号对应的文字描述,并将所述待比对文本中的数学符号替换成查找到的文字描述。
[0032]
在本发明实施例中,预先设定数学符号与文字描述的对应关系,并根据所述对应关系形成符号-文字字典。具体地,获取数学运算符号集,例如加减乘除、平方、立方等,设定每种数学符号对应的文字描述,形成数学符号与文字描述对,所有的数学符号与文字描述对集合则形成符号-文字字典。以加法为例,在所述符号-文字字典的格式可以为[符号: ,文字描述:加、加上]。以上仅为举例,但并不限于此。每个文字描述可以包括所有对该符号的习惯性说法、同义词、近义词描述等。
[0033]
当有待比对文本中时,识别待比对文本中是否有数学符号,如果有数据符号时,根据预设符号-文字字典查找所述数学符号对应的文字描述,并将所述待比对文本中的数学符号替换成查找到的文字描述,形成只包含文字描述的待比对文本。
[0034]
步骤102,对所述待比对文本进行分词,基于所述分词计算所述待比对文本中每个句子的初级表征向量,其中所述待比对文本至少为两个。
[0035]
在本发明实施例中,按照一定的策略对待比对文本进行分词。可以是基于字典的分词,例如先把句子按照字典切分成词,再寻找词的最佳组合方式;所采用的算法可以是最大匹配分词算法、最短路径分词算法、基于n-grammodel的分词算法等。也可以是基于字的分词,例如由字构词,先把句子分成一个个字,再将字组合成词,寻找最优的切分策略,同时也可以转化成序列标注;所采用的算法可以是生成式模型分词算法、判别式模型分词算法、神经网络分词算法等。以上各种分词算法仅为举例,但并不限于此。
[0036]
基于所述分词计算所述待比对文本中每个句子的初级表征向量,具体为:根据词向量模型,获得所述分词的词嵌入向量;根据题库模型,获得所述分词的语义角色向量,所述题库模型预设了词语的核心论元、辅助论元和词语的语义角色;根据所述分词在句子中的索引位置,获得所述分词的位置向量;将所述待比对文本中每个句子分词后的词嵌入向量、语义角色向量和位置向量中每个维度的元素相加,得到每个句子的初级表征向量。
[0037]
其中,设定se
ij
为第i个句子第j个词对应的词嵌入向量。把语言单词嵌入到向量空间中称为词嵌入(word embedding),在本实施例中,词向量模型可采用谷歌开源的word2vec词嵌入向量,或者随机初始化谷歌开源的word2vec是一种词嵌入工具,它能生成词向量,通过词向量可以度量词与词之间的相似性。
[0038]
设定ss
ij
为第i个句子第j个词对应的语义角色向量。根据汉语语言学理论,句子中每个词都具有其特定语义角色,而语义角色可以分为核心论元与辅助论元两大类。在本实施例中,题库模型采用中文命题库(the chinese proposition bank),该中文命题库中定义了词语的核心论元、辅助论元和各类语义角色。设语义角色的种类为n,核心论元的种类为ncore,辅助论元的种类为naux,则仿照独热编码(one-hot)形式,可以形成n维向量。独热编码为某一维度是1,其它维度均为0的向量,即[1,0,0,0,...,0]。而在本发明实施例中的区别在于:在核心论元所在的维度上,加上其语义角色权重。其中语义角色权重计算方法为:统计所述待比对文本中各语义角色出现的频次,除以语义角色出现的总频次数。例如给予某核心论元0.2的权重,则最后形成的向量形式为[1.2,0,0,0,...,0]。其中,核心论元的维度是1,辅助论元的维度是0.
[0039]
设定sp
ij
为第i个句子第j个词的位置索引,每个位置索引对应的位置向量用pe表
示,计算公式如下:
[0040][0041][0042]
其中,pos表示分词在句子中处于第几个词,i为位置向量中的维度,dmodel表示给定的位置向量的维度,例如可以取数字512、1024来表示。
[0043]
步骤103,将不同的所述待比对文本中每个句子的初级表征向量输入到语义编码器,通过所述对应的语义编码器计算得到所述待比对文本的最终表征向量,所述语义编码器至少为两个。
[0044]
在本发明实施例中,语义编码器为深度神经网络训练的预训练语言模型,可以为bert、roberta、albert、ernie、electra等,并不作具体限定。
[0045]
预先构建多语义编码器汇入相似度计算器的文本相似度计算模型,其中语义编码器至少为两个,两个编码器结构相同,例如图2所示的,双塔编码器的文本相似度计算模型,即两个语义编码器分别接收两个不同的待比对文本中每个句子的初级表征向量,如图2中的语义编码器接收到待比对文本中每个句子的ss
ij
(第i个句子第j个词对应的语义角色向量),se
ij
(第i个句子第j个词对应的词嵌入向量)和sp
ij
(第i个句子第j个词的位置索引),然后可以采用均方差损失函数对接收到的待比对文本中每个句子的初级表征向量进行训练,以及在训练过程中采用sgd、adam等方法对训练结果进行优化,得到待比对文本的最终表征向量。
[0046]
步骤104,每个所述语义编码器将所述待比对文本的最终表征向量输入到相似度计算器,获取不同两个待比对文本的相似度。
[0047]
在本发明实施例中,基于多语义编码器汇入相似度计算器的文本相似度计算模型,每个所述语义编码器将接收到的待比对文本的最终表征向量输入到相似度计算器,所述相似度计算器对不同待比对文本的进行两两相似度计算,获取不同两个待比对文本的相似度。相似度计算器的相似度计算方法可以优选余弦相似度,当然也可以采用欧式距离、皮尔逊相关系数、修正余弦相似度、汉明距离、曼哈顿距离等,并不作具体限定。
[0048]
在本发明实施例中,通过识别待比对文本中的数学符号,根据符号-文字字典查找数学符号对应的文字描述,并将待比对文本中的数学符号替换成查找到的文字描述,从而避免了现有技术中比对文本即包含文字,又包含数字和数学运算符号导致需要分别对文字、数字部分进行独立的相似度计算,主观设置各部分权重的缺点,从而提高了相似度计算最终结果的准确率和稳定性。此外,通过对待比对文本进行分词,并根据每个句子分词后的词嵌入向量、语义角色向量、位置向量三个方面来计算每个句子的初级表征向量,尤其是通过语义角色向量从语义角色考虑了句子中不同词的重要性,进一步提高了相似性度计算的准确性;基于多语义编码器汇入相似度计算器的文本相似度计算模型,能够简便的对不同的待比对文本进行两两比对,也提高了相似性度计算的效率。
[0049]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介
质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)等非易失性存储介质,或随机存储记忆体(random access memory,ram)等。
[0050]
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0051]
进一步参考图3,作为对上述图1和2所示方法的实现,本发明提供了一种文本相似度计算装置300的一个实施例,该装置实施例与图1所示的方法实施例相对应。如图3所示,本发明实施例还提供一种文本相似度计算装置300,包括:
[0052]
第一处理模块31,用于识别待比对文本中的数学符号,根据预设的符号-文字字典查找所述数学符号对应的文字描述,并将所述待比对文本中的数学符号替换成查找到的文字描述;
[0053]
第二处理模块32,用于对待比对文本进行分词,基于所述分词计算所述待比对文本中每个句子的初级表征向量,其中所述待比对文本至少为两个;
[0054]
第三处理模块33,用于将不同的所述待比对文本中每个句子的初级表征向量输入到语义编码器,通过所述对应的语义编码器计算得到所述待比对文本的最终表征向量,所述语义编码器至少为两个;
[0055]
文本相似度计算模块34,用于接收至少两个语义编码器输入的所述待比对文本的最终表征向量,计算不同两个待比对文本的相似度。
[0056]
在本实施例的一些可选的实现方式中,所述第一处理模块,具体包括:设置子模块和替换子模块;其中所述设置子模块用于预先设定数学符号与文字描述的对应关系,并根据所述对应关系形成符号-文字字典;所述替换子模块用于识别待比对文本中的数学符号,根据预设的符号-文字字典查找所述数学符号对应的文字描述,并将所述待比对文本中的数学符号替换成查找到的文字描述。
[0057]
在本实施例的一些可选的实现方式中,所述第二处理模块,具体包括:向量生成子模块和向量计算子模块;其中所述向量生成子模块用于根据词向量模型,获得所述分词的词嵌入向量;根据题库模型,获得所述分词的语义角色向量,所述题库模型预设了词语的核心论元、辅助论元和词语的语义角色;根据所述分词在句子中的索引位置,获得所述分词的位置向量;所述向量计算子模块用于将所述待比对文本中每个句子分词后的词嵌入向量、语义角色向量和位置向量中每个维度的元素相加,得到每个句子的初级表征向量。
[0058]
在本实施例的一些可选的实现方式中,文本相似度计算装置,具体包括:构建子模块和相似度计算子模块;其中所述构建子模块用于预先构建多语义编码器汇入相似度计算器的文本相似度计算模型,其中语义编码器至少为两个,所述语义编码器结构相同;所述相似度计算子模块,用于将每个所述语义编码器接收到的待比对文本的最终表征向量输入到相似度计算器,所述相似度计算器对不同待比对文本的进行两两相似度计算,获取不同两个待比对文本的相似度。
[0059]
所述各模块所涉及到的向量生成、向量计算以及文本相似度计算等的方法可参照本发明文本前述的相似度计算方法发各个实施例,此处不再赘述。
[0060]
为解决上述技术问题,本技术实施例还提供计算机设备。具体请参阅图4,图4为本实施例计算机设备基本结构框图。
[0061]
所述计算机设备4包括通过系统总线相互通信连接存储器41、处理器42、网络接口43。需要指出的是,图中仅示出了具有组件41-43的计算机设备4,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(application specific integrated circuit,asic)、可编程门阵列(field-programmable gate array,fpga)、数字处理器(digital signal processor,dsp)、嵌入式设备等。
[0062]
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
[0063]
所述存储器41至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器41可以是所述计算机设备4的内部存储单元,例如该计算机设备4的硬盘或内存。在另一些实施例中,所述存储器41也可以是所述计算机设备4的外部存储设备,例如该计算机设备4上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。当然,所述存储器41还可以既包括所述计算机设备4的内部存储单元也包括其外部存储设备。本实施例中,所述存储器41通常用于存储安装于所述计算机设备4的操作系统和各类应用软件,例如文本相似度计算方法的计算机可读指令等。此外,所述存储器41还可以用于暂时地存储已经输出或者将要输出的各类数据。
[0064]
所述处理器42在一些实施例中可以是中央处理器(central processing unit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器42通常用于控制所述计算机设备4的总体操作。本实施例中,所述处理器42用于运行所述存储器41中存储的计算机可读指令或者处理数据,例如运行所述文本相似度计算方法的计算机可读指令。
[0065]
所述网络接口43可包括无线网络接口或有线网络接口,该网络接口43通常用于在所述计算机设备4与其他电子设备之间建立通信连接。
[0066]
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有文本相似度计算程序,所述文本相似度计算程序被处理器运行时,实现实现如前所述的文本相似度计算方法的步骤。所述文本相似度计算程序被执行时所实现的方法可参照本发明文本相似度计算方法发各个实施例,此处不再赘述。
[0067]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质
(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0068]
显然,以上所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,附图中给出了本发明的较佳实施例,但并不限制本发明的专利范围。本发明可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本发明的公开内容的理解更加透彻全面。尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本发明说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本发明专利保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献