CN109858015B - 一种基于ctw和km算法的语义相似度计算方法及装置 - Google Patents
一种基于ctw和km算法的语义相似度计算方法及装置 Download PDFInfo
- Publication number
- CN109858015B CN109858015B CN201811517145.3A CN201811517145A CN109858015B CN 109858015 B CN109858015 B CN 109858015B CN 201811517145 A CN201811517145 A CN 201811517145A CN 109858015 B CN109858015 B CN 109858015B
- Authority
- CN
- China
- Prior art keywords
- distance
- ctw
- text
- word
- matrix
- 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
- 238000004364 calculation method Methods 0.000 title claims abstract description 69
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 41
- 239000013598 vector Substances 0.000 claims abstract description 127
- 238000000034 method Methods 0.000 claims abstract description 85
- 230000011218 segmentation Effects 0.000 claims abstract description 30
- 238000013507 mapping Methods 0.000 claims abstract description 17
- 239000011159 matrix material Substances 0.000 claims description 73
- 239000011229 interlayer Substances 0.000 claims description 33
- 230000009466 transformation Effects 0.000 claims description 16
- 238000012549 training Methods 0.000 claims description 11
- 238000010219 correlation analysis Methods 0.000 claims description 9
- 238000013528 artificial neural network Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 8
- 238000003491 array Methods 0.000 claims description 7
- 230000003247 decreasing effect Effects 0.000 claims description 5
- 239000000203 mixture Substances 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 3
- 238000009472 formulation Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 13
- 238000013135 deep learning Methods 0.000 abstract description 6
- 230000007547 defect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 238000003058 natural language processing Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 239000010410 layer Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000008909 emotion recognition Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000513 principal component analysis Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于CTW和KM算法的语义相似度计算方法及装置,其中的方法针对于现有技术中语义相似度计算方法中未考虑分词顺序对语义的重要影响的弊端,在保持单个语义判定规则的同时,考虑了顺序对句子的影响。该计算方法利用Word2Vec深度学习平台将文本划分为多维空间的分词向量,并映射到多维向量空间,并将向量连接构成多维空间下的曲线,借用图像中的曲线相似度中较新的时间翘曲距离来通过词向量曲线来比较多个文本的相似度,为了减少计算规模,采用了KM算法。该方法与传统的最长公共子串、词频统计等方法比较,具有更强的鲁棒性,对于传统方法无法克服的分词相同语序不同的语句具有明显的效果,提高了计算的准确性。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种基于CTW和KM算法的语义相似度计算方法及装置。
背景技术
随着人工智能技术的日益深入,自然语言处理领域的研究变得越来越重要。相似度的计算作为自然语言处理领域基本并且核心的问题,在很多人工智能领域有着广泛的应用,例如,在机器翻译、语音识别、文字情感识别、自动作文等方面,均需要用相似度模型来衡量文本中词语的可替换程度或计算问题与答案之间的匹配程度。相似度计算也成为备受众多自然语言处理研究者关注的研究课题。
目前,随着词向量概念的提出,很多研究学者将传统的相似度算法与词向量结合起来,在句子相似度计算的准确率上有很大的提升。田星等在解决句子相似度的问题上,将传统的Jaccard算法与词向量相结合,以语义层面的高维向量代替原来的字面量,通过计算词向量间的相似度,以自设定的阈值来区分共现部分,在相似度的准确率上有提升,但是该算法在中文文本相似度的计算上效果不尽人意。针对汉语,李茹等提出结合汉语框架语义对进行框架语义分析,来达到刻画语义的目的,由此计算的相似度效果传统的方法更好,但是现有的汉语语义资源中框架的覆盖率较低,在进行语义分析时有局限。针对基于路径方法中普遍存在的密度不均匀性问题,郭承湘等提出了融合路径距离与信息内容方法,通过一个平滑参数将路径和信息内容融合调整概念间的语义距离,使路径方法计算的相似度值更加合理,以此方法计算相似度具有较强的鲁棒性,但是一些词典的特殊性使得信息内容的方法体现不出任何效果。针对句子数据稀疏和缺乏语义的问题,黄栋等提出词向量和EMD距离相结合的方法,使用Skip-gram模型训练得到特征词语义的词向量,使用欧式距离计算特征词相似度,使用EMD距离计算相似度,与传统方法相比有一定的提升,但是算法中未考虑词性和语序的影响。
本发明申请人在实施本发明的过程中,发现现有技术中的方法至少存在如下问题:
现有的语义相似度算法中,仅考虑了单个分词语义从而导致判别失真的问题,即,现有技术的方法存在准确率不高的技术问题。
发明内容
有鉴于此,本发明提供了一种基于CTW和KM算法的语义相似度计算方法及装置,用以解决或者至少部分解决现有技术的方法存在准确率不高的技术问题。
本发明第一方面提供了一种基于CTW和KM算法的语义相似度计算方法,包括:
步骤S1:选择预设语料库,并通过预设词向量结合神经网络学习的方法训练,获得词向量空间,其中,词向量空间中的每个词向量用以表征该分词的语义信息;
步骤S2:将待比较文本与源文本进行分词,再根据所述词向量空间,分别建立与待比较文本、源文本对应的词分量数组;
步骤S3:依次计算待比较文本中的每个分词与源文本中的每个分词的CTW距离;
步骤S4:根据计算出的CTW距离构建CTW矩阵;
步骤S5:将分词对应的词分量,按照待比较文本、源文本分为第一集合和第二集合,其中,第一集合和第二集合中的每个词分量对应一个顶点,并根据顶点和CTW矩阵建立与待比较文本、源文本对应的第一超平面和第二超平面,再计算第一超平面与第二超平面之间的层间距离,同时求得第二超平面对应的映射法向量;
步骤S6:计算第二超平面对应的映射法向量与待比较文本中向量点的距离,将其作为平面内距离;
步骤S7:根据层间距离和平面内距离,计算待比较文本与源文本之间的相似度。
在一种实施方式中,步骤S3具体包括:
步骤S3.1:采用动态规划方法DTW中的预设公式计算Wx,Wy,该预设公式具体为:
步骤S3.3:利用单位矩阵初始化Vx和Vy;
步骤S3.4:采用典型相关分析方法CCA计算Vx和Vy;
步骤S3.5:重复执行步骤S3.1,采用预设规则改变Wx、Wy、Vx和Vy的值,根据预设公式计算CTW距离值Jctw,当连续两次计算出的CTW距离值Jctw满足预设条件时,则取当前的Jctw作为CTW距离。
在一种实施方式中,步骤S4具体包括:
将步骤S3计算出的CTW距离对应的矩阵进行维度扩展,转换为n*n维的矩阵,其中,n=min{dx,dy},dx×dy为CTW距离对应的矩阵的大小。
在一种实施方式中,步骤S5具体包括:
步骤S5.1:初始化可行顶标的值,对两边的每一个顶点都赋予一个额外的值Lx(x)=max{w(x,yi)}i=1,2,....,dy,Ly(y)=0,使得对于二分图G内的所有边e=xiyj均有Lx(x)+Ly(y)≥w(xy),对于一个赋值二分图G(X,Y,E,W),X,Y代表二分图的两边顶点标号,E代表边的权值;
步骤S5.2:在已经赋值可行顶标的二分图中,保留所有Lx(x)+Ly(y)=w(xy)的边,删去其他的边,获得生成子图,再采用匈牙利算法KM寻找生成子图的完备匹配,其中完备匹配用以表示所有的顶点都是匹配点的图;
步骤S5.3:判断是否找到完备匹配,如果未找到,则通过修改可行顶标的值进行调整,继续执行步骤S5.2;
步骤S5.4:根据找出的完备匹配,求出二分图的最小路径覆盖的路径的最小值和最大值,将最小值和最大值作为层间距离的最小值和层间距离的最大值。
在一种实施方式中,步骤S5.3中,通过修改可行顶标的值进行调整,具体包括:
根据最后一次不成功的寻找交错路的深度优先遍历,取所有i被访问到而j没被访问到的边(i,j)的Lx(x)+Ly(y)-w(xy)的最小值d;
将交错树中的所有左端点的顶标减小d,右端点的顶标增加d。
在一种实施方式中,步骤S7具体包括,
通过距离计算公式计算待比较文本与源文本中向量的距离,距离计算公式具体为:
其中,Dlayer-layer-min为层间距离的最小值,Dlayer-layer-max为层间距离的最小值,Dlayer-in-f'为平面内距离的最小值,Dlayer-in-max为平面内距离的最大值;
将待比较文本与源文本中向量的距离作为二者之间的相似度。
基于同样的发明构思,本发明第二方面提供了一种基于CTW和KM算法的语义相似度计算装置,包括:
词向量空间获得模块,用于选择预设语料库,并通过预设词向量结合神经网络学习的方法训练,获得词向量空间,其中,词向量空间中的每个词向量用以表征该分词的语义信息;
词分量数组建立模块,用于将待比较文本与源文本进行分词,再根据所述词向量空间,分别建立与待比较文本、源文本对应的词分量数组;
CTW距离计算模块,用于依次计算待比较文本中的每个分词与源文本中的每个分词的CTW距离;
CTW矩阵构建模块,用于根据计算出的CTW距离构建CTW矩阵;
层间距离计算模块,用于将分词对应的词分量,按照待比较文本、源文本分为第一集合和第二集合,其中,第一集合和第二集合中的每个词分量对应一个顶点,并根据顶点和CTW矩阵建立与待比较文本、源文本对应的第一超平面和第二超平面,再计算第一超平面与第二超平面之间的层间距离,同时求得第二超平面对应的映射法向量;
平面内距离计算模块,用于计算第二超平面对应的映射法向量与待比较文本中向量点的距离,将其作为平面内距离;
相似度计算模块,用于根据层间距离和平面内距离,计算待比较文本与源文本之间的相似度。
在一种实施方式中,CTW距离计算模块具体用于执行下述步骤:
步骤S3.1:采用动态规划方法DTW中的预设公式计算Wx,Wy,该预设公式具体为:
步骤S3.3:利用单位矩阵初始化Vx和Vy;
步骤S3.4:采用典型相关分析方法CCA计算Vx和Vy;
步骤S3.5:重复执行步骤S3.1,采用预设规则改变Wx、Wy、Vx和Vy的值,根据预设公式计算CTW距离值Jctw,当连续两次计算出的CTW距离值Jctw满足预设条件时,则取当前的Jctw作为CTW距离。
在一种实施方式中,CTW矩阵构建模块具体用于执行下述步骤:
将步骤S3计算出的CTW距离对应的矩阵进行维度扩展,转换为n*n维的矩阵,其中,n=min{dx,dy},dx×dy为CTW距离对应的矩阵的大小。
基于同样的发明构思,本发明第三方面提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被执行时实现第一方面的所述的方法。
本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:
在本发明一种CTW和KM算法的语义相似度计算方法,针对于现今语义相似度计算方法中未考虑分词顺序对语义的重要影响的弊端,在保持单个语义判定规则的同时,考虑了顺序对句子的影响。该算法利用深度学习平台将文本划分为多维空间的分词向量,并映射到多维向量空间,并将向量连接构成多维空间下的曲线,借用图像中的曲线相似度中较新的时间翘曲距离(CTW距离)来通过词向量曲线来比较多个文本的相似度,可以提高相似度计算的准确性。此外为了减少计算规模,采用了KM算法。该方法与传统的最长公共子串、词频统计等方法比较,兼顾突出了单个分词与句子整体的语义特征,具有更强的鲁棒性,对于传统方法无法克服的分词相同语序不同的语句具有明显的效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种基于CTW和KM算法的语义相似度计算方法的流程图;
图2为本发明实施例中构建的语义超平面示意图;
图3为本发明实施例中分词向量的二分图的示意图;
图4为本发明实施例中一种基于CTW和KM算法的语义相似度计算装置的结构框图;
图5为本发明实施例中计算机可读存储介质的结构图。
具体实施方式
本发明公开了一种基于CTW和KM算法的语义相似度计算方法,针对于现有语义相似度计算方法中未考虑分词顺序对语义的重要影响,而导致的判别失真(即准确性不高)问题,在保持单个语义判定规则的同时,考虑了顺序对句子的影响。具体采用Word2Vec深度学习平台将文本划分为多维空间的分词向量,并映射到多维向量空间,并将向量连接构成多维空间下的曲线,借用图像中的曲线相似度中较新的时间翘曲距离(CTW距离)来通过词向量曲线来比较多个文本的相似度,为了减少计算规模,采用了KM算法。该方法与传统的最长公共子串、词频统计等方法比较,兼顾突出了单个分词与句子整体的语义特征,具有更强的鲁棒性,对于传统方法无法克服的分词相同语序不同的语句具有明显的效果。
为了达到上述的目的,本发明的主要构思如下:采用语义转化的思想,假定任何语义可以通过转化相互得到,先研究每个分词语义的距离,进一步过度到整体句子语义的距离。即通过计算超平面的层间距离(用平面法向量表示)与平面的层内距离(用与平面法向量垂直的平面表示)的平方和来衡量语义距离。该方案既考虑了每个分词的相似性,又考虑了形成句子后整体的相似性,提高了相似度计算的准确性,经实验验证具有良好的效果。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本实施例提供了一种基于CTW和KM算法的语义相似度计算方法,请参见图1,该方法包括:
首先执行步骤S1:选择预设语料库,并通过预设词向量结合神经网络学习的方法训练,获得词向量空间,其中,词向量空间中的每个词向量用以表征该分词的语义信息。
具体来说,可以利用Word2Vec深度学习平台对预设语料库进行训练,得到词向量,最终获得具有200维特征的词向量数据形成分词向量库(词向量空间)。
Word2Vec来源于Google开发的词向量计算模型,其利用深度学习的思想,可以从大规模的文本数据中自动学习词语数据的本质信息。Deep-Learning(深度学习)通过构建具有很多隐层的机器学习模型和海量的训练数据来学习数据中更加有用的特征,而且学习到的特征能够更加准确地反映数据的本质。Word2Vec主要采用CBOW(Continuous Bag-of-WordsModel)和Skip-Gram(Continuous Skip-Gram Model)两种模型。无论是CBOW模型还是Skip-Gram模型,都是以Huffman树作为基础。Huffman树中非叶节点存储的中间向量的初始化值是零向量,叶节点对应的单词的词向量是随机初始化的。CBOW的目标是根据上下文来预测当前词语的概率,而Skip-Gram恰好相反,它是根据当前词语来预测上下文的概率,这两种方法都利用人工神经网络作为它们的分类算法。起初,每个单词都是一个随机N维向量,经过训练之后,利用CBOW或者Skip-Gram方法获得每个单词的最优向量。
然后执行步骤S2:将待比较文本与源文本进行分词,再根据所述词向量空间,分别建立与待比较文本、源文本对应的词分量数组。
具体来说,可以采用现有的工具或组件进行分词,例如用于中文分词的jieba分词。
在具体的实施过程中,通过jieba分词将待比较文本Q1和Q2划分成长度分别为m和n的词组,从词向量库中检索出对应的词向量,得到Q1和Q2对应的词分量数组VEC1和VEC2。设dx和dy为Q1和Q2分词的个数。设定输入的句子为字符串Q1,Q2,Q3。可以建立如图2所示的语义超平面。以每个句子的分词作为1个向量。
接下来执行步骤S3:依次计算待比较文本中的每个分词与源文本中的每个分词的CTW距离。
具体来说,本申请发明人通过大量的实验得知:每个文本由分词构成,将分词映射到向量空间中,每个分词向量顶点的连线则构成了一条特殊的曲线。不同的语句构成了不同的曲线,这样,比较语句的相似度可以转换为比较空间的2条曲线相似度,这种方法为本发明通过图像相似度的原理解决语义相似度问题提供了一种新的思路,从而可以从曲线的形状和大小尺度2方面进行比较。
在分词数目以及内容确定的情况下,无论如何调整分词之间的顺序,由这些分词构成的语义不会有大的变化。正如在阅读时经常读一些语序混乱的句子,但大多数情况下能够得到正确的语义。在设计方法时,本发明考虑了分词语义的基本含义以及分词的顺序。首先设计了基于语义的超平面,每个超平面由句子的每个分词向量和构成。这样,每个句子分词向量点构成的曲线则都处于某个超平面之中。本发明需要考虑曲线之间的整体距离以及曲线之间的形状相似度。
由于每个句子曲线必定处于相应的超平面中,因此,句子间的语义整体距离转化为超平面之间的距离,平面之间的距离绝对值本身不能准确代表2句的语义相似度,这个距离的相对大小是有意义的,假设平面M1与M2、M3的距离分别是0.3、0.4,数值0.3和0.4本身没有具体的单位如厘米、米等衡量单位,但是相对来说,M1和M2距离为0.3,小于0.4,则代表M1和M2更相似。其归一化后的相对大小可以理解为两个超平面之间整体的相似度,由于研究对象为2个超平面内的2个点,需要进一步衡量内在的2个点之间的相似度。
在曲线的形状方面本发明具体采用规范时间扭曲(Canonical time warping-CTW)来衡量。CTW用于两个时间序列之间的时空对准。为了适应对象的可变性,并考虑到信号维度的差异,CTW使用CCA方法作为空间对准的度量。为了允许时间变化,CTW通过添加能够调整不同维度的信号的特征加权机制来扩展DTW。设有2条曲线s1和s2,CTW通过迭代执行空间转换和动态时间扭曲的参考序列下标ni和查询序列下标mi找到与序列之间最小对齐距离。序列{si}可以是标量或矢量列表,与动态时间扭曲相比,曲线s1和s2中的元素可以有不同的维度。距离公式通过公式(1)来计算,具体为:
此处的s1[ni]和s2[mi]为曲线中相应的点元素,α和β是通过使用CCA(canonicalcorrelation analysis典型相关分析)方法计算的空间转换矩阵。CCA典型相关分析(Canonical Correlation Analysis)是研究两组变量之间相关关系的一种多元统计方法。它能够揭示出两组变量之间的内在联系。在一元统计分析中,用相关系数来衡量两个随机变量的线性相关关系,用复相关系数研究一个随机变量与多个随机变量的线性相关关系。然而,这些方法均无法用于研究两组变量之间的相关关系,CCA则在此方面有着较好的效果。其基本思想和主成分分析非常相似。首先,在每组变量中寻找出变量的线性组合,使得两组的线性组合之间具有最大的相关系数;然后选取和已经挑选出的这对线性组合不相关的另一对线性组合,并使其相关系数最大,如此下去,直到两组变量的相关性被提取完毕为止。被选出的线性组合配对称为典型变量,它们的相关系数称为典型相关系数。
然后利用CanonicalWarpingCorrespondence可以获得计算距离的对应关系。CTW具有3个性质:平移不变性、旋转不变性和标度不变性。因此,CTW可以最大程度地发掘曲线的相似性,使得典型时间翘曲距离在曲线相似的情况下数值很小,避免了传统欧式距离测度算法的局限性。
在一种实施方式中,步骤S3具体包括:
步骤S3.1:采用动态规划方法DTW中的预设公式计算Wx,Wy,该预设公式具体为:
步骤S3.3:利用单位矩阵初始化Vx和Vy;
步骤S3.4:采用典型相关分析方法CCA计算Vx和Vy;
步骤S3.5:重复执行步骤S3.1,采用预设规则改变Wx、Wy、Vx和Vy的值,根据预设公式计算CTW距离值Jctw,当连续两次计算出的CTW距离值Jctw满足预设条件时,则取当前的Jctw作为CTW距离。
具体来说,DTW是上世纪60年代由日本学者提出的一种通过规整语音信号长度来进行语音识别的算法。DTW结合了时间规整和距离测算,在成对样本时间特征最优匹配的情况下使得样本间差别最小,即距离测度最小。在DTW的计算中,可以根据计算的实际需要改变最大迭代次数、在动态时间规整中使用的距离函数等参数。设给定两个时间序列,和动态时间弯曲DTW是最佳对齐x和y的样本的技术,使得以下的平方和成本最小化:
这里m是对齐2个信号所需要的步骤数目,相应的矩阵对应矩阵P可以由一对路径向量P=[px,py]∈R2×m参数化,其中px∈{1:nx}m×1和py∈{1,ny}m×1表示帧中的对齐组成。例如,对于某个时刻t,如果存在则X中的第i帧和Y中的第j帧对齐;P必须满足三个附加约束:边界条件(P1≡[1,1]T和Pm≡[a,b]T、(左下角到右上角)连续性(0≤Pt-Pt-1≤1)和单调性(保证顺序单调增加,矩阵从左上到右下虽然在a和b中对齐X和Y的可能方法的数量是指数,但是动态规划提供了一个有效的复杂度为O(ab)的最小化方法。该方法利用Bellman方程最小化JDTW。
其中成本-去成本值函数L*(Pt)表示按照最优策略π*从第t步开始产生的剩余成本。策略函数π:{1:a}×{1:b}→{[1,0]T,[0,1]T,[1,1]T}三个方向走,沿着行沿着列沿着对角线,定义了连续步骤之间的确定性转换,pt+1=pt+π(pt)。一旦确定了策略队列,则可以从起点递归地构造对齐步骤,p1=[1,1]T。
步骤S3.2中,在DTW的最小平方形式基础上继续增加线性变换,通过这种变换允许对准具有不同维度的时间信号(例如,视频和运动捕获)。CTW通过最小化DTW和CCA结合,即公式(6):
Wx和Wy在时间上扭曲信号以实现最佳的时间对准。类似于CCA,为了使CTW具有平移不变性、旋转不变性和缩放不变性,可以施加以下约束:
步骤S3.3中,首先用单位矩阵初始化Vx和Vy,由于每个分词的数值列表均来自Word2Vec学习得到的200维向量,所以dx=dy,如果dx≠dy且为低维,可以使用PCA(principal components analysis主成分分析)独立应用于每个集合,并作为Vx和Vy的初始估计。
步骤S3.4中,使用DTW求解Wx,Wy后,在高维数据情况下,可以使用CCA计算Vx,Vy。广义特征值问题通过正则化协方差矩阵加标度恒等矩阵来解决。选择维度B以保持总相关性的90%。设置列是如下矩阵b的广义广义特征向量:
步骤S3.4中,重复步骤S3.1,根据情况选择不同的Wx,Wy和Vx,Vy。依据公式(5)计算的Jctw的连续两次值之间的差值较小时,则认为算法收敛,即满足预设条件,此时取当前值为CTW距离。
然后执行步骤S4:根据计算出的CTW距离构建CTW矩阵。
具体来说,通过计算出的CTW距离可以得到对应的矩阵,然后补齐其他数据,则可以构建CTW矩阵。
在一种实施方式中,步骤S4具体包括:
将步骤S3计算出的CTW距离对应的矩阵进行维度扩展,转换为n*n维的矩阵,其中,n=min{dx,dy},dx×dy为CTW距离对应的矩阵的大小。
具体来说,根据步骤S3中的CTW距离可以得到一个大小为dx×dy的CTW距离矩阵。为了减少维数差异对结果判定的影响,比较dx和dy的大小,令m=dx,n=dy。如假设m<n,则将较小的维度扩展成高维度。扩展方法为将较短的维数如S1依次以最后一个列向量填充至高维,得到目标CTW矩阵Dctw,具体如式(8)所示。
接下来执行步骤S5:将分词对应的词分量,按照待比较文本、源文本分为第一集合和第二集合,其中,第一集合和第二集合中的每个词分量对应一个顶点,并根据顶点和CTW矩阵建立与待比较文本、源文本对应的第一超平面和第二超平面,再计算第一超平面与第二超平面之间的层间距离,同时求得第二超平面对应的映射法向量。
具体来说,可以通过KM算法来计算两个超平面之间的层间距离。
请参见图3,为分词向量的二分图的示意图。KM算法是通过给每个顶点一个标号(顶标)将求最大权匹配的问题转化为求二分图最大匹配的问题。最大匹配通常假定假设每条边有权值,那么会存在一个最大权值的匹配情况。二分图又称作二部图,是图论中的一种特殊模型。设G=(V,E)是一个无向图。如果顶点集V可分割为两个互不相交的子集X和Y,并且图中每条边连接的两个顶点一个在X中,另一个在Y中,则称图G为二分图。
设顶点Xi的顶标为a[i],顶点Yi的顶标为b[j]。初始时为了使a[i]+b[j]>=w(i,j)恒成立,令a[i]为与Xi相关联的边的最大权值,b[j]=0。如果当前的相等子图没有完备匹配,就适当修改顶标以扩大相等子图,直到找到完备匹配为止。
在寻找最接近的层间距离时,需要如果对2个句子之间词向量的所有排序情况都进行计算寻找最优解,如句子Q1有M个词向量,句子Q2有N个词向量,若N>M,则最少将会有M!种排列组合,复杂度非常高,从而采取将排序问题建模转换为图论KM二分图最大匹配问题来解决。
由于中文词语具有较为丰富的语义信息,为了更好的比对词语间的相似度,先用神经网络训练语料,获得具有200维语义信息的特征向量,再通过DTW将分词模拟成空间中的点,将模拟成空间中的曲线,把两个相似度的计算转换为空间中两条曲线相互变换的距离和复杂度,以此解决了汉语语义的问题,通过匈牙利算法寻找两个相互转换的最优方案,以此解决了语序的问题。通过实验测试,本文使用的方法在汉语相似度计算上相对于传统的计算模型有较好的效果。特征选择的目的是从数据中提取出重要的特征,移除冗余的特征。特征选择能够减少数据维度,提高预测性能,减少过拟合和增强对特征和特征值之间的理解等优点。在实际应用中,所要分类的数据常常拥有大量冗余的特征,这就意味着数据中的某些特征可以被其他特征所代替,而被代替的特征在分类的过程中可以被移除,更进一步来讲,特征之间的相互联系对分类的输出效果有很大的影响,如果可以能找出之间的联系,那么就能挖掘出潜藏在数据中的大量信息。
在一种实施方式中,步骤S5具体包括:
步骤S5具体包括:
步骤S5.1:初始化可行顶标的值,对两边的每一个顶点都赋予一个额外的值Lx(x)=max{w(x,yi)}i=1,2,....,dy,Ly(y)=0,使得对于二分图G内的所有边e=xiyj均有Lx(x)+Ly(y)≥w(xy),对于一个赋值二分图G(X,Y,E,W),X,Y代表二分图的两边顶点标号,E代表边的权值;
步骤S5.2:在已经赋值可行顶标的二分图中,保留所有Lx(x)+Ly(y)=w(xy)的边,删去其他的边,获得生成子图,再采用匈牙利算法KM寻找生成子图的完备匹配,其中完备匹配用以表示所有的顶点都是匹配点的图;
步骤S5.3:判断是否找到完备匹配,如果未找到,则通过修改可行顶标的值进行调整,继续执行步骤S5.2;
步骤S5.4:根据找出的完备匹配,求出二分图的最小路径覆盖的路径的最小值和最大值,将最小值和最大值作为层间距离的最小值和层间距离的最大值。
在具体的实施过程中,将各个词分量按S1和S2分为2个集合,每个词向量对应着1个顶点。所有顶点可以分成两个集:S1和S2,2个顶点集合之间的连线权重即为步骤S4中计算出的CTW距离矩阵。其中S1和S2中的任意两个在同一个集中的点都不相连,而来自X集的顶点与来自Y集的顶点有连线。当这些连线被赋予一定的权重时,这样的集合组成了一个带权二分图。
从不同行、不同列中各取一个距离求和,作为2个句子Q1和Q2整体之间的转换距离。此时,可以理解为2个超平面之间的距离。那么问题转换为二分图带权最优匹配:对于二分图的每条边都有一个权(非负),要求一种完备匹配方案(如果一个图的某个匹配中,所有的顶点都是匹配点,那么它就是一个完备匹配),使得所有匹配边的权和最小或最大,记做最优完备匹配。
在具体的实施过程中,可以采用KM算法来实现,设求出的二分图的最小路径覆盖的路径最小值为Dlayer-layer-min,此值为语义层间距离:
并记录在该最小路径覆盖下的对应超平面M2的映射点为S2',S2'与S2的词分量完全一样,仅顺序不同,且均在同一个超平面M2内,可认为S2'可以经过若干变换转化为S2。设S2'点顺序为同理,可以求出二分图的最小路径覆盖的路径最长值Dlayer-layer-max,
在一种实施方式中,步骤S5.3中,通过修改可行顶标的值进行调整,具体包括:
根据最后一次不成功的寻找交错路的深度优先遍历,取所有i被访问到而j没被访问到的边(i,j)的Lx(x)+Ly(y)-w(xy)的最小值d;
将交错树中的所有左端点的顶标减小d,右端点的顶标增加d。
具体来说,根据最后一次不成功的寻找交错路的DFS(深度优先遍历),取所有i被访问到而j没被访问到的边(i,j)的的最小值d。将交错树中的所有左端点的顶标减小d,右端点的顶标增加d。经过这样的调整以后,原本在导出子图里面的边,两边的顶标都变了,不等式的等号仍然成立,仍然在导出子图里面;原本不在导出子图里面的边,它的左端点的顶标减小了,右端点的顶标没有变,而且由于d的定义,不等式仍然成立,所以他就可能进入了导出子图里。
再执行步骤S6:计算第二超平面对应的映射法向量与待比较文本中向量点的距离,将其作为平面内距离。
具体来说,将步骤S5中求出的第二超平面对应的映射法向量作为X在超平面M2上的法向量映射点S2',其中,S2'与S2的词分量完全一样,仅顺序不同,且均在同一个超平面内,即认为S2'可以经过若干变换转化为S2。因此,做出如下设定:
为了归一化,求出
其中,为{1,2...,dy}各种排列组合,有dy!种组合变化,虽然变化很多,但只需要计算1次,后面的计算可以直接应用结果。例如:{1,2,3,…,8}序列的排列组合数有8!种变化。计算2个序列的CTW距离结果为:CanonicalWarpingDistance[{3,7,5,4,1,2,6,8},{1,2,3,4,5,6,7,8}]=13.33。
步骤S7:根据层间距离和平面内距离,计算待比较文本与源文本之间的相似度。
具体来说,可以根据距离公式来进行计算。进一步地,可以通过步骤S1~S7的方法计算句子Q1和Q3之间的相似度,并与distance(S1,S2)进行比较,即待比较文本Q1与Q2的相似度,Q1与Q3的相似度,从而确定与待比较文本最相似的文本。
在一种实施方式中,步骤S7具体包括,
通过距离计算公式计算待比较文本与源文本中向量的距离,距离计算公式具体为:
其中,Dlayer-layer-min为层间距离的最小值,Dlayer-layer-max为层间距离的最小值,Dlayer-in-f'为平面内距离的最小值,Dlayer-in-max为平面内距离的最大值;
将待比较文本与源文本中向量的距离作为二者之间的相似度。
具体来说,Jaccard相似度主要考虑共现词汇数量的影响,同时还要结合包含的词汇总数即句长进行度量,用公式可以更加直观地表达为:
Sim_Score(I,R)=Intr(I,R)/Union(I,R) (4)
式中:Intr(I,R)是输入I I和检索到的R之间共现的词汇数目;Union(I,R)是指两个单词构成的合集的词汇数目。由此得到的相似度一般将其叫做Jaccard相似度。
而本发明提出的是一种基于CTW和KM算法的语义相似度计算方法。通过计算超平面层间距离(用S1表示)与平面层内距离(用M1表示)的平方和来衡量语义距离。该指标既考虑了每个分词的相似性,又考虑了形成句子后整体的相似性,与Jaccard相似度、TFIDF方法相比,来说具有良好的效果。
为了更清楚地说明本发明提供的相似度的计算方法的有益效果,下面通过一个具体的示例予以相似介绍:
为保证分词的向量空间有更好的效果,本实施例首先根据需求,选择所属行业的语料库。本实施方式汇总的实验训练及测评的数据是从2015至2018年百度新闻语料库中摘录的。使用Google的Word2vec模型,将语料分词后通过神经网络模型训练得到约6万条分词向量,每个分词为200维词的向量,每一维都包含分词的某一特征语义的信息,形成一个含有6万条词向量数据的词向量库,词向量库数据见表1:
表1百度新闻语料200维词向量部分数据
通过本发明提供的方法对上述数据进行语义相似度的计算,实验流程及结果如下:
选取词向量库中部分分词组合成四条汉语句子(见表2):
表2实验中计算相似度的句子
通过检索词向量库,得到每条句子对应的有序词向量数组,以sentence1作为待匹配句,sentence2,sentence3,sentence4作为匹配句,分别计算sentence1与sentence2,sentence3,sentence4的DTW矩阵D1,D2,D3,D4;再将D1,D2,D3,D4作为初始矩阵通过匈牙利最优匹配算法(KM算法)分别求出sentence1与sentence2,sentence3,sentence4的最短路径值,最后通过公式(11)分别计算sentence1与sentence2,sentence3,sentence4的相似度,实验同时使用传统的Jaccard和TFIDF方法计算相似度结果,用于对比,结果如表3所示。
表3句子相似度
实验结果分析
首先本分买那个通过人工评判四个句子,经过专家分析观察出sentence1与sentence2,sentence3表达的意思几乎是一样的,与sentence4表达的意思不一样。因此在相似度的比较上应该有:
Sim(s1,s2)>Sim(s1,s4)和Sim(s1,s3)>Sim(s1,s4)
再观察sentence2和sentence3表达的意思与sentence1几乎是一致的,但是sentence3的语序杂乱程度要比sentence2更严重,所以sentence1变换到sentence3所耗费的空间距离应该比sentence1变换到sentence2的要大,因此此时有:
Sim(s1,s2)>Sim(s1,s3)
所以从人工评判的结果来看,相似度的结果是:
Sim(s1,s2)>Sim(s1,s3)>Sim(s1,s4)
从本文方法实验结果来看:0.9279>0.8961>0.6926,结果与预期相符。而使用传统的句子相似度计算方法Jaccard和TFIDF,得到的结果都为:
Sim(s1,s2)=Sim(s1,s3)
传统方法认为S2和S3与S1的相似度是相同的,并没有达到区分语义的目标。原因在于两种传统的方法只考虑了两个句子中共有词出现的频率,而没有考虑语义信息和语序的影响,当两个句子的共有词数目相等时无法做出有效的评估。由此表明通过DTW与匈牙利算法相结合的方法计算含有语义信息和语序结构的汉语句子相似度,具有一定的实际意义和研究价值。
总体来说,本发明为了考虑汉语语义和分词语序对句子相似度计算的影响,提出了一种基于DTW和KM算法的语义句子相似度计算的方法。将原本应用于语音识别和图像识别领域的方法DTW和解决最优分配问题的匈牙利算法结合起来应用在自然语言处理领域,并且在汉语句子相似度的计算上取得了较好的效果,为自然语言处理领域研究提供了一种全新的方向。
基于同一发明构思,本申请还提供了与实施例一中基于CTW和KM算法的语义相似度计算方法对应的装置,详见实施例二。
实施例二
本实施例提供了一种基于CTW和KM算法的语义相似度计算装置,请参见图4,该装置包括:
词向量空间获得模块401,用于选择预设语料库,并通过预设词向量结合神经网络学习的方法训练,获得词向量空间,其中,词向量空间中的每个词向量用以表征该分词的语义信息;
词分量数组建立模块402,用于将待比较文本与源文本进行分词,再根据所述词向量空间,分别建立与待比较文本、源文本对应的词分量数组;
CTW距离计算模块403,用于依次计算待比较文本中的每个分词与源文本中的每个分词的CTW距离;
CTW矩阵构建模块404,用于根据计算出的CTW距离构建CTW矩阵;
层间距离计算模块405,用于将分词对应的词分量,按照待比较文本、源文本分为第一集合和第二集合,其中,第一集合和第二集合中的每个词分量对应一个顶点,并根据顶点和CTW矩阵建立与待比较文本、源文本对应的第一超平面和第二超平面,再计算第一超平面与第二超平面之间的层间距离,同时求得第二超平面对应的映射法向量;
平面内距离计算模块406,用于计算第二超平面对应的映射法向量与待比较文本中向量点的距离,将其作为平面内距离;
相似度计算模块407,用于根据层间距离和平面内距离,计算待比较文本与源文本之间的相似度。
在一种实施方式中,CTW距离计算模块具体用于执行下述步骤:
步骤S3.1:采用动态规划方法DTW中的预设公式计算Wx,Wy,该预设公式具体为:
步骤S3.3:利用单位矩阵初始化Vx和Vy;
步骤S3.4:采用典型相关分析方法CCA计算Vx和Vy;
步骤S3.5:重复执行步骤S3.1,采用预设规则改变Wx、Wy、Vx和Vy的值,根据预设公式计算CTW距离值Jctw,当连续两次计算出的CTW距离值Jctw满足预设条件时,则取当前的Jctw作为CTW距离。
在一种实施方式中,CTW矩阵构建模块具体用于执行下述步骤:
将步骤S3计算出的CTW距离对应的矩阵进行维度扩展,转换为n*n维的矩阵,其中,n=min{dx,dy},dx×dy为CTW距离对应的矩阵的大小。
在一种实施方式中,层间距离计算模块405具体用于执行下述步骤:
步骤S5.1:初始化可行顶标的值,对两边的每一个顶点都赋予一个额外的值Lx(x)=max{w(x,yi)}i=1,2,....,dy,Ly(y)=0,使得对于二分图G内的所有边e=xiyj均有Lx(x)+Ly(y)≥w(xy),对于一个赋值二分图G(X,Y,E,W),X,Y代表二分图的两边顶点标号,E代表边的权值;
步骤S5.2:在已经赋值可行顶标的二分图中,保留所有Lx(x)+Ly(y)=w(xy)的边,删去其他的边,获得生成子图,再采用匈牙利算法KM寻找生成子图的完备匹配,其中完备匹配用以表示所有的顶点都是匹配点的图;
步骤S5.3:判断是否找到完备匹配,如果未找到,则通过修改可行顶标的值进行调整,继续执行步骤S5.2;
步骤S5.4:根据找出的完备匹配,求出二分图的最小路径覆盖的路径的最小值和最大值,将最小值和最大值作为层间距离的最小值和层间距离的最大值。
在一种实施方式中,步骤S5.3中,通过修改可行顶标的值进行调整,具体包括:
根据最后一次不成功的寻找交错路的深度优先遍历,取所有i被访问到而j没被访问到的边(i,j)的Lx(x)+Ly(y)-w(xy)的最小值d;
将交错树中的所有左端点的顶标减小d,右端点的顶标增加d。
在一种实施方式中,相似度计算模块407具体用于执行下述步骤:
通过距离计算公式计算待比较文本与源文本中向量的距离,距离计算公式具体为:
其中,Dlayer-layer-min为层间距离的最小值,Dlayer-layer-max为层间距离的最小值,Dlayer-in-f'为平面内距离的最小值,Dlayer-in-max为平面内距离的最大值;
将待比较文本与源文本中向量的距离作为二者之间的相似度。
由于本发明实施例二所介绍的装置,为实施本发明实施例一中基于CTW和KM算法的语义相似度计算所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲保护的范围。
实施例三
基于同一发明构思,本申请还提供了一种计算机可读存储介质400,请参见图5,其上存储有计算机程序411,该程序被执行时实现实施例一中的方法。
由于本发明实施例三所介绍的计算机可读存储介质,为实施本发明实施例一中基于CTW和KM算法的语义相似度计算方法所采用的计算机可读存储介质,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该计算机可读存储介质的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的计算机可读存储介质都属于本发明所欲保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种基于CTW和KM算法的语义相似度计算方法,其特征在于,包括:
步骤S1:选择预设语料库,并通过预设词向量结合神经网络学习的方法训练,获得词向量空间,其中,词向量空间中的每个词向量用以表征分词的语义信息;
步骤S2:将待比较文本与源文本进行分词,再根据所述词向量空间,分别建立与待比较文本、源文本对应的词分量数组;
步骤S3:依次计算待比较文本中的每个分词与源文本中的每个分词的CTW距离;
步骤S4:根据计算出的CTW距离构建CTW矩阵;
步骤S5:将分词对应的词分量,按照待比较文本、源文本分为第一集合和第二集合,其中,第一集合和第二集合中的每个词分量对应一个顶点,并根据顶点和CTW矩阵建立与待比较文本、源文本对应的第一超平面和第二超平面,再计算第一超平面与第二超平面之间的层间距离,同时求得第二超平面对应的映射法向量;
步骤S6:计算第二超平面对应的映射法向量与待比较文本中向量点的距离,将其作为平面内距离;
步骤S7:根据层间距离和平面内距离,计算待比较文本与源文本之间的相似度。
2.如权利要求1所述的方法,其特征在于,步骤S3具体包括:
步骤S3.1:采用动态规划方法DTW中的预设公式计算Wx,Wy,该预设公式具体为:
步骤S3.3:利用单位矩阵初始化Vx和Vy;
步骤S3.4:采用典型相关分析方法CCA计算Vx和Vy;
步骤S3.5:重复执行步骤S3.1,采用预设规则改变Wx、Wy、Vx和Vy的值,根据预设公式计算CTW距离值Jctw,当连续两次计算出的CTW距离值Jctw满足预设条件时,则取当前的Jctw作为CTW距离。
3.如权利要求1所述的方法,其特征在于,步骤S4具体包括:
将步骤S3计算出的CTW距离对应的矩阵进行维度扩展,转换为n*n维的矩阵,其中,n=min{dx,dy},dx×dy为CTW距离对应的矩阵的大小。
4.如权利要求1所述的方法,其特征在于,步骤S5具体包括:
步骤S5.1:初始化可行顶标的值,对两边的每一个顶点都赋予一个额外的值Lx(x)=max{w(x,yi)}i=1,2,....,dy,Ly(y)=0,使得对于二分图G内的所有边e=xiyj均有Lx(x)+Ly(y)≥w(xy),对于一个赋值二分图G(X,Y,E,W),X,Y代表二分图的两边顶点标号,E代表边的权值;
步骤S5.2:在已经赋值可行顶标的二分图中,保留所有Lx(x)+Ly(y)=w(xy)的边,删去其他的边,获得生成子图,再采用匈牙利算法KM寻找生成子图的完备匹配,其中完备匹配用以表示所有的顶点都是匹配点的图;
步骤S5.3:判断是否找到完备匹配,如果未找到,则通过修改可行顶标的值进行调整,继续执行步骤S5.2;
步骤S5.4:根据找出的完备匹配,求出二分图的最小路径覆盖的路径的最小值和最大值,将最小值和最大值作为层间距离的最小值和层间距离的最大值。
5.如权利要求4所述的方法,其特征在于,步骤S5.3中,通过修改可行顶标的值进行调整,具体包括:
根据最后一次不成功的寻找交错路的深度优先遍历,取所有i被访问到而j没被访问到的边(i,j)的Lx(x)+Ly(y)-w(xy)的最小值d;
将交错树中的所有左端点的顶标减小d,右端点的顶标增加d。
7.一种基于CTW和KM算法的语义相似度计算装置,其特征在于,包括:
词向量空间获得模块,用于选择预设语料库,并通过预设词向量结合神经网络学习的方法训练,获得词向量空间,其中,词向量空间中的每个词向量用以表征分词的语义信息;
词分量数组建立模块,用于将待比较文本与源文本进行分词,再根据所述词向量空间,分别建立与待比较文本、源文本对应的词分量数组;
CTW距离计算模块,用于依次计算待比较文本中的每个分词与源文本中的每个分词的CTW距离;
CTW矩阵构建模块,用于根据计算出的CTW距离构建CTW矩阵;
层间距离计算模块,用于将分词对应的词分量,按照待比较文本、源文本分为第一集合和第二集合,其中,第一集合和第二集合中的每个词分量对应一个顶点,并根据顶点和CTW矩阵建立与待比较文本、源文本对应的第一超平面和第二超平面,再计算第一超平面与第二超平面之间的层间距离,同时求得第二超平面对应的映射法向量;
平面内距离计算模块,用于计算第二超平面对应的映射法向量与待比较文本中向量点的距离,将其作为平面内距离;
相似度计算模块,用于根据层间距离和平面内距离,计算待比较文本与源文本之间的相似度。
8.如权利要求7所述的装置,其特征在于,CTW距离计算模块具体用于执行下述步骤:
步骤S3.1:采用动态规划方法DTW中的预设公式计算Wx,Wy,该预设公式具体为:
步骤S3.3:利用单位矩阵初始化Vx和Vy;
步骤S3.4:采用典型相关分析方法CCA计算Vx和Vy;
步骤S3.5:重复执行步骤S3.1,采用预设规则改变Wx、Wy、Vx和Vy的值,根据预设公式计算CTW距离值Jctw,当连续两次计算出的CTW距离值Jctw满足预设条件时,则取当前的Jctw作为CTW距离。
9.如权利要求7所述的装置,其特征在于,CTW矩阵构建模块具体用于执行下述步骤:
将步骤S3计算出的CTW距离对应的矩阵进行维度扩展,转换为n*n维的矩阵,其中,n=min{dx,dy},dx×dy为CTW距离对应的矩阵的大小。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被执行时实现如权利要求1至6任一项权利要求所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811517145.3A CN109858015B (zh) | 2018-12-12 | 2018-12-12 | 一种基于ctw和km算法的语义相似度计算方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811517145.3A CN109858015B (zh) | 2018-12-12 | 2018-12-12 | 一种基于ctw和km算法的语义相似度计算方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109858015A CN109858015A (zh) | 2019-06-07 |
CN109858015B true CN109858015B (zh) | 2022-11-18 |
Family
ID=66891051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811517145.3A Active CN109858015B (zh) | 2018-12-12 | 2018-12-12 | 一种基于ctw和km算法的语义相似度计算方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109858015B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110473534A (zh) * | 2019-07-12 | 2019-11-19 | 南京邮电大学 | 一种基于深度神经网络的老年人看护对话系统 |
CN110956039A (zh) * | 2019-12-04 | 2020-04-03 | 中国太平洋保险(集团)股份有限公司 | 一种基于多维度向量化编码的文本相似度计算方法及装置 |
CN112069815B (zh) * | 2020-09-04 | 2023-01-17 | 平安科技(深圳)有限公司 | 成语填空题的答案选择方法、装置和计算机设备 |
CN112528102A (zh) * | 2020-12-15 | 2021-03-19 | 深圳供电局有限公司 | 一种基于布尔逻辑判断的规范词条匹配方法 |
CN112749256A (zh) * | 2020-12-30 | 2021-05-04 | 北京知因智慧科技有限公司 | 文本处理方法、装置、设备及存储介质 |
CN112765976A (zh) * | 2020-12-30 | 2021-05-07 | 北京知因智慧科技有限公司 | 文本相似度计算方法、装置、设备及存储介质 |
CN112699689B (zh) * | 2021-01-05 | 2024-07-19 | 虎博网络技术(上海)有限公司 | 音频切分方法、装置和电子设备 |
CN113945253B (zh) * | 2021-10-18 | 2023-07-07 | 成都天仁民防科技有限公司 | 一种轨道交通轨行区的水位测量方法 |
CN117451113B (zh) * | 2023-12-22 | 2024-03-26 | 中国电建集团华东勘测设计研究院有限公司 | 基于光纤传感的自升式平台桩腿结构健康监测系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8359282B2 (en) * | 2009-01-12 | 2013-01-22 | Nec Laboratories America, Inc. | Supervised semantic indexing and its extensions |
CN106547739B (zh) * | 2016-11-03 | 2019-04-02 | 同济大学 | 一种文本语义相似度分析方法 |
CN106844350A (zh) * | 2017-02-15 | 2017-06-13 | 广州索答信息科技有限公司 | 一种短文本语义相似度的计算方法 |
CN107436864B (zh) * | 2017-08-04 | 2021-03-02 | 识因智能科技(北京)有限公司 | 一种基于Word2Vec的中文问答语义相似度计算方法 |
CN108737423B (zh) * | 2018-05-24 | 2020-07-14 | 国家计算机网络与信息安全管理中心 | 基于网页关键内容相似性分析的钓鱼网站发现方法及系统 |
-
2018
- 2018-12-12 CN CN201811517145.3A patent/CN109858015B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109858015A (zh) | 2019-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109858015B (zh) | 一种基于ctw和km算法的语义相似度计算方法及装置 | |
CN110298037B (zh) | 基于增强注意力机制的卷积神经网络匹配的文本识别方法 | |
CN113792818B (zh) | 意图分类方法、装置、电子设备及计算机可读存储介质 | |
CN110969020B (zh) | 基于cnn和注意力机制的中文命名实体识别方法、系统及介质 | |
US20230039496A1 (en) | Question-and-answer processing method, electronic device and computer readable medium | |
CN112800292B (zh) | 一种基于模态特定和共享特征学习的跨模态检索方法 | |
CN109376222B (zh) | 问答匹配度计算方法、问答自动匹配方法及装置 | |
CN109948149B (zh) | 一种文本分类方法及装置 | |
US7945576B2 (en) | Location recognition using informative feature vocabulary trees | |
CN111291556B (zh) | 基于实体义项的字和词特征融合的中文实体关系抽取方法 | |
CN109389151B (zh) | 一种基于半监督嵌入表示模型的知识图谱处理方法和装置 | |
CN112368697A (zh) | 经由对偶分解评估损失函数或损失函数的梯度的系统和方法 | |
CN110046250A (zh) | 三嵌入卷积神经网络模型及其文本多分类方法 | |
CN112115716A (zh) | 一种基于多维词向量下文本匹配的服务发现方法、系统及设备 | |
CN111985228A (zh) | 文本关键词提取方法、装置、计算机设备和存储介质 | |
CN116610778A (zh) | 基于跨模态全局与局部注意力机制的双向图文匹配方法 | |
CN113255366B (zh) | 一种基于异构图神经网络的方面级文本情感分析方法 | |
CN113537304A (zh) | 一种基于双向cnn的跨模态语义聚类方法 | |
CN108470025A (zh) | 局部话题概率生成正则化自编码文本嵌入表示方法 | |
CN108805280B (zh) | 一种图像检索的方法和装置 | |
CN113792594B (zh) | 一种基于对比学习的视频中语言片段定位方法及装置 | |
CN117591969B (zh) | 一种基于ipc标签共现的规则检核方法及系统 | |
CN113051886B (zh) | 一种试题查重方法、装置、存储介质及设备 | |
CN114637846A (zh) | 视频数据处理方法、装置、计算机设备和存储介质 | |
CN112926340A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |