文本相似度确定方法、装置、设备和介质

文档序号:1127733 发布日期:2020-10-02 浏览:11次 >En<

阅读说明:本技术 文本相似度确定方法、装置、设备和介质 (Text similarity determination method, device, equipment and medium ) 是由 余晓峰 瞿康 韩友 郑立涛 于 2020-06-12 设计创作,主要内容包括:本申请公开了一种文本相似度确定方法、装置、设备和介质,涉及自然语言处理技术。具体实现方案为:利用孪生网络结构中的两个特征提取网络,分别对第一输入文本和第二输入文本进行编码,得到第一输入文本和第二输入文本的句嵌入,其中,特征提取网络是利用词在网络中各层表征并通过区分词在文本中的重要性对文本进行编码;通过计算第一输入文本和第二输入文本的句嵌入之间的相似度,确定第一输入文本和第二输入文本的相似度。本申请实施例利用孪生网络架构确定文本相似度,并且利用词在网络中各层表征并通过区分词在文本中的重要性对文本进行编码,使得编码后得到的句嵌入更加符合文本的语义信息,准确性更高,从而提高文本相似度判断的准确性。(The application discloses a text similarity determination method, a text similarity determination device, text similarity determination equipment and a text similarity determination medium, and relates to a natural language processing technology. The specific implementation scheme is as follows: respectively coding a first input text and a second input text by utilizing two feature extraction networks in a twin network structure to obtain sentence embedding of the first input text and the second input text, wherein the feature extraction networks are used for coding the texts by utilizing word representation in each layer of the network and distinguishing the importance of the words in the texts; the similarity between the first input text and the second input text is determined by calculating the similarity between sentence embeddings of the first input text and the second input text. The method and the device for determining the text similarity determine the text similarity by using the twin network architecture, and encode the text by using the representation of words in each layer in the network and distinguishing the importance of the words in the text, so that sentences obtained after encoding are embedded into semantic information which is more consistent with the text, the accuracy is higher, and the accuracy of text similarity determination is improved.)

文本相似度确定方法、装置、设备和介质

技术领域

本申请涉及互联网领域,尤其涉及一种自然语言处理技术,具体涉及一种文本相似度确定方法、装置、设备和介质。

背景技术

文本相似度是指两段文本之间的语义相似程度。文本相似度计算是NLP(自然语言处理)领域中一个基础且非常关键的问题,在工业界中有着举足轻重的地位和丰富的应用场景,如信息检索、热门问题推荐和智能客服等。

因此,能否准确地确定出两个文本的相似度尤为重要。

发明内容

本申请实施例提供一种文本相似度确定方法、装置、设备和介质,以提高文本相似度确定的准确性。

第一方面,本申请实施例提供了一种文本相似度确定方法,包括:

利用孪生网络结构中的两个特征提取网络,分别对第一输入文本和第二输入文本进行编码,得到所述第一输入文本和第二输入文本的句嵌入,其中,所述特征提取网络是利用词在网络中各层表征并通过区分词在文本中的重要性对文本进行编码;

通过计算所述第一输入文本和第二输入文本的句嵌入之间的相似度,确定所述第一输入文本和第二输入文本的相似度。

第二方面,本申请实施例还提供了一种文本相似度确定装置,包括:

句嵌入获取模块,用于利用孪生网络结构中的两个特征提取网络,分别对第一输入文本和第二输入文本进行编码,得到所述第一输入文本和第二输入文本的句嵌入,其中,所述特征提取网络是利用词在网络中各层表征并通过区分词在文本中的重要性对文本进行编码;

相似度确定模块,用于通过计算所述第一输入文本和第二输入文本的句嵌入之间的相似度,确定所述第一输入文本和第二输入文本的相似度。

第三方面,本申请实施例还提供了一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请任意实施例所述的文本相似度确定方法。

第四方面,本申请实施例还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请任意实施例所述的文本相似度确定方法。

根据本申请实施例的技术方案,利用孪生网络架构确定文本相似度,并且利用词在网络中各层表征并通过区分词在文本中的重要性对文本进行编码,使得编码后得到的句嵌入更加符合文本的语义信息,准确性更高,从而提高文本相似度判断的准确性。

应当理解,本部分所描述的内容并非旨在标识本申请实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解,上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。

附图说明

附图用于更好地理解本方案,不构成对本申请的限定。其中:

图1是根据本申请第一实施例的文本相似度确定方法的流程示意图;

图2是根据本申请第二实施例的文本相似度确定方法的流程示意图;

图3是根据本申请第三实施例的文本相似度确定装置的结构示意图;

图4是用来实现本申请实施例的文本相似度确定方法的电子设备的框图。

具体实施方式

以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

图1是根据本申请第一实施例的文本相似度确定方法的流程示意图,本实施例可适用于判断文本相似度的情况,例如,在智能客服或热门问题推荐等场景下,从检索库中搜索与输入query(检索词)相似的文本。该方法可由一种文本相似度确定装置来执行,该装置采用软件和/或硬件的方式实现,优选是配置于电子设备中,例如计算机设备或服务器等。如图1所示,该方法具体包括如下:

S101、利用孪生网络结构中的两个特征提取网络,分别对第一输入文本和第二输入文本进行编码,得到所述第一输入文本和第二输入文本的句嵌入,其中,所述特征提取网络是利用词在网络中各层表征并通过区分词在文本中的重要性对文本进行编码。

其中,所述孪生网络结构(Siamese Network)中包括两个特征提取网络,这两个特征提取网络具有相同的网络结构,且共享网络参数,并用相同的方法对两个文本分别进行编码,将文本映射到新的空间中,得到文本的句嵌入(sentence embedding),即文本的向量表示。由于孪生网络结构是共享参数的,使得模型更小,更容易训练。

需要说明的是,在传统的编码方法中,网络各层对输入文本进行特征提取后,其pooling方法通常是利用网络中最后一层的输出,采用最大池化或平均池化等,获得文本最终的embedding,但文本是由很多个词构成的,由于其没有考虑词在文本中的重要性,使得最终无法获得高质量的句嵌入,也就无法进行精确的相似度计算和相似文本搜索。

因此,在本申请实施例中,编码时考虑词在文本中的重要性,例如,对于动词、名词或形容词,其重要性明显高于虚词或拟声词等;对文本语义有贡献的词的重要性也高于其他词。那么可以根据词的重要性对文本中的词进行区分,对重要性高的词的词向量加以更大的权重,对重要性低的词的词向量加以更小的权重,最终得到的句嵌入则能体现出不同词的重要性,使得句嵌入更加符合文本的语义信息,准确度更高。具体而言,可以利用词在网络中各层表征来区分词的重要性,因为网络中各层表征为各网络层输出的词向量或句向量的结果,不同层捕捉的是每个词的不同语言属性,那么通过跨层融合不同的语言信息,而不是只利用网络中最后一层的输出,则可以获得更精准的句子表示(sentenceembedding),能够更充分地提取出词在文本中的语义信息,进而才能准确地对词的重要性进行区分,从而得到高质量的句嵌入。

S102、通过计算所述第一输入文本和第二输入文本的句嵌入之间的相似度,确定所述第一输入文本和第二输入文本的相似度。

经特征提取网络分别得到第一输入文本和第二输入文本的句嵌入之后,可以通过分类器softmax计算两个句嵌入之间的相似度,从而确定第一输入文本和第二输入文本的相似度。例如,可以通过余弦相似度、曼哈顿距离或欧式距离等方法来计算句嵌入之间的相似度,本申请实施例对此不作任何限定。

由此,上述两个特征提取网络与softmax构成了一套完整的孪生网络架构,其中的两个特征提取网络共享参数,用于对输入文本进行编码,得到文本在新的空间中的向量表示,即句嵌入,softmax用于对两个文本的句嵌入进行相似度计算。训练时,可以对每一对训练样本是否相似进行标注,在训练阶段去最小化相似的一对样本的损失函数值,最大化不相似的一对样本的损失函数值。也即,通过训练,让网络从数据中去学习一个相似性度量,用这个学习出来的度量去对相似的文本句子生成相似的嵌入,从而用于比较新的未知样本。因此,这种孪生网络架构对于类别数量较多但又缺少训练样本的情况也是适用的,而且计算效率高。

在一种具体的实施方式中,所述特征提取网络为transformer网络。Transformer是一种NLP模型,其不仅计算速度快,而且准确度更高,将transformer网络与孪生网络结构相结合,利用transformer网络对输入的两个文本进行编码,然后再计算其相似度,使其能够具有更好的执行效率,适用于实时进行大规模语义相似度判断,以及基于语义相似度的搜索和回归等工业界应用,例如智能客服、热门问题推荐等。

本申请实施例的技术方案,利用孪生网络架构确定文本相似度,并且利用词在网络中各层表征并通过区分词在文本中的重要性对文本进行编码,使得编码后得到的句嵌入更加符合文本的语义信息,准确性更高,从而提高文本相似度判断的准确性。

图2是根据本申请第二实施例的文本相似度确定方法的流程示意图,本实施例在上述实施例的基础上,以transformer网络为例,对编码的操作进一步进行优化。如图2所示,该方法具体包括如下:

S201、利用孪生网络结构中的两个transformer网络,分别对第一输入文本和第二输入文本进行编码,得到所述第一输入文本和第二输入文本的句嵌入,其中,所述transformer网络是基于每个词的语境化词向量的加权和对文本进行编码。

其中,语境化词向量定义为词在transformer网络中各层表征的加权和。也就是说,由于transformer的不同层捕捉的是每个词的不同语言属性,因此,通过跨层融合不同的语言信息可以获得更精准的句子表示(sentence embedding),能够更充分地提取出词在文本中的语义信息,进而也能够体现出不同词的重要性,从而得到高质量的句嵌入。

因此,transformer网络对任意目标文本进行编码,得到所述目标文本的句嵌入的过程,包括:计算所述目标文本中每个词的语境化词向量,并对所述每个词的语境化词向量进行加权求和,得到所述目标文本的句嵌入;其中,所述语境化词向量为词在transformer网络中各层表征的加权和。

其中,每个词的语境化词向量所对应的权重,由每个词的贡献矩阵的对角线方差与各词的贡献矩阵的对角线方差之和的比值确定;

其中,所述贡献矩阵按照如下方式定义:

第j个词w(j)的贡献矩阵G中,每个矩阵元素gij的值为w(j)在所述transformer网络中第i层的表征与第j层的表征的相似度,其中,i和j均为自然数,所述对角线方差为offset-1对角线方差。

在一个实施例中,transformer网络中各层的表征为各层输出的词向量结果,通过第i层的表征与第j层的表征的相似度,来确定贡献矩阵中每个矩阵元素gij的值。在确定每个词的贡献矩阵之后,计算该矩阵的offset-1对角线方差,并计算出每个词的贡献矩阵的offset-1对角线方差与各词的贡献矩阵的offset-1对角线方差之和的比值,用该比值作为每个词的语境化词向量所对应的权重。而且,offset-1对角线方差大的词主要是重要的词,例如名词和动词,通常携带更丰富的语义信息,而offset-1对角线方差小的词,信息量较少,因此,将上述比值作为每个词的语境化词向量所对应的权重,那么重要的词方差越大,对应的权重就越大,从而实现对不同重要程度的词的区分,以得到更准确的句嵌入。

另外,所述词在transformer网络中各层表征所对应的权重,为各层中用于衡量词在文本中重要程度的参数的综合权重,所述参数至少包括对齐相似度和新颖度。通过对这些参数按照各自的占比求和,得到综合权重,而且同样的,越重要的词其权重越大,由此,进一步实现对不同重要程度的词的区分。

S202、通过计算所述第一输入文本和第二输入文本的句嵌入之间的相似度,确定所述第一输入文本和第二输入文本的相似度。

此外,在一种具体的实施方式中,还可以对模型进行剪枝和蒸馏,以优化模型的预测速度。

本申请实施例的技术方案,利用孪生网络架构确定文本相似度,并且通过跨层融合不同的语言信息,能够更充分地提取出词在文本中的语义信息,并基于此对词的重要性进行区分,从而获得更精准的句子表示,得到高质量的句嵌入,提高了文本相似度判断的准确性。

图3是根据本申请第三实施例的文本相似度确定装置的结构示意图,本实施例可适用于判断文本相似度的情况,例如,在智能客服或热门问题推荐等场景下,从检索库中搜索与输入query相似的文本。该装置可实现本申请任意实施例所述的文本相似度确定方法。如图3所示,该装置300具体包括:

句嵌入获取模块301,用于利用孪生网络结构中的两个特征提取网络,分别对第一输入文本和第二输入文本进行编码,得到所述第一输入文本和第二输入文本的句嵌入,其中,所述特征提取网络是利用词在网络中各层表征并通过区分词在文本中的重要性对文本进行编码;

相似度确定模块302,用于通过计算所述第一输入文本和第二输入文本的句嵌入之间的相似度,确定所述第一输入文本和第二输入文本的相似度。

可选的,所述特征提取网络为transformer网络。

可选的,所述两个特征提取网络共享网络参数。

可选的,所述特征提取网络对任意目标文本进行编码,得到所述目标文本的句嵌入的过程,包括:

计算所述目标文本中每个词的语境化词向量,并对所述每个词的语境化词向量进行加权求和,得到所述目标文本的句嵌入;

其中,所述语境化词向量为词在transformer网络中各层表征的加权和。

可选的,所述每个词的语境化词向量所对应的权重,由每个词的贡献矩阵的对角线方差与各词的贡献矩阵的对角线方差之和的比值确定;

其中,所述贡献矩阵按照如下方式定义:

第j个词w(j)的贡献矩阵G中,每个矩阵元素gij的值为w(j)在所述transformer网络中第i层的表征与第j层的表征的相似度,其中,i和j均为自然数。

可选的,所述词在transformer网络中各层表征所对应的权重,为各层中用于衡量词在文本中重要程度的参数的综合权重,所述参数至少包括对齐相似度和新颖度。

本申请实施例提供的文本相似度确定装置300可执行本申请任意实施例提供的文本相似度确定方法,具备执行方法相应的功能模块和有益效果。本实施例中未详尽描述的内容可以参考本申请任意方法实施例中的描述。

根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。

如图4所示,是根据本申请实施例的文本相似度确定方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。

如图4所示,该电子设备包括:一个或多个处理器401、存储器402,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图4中以一个处理器401为例。

存储器402即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的文本相似度确定方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的文本相似度确定方法。

存储器402作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的文本相似度确定方法对应的程序指令/模块(例如,附图3所示的句嵌入获取模块301和相似度确定模块302)。处理器401通过运行存储在存储器402中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的文本相似度确定方法。

存储器402可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据实现本申请实施例的文本相似度确定方法的电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器402可选包括相对于处理器401远程设置的存储器,这些远程存储器可以通过网络连接至实现本申请实施例的文本相似度确定方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

实现本申请实施例的文本相似度确定方法的电子设备还可以包括:输入装置403和输出装置404。处理器401、存储器402、输入装置403和输出装置404可以通过总线或者其他方式连接,图4中以通过总线连接为例。

输入装置403可接收输入的数字或字符信息,以及产生与实现本申请实施例的文本相似度确定方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置404可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。

此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、互联网和区块链网络。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

根据本申请实施例的技术方案,利用孪生网络架构确定文本相似度,并且利用词在网络中各层表征并通过区分词在文本中的重要性对文本进行编码,使得编码后得到的句嵌入更加符合文本的语义信息,准确性更高,从而提高文本相似度判断的准确性。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种使用DNA字符码存储文字点阵的方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!