CN110008465A - 句子语义距离的度量方法 - Google Patents
句子语义距离的度量方法 Download PDFInfo
- Publication number
- CN110008465A CN110008465A CN201910073906.9A CN201910073906A CN110008465A CN 110008465 A CN110008465 A CN 110008465A CN 201910073906 A CN201910073906 A CN 201910073906A CN 110008465 A CN110008465 A CN 110008465A
- Authority
- CN
- China
- Prior art keywords
- distance
- word
- sentence
- sentences
- semantic
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明涉及句子语义距离的度量方法,先对语句数据集做分词、去停用词预处理;然后选择词义相似性方案,设定阈值执行同、近义词归一化;继而,结合平滑逆频加权与常见成分移除计算两个语句的向量空间距离;以乱序程度来度量两个语句的语序距离;结合语义依存五元组特征计算两个语句的语义依存距离;最后,对向量空间距离、语序距离、语义依存距离做混合加权计算。从句子向量表征、句子词语顺序、句子成分依存三个维度进行衡量,最后通过加权求和的方式得到最终语义距离;不仅利用了词级别的计算手段,还吸收了句子级别的运算思想,通过向量空间距离、语序距离和语义依存距离的引入和创造性结合,更全面、合理地衡量句子的语义距离远近。
Description
技术领域
本发明涉及一种句子语义距离的度量方法,属于文本信息处理技术领域。
背景技术
语义计算是文本信息处理领域的基础任务之一,从词语、句子、段落到篇章各个层级上都有实际使用场景。根据自然语言处理技术的发展现状,当前在不同层级的语义计算上采取了不同的思路和策略。对于句子之间语义距离的计算,研究工作主要集中在两个层面,分别是词级别与句子级别。
词级别的度量方法,其主要思想是在对待比较的两个句子做分词之后,各自筛选出对于语义影响比较大的词串,也可能进行浅层的依存分析,对于词串中的各词可能赋予不同的权重,最后通过各词之间的相似度,综合计算得到两个句子的语义距离。考虑到字符串特征对语义表示的影响,有些方法也加入了句长、公共子串、编辑距离等计算因子。
句子级别的度量方法,主要通过句子建模的方法,核心思想是使用向量空间模型,将句子表示为向量形式,然后通过向量运算来度量句子之间的语义距离。具体来说句子级别又有两种方式,一种是使用词嵌入的向量通过某种变换来得到句子向量,另一种是使用大量的语料,参考词向量训练的方法直接来学习句子的向量表示。
使用词嵌入向量来获取句子向量表征的方法,词向量获取非常容易,计算开销可控,是工业界采纳的主流方法。常用的一个基线模型就是词袋模型,将句子中各词的向量简单求和作为句向量,在情感分类、文本主题分类等任务上也有不错的表现。
直接句子嵌入的方法不仅需要极大规模的训练语料,而且采用较为复杂的神经网络训练模型,虽然在一些评测任务上取得了小幅领先的成绩,但在垂直领域由于语料规模与计算资源的限制以及较低的可解释性,无法普遍运用。
发明内容
本发明的目的是克服现有技术存在的不足,提供一种句子语义距离的度量方法。
本发明的目的通过以下技术方案来实现:
句子语义距离的度量方法,特点是:包括以下步骤:
1)对语句数据集做分词、去停用词预处理;
2)选择词义相似性方案,设定阈值执行同、近义词归一化;
3)计算两个语句的向量空间距离、度量两个语句的语序距离以及计算两个语句的语义依存距离;即:
a、结合平滑逆频加权与常见成分移除计算两个语句的向量空间距离;
b、以乱序程度来度量两个语句的语序距离;
c、结合语义依存五元组特征计算两个语句的语义依存距离;
4)对向量空间距离、语序距离、语义依存距离做混合加权计算。
进一步地,上述的句子语义距离的度量方法,其中,步骤1),利用分词方法或工具对语句数据集做分词预处理,所述分词方法是基于词典的最大匹配方法、全切分路径选择方法、基于字序列标注的方法或基于转移的分词方法,所述分词工具是开源工具或闭源分词工具,分词工具提供多种分词算法与策略供用户选择,支持添加自定义词典、新词发现。
进一步地,上述的句子语义距离的度量方法,其中,步骤1),去停用词预处理按照公开的或者自建的停用词表,去除不含实际意义的虚词、标点。
进一步地,上述的句子语义距离的度量方法,其中,步骤2),对于词义特别接近的词语,可认为语义是一致的,将同义与近义词进行归一化;
词语语义的度量方式是词向量的余弦值或欧式距离,或在语义知识库中计算;
阈值根据词义度量方法和实际需要设定。
进一步地,上述的句子语义距离的度量方法,其中,步骤3),根据词频进行差异化加权,利用已训练好的词向量获取数据集中各句子的初始向量,再以各初始向量构成的语义矩阵进行常见成分移除,得到语义表征更准确的各句子向量,通过转换为单位向量的点积运算间接求得向量空间距离。
进一步地,上述的句子语义距离的度量方法,其中,利用已训练好的词向量,通过转换操作获取句子在语义空间的向量表征,对句子之间的向量空间距离进行计算,包括以下步骤:
S21根据词频确定词语的权重:词频数据从开放的大规模语料中统计得到,或结合收集的特定语料进行统计得到;
按词频大小对单词加权,语料中出现频繁的词,其携带的有效语义信息就少,给其赋予权重就小;反之则权重大;
单词w的权重ω根据公式(1)计算:
其中,P(w)是单词w在语料中出现的概率,即词频除以语料中总词数;ɑ为平滑调节因子;ɑ取值在0.0001~0.001;
S22确定词向量表征方案:词向量方案根据具体情况选择word2vec、GloVe或者自定义的表征方案;或自行训练,或直接使用预训练的词向量资源;词向量的维度决定语句向量计算所在的语义空间维度,在50~300维;词向量本身的语义表征效果保障句子向量距离计算的基础;
S23平滑逆频加权计算句子初始向量:对于语句数据集中每个句子S,包含w1,w2……wn共n个词,按照公式(2)计算初始向量V0;
其中ωi表示第i个词的权重,Vwi表示第i个词的词向量;
S24对数据集矩阵执行常见成分移除:对于步骤S23计算得到的一系列句向量组成的矩阵X,常见成分包含语法结构与停用词相关的信息,去除冗余噪声保留语义信息;
首先对矩阵X进行奇异值分解X=U·Sigma·VT,得到VT与V;当分解参数设为1时,VT看作X的第一主成分,是需要移除的分量所在方向;
然后按照公式(3)对矩阵X中的常见成分进行去除,得到新的矩阵X’,其中每一行即为语句数据集中各句子最终的向量表征;
X’=X-X·V·VT 公式(3)
其中VT是奇异值分解的成分之一,V是VT的转置矩阵;
S25计算两个句子的向量空间距离:步骤S24已得到X’中两个句子向量V1、V2,按照公式(4)计算两个句子的向量空间距离Dis-vec(V1,V2);
Dis-vec(V1,V2)=1-unit(V1)·unit(V2) 公式(4)
其中,unit(Vec)是将向量转换为单位向量的函数。
进一步地,上述的句子语义距离的度量方法,其中,步骤3),统计两个语句的公共词序列,计算公共词索引序列的乱序数与最大乱序数,分三种情况对语序距离进行了计算。
进一步地,上述的句子语义距离的度量方法,其中,对于语序距离计算,用乱序程度衡量两个句子在词语顺序方面的相近程度,即距离远近;包括以下步骤:
S31获取两个句子的公共词序列:统计得到两个句子的公共词序列,对于在句子中多次出现的同一个词,只统计其第一次出现的位置;
S32计算公共词索引序列的乱序数:按照公共词在句子S1中出现的顺序为基准,依次统计在句子S2中出现的索引,得到索引序列;对序列中的每个索引,遍历后面的每一个索引,如果后面索引大于当前索引,乱序数加1;遍历完全部索引,得到整个序列的乱序数Rev(S1,S2);
当序列中元素顺序完全相反时,乱序数达到最大值;对于有n个元素的公共词序列,最大乱序数Mr(S1,S2)由公式(5)得到;
S33计算两个句子的语序距离:句子S1与S2在三种不同情况下的语序距离Dis-ord由公式(6)计算得到;
其中Rev(S1,S2)、Mr(S1,S2)分别指步骤S32得到的S1与S2的公共词序列的乱序数与最大乱序数,com(S1,S2)指步骤S31得到的S1与S2的公共词数量;
算出两个句子的语序距离Dis-ord,反映句子成分在词语顺序方面的差异大小。
进一步地,上述的句子语义距离的度量方法,其中,步骤3),对待比较的语句进行语义依存分析,得到依存五元组;按特征重要性对各五元组比较结果进行数字化表征,使得五元组之间的距离远近可以量化;通过依次比较两个语句的各依存五元组之间的距离得到两个语句的语义依存距离。
进一步地,上述的句子语义距离的度量方法,其中,基于语义依存的距离计算,采用语义依存五元组及其特征距离计算方法,通过两个句子各个语义依存五元组之间的距离求得句子的语义依存距离,包括以下步骤:
S41通过语义依存分析获取依存五元组:利用句子语义解析工具对句子做语义依存关系分析,得到一组表征依存关系的3元组;对于每个依存3元组,结合当前词与所依赖的词的词性,得到一系列五元组(C,P,D,C_pos,P_pos),其中C是一个词,P是C在语义上依赖的词,D是C与P之间的语义依赖关系,C_pos与P_pos则分别是词语C和P的词性;
对语义依存解析结果按照依存关系的类别进行针对性过滤,只保留对语义影响最大的依存关系参与计算;
S42按特征重要性对依存五元组进行数字化表征:依存关系不仅取决于词语,还受词性的影响,重要性在词与词性之间;五元组的元素之间重要性从大到小排序为C>P>D>C_pos>P_pos;
比较两个语义依存关系的近似程度,根据特征重要性的顺序,给各元素赋予不同的权重;
S43计算两个句子的语义依存距离:对数据集中的任一句子,到步骤S41可解析为一个语义依存五元组的集合;假设两个句子得到的语义依存关系集合分别为A={a1,a2,……an}和B={b1,b2,……bm},语义依存距离Dis-dep由公式(7)求得;
进一步地,上述的句子语义距离的度量方法,其中,步骤4),对两个语句的向量空间距离、语序距离以及语义依存距离加权求和算得综合语义距离。
进一步地,上述的句子语义距离的度量方法,其中,根据两个句子在语义空间向量的距离、语序方面的距离以及语义依存关系层面的距离,根据公式(8)求得综合语义距离D:
D=α·Dis-vec+β·Dis-ord+γ·Dis-dep 公式(8)
其中α、β、γ为权重调节参数,且满足α+β+γ=1;
数值可由不同权重组合在自身数据集上的实际表现确定。
本发明与现有技术相比具有显著的优点和有益效果,具体体现在以下方面:
①本发明从句子向量表征、句子词语顺序、句子成分依存三个维度进行衡量,最后通过加权求和的方式得到最终语义距离;不仅利用了词级别的计算手段,还吸收了句子级别的运算思想,通过向量空间距离、语序距离和语义依存距离的引入和创造性结合,比目前常见方法能够更全面、合理地衡量句子的语义距离远近;
②在向量表征方面,采用平滑逆频加权,更是创造性地提出成分移除,高效地保留语义信息;在语序特征方面采用乱序程度作为度量指标;在句子成分的依存关系方面,提出语义依存五元组的距离度量方案;
③本发明方法能够在取得媲美深度句子嵌入模型的成绩的同时,具有更高的可解释性,更低的语料需求,在众多的垂直行业领域更加实用;堪称是具有新颖性、创造性、实用性的好技术。
本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明具体实施方式了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书中所特别指出的结构来实现和获得。
附图说明
图1:本发明的整体流程示意图;
图2:计算两个语句的向量空间距离的流程示意图;
图3:度量两个语句的语序距离的流程示意图;
图4:计算两个语句的语义依存距离的流程示意图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现详细说明具体实施方案。
本发明句子语义距离的度量方法,包括以下步骤:
1)对语句数据集做分词、去停用词预处理;
通常原始的语句数据中词语之间没有分开,而且包含了对语义表达无贡献的虚词、符号等,因此需要进行预处理;
利用分词方法或工具对语句数据集做分词预处理,分词方法是基于词典的最大匹配方法、全切分路径选择方法、基于字序列标注的方法或基于转移的分词方法,分词工具是开源工具或闭源分词工具,分词工具提供多种分词算法与策略供用户选择,支持添加自定义词典、新词发现。
去停用词预处理按照公开的或者自建的停用词表,去除不含实际意义的虚词、标点;
2)选择词义相似性方案,设定阈值执行同、近义词归一化;
为提高语义距离度量的针对性,对于词义特别接近的词语,可以认为语义是一致的,先将同义与近义词进行归一化,可避免多余的计算,减少误差的引入;
词语语义的度量方式是词向量的余弦值或欧式距离,或在语义知识库中计算;
阈值根据词义度量方法和实际需要设定;
3)计算两个语句的向量空间距离、度量两个语句的语序距离以及计算两个语句的语义依存距离;即:
a、结合平滑逆频加权与常见成分移除计算两个语句的向量空间距离;
根据词频进行差异化加权,利用已训练好的词向量获取数据集中各句子的初始向量,再以各初始向量构成的语义矩阵进行常见成分移除,得到语义表征更准确的各句子向量,通过转换为单位向量的点积运算间接求得向量空间距离。
b、以乱序程度来度量两个语句的语序距离;
统计两个语句的公共词序列,计算公共词索引序列的乱序数与最大乱序数,分三种情况对语序距离进行了计算。
c、结合语义依存五元组特征计算两个语句的语义依存距离;
先对待比较的语句进行语义依存分析,得到依存五元组;然后按特征重要性对各五元组比较结果进行数字化表征,使得五元组之间的距离远近可以量化;最后通过依次比较两个语句的各依存五元组之间的距离来得到两个语句的语义依存距离;
4)对向量空间距离、语序距离、语义依存距离做混合加权计算;
对两个语句的向量空间距离、语序距离以及语义依存距离加权求和算得综合语义距离。
如图1所示,具体流程为:
S101:利用分词方法或工具对语句数据集做分词、去停用词等预处理;
通常而言,原始的语句数据词语之间没有分开,而且包含了对语义表达几乎无贡献的虚词、符号等,因此首先需要进行必要的预处理。
具体地,分词方法可以是基于词典的最大匹配方法、全切分路径选择方法、基于字序列标注的方法或基于转移的分词方法等任何一种。具体分词工具可以是任何开源工具或闭源分词工具,提供多种分词算法与策略供用户选择,支持添加自定义词典、新词发现等功能,这里以jieba分词工具的精确模式为例。
对于分词之前的语料片段:“高校为各行各业培养了大量优秀人才,未来仍需继续努力。”分词之后可以指定分隔符(如斜线或空格等,这里以“/”为例),可得到“高校/为/各行各业/培养/了/大量/优秀人才/,/未来/仍/需/继续/努力/。”
具体地,停用词去除可以按照公开的或者自建的停用词表,去除不含实际意义的虚词、标点等。
S102:选择词义相似性方案,设定阈值执行同、近义词归一化。
为提高语义距离度量的针对性,对于词义特别接近的词语,可以认为语义是一致的,事先将同义与近义词进行归一化,可以避免多余的计算,减少误差的引入。
具体地,词语语义的度量方式可以是词向量的余弦值或欧式距离,也可以在语义知识库(如《同义词词林》及其扩展版、hownet等)中计算。
具体阈值可以根据词义度量方法和实际需要设定,比如设为0.8,则将相似度高于0.8的两个词在语义表达上视为同一个词。
S103:结合平滑逆频加权与常见成分移除计算两个语句的向量空间距离。
此步骤利用已训练好的词向量,通过转换操作获取句子在语义空间的向量表征,从而能够对句子之间的向量空间距离进行计算。为了更清楚地描述此步骤,如图2所示,步骤S103的具体流程主要包括以下步骤:
S21根据词频确定词语的权重:词频数据既可从开放的大规模语料(如维基百科、百度百科等)中统计得到,也可以结合自己收集的特定语料进行统计得到。由于在语料达到一定规模后,各词在语料中出现的概率会趋于稳定,为了提高处理效率,可以将计算后的词权重保存到文件或数据库中备查。
按词频大小对单词加权,语料中出现更频繁的词,其携带的有效语义信息就越少,给其赋予权重就更小;反之则权重更大。单词w的权重ω可根据公式(1)计算:
其中,P(w)是单词w在语料中出现的概率(词频除以语料中总词数);ɑ为平滑调节因子。优选地,ɑ取值在0.0001到0.001之间。
S22确定词向量表征方案:词向量方案可根据具体情况选择,比如word2vec、GloVe或者自定义的表征方案;既可自行训练,也可直接使用预训练的词向量资源。词向量的维度决定了语句向量计算所在的语义空间维度,优选在50-300维。词向量本身的语义表征效果是保障句子向量距离计算的基础。
S23平滑逆频加权计算句子初始向量:对于语句数据集中每个句子S(包含w1,w2……wn共n个词),按照公式(2)计算初始向量V0;
其中ωi表示第i个词的权重,Vwi表示第i个词的词向量。
S24对数据集矩阵执行常见成分移除:对于步骤S23计算得到的一系列句向量组成的矩阵X,由于常见成分主要包含语法结构与停用词相关的信息,去除这些冗余噪声可更精准地保留语义信息。
首先对矩阵X进行奇异值分解(X=U·Sigma·VT)可得到VT与V;当分解参数设为1时,VT可看作X的第一主成分,是需要移除的分量所在方向。
然后按照公式(3)对矩阵X中的常见成分进行去除,得到新的矩阵X’,其中每一行即为语句数据集中各句子最终的向量表征。
X’=X-X·V·VT 公式(3)
其中VT是奇异值分解的成分之一,V是VT的转置矩阵。
S25计算两个句子的向量空间距离:S24步骤已得到X’中两个句子向量V1、V2,可按照公式(4)计算两个句子的向量空间距离Dis-vec(V1,V2);
Dis-vec(V1,V2)=1-unit(V1)·unit(V2) 公式(4)
其中,unit(Vec)是将向量转换为单位向量的函数。
S104:以乱序程度来度量两个语句的语序距离。
对于句子在语序维度的距离,本发明用乱序程度衡量两个句子在词语顺序方面的距离远近。为了更清楚地描述此步骤,如图3所示,步骤S104的具体流程步骤如下:
S31获取两个句子的公共词序列:步骤S102已经进行了同近义词归一化,因此可简单地统计得到两个句子的公共词序列。对于在句子中多次出现的同一个词,可只统计其第一次出现的位置。
例如:经过同近义词归一化之后得到的“山那边风景很美你自己去看”与“你可以亲自看一下山另一边景色十分迷人”,容易统计得到二者公共词序列:“山、那边、风景、很、美、你、自己、看”。
S32计算公共词索引序列的乱序数:按照公共词在句子S1中出现的顺序为基准,依次统计在句子S2中出现的索引,得到索引序列。对序列中的每个索引,遍历它后面的每一个索引,如果后面索引大于当前索引,乱序数加1。遍历完全部索引,就得到整个序列的乱序数Rev(S1,S2)。
很明显,当序列中元素顺序完全相反时,乱序数达到最大值。对于有n个元素的公共词序列,最大乱序数Mr(S1,S2)可由公式(5)得到。
对于S31中的例子,公共词序列的索引为:[6,7,8,9,1,3,4],其乱序数为12,最大乱序数为28。
S33计算两个句子的语序距离:句子S1与S2在三种不同情况下的语序距离Dis-ord可由公式(6)计算得到。
其中Rev(S1,S2)、Mr(S1,S2)分别指步骤S32得到的S1与S2的公共词序列的乱序数与最大乱序数,com(S1,S2)指步骤S31得到的S1与S2的公共词数量。
对于S31中的例子而言,可以算出两个句子的语序距离Dis-ord约为0.429,能够反映句子成分在词语顺序方面的差异大小。
S105结合语义依存五元组特征计算两个语句的语义依存距离。
对句子语义依存维度的距离计算,本发明采用语义依存五元组及其特征距离计算方法,最终通过两个句子各个语义依存五元组之间的距离求得句子的语义依存距离。为了更清楚地描述此步骤,如图4所示,步骤S105的具体流程如下:
S41通过语义依存分析获取依存五元组:利用句子语义解析工具(如哈工大的LTP)对句子做语义依存关系分析,得到一组表征依存关系的3元组。对于每个依存3元组,将当前词与它所依赖的词的词性也考虑进来,则可以得到一系列五元组(C,P,D,C_pos,P_pos),其中C是一个词,P是C在语义上依赖的词,D是C与P之间的语义依赖关系,C_pos与P_pos则分别是词语C和P的词性。
优选地,可对语义依存解析结果按照依存关系的类别进行针对性过滤,只保留对语义影响最大的那些依存关系参与后续计算。
例如:“今天天气不错”处理后可以得到两个五元组:('今天','天气','Time','nt','n')与('天气','不错','Exp','n','a')。
S42按特征重要性对依存五元组进行数字化表征:理论上讲,一个词语只能依赖于一个具体的词,但可以有多个词依赖于它。因此在五元组当中,词语本身重要性大于它依赖的词。另外有些词具有多个词性,一种词性有大量的词,因此词语本身比词性重要。依存关系不仅取决于词语,还受词性的影响,因此重要性在词与词性之间。五元组的元素之间重要性从大到小排序为C>P>D>C_pos>P_pos。
为了比较两个语义依存关系的近似程度,根据特征重要性的顺序,可以有多种方案给各元素赋予不同的权重。将依存五元组是否相同这一特征采用5个bit来表示(每个bit为0表示此处特征相同,为1表示此处特征不同)。这就意味着给五个特征的权重分别是(16,8,4,2,1),那么两个依存五元组最大差异是完全不同,距离为31。
优选地,在词性比较时可以采用比较宽松的标准,只要首字母一致(属于同一大类)就认为词性相同,如词性n、ns、nr、nt等可认为是相同的。
假设依存五元组T1=(C1,P1,D1,C1_pos,P1_pos),T2=(C2,P2,D2,C2_pos,P2_pos),其中C1=C2,P1≠P2,D1=D2,C1_pos=C2_pos,P1_pos≠P2_pos。那么T1与T2比较得到的特征元组为01001(二进制),它们的依存距离可定义为特征值与最大特征值的比值,即Dis(T1,T2)=9/31=0.2903。
S43计算两个句子的语义依存距离:对数据集中的任一句子,到S41步骤可解析为一个语义依存五元组的集合。假设两个句子得到的语义依存关系集合分别为A={a1,a2,……an}和B={b1,b2,……bm},那么语义依存距离Dis-dep可由公式(7)求得。
S106对向量空间距离、语序距离、语义依存距离做混合加权计算。
经过步骤S103、S104与S105分别得到了两个句子在语义空间向量的距离、语序方面的距离和语义依存关系层面的距离,可以按照公式(8)求得综合语义距离D:
D=α·Dis-vec+β·Dis-ord+γ·Dis-dep 公式(8)
其中α、β、γ为权重调节参数,且满足α+β+γ=1。具体数值可由不同权重组合在自身数据集上的实际表现来确定。实际操作上,可以指定一个初始组合(如0.8、0.1、0.1)进行尝试,然后对偏差较大的案例进行分析,并按最小步幅(如0.05)对参数进行针对性调节,直到确定最优权重组合为止。
综上所述,本发明句子语义距离的度量方法,从句子向量表征、句子词语顺序、句子成分依存三个维度进行衡量,最后通过加权求和的方式得到最终语义距离。在向量表征方面,采用平滑逆频加权,更是创造性地提出成分移除,高效地保留语义信息;在语序特征方面采用乱序程度作为度量指标;在句子成分的依存关系方面,提出语义依存五元组的距离度量方案。
与现有技术相比,本发明不仅利用了词级别的计算手段,还吸收了句子级别的运算思想,通过向量空间距离、语序距离和语义依存距离的引入和创造性结合,比目前常见方法能够更全面、合理地衡量句子的语义距离远近。本发明方法能够在取得媲美深度句子嵌入模型的成绩的同时,具有更高的可解释性,更低的语料需求,在众多的垂直行业领域更加实用。
需要说明的是:以上所述仅为本发明的优选实施方式,并非用以限定本发明的权利范围;同时以上的描述,对于相关技术领域的专门人士应可明了及实施,因此其它未脱离本发明所揭示的精神下所完成的等效改变或修饰,均应包含在申请专利范围中。
Claims (12)
1.句子语义距离的度量方法,其特征在于:包括以下步骤:
1)对语句数据集做分词、去停用词预处理;
2)选择词义相似性方案,设定阈值执行同、近义词归一化;
3)计算两个语句的向量空间距离、度量两个语句的语序距离以及计算两个语句的语义依存距离;即:
a、结合平滑逆频加权与常见成分移除计算两个语句的向量空间距离;
b、以乱序程度来度量两个语句的语序距离;
c、结合语义依存五元组特征计算两个语句的语义依存距离;
4)对向量空间距离、语序距离、语义依存距离做混合加权计算。
2.根据权利要求1所述的句子语义距离的度量方法,其特征在于:步骤1),利用分词方法或工具对语句数据集做分词预处理,所述分词方法是基于词典的最大匹配方法、全切分路径选择方法、基于字序列标注的方法或基于转移的分词方法,所述分词工具是开源工具或闭源分词工具,分词工具提供多种分词算法与策略供用户选择,支持添加自定义词典、新词发现。
3.根据权利要求1所述的句子语义距离的度量方法,其特征在于:步骤1),去停用词预处理按照公开的或者自建的停用词表,去除不含实际意义的虚词、标点。
4.根据权利要求1所述的句子语义距离的度量方法,其特征在于:步骤2),对于词义特别接近的词语,可认为语义是一致的,将同义与近义词进行归一化;
词语语义的度量方式是词向量的余弦值或欧式距离,或在语义知识库中计算;
阈值根据词义度量方法和实际需要设定。
5.根据权利要求1所述的句子语义距离的度量方法,其特征在于:步骤3),根据词频进行差异化加权,利用已训练好的词向量获取数据集中各句子的初始向量,再以各初始向量构成的语义矩阵进行常见成分移除,得到语义表征更准确的各句子向量,通过转换为单位向量的点积运算间接求得向量空间距离。
6.根据权利要求5所述的句子语义距离的度量方法,其特征在于:利用已训练好的词向量,通过转换操作获取句子在语义空间的向量表征,对句子之间的向量空间距离进行计算,包括以下步骤:
S21根据词频确定词语的权重:词频数据从开放的大规模语料中统计得到,或结合收集的特定语料进行统计得到;
按词频大小对单词加权,语料中出现频繁的词,其携带的有效语义信息就少,给其赋予权重就小;反之则权重大;
单词w的权重ω根据公式(1)计算:
其中,P(w)是单词w在语料中出现的概率,即词频除以语料中总词数;ɑ为平滑调节因子;ɑ取值在0.0001~0.001;
S22确定词向量表征方案:词向量方案根据具体情况选择word2vec、GloVe或者自定义的表征方案;或自行训练,或直接使用预训练的词向量资源;词向量的维度决定语句向量计算所在的语义空间维度,在50~300维;词向量本身的语义表征效果保障句子向量距离计算的基础;
S23平滑逆频加权计算句子初始向量:对于语句数据集中每个句子S,包含w1,w2……wn共n个词,按照公式(2)计算初始向量V0;
其中ωi表示第i个词的权重,Vwi表示第i个词的词向量;
S24对数据集矩阵执行常见成分移除:对于步骤S23计算得到的一系列句向量组成的矩阵X,常见成分包含语法结构与停用词相关的信息,去除冗余噪声保留语义信息;
首先对矩阵X进行奇异值分解X=U·Sigma·VT,得到VT与V;当分解参数设为1时,VT看作X的第一主成分,是需要移除的分量所在方向;
然后按照公式(3)对矩阵X中的常见成分进行去除,得到新的矩阵X’,其中每一行即为语句数据集中各句子最终的向量表征;
X’=X-X·V·VT 公式(3)
其中VT是奇异值分解的成分之一,V是VT的转置矩阵;
S25计算两个句子的向量空间距离:步骤S24已得到X’中两个句子向量V1、V2,按照公式(4)计算两个句子的向量空间距离Dis-vec(V1,V2);
Dis-vec(V1,V2)=1-unit(V1)·unit(V2) 公式(4)
其中,unit(Vec)是将向量转换为单位向量的函数。
7.根据权利要求1所述的句子语义距离的度量方法,其特征在于:步骤3),统计两个语句的公共词序列,计算公共词索引序列的乱序数与最大乱序数,分三种情况对语序距离进行了计算。
8.根据权利要求7所述的句子语义距离的度量方法,其特征在于:对于语序距离计算,用乱序程度衡量两个句子在词语顺序方面的相近程度,即距离远近;包括以下步骤:
S31获取两个句子的公共词序列:统计得到两个句子的公共词序列,对于在句子中多次出现的同一个词,只统计其第一次出现的位置;
S32计算公共词索引序列的乱序数:按照公共词在句子S1中出现的顺序为基准,依次统计在句子S2中出现的索引,得到索引序列;对序列中的每个索引,遍历后面的每一个索引,如果后面索引大于当前索引,乱序数加1;遍历完全部索引,得到整个序列的乱序数Rev(S1,S2);
当序列中元素顺序完全相反时,乱序数达到最大值;对于有n个元素的公共词序列,最大乱序数Mr(S1,S2)由公式(5)得到;
S33计算两个句子的语序距离:句子S1与S2在三种不同情况下的语序距离Dis-ord由公式(6)计算得到;
其中Rev(S1,S2)、Mr(S1,S2)分别指步骤S32得到的S1与S2的公共词序列的乱序数与最大乱序数,com(S1,S2)指步骤S31得到的S1与S2的公共词数量;
算出两个句子的语序距离Dis-ord,反映句子成分在词语顺序方面的差异大小。
9.根据权利要求1所述的句子语义距离的度量方法,其特征在于:步骤3),对待比较的语句进行语义依存分析,得到依存五元组;按特征重要性对各五元组比较结果进行数字化表征,使得五元组之间的距离远近可以量化;通过依次比较两个语句的各依存五元组之间的距离得到两个语句的语义依存距离。
10.根据权利要求9所述的句子语义距离的度量方法,其特征在于:基于语义依存的距离计算,采用语义依存五元组及其特征距离计算方法,通过两个句子各个语义依存五元组之间的距离求得句子的语义依存距离,包括以下步骤:
S41通过语义依存分析获取依存五元组:利用句子语义解析工具对句子做语义依存关系分析,得到一组表征依存关系的3元组;对于每个依存3元组,结合当前词与所依赖的词的词性,得到一系列五元组(C,P,D,C_pos,P_pos),其中C是一个词,P是C在语义上依赖的词,D是C与P之间的语义依赖关系,C_pos与P_pos则分别是词语C和P的词性;
对语义依存解析结果按照依存关系的类别进行针对性过滤,只保留对语义影响最大的依存关系参与计算;
S42按特征重要性对依存五元组进行数字化表征:依存关系不仅取决于词语,还受词性的影响,重要性在词与词性之间;五元组的元素之间重要性从大到小排序为C>P>D>C_pos>P_pos;
比较两个语义依存关系的近似程度,根据特征重要性的顺序,给各元素赋予不同的权重;
S43计算两个句子的语义依存距离:对数据集中的任一句子,到步骤S41可解析为一个语义依存五元组的集合;假设两个句子得到的语义依存关系集合分别为A={a1,a2,……an}和B={b1,b2,……bm},语义依存距离Dis-dep由公式(7)求得;
11.根据权利要求1所述的句子语义距离的度量方法,其特征在于:步骤4),对两个语句的向量空间距离、语序距离以及语义依存距离加权求和算得综合语义距离。
12.根据权利要求11所述的句子语义距离的度量方法,其特征在于:根据两个句子在语义空间向量的距离、语序方面的距离以及语义依存关系层面的距离,根据公式(8)求得综合语义距离D:
D=α·Dis-vec+β·Dis-ord+γ·Dis-dep 公式(8)
其中α、β、γ为权重调节参数,且满足α+β+γ=1;
数值由不同权重组合在自身数据集上的实际表现确定。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910073906.9A CN110008465B (zh) | 2019-01-25 | 2019-01-25 | 句子语义距离的度量方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910073906.9A CN110008465B (zh) | 2019-01-25 | 2019-01-25 | 句子语义距离的度量方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110008465A true CN110008465A (zh) | 2019-07-12 |
CN110008465B CN110008465B (zh) | 2023-05-12 |
Family
ID=67165553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910073906.9A Active CN110008465B (zh) | 2019-01-25 | 2019-01-25 | 句子语义距离的度量方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110008465B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598078A (zh) * | 2019-09-11 | 2019-12-20 | 京东数字科技控股有限公司 | 数据检索方法及装置、计算机可读存储介质、电子设备 |
CN110705248A (zh) * | 2019-10-09 | 2020-01-17 | 厦门今立方科技有限公司 | 一种文本相似度计算方法、终端设备及存储介质 |
CN110750629A (zh) * | 2019-09-18 | 2020-02-04 | 平安科技(深圳)有限公司 | 机器人对话生成方法、装置、可读存储介质及机器人 |
CN111414765A (zh) * | 2020-03-20 | 2020-07-14 | 北京百度网讯科技有限公司 | 句子一致性的判定方法、装置、电子设备及可读存储介质 |
CN112613295A (zh) * | 2020-12-21 | 2021-04-06 | 竹间智能科技(上海)有限公司 | 语料识别方法及装置、电子设备、存储介质 |
CN114722154A (zh) * | 2022-04-21 | 2022-07-08 | 北京易聊科技有限公司 | 一种适应低算力的大规模相似语句自动抽取方法 |
EP4080379A4 (en) * | 2019-12-19 | 2022-12-28 | Fujitsu Limited | INFORMATION PROCESSING PROGRAM, METHOD AND DEVICE |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011175568A (ja) * | 2010-02-25 | 2011-09-08 | Mitsubishi Electric Corp | 文書間距離算出器および文章検索器 |
WO2012077979A2 (ko) * | 2010-12-07 | 2012-06-14 | 에스케이텔레콤 주식회사 | 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류방법과 그를 위한 장치 및 컴퓨터로 읽을 수 있는 기록매체 |
CN104933027A (zh) * | 2015-06-12 | 2015-09-23 | 华东师范大学 | 一种利用依存分析的开放式中文实体关系抽取方法 |
CN106445920A (zh) * | 2016-09-29 | 2017-02-22 | 北京理工大学 | 利用句义结构特征的句子相似度计算方法 |
-
2019
- 2019-01-25 CN CN201910073906.9A patent/CN110008465B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011175568A (ja) * | 2010-02-25 | 2011-09-08 | Mitsubishi Electric Corp | 文書間距離算出器および文章検索器 |
WO2012077979A2 (ko) * | 2010-12-07 | 2012-06-14 | 에스케이텔레콤 주식회사 | 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류방법과 그를 위한 장치 및 컴퓨터로 읽을 수 있는 기록매체 |
CN104933027A (zh) * | 2015-06-12 | 2015-09-23 | 华东师范大学 | 一种利用依存分析的开放式中文实体关系抽取方法 |
CN106445920A (zh) * | 2016-09-29 | 2017-02-22 | 北京理工大学 | 利用句义结构特征的句子相似度计算方法 |
Non-Patent Citations (1)
Title |
---|
唐晓波等: "基于依存句法的跨语言细粒度情感分析", 《情报理论与实践》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598078A (zh) * | 2019-09-11 | 2019-12-20 | 京东数字科技控股有限公司 | 数据检索方法及装置、计算机可读存储介质、电子设备 |
CN110750629A (zh) * | 2019-09-18 | 2020-02-04 | 平安科技(深圳)有限公司 | 机器人对话生成方法、装置、可读存储介质及机器人 |
CN110705248A (zh) * | 2019-10-09 | 2020-01-17 | 厦门今立方科技有限公司 | 一种文本相似度计算方法、终端设备及存储介质 |
EP4080379A4 (en) * | 2019-12-19 | 2022-12-28 | Fujitsu Limited | INFORMATION PROCESSING PROGRAM, METHOD AND DEVICE |
CN111414765A (zh) * | 2020-03-20 | 2020-07-14 | 北京百度网讯科技有限公司 | 句子一致性的判定方法、装置、电子设备及可读存储介质 |
CN111414765B (zh) * | 2020-03-20 | 2023-07-25 | 北京百度网讯科技有限公司 | 句子一致性的判定方法、装置、电子设备及可读存储介质 |
CN112613295A (zh) * | 2020-12-21 | 2021-04-06 | 竹间智能科技(上海)有限公司 | 语料识别方法及装置、电子设备、存储介质 |
CN112613295B (zh) * | 2020-12-21 | 2023-12-22 | 竹间智能科技(上海)有限公司 | 语料识别方法及装置、电子设备、存储介质 |
CN114722154A (zh) * | 2022-04-21 | 2022-07-08 | 北京易聊科技有限公司 | 一种适应低算力的大规模相似语句自动抽取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110008465B (zh) | 2023-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110008465A (zh) | 句子语义距离的度量方法 | |
Novikova et al. | The E2E dataset: New challenges for end-to-end generation | |
CN105589844B (zh) | 一种用于多轮问答系统中缺失语义补充的方法 | |
CN104679728B (zh) | 一种文本相似度检测方法 | |
CN106599032B (zh) | 一种结合稀疏编码和结构感知机的文本事件抽取方法 | |
WO2019080863A1 (zh) | 文本情感分类方法、存储介质及计算机 | |
CN109948143A (zh) | 社区问答系统的答案抽取方法 | |
El-Haj et al. | KALIMAT a multipurpose Arabic Corpus | |
CN108763213A (zh) | 主题特征文本关键词提取方法 | |
CN106997376A (zh) | 一种基于多级特征的问题和答案句子相似度计算方法 | |
CN104346379B (zh) | 一种基于逻辑和统计技术的数据元识别方法 | |
CN105975458B (zh) | 一种基于细粒度依存关系的中文长句相似度计算方法 | |
CN105843897A (zh) | 一种面向垂直领域的智能问答系统 | |
CN107992542A (zh) | 一种基于主题模型的相似文章推荐方法 | |
CN110321563A (zh) | 基于混合监督模型的文本情感分析方法 | |
CN107145514B (zh) | 基于决策树和svm混合模型的中文句型分类方法 | |
CN109002473A (zh) | 一种基于词向量与词性的情感分析方法 | |
CN110362678A (zh) | 一种自动提取中文文本关键词的方法与装置 | |
CN110347796A (zh) | 向量语义张量空间下的短文本相似度计算方法 | |
CN110457690A (zh) | 一种专利创造性的判断方法 | |
CN108804595A (zh) | 一种基于word2vec的短文本表示方法 | |
CN103744838B (zh) | 一种用于度量主流情感信息的中文情感文摘系统及方法 | |
CN114997288A (zh) | 一种设计资源关联方法 | |
Atef et al. | AQAD: 17,000+ arabic questions for machine comprehension of text | |
CN111597349A (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 |