CN107844608B - 一种基于词向量的句子相似度比较方法 - Google Patents

一种基于词向量的句子相似度比较方法 Download PDF

Info

Publication number
CN107844608B
CN107844608B CN201711273188.7A CN201711273188A CN107844608B CN 107844608 B CN107844608 B CN 107844608B CN 201711273188 A CN201711273188 A CN 201711273188A CN 107844608 B CN107844608 B CN 107844608B
Authority
CN
China
Prior art keywords
sentence
node
sequence
word
similarity
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
Application number
CN201711273188.7A
Other languages
English (en)
Other versions
CN107844608A (zh
Inventor
全哲
乐雨泉
朱莉
叶婷
林轩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan University
Original Assignee
Hunan University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hunan University filed Critical Hunan University
Priority to CN201711273188.7A priority Critical patent/CN107844608B/zh
Publication of CN107844608A publication Critical patent/CN107844608A/zh
Application granted granted Critical
Publication of CN107844608B publication Critical patent/CN107844608B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于词向量的句子相似度比较方法。本发明基于大型语料库训练得到词向量模型,并且通过斯坦福句法分析器将句子表示成句法成分树结构,然后在词向量模型中搜索句子成分树叶子节点所对应的词向量,这此基础上,我们提出了一种基于词向量的句子相似度比较方法,这种方法首先构建句子成分向量树,然后通过我们提出的soft partial tree kernel函数计算最终的句子相似度得分。实验结果表示,这种方法相对于目前性能表现很强的众多神经网络方法,在超过一半数据集上都取得了最好的效果,并且在平均性能上取得了最先进的效果。这说明了这种方法是一种很有效的句子相似度度量方式。

Description

一种基于词向量的句子相似度比较方法
技术领域
本发明涉及一种基于词向量的句子相似度比较方法,属于自然语言处理技术领域。
背景技术
句子相似度比较是自然语言处理的一个基本任务,它广泛应用于很多领域,比如信息检索、机器翻译、文本分类等。只要是需要判断二个句子相似性的场景,都离不开句子相似度判断方法。相似度判断方法越准确,有利于提高各种需要用到此相似度方法的系统的性能。
句子相似度测量是自然语言处理中许多应用程序的核心,也是大多数文本相关任务的基础。句子相似度方法研究有很长的历史,有基于向量空间模型的方法,也有将句子通过神经网络嵌入成句子向量的方法,这一类方法最近取得了很大的成功,比如利用DNN(深度神经网络),RNN(循环神经网络),LSTM(长短期记忆网络)等。但是这种将句子表示成向量的做法忽略了句子本身存在的句法信息,会丢失句子的句法信息。
发明内容
本发明克服现有技术存在的不足,本发明公开了一种基于词向量的句子相似度比较方法。本发明基于大型语料库训练得到词向量模型,并且通过斯坦福句法分析器将句子表示成句法成分树结构,然后在词向量模型中搜索句子成分树叶子节点所对应的词向量,这此基础上,我们提出了一种基于词向量的句子相似度比较方法,这种方法首先构建句子成分向量树,然后通过我们提出的soft partial tree kernel 函数计算最终的句子相似度得分。实验结果表示,这种方法相对于目前性能表现很强的众多神经网络方法,在超过一半数据集上都取得了最好的效果,并且在平均性能上取得了最先进的效果。这说明了这种方法是一种很有效的句子相似度度量方式。这说明了这种方法是一种很有效的句子相似度度量方式。
为解决上述技术问题,本发明所采用的技术方案为:
一种基于词向量的句子相似度比较方法,包括如下步骤:
步骤一、训练得到词向量模型,所述词向量模型包含词和词的向量;
步骤二、对于待测试的句子对,分别生成句子的句法成分树结构,每个句子对应的句法成分树结构的叶子节点都为句中的词;
步骤三、基于句子的句子成分树结构,构建句子向量树结构;
步骤四、将句子向量树结构输入计算,即得到二个句子向量树结构的相似度得分;包括如下步骤:
4.1)对于步骤三中构建的两个句子向量树结构T1,T2,首先生成句子向量树结构的子树集F1={N1,N2,…,Ni},F2={M1,M2,…,Mj},其中Ni表示T1生成的最后一个子树的根节点,i表示T1生成子树的个数,Mj代表 T2生成的最后一个子树的根节点,j代表T2生成子树的个数;
4.2)句子成分向量树相似度
Figure GDA0003223590900000021
其中Nl表示F1中任意一个元素,其中Mk表示F2中任意一个元素;Δ(Nl,Mk)表示Nl和Mk的相似度;这个式子表示将F1和F2中所有元素两两成对对比,计算值为Δ(Nl,Mk),然后累加;
所述Δ(Nl,Mk)的计算方法如下:
4.3 )如果Nl和Mk是不相同的并且不同时为叶子节点,则Δ(Nl, Mk)=0;
4.4 )如果Nl和Mk同时为叶子节点,则Δ(Nl,Mk)=CosiNe(Vec1,Vec2),Vec1表示叶子节点Nl对应的词向量,Vec2表示叶子节点Mk对应的词向量;CosiNe()表示对向量求余弦相似度;
4.5 )如果Nl和Mk都为非叶子节点且相同,则
Figure GDA0003223590900000031
Figure GDA0003223590900000032
其中,μ表示树的高度的衰减因子,λ表示子序列的长度的衰减因子;
Figure GDA0003223590900000033
表示以Nl为根节点的孩子节点按照字典序排列而成的字符序列,
Figure GDA0003223590900000034
表示以Mk为根节点的孩子节点按照字典序排列而成的字符序列;
Figure GDA0003223590900000035
Figure GDA0003223590900000036
这二个字符序列长度的最小值
Figure GDA0003223590900000037
其中
Figure GDA0003223590900000038
表示
Figure GDA0003223590900000039
字符序列的长度,
Figure GDA00032235909000000310
表示
Figure GDA00032235909000000311
字符序列的长度;函数Δp表示求
Figure GDA00032235909000000312
Figure GDA00032235909000000313
在长度为p的公共子序列上的相似度,p表示字符序列生成子串长度的取值,若一个字符序列长度为h,则p的取值范围为1~h;
4.6 )Δp函数计算过程如下:设
Figure GDA00032235909000000314
Figure GDA00032235909000000315
s1a表示以Nl为根节点的子树的孩子节点按顺序组成的字符序列,a表示以 Nl为根节点的子树的最后一个孩子节点,s1表示以Nl为根节点的子树的孩子节点按字典顺序排列后除去最后一个孩子节点a 之后组成的字符序列;s2b表示以Mk为根节点的子树的孩子节点按顺序组成的字符序列;b表示以Mk为根节点的子树的最后一个孩子节点,s2表示以Mk为根节点的子树的孩子节点按字典顺序排列后除去最后一个孩子节点b之后组成的字符序列;则
Figure GDA0003223590900000041
具体计算如下:
Figure GDA0003223590900000042
其中|s1|表示字符序列s1的长度,|s2|表示字符序列s2的长度,t表示字符序列s1生成子串序列取值长度,取值范围为1~|s1|,r表示字符序列 s2生成子串序列取值长度,取值范围为1~|s2|,s1[1:t]表示从s1字符序列取下标从1到t位置的序列组成的字符子序列,s2[1:r] 表示从s2字符序列取下标从1到r位置的序列组成的字符子序列;Δ' (a,b)表示单个节点的相似度,Δ' (a,b)的算法中分为以下几种情况:
4.6.1.若节点a和节点b相同,则Δ' (a,b)=1;
4.6.2.若节点a和节点b不相同且至少有一个为非叶子节点,则Δ' (a,b)=0;
4.6.3.若节点a和节点b不相同且二者都是叶子节点,则Δ' (a,b)=Cosine(Veca,Vecb),其中Veca表示叶子节点a对应的词向量,Vecb表示叶子节点b对应的词向量;
4.6.4.最终的句子相似度计算公式为:
Figure GDA0003223590900000043
其中,Score表示T1和T2归一化之后的最终句子相似度, SPTK(T1,T2)表示T1和T2的句子成分向量树相似度;SPTK(T1,T1)表示T1和T1的句子成分向量树相似度;SPTK(T2,T2)表示T2和T2的句子成分向量树相似度。
进一步的改进,所述步骤一中,使用维基百科文本作为训练语料,使用word2vec工具训练词向量,得到词向量模型。
进一步的改进,所述步骤二中,使用斯坦福句法分析器,生成句子的句法成分树结构;若所述句子为中文,则预先进行分词处理。
进一步的改进,所述步骤三,包括如下步骤:
3.1)基于句子成分树结构,构建叶子节点集;
3.2)遍历叶子节点集中的每个词,到词向量模型中搜索词所对应的词向量,构建叶子节点词向量集;
3.3)遍历句子成分树结构的每一个叶子节点,每个叶子节点都包含在叶子节点集中,按照叶子节点集到叶子节点词向量集的一一对应关系,将叶子节点替换成叶子节点集中所对应的词向量。与现有技术相比,采用本发明具有如下优点:
1.第一步,我们通过语料库经过训练得到词向量模型,语料库的选择可以根据具体的场景以及特地的领域进行选取,只要保证文字语法应该是基本正确的以及足够大即可。若没有语料,可以选择维基百科全部内容作为语料进行词向量训练。
2.第三步,我们将词向量知识编码到句子成分树,从而构建了句子成分向量树,这种表示能很有效的将句子的句法以及词汇的语义考虑到一个统一的模型架构,从而能更有效的挖掘句子的语义信息。
3.第五步,我们提出了一种能够用于计算句子成分向量树结构对的soft partialtree kernel函数,使得句子成分向量树能够很方便的计算相似度得分。
4.本发明提出了一种基于词向量的句子相似度比较方法,这种方法相对于目前流行的神经网络方法,能取得一定可比较效果。
附图说明
图1为本发明的总流程示意图;
图2为句子成分树的示意图;
图3为句子成分向量树的示意图。
其中,其中ROOT表示根节点,S表示这个句子的开始节点,NP表示名词短语,NN表示常用名词,VP表示动词短语,MD表示情态助动词,VB表示动词,DT表示限定词,JJ表示形容词或序数词。Vectime, Veccan,Vecheal,Veca,Vecbroken,Vecheart分别表示 time,can,heal,a,broken,heart对应的词向量。
具体实施方式
如图1-3所示,本发明选用整个维基百科(本发明适用于选用其它大型语料)作为训练语料,使用word2vec工具训练词向量模型,词向量模型包含词和词的向量,通过词向量模型能够很方便的搜索到词汇所对应的词的向量。对于待测试的句子对(若句子是中文的,则需要分词,英文不需要),首先进行句子的预处理,预处理包括去除符号以及停用词。通过斯坦福句法分析器,将句子表示成句法成分树结构,此结构的叶子节点为句中的词,非叶子节点代表词的词性以及词之间关系。然后构建句子的句子成分向量树,基于句子的句子成分树,在词向量模型中搜索句子成分树的叶子节点所对应的向量,将叶子节点替换成词汇对应的向量。通过这种方式将待测的句子对表示成句子成分向量树,输入到树核函数(树核函数有很多种,本发明在PTK树核上进行了测试,设计了soft partial tree kernel函数),得到句子相似度得分。
第一步、通过word2vec工具,训练得到词向量模型,训练的所用到的语料需要满足以下几点条件:
1.训练语料必须足够大;
2.训练语料所涉及的领域应该足够多(比如维基百科);
3.训练语料所包含的文字语法应该是基本正确的,而不是通过随机文本生成的杂乱无章的文字;
第二步、构建句子成分树,对于待测的句子对,通过句法分析,得到句子的句法成分树。例如,使用斯坦福句法分析器,将句子”Time can heal a broken heart”表示成句子成分树(图2);
第三步、基于句子的句子成分树结构,构建句子成分向量树。例如,将句子”Timecan heal a broken heart”表示成句子成分向量树(图3),具体过程如下:
1.基于句子成分树,构建叶子节点集 Q={time,can,heal,a,broken,heart};
2.遍历叶子节点集Q中的每个词,去词向量模型中搜索词所对应的词向量,构建叶子节点词向量集 P={Vectime,Veccan,Vecheal,Veca,Vecbroken,Vecheart};
3.遍历句子成分树的每一个叶子节点,每个叶子节点都包含在叶子节点集Q中,按照Q到P的一一对应关系(比如time对应Vectime),将叶子节点替换成叶子节点集Q中所对应的词向量;
4.构建完成;
第四步、将待测的句子对按照第三步表示成句子成分向量树;
第五步、基于句子成分向量树,我们提出一种soft partial tree kernel函数,使得这种树结构能够进行计算,具体计算过程如下:
1.对于二棵树T1,T2,首先生成树的子树集 F1={N1,N2,…,Ni},F2={M1,M2,…,Mj},Ni表示T1生成的最后一个子树的根节点,i表示T1生成子树的个数,Mj代表T2生成的最后一个子树的根节点,j代表T2生成子树的个数;
2.使用soft partial tree kernel函数SPTK(T1,T2)计算句子相似度如下:
Figure GDA0003223590900000081
其中Nl表示F1中任意一个元素,其中Mk表示F2中任意一个元素,这个式子表示将F1和F2中所有元素两两成对按照Δ函数(当元素为Nl和 Mk时,计算值为Δ(Nl,Mk)计算然后累加,Δ函数具体计算过程依照3。
3.以F1中第一个元素N1和F2中第一个元素M1为例。Δ函数具体计算过程如下:
3.1如果N1和M1是不相同的并且不同时为叶子节点,则Δ(N1, M1)=0;
3.2如果N1和M1同时为叶子节点,则Δ(N1, M1)=Cosine(Vec1,Vec2),Vec1表示叶子节点N1对应的词向量,Vec2表示叶子节点M2对应的词向量,Cosine()表示对向量求余弦相似度;
3.3如果N1和M1都为非叶子节点且相同,则
Figure GDA0003223590900000091
Figure GDA0003223590900000092
其中μ和λ都为衰减因子,μ表示树的高度的衰减因子,λ表示子序列的长度的衰减因子。
Figure GDA0003223590900000093
表示以N1为根节点的孩子节点按照字典序排列而成的字符序列,
Figure GDA0003223590900000094
表示以M1为根节点的孩子节点按照字典序排列而成的字符序列。
Figure GDA0003223590900000095
其中
Figure GDA0003223590900000096
表示
Figure GDA0003223590900000097
字符序列(每一个孩子节点为字符序列里面的一个元素)的长度,
Figure GDA0003223590900000098
表示
Figure GDA0003223590900000099
字符序列(每一个孩子节点为字符序列里面的一个元素)的长度,
Figure GDA00032235909000000910
Figure GDA00032235909000000911
表示取这二个字符序列长度的最小值。Δp函数表示求
Figure GDA00032235909000000912
Figure GDA00032235909000000913
在长度为p的公共子序列上的相似度,p表示字符序列生成子串长度的取值(若一个字符序列长度为h,则p 的取值范围为1~h),Δp的p取值从h减到1的时候就是Δ函数的计算。Δp函数具体计算过程依照3.4。
3.4Δp函数计算过程,以
Figure GDA00032235909000000914
为例,s1a表示以 N1为根节点的子树的孩子节点按顺序组成的字符序列(一个孩子节点看作字符序列里面的一个字符,a表示最后一个孩子节点),s2b表示以M1为根节点的子树的孩子节点按顺序组成的字符序列(一个孩子节点看作字符序列里面的一个字符,b表示最后一个孩子节点),s1表示以N1为根节点的子树的孩子节点按字典顺序排列后除去最后一个孩子节点a 之后组成的字符序列,s2表示以M1为根节点的子树的孩子节点按字典顺序排列后除去最后一个孩子节点b之后组成的字符序列。则
Figure GDA0003223590900000103
具体计算如下:
Figure GDA0003223590900000101
其中|s1|表示字符序列s1的长度,|s2|表示字符序列s2的长度,t表示字符序列s1生成子串序列取值长度,取值范围为1~|s1|,r表示字符序列s2生成子串序列取值长度,取值范围为1~|s2|,s1[1:t] 表示从s1字符序列取下标从1到t位置的序列组成的字符子序列,s2[1:r]表示从s2字符序列取下标从1到r位置的序列组成的字符子序列。
Δ' (a,b)表示单个节点的相似度,在我们的算法中分为以下几种情况:
(1).若节点a和节点b相同,则Δ' (a,b)=1;
(2).若节点a和节点b不相同且至少有一个为非叶子节点,则Δ' (a,b)=0;
(3).若节点a和节点b不相同且二者都是叶子节点,则Δ' (a,b)=Cosine(Veca,Vecb),其中Veca表示叶子节点a对应的词向量,Vecb表示叶子节点b对应的词向量;
第六步、最终的句子相似度计算公式为:
Figure GDA0003223590900000102
第七步、结束
我们基于2012年语义文本的相似性任务(Semantic Textual Similarity Tasks)开放的数据集进行了实验,实验对比了基于 DAN(深度平均网络),RNN(循环神经网络),iRNN(循环神经网络的一种变体方法),LSTMNo(带有输出门的长短期记忆网络),LSTMo.g.(不带输出门的长短期记忆网络)等先进的神经网络方法,如表1所示,我们的方法在超过一半数据集上都取得了最好的效果,并且在平均性能上取得了最先进的效果。
Tasks DAN RNN iRNN LSTM<sub>No</sub> LSTM<sub>o.g.</sub> SCVT<sub>w2v</sub>
MSRpar 0.40 0.19 0.43 0.16 0.09 0.54
MSRvid 0.70 0.67 0.73 0.71 0.71 0.73
SMTeuroparl 0.44 0.41 0.47 0.42 0.44 0.52
ONWM 0.66 0.63 0.70 0.65 0.56 0.64
SMTNews 0.60 0.51 0.58 0.61 0.51 0.55
Average 0.56 0.48 0.58 0.51 0.46 0.66
表1.实验结果图
上述实施例仅仅是本发明的一个具体实施方式,对其的简单变换、替换等也均在发明的保护范围内。

Claims (4)

1.一种基于词向量的句子相似度比较方法,其特征在于,包括如下步骤:
步骤一、训练得到词向量模型,所述词向量模型包含词和词的向量;
步骤二、对于待测试的句子对,分别生成句子的句法成分树结构,每个句子对应的句法成分树结构的叶子节点都为句中的词;
步骤三、基于句子的句子成分树结构,构建句子向量树结构;
步骤四、将句子向量树结构输入计算,即得到二个句子向量树结构的相似度得分;包括如下步骤:
4.1)对于步骤三中构建的两个句子向量树结构T1,T2,首先生成句子向量树结构的子树集F1={N1,N2,…,Ni},F2={M1,M2,…,Mj},其中Ni表示T1生成的最后一个子树的根节点,i表示T1生成子树的个数,Mj代表T2生成的最后一个子树的根节点,j代表T2生成子树的个数;
4.2)句子成分向量树相似度
Figure FDA0003223590890000011
其中Nl表示F1中任意一个元素,其中Mk表示F2中任意一个元素;Δ(Nl,Mk)表示Nl和Mk的相似度;这个式子表示将F1和F2中所有元素两两成对对比,计算值为Δ(Nl,Mk),然后累加;
所述Δ(Nl,Mk)的计算方法如下:
4.3)如果Nl和Mk是不相同的并且不同时为叶子节点,则Δ(Nl,Mk)=0;
4.4)如果Nl和Mk同时为叶子节点,则Δ(Nl,Mk)=CosiNe(Vec1,Vec2),Vec1表示叶子节点Nl对应的词向量,Vec2表示叶子节点Mk对应的词向量;CosiNe()表示对向量求余弦相似度;
4.5)如果Nl和Mk都为非叶子节点且相同,则
Figure FDA0003223590890000021
Figure FDA0003223590890000022
其中,μ表示树的高度的衰减因子,λ表示子序列的长度的衰减因子;
Figure FDA0003223590890000023
表示以Nl为根节点的孩子节点按照字典序排列而成的字符序列,
Figure FDA0003223590890000024
表示以Mk为根节点的孩子节点按照字典序排列而成的字符序列;
Figure FDA0003223590890000025
Figure FDA0003223590890000026
这二个字符序列长度的最小值
Figure FDA0003223590890000027
其中
Figure FDA0003223590890000028
表示
Figure FDA0003223590890000029
字符序列的长度,
Figure FDA00032235908900000210
表示
Figure FDA00032235908900000211
字符序列的长度;函数Δp表示求
Figure FDA00032235908900000212
Figure FDA00032235908900000213
在长度为p的公共子序列上的相似度,p表示字符序列生成子串长度的取值,若一个字符序列长度为h,则p的取值范围为1~h;
4.6)Δp函数计算过程如下:设
Figure FDA00032235908900000214
Figure FDA00032235908900000215
s1a表示以Nl为根节点的子树的孩子节点按顺序组成的字符序列,a表示以Nl为根节点的子树的最后一个孩子节点,s1表示以Nl为根节点的子树的孩子节点按字典顺序排列后除去最后一个孩子节点a之后组成的字符序列;s2b表示以Mk为根节点的子树的孩子节点按顺序组成的字符序列;b表示以Mk为根节点的子树的最后一个孩子节点,s2表示以Mk为根节点的子树的孩子节点按字典顺序排列后除去最后一个孩子节点b之后组成的字符序列;则
Figure FDA00032235908900000216
具体计算如下:
Figure FDA00032235908900000217
其中|s1|表示字符序列s1的长度,|s2|表示字符序列s2的长度,t表示字符序列s1生成子串序列取值长度,取值范围为1~|s1|,r表示字符序列s2生成子串序列取值长度,取值范围为1~|s2|,s1[1:t]表示从s1字符序列取下标从1到t位置的序列组成的字符子序列,s2[1:r]表示从s2字符序列取下标从1到r位置的序列组成的字符子序列;Δ' (a,b)表示单个节点的相似度,Δ' (a,b)的算法中分为以下几种情况:
4.6.1.若节点a和节点b相同,则Δ' (a,b)=1;
4.6.2.若节点a和节点b不相同且至少有一个为非叶子节点,则Δ' (a,b)=0;
4.6.3.若节点a和节点b不相同且二者都是叶子节点,则Δ' (a,b)=Cosine(Veca,Vecb),其中Veca表示叶子节点a对应的词向量,Vecb表示叶子节点b对应的词向量;
4.6.4.最终的句子相似度计算公式为:
Figure FDA0003223590890000031
其中,Score表示T1和T2归一化之后的最终句子相似度,SPTK(T1,T2)表示T1和T2的句子成分向量树相似度;SPTK(T1,T1)表示T1和T1的句子成分向量树相似度;SPTK(T2,T2)表示T2和T2的句子成分向量树相似度。
2.如权利要求1所述的基于词向量的句子相似度比较方法,其特征在于,所述步骤一中,使用维基百科文本作为训练语料,使用word2vec工具训练词向量,得到词向量模型。
3.如权利要求1所述的基于词向量的句子相似度比较方法,其特征在于,所述步骤二中,使用斯坦福句法分析器,生成句子的句法成分树结构;若所述句子为中文,则预先进行分词处理。
4.如权利要求1所述的基于词向量的句子相似度比较方法,其特征在于,所述步骤三,包括如下步骤:
3.1)基于句子成分树结构,构建叶子节点集;
3.2)遍历叶子节点集中的每个词,到词向量模型中搜索词所对应的词向量,构建叶子节点词向量集;
3.3)遍历句子成分树结构的每一个叶子节点,每个叶子节点都包含在叶子节点集中,按照叶子节点集到叶子节点词向量集的一一对应关系,将叶子节点替换成叶子节点集中所对应的词向量。
CN201711273188.7A 2017-12-06 2017-12-06 一种基于词向量的句子相似度比较方法 Active CN107844608B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711273188.7A CN107844608B (zh) 2017-12-06 2017-12-06 一种基于词向量的句子相似度比较方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711273188.7A CN107844608B (zh) 2017-12-06 2017-12-06 一种基于词向量的句子相似度比较方法

Publications (2)

Publication Number Publication Date
CN107844608A CN107844608A (zh) 2018-03-27
CN107844608B true CN107844608B (zh) 2021-11-30

Family

ID=61663701

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711273188.7A Active CN107844608B (zh) 2017-12-06 2017-12-06 一种基于词向量的句子相似度比较方法

Country Status (1)

Country Link
CN (1) CN107844608B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110196906B (zh) * 2019-01-04 2023-07-04 华南理工大学 面向金融行业的基于深度学习文本相似性检测方法
CN110287282A (zh) * 2019-05-20 2019-09-27 湖南大学 基于树核计算的智能对话系统应答方法及智能对话系统
CN110335131B (zh) * 2019-06-04 2023-12-05 创新先进技术有限公司 基于树的相似度匹配的金融风险控制方法及装置
CN110378486B (zh) * 2019-07-15 2021-12-03 出门问问信息科技有限公司 网络嵌入方法、装置、电子设备和存储介质
CN111563097A (zh) * 2020-04-30 2020-08-21 广东小天才科技有限公司 一种无监督式的题目聚合方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2418588A1 (en) * 2010-08-10 2012-02-15 Technische Universität München Visual localization method
CN104679732A (zh) * 2015-03-17 2015-06-03 《中国学术期刊(光盘版)》电子杂志社有限公司 一种基于模糊树核的句法树相似度计算方法
CN105183714A (zh) * 2015-08-27 2015-12-23 北京时代焦点国际教育咨询有限责任公司 句子相似度计算方法及装置
CN105677640A (zh) * 2016-01-08 2016-06-15 中国科学院计算技术研究所 一种面向开放文本的领域概念抽取方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040148170A1 (en) * 2003-01-23 2004-07-29 Alejandro Acero Statistical classifiers for spoken language understanding and command/control scenarios

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2418588A1 (en) * 2010-08-10 2012-02-15 Technische Universität München Visual localization method
CN104679732A (zh) * 2015-03-17 2015-06-03 《中国学术期刊(光盘版)》电子杂志社有限公司 一种基于模糊树核的句法树相似度计算方法
CN105183714A (zh) * 2015-08-27 2015-12-23 北京时代焦点国际教育咨询有限责任公司 句子相似度计算方法及装置
CN105677640A (zh) * 2016-01-08 2016-06-15 中国科学院计算技术研究所 一种面向开放文本的领域概念抽取方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Efficient Convolution Kernels for Dependency and Constituent Syntactic Trees;Alessandro Moschitti;《MachineLearningECML2006》;20061231;第318-329页 *
Structured lexical similarity via convolution Kernels on dependency trees;Croce, D等;《Proceedings of the 2011 Conference on Empirical Methods in Natural Language Processing》;20111231;全文 *

Also Published As

Publication number Publication date
CN107844608A (zh) 2018-03-27

Similar Documents

Publication Publication Date Title
CN107844608B (zh) 一种基于词向量的句子相似度比较方法
CN107291693B (zh) 一种改进词向量模型的语义计算方法
CN108681574B (zh) 一种基于文本摘要的非事实类问答答案选择方法及系统
EP3179384A1 (en) Method and device for parsing interrogative sentence in knowledge base
Suleiman et al. The use of hidden Markov model in natural ARABIC language processing: a survey
CN106610951A (zh) 改进的基于语义分析的文本相似度求解算法
CN112541356B (zh) 一种生物医学命名实体识别的方法和系统
WO2008107305A2 (en) Search-based word segmentation method and device for language without word boundary tag
Gokul et al. Sentence similarity detection in Malayalam language using cosine similarity
Ismail et al. Bangla word clustering based on n-gram language model
CN110991180A (zh) 一种基于关键词和Word2Vec的命令识别方法
CN106570112A (zh) 基于改进的蚁群算法实现文本聚类
CN106528621A (zh) 一种改进的密度文本聚类算法
CN109783806A (zh) 一种利用语义解析结构的文本匹配方法
CN113705237A (zh) 融合关系短语知识的关系抽取方法、装置和电子设备
Weerasinghe et al. Feature Vector Difference based Authorship Verification for Open-World Settings.
CN109815497B (zh) 基于句法依存的人物属性抽取方法
Gupta Hybrid algorithm for multilingual summarization of Hindi and Punjabi documents
Ihm et al. Skip-gram-KR: Korean word embedding for semantic clustering
Hung Vietnamese diacritics restoration using deep learning approach
CN112632272A (zh) 基于句法分析的微博情感分类方法和系统
Shen et al. Dependency parse reranking with rich subtree features
Raj et al. An Artificial Neural Network Approach for Sentence Boundary Disambiguation in Urdu Language Text.
Senellart Locating noun phrases with finite state transducers
Ariaratnam et al. A shallow parser for Tamil

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