CN109344236B - 一种基于多种特征的问题相似度计算方法 - Google Patents
一种基于多种特征的问题相似度计算方法 Download PDFInfo
- Publication number
- CN109344236B CN109344236B CN201811041071.0A CN201811041071A CN109344236B CN 109344236 B CN109344236 B CN 109344236B CN 201811041071 A CN201811041071 A CN 201811041071A CN 109344236 B CN109344236 B CN 109344236B
- Authority
- CN
- China
- Prior art keywords
- new
- rel
- similarity
- question
- word
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- 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
Abstract
本发明公开了一种基于多种特征的问题相似度计算方法,包括步骤:针对输入的新问题句子,将其与存储的历史问题及对应的答案进行比对计算,计算出新问题与历史问题之间基于字符特征的相似度、基于词语语义特征的相似度、基于句子语义特征的相似度、基于句子隐含主题特征的相似度和基于答案语义特征的相似度;最终相似度为上述5个相似度及其各自对应权重的乘积和,权重利用线性回归方法训练得到。本发明采用多种特征增加了样本属性的多样性,提升了模型的泛化能力。同时利用软余弦距离将TF‑IDF与编辑距离、词语语义等信息进行融合,克服了词语之间的语义鸿沟,提高了相似度计算的准确率。
Description
技术领域
本发明涉及计算机自然语言处理与自动问答***研究领域,特别涉及一种基于多种特征的问题相似度计算方法。
背景技术
随着数字化信息的快速增加,人们从网络上获取所需的信息资源的难度也随之增大。如何在海量的数字化信息中,精准快速地为用户找到所需的信息给自然语言处理(NLP)技术和信息检索技术带来了严峻的挑战。因此,为了给用户提供实时性强、精确度高的信息获取渠道,研究机构和相关科技公司开始研究自动问答***(QA)。在自动问答***中,用户只需要输入问题就可以直接得到对应答案,不再需要用户根据问题提取关键词进行检索以及阅读大量网页寻找答案。自动问答***比传统搜索引擎更加简单易用、实时、精确,为用户提供了舒适的人机交互体验,成为目前信息技术新一代的研究热点。自动问答***允许用户以自然语言形式描述问题,然后精确地理解用户的问题,并通过检索问答库或者互联网上搜索到的信息组织答案,最后返回精炼而准确的结果,提供了高效率的信息获取渠道。
问题相似度计算是自动问答***中首要环节,目的是从已有的问题集合中找出与新提出问题最相似的历史问题,从而根据历史问题的答案集给出新问题的答案。
目前,国内在自动问答领域也有一些成果。通用型社区问答***包括Quora、头条问答、百度知道等,专业型社区问答***涉及多专业,例如Stack Overflow、CSDN等IT技术相关的问答***。因此,问题相似度计算方法直接影响问答***的准确率,具有很好的产业前景。
经过多年的研究积累,自动问答***形成了通用的框架,主要由信息检索、问题分析和答案获取三个模块组成。其中,问题分析模块的主要任务是对用户输入的问题进行分析,从已有的问题集合中找出与新提出问题最相似的历史问题,研究内容涉及问题相似度分析和问题排序,其中最主要的是问题与问题之间的相似度计算,从而根据相似度对历史问题集合进行排序。答案获取模块主要根据问题检索得到的相似问题集合,得到对应的答案集合。
文本相似度相关技术是问题相似度技术的基础(问题和答案均属于文本类型)。文本相似度计算方法主要有三种。
第一种是基于向量空间模型(Vector Space Model,VSM)的相似度计算,将文本映射到向量空间中的一个点,再利用数学方法计算空间中点与点的距离。有研究人员提出将VSM模型应用到常问问题(Frequently Asked Questions,FAQ)的相似问题检索任务中,并针对FAQ的任务特点对VSM进行了改进。但这种方法文本稀疏导致维度过大,容易出现语义鸿沟问题。
第二种是基于句法分析的相似度计算,引入图形化的方式描述一个句子中各个词组相互支配和被支配关系。有研究人员提出基于深层结构的分析方法,首先对问题进行依存关系分析,选取句中最重要的词以及直接依附于该词的有效词进行配对,然后基于依存关系结构进行中文的文本相似度计算。但这种方法句法分析、依存关系分析等工具较为复杂,需要有语言学背景,而且对复杂的长句型的分析效果不好。
第三种是基于语义的相似度计算,包含词语语义和句子语义两种相似度。关于词语的语义相似度计算,通常使用WordNet和Hownet等语义词典,语义词典中包含了词与词之间的语义关系。有研究人员认为短句的完整表达不仅依赖于句法结构,而且还依赖于单词及其权重,因此利用WordNet改进了单词的语义表示。在句子的语义相似度计算方面,有研究人员利用IBM的机器翻译模型学习两个问题句子之间的转换概率,从而表示句子的语义相似度,检索相似问题。但这种方法过度依赖语义词典,相似度计算的准确率受语义词典的完备性和正确性影响;同样地,基于语义的相似度计算方法在处理句法复杂的长句型效果较差。
同时现有技术中的方法多是基于单一类型的信息抽取文本表示特征,聚焦于单一类型特征,没有考虑到文本表达的含义是由多方面多层次的信息构成,因此计算相似度的准确率不高。
发明内容
为了克服现有技术的不足,本发明的目的是提供一种基于多种特征的问题相似度计算方法,该方法适用于英文问答***中问题之间的相似度计算,具有准确率高的优点。
本发明的目的通过以下的技术方案实现:一种基于多种特征的问题相似度计算方法,包括步骤:针对输入的新问题句子,将其与存储的历史问题及对应的答案进行比对计算,计算出新问题与历史问题之间基于字符特征的相似度、基于词语语义特征的相似度、基于句子语义特征的相似度、基于句子隐含主题特征的相似度和基于答案语义特征的相似度;最终相似度为上述5个相似度及其各自对应权重的乘积和,权重利用线性回归方法训练得到。
优选的,对于用于比对计算的新问题句子、历史问题及对应的答案先进行预处理,包括去除标点符号处理、大小写转换(所有大写字母转成小写)、去停用词和低频率词。
优选的,计算基于字符特征的相似度的方法是:首先,通过计算每对词语之间的编辑距离,得到词语之间的关系矩阵,然后利用问句的TF-IDF(term frequency–inversedocument frequency)表示和关系矩阵计算软余弦距离,作为基于字符特征的相似度。
更进一步的,词语之间的关系矩阵计算方法是:
定义语料库为用于训练和测试模型的问句和答案文本数据集,假设语料库中词典的大小为n,则词语之间的编辑距离形成的关系矩阵Mlev∈Rn×n,Rn×n是大小为n×n的实数矩阵集合(下文含义相同),Mlev中元素mi,j为词典中第i个词wi与第j个词wj的编辑距离。编辑距离计算公式如下:
其中,||wi||是单词wi中包含字符的个数,||wj||是单词wj中包含字符的个数,α是对角元素的加权因子,β是距离得分的强化因子。lev(wi,wj)的递归计算公式如下:
其中,m和n代表wi和wj词语的长度(即包含字符的个数)。cost表示wi中第m个字符到wj中第n个字符的替换代价,如果两个字符一致,则cost为0,否则cost为1。
更进一步的,问句的TF-IDF表示计算方法是:在一条句子中,针对词语wi,计算TF值和IDF值,TF值表示词语在当前句子中出现的频率,IDF值表示逆文本频率指数,针对词语wi的TF-IDF计算公式为:
TFIDFi=TFi*IDFi。
更进一步的,针对新提出问句Qnew和历史问句Qrel,软余弦距离的计算方法是:
问句Qnew、Qrel分别表示为TFIDFnew和TFIDFrel:
TFIDFnew=[dnew,1,dnew,2,…,dnew,n]T
TFIDFrel=[drel,1,drel,2,…,drel,n]T
dnew,i表示wi在Qnew中的TF-IDF值,drel,j表示wj在Qrel中的TF-IDF值,n表示语料库的词典中包含词语的个数,T表示向量的转置。
同时根据求得的词语之间关系矩阵为Mlev,采用软余弦距离计算Qnew、Qrel之间基于字符特征的相似度Rlev(Qnew,Qrel),公式如下:
其中,“·”是向量与矩阵的点乘(下文含义相同),计算方式如下:
优选的,计算基于词语语义特征的相似度的方法,步骤是:
(1)利用word2vec工具训练得到语料库中每个词语的分布式表示,即每个词语对应一个K维的实数向量。
(2)对词典大小为n的语料库,通过求词向量之间的余弦距离,计算词典中词语两两之间的语义关系mi,j,i,j∈[1,n],得到关系矩阵Mw2v,Mw2v∈Rn×n。
(3)读取问句Qnew、Qrel采用TF-IDF的表示,分别为TFIDFnew和TFIDFrel。
(4)采用软余弦距离计算Qnew、Qrel之间基于词语语义特征的相似度Rw2v(Qnew,Qrel),公式如下:
优选的,计算基于句子语义特征的相似度的方法,步骤是:
将问题句子表示为句子中词向量算术平均值的形式,即向量:
按照上式,问句Qnew、Qrel通过计算句子中词向量的算术平均值分别得到向量AVGnew和AVGrel,通过求AVGnew与AVGrel的余弦距离得到Qnew、Qrel之间基于问句语义特征的相似度Rvec(Qnew,Qrel)。
优选的,计算基于句子隐含主题特征的相似度的方法,步骤是:
把语料库作为Gensim中LdaModel函数的输入,通过训练得到LDA模型;然后把需要计算主题分布的新提出问句Qnew和历史问句Qrel输入到训练好的LDA模型,得到两个问句基于主题分布的向量表示,分别记为LDAnew、LDArel。通过求LDAnew与LDArel的余弦距离,得到Qnew、Qrel之间基于句子隐含主题特征的相似度Rlda(Qnew,Qrel)。
优选的,计算基于答案语义特征的相似度的方法,步骤是:
问答***中,每一个历史问题都对应着一个候选答案集合。针对新提出问句Qnew和历史问句Qrel,以及Qrel对应的候选答案Arel,计算Qnew与Arel的词语层面的语义相似度,作为两个问句基于答案语义特征的相似度Rqa(Qnew,Qrel),具体流程如下:
(1)利用word2vec工具训练得到语料库中每个词语的分布式表示,即每个词语对应一个K维的实数向量。
(2)对词典大小为n的语料库,通过求词向量之间的余弦距离,计算词典中词语两两之间的语义关系mi,j,i,j∈[1,n],得到关系矩阵Mw2v,Mw2v∈Rn×n。
(3)读取问句Qnew的TF-IDF表示TFIDFnew;Arel通过TF-IDF表示,得到TFIDFans=[dans,1,dans,2,...,dans,n]T,其中,dans,i表示wi在Arel中的TF-IDF值,n表示语料库的词典中包含词语的个数,T表示向量的转置。
(4)采用软余弦距离计算Qnew、Qrel之间基于答案语义特征的相似度Rqa(Qnew,Qrel),公式如下:
优选的,最终相似度的计算方法是:
其中,Rk(Qnew,Qrel)代表基于特征k的相似度,即分别为基于字符特征的相似度、基于词语语义特征的相似度、基于句子语义特征的相似度、基于句子隐含主题特征的相似度和基于答案语义特征的相似度。λk是待训练参数,利用线性回归分析方法训练得到。
更进一步的,利用线性回归分析方法训练过程中,迭代步骤如下:
(1)随机初始化每个特征对应的权重λk,根据权重计算当前迭代的平方损失;平方损失函数如下:
(4)根据新的权重重新计算平方损失,如果当前平方损失不小于前一次迭代的平方损失,则停止迭代,得到每个特征对应的权重λk最终值;否则循环进行步骤(2)-(4)。
与现有技术相比,本发明具有以下优点和技术效果:
(1)在机器学习领域,训练样本是通过一组属性描述的,不同的属性子集提供了不同的观察数据的视角。本发明从五个不同的视角观察以自然语言描述的问题和答案句子,提取了五种类型特征。与基于单一类型特征表达方式比较,多种特征增加了样本属性的多样性,提升了模型的泛化能力。
(2)本发明利用软余弦距离将TF-IDF与编辑距离、词语语义等信息进行融合,计算问题与问题的相似度。对比传统的相似度计算方法,本发明克服了词语之间的语义鸿沟,提高了相似度计算的准确率。
附图说明
图1是本实施例方法的流程图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
本实施例一种基于多种特征的问题相似度计算方法利用5种特征来衡量两个问题句子之间的相似度,分别是字符特征、词语语义特征、句子语义特征、句子隐含主题特征、答案语义特征。将基于这5种特征的相似度整合成新问题与历史问题的最终相似度。下面参照图1,通过结合一个实例详细表述该方法的各个步骤。
(1)输入一个新问题句子Qnew:Where I can buy good oil for massage?
(2)读取一个历史问题句子Qrel:is there any place i can find scentedmassage oils in qatar?
同时读取一个历史问题的答案Arel:Yes.It is right behind Kahrama in theNational area.
(3)对Qnew﹑Qrel和Arel分别进行预处理,包括:去除标点符号处理、大小写转换(所有大写字母转成小写)、去停用词和低频率词等。得到:
Qnew:buy good oil massage
Qrel:place find scented massage oils qatar
Arel:yes right behind kahrama national area
(4)分别计算Qnew和Qrel基于如下5种特征的相似度。
下面假设将{area,behind,buy,find,good,kahrama,massage,national,oil,oils,place,qatar,right,scented,yes}作为语料库词典集合。
(4-1)基于字符特征的相似度
字符特征是从字符层面衡量词语之间的相似度,使用编辑距离来求词语字符层面的相似度。首先,通过计算每对词语之间的编辑距离得到词语之间的关系矩阵Mlev,然后利用问句的TF-IDF表示和关系矩阵Mlev计算软余弦距离作为基于字符特征的相似度。具体如下:
(4-1-1)计算关系矩阵Mlev
假设语料库(指用于训练和测试模型的问句和答案文本数据集,下文中语料库的含义相同)中词典的大小为n,则词语之间的编辑距离形成的关系矩阵Mlev∈Rn×n,Rn×n是大小为n×n的实数矩阵集合,Mlev中元素mi,j为词典中第i个词wi与第j个词wj的编辑距离。编辑距离计算公式如下:
其中,||wi||是单词wi中包含字符的个数,||wj||是单词wj中包含字符的个数,α是对角元素的加权因子,β是距离得分的强化因子,α取值为1.8,β取值为5。lev(wi,wj)的递归计算公式如下:
其中,m和n代表wi和wj词语的长度(即包含字符的个数)。cost表示wi中第m个字符到wj中第n个字符的替换代价,如果两个字符一致,则cost为0,否则cost为1。
因为词典大小为15个词,则Mlev是15×15的矩阵,如下形式:
(4-1-2)计算问句的TF-IDF表示
TF-IDF由TF和IDF组成。
在一条句子中,针对词语wi,计算TF值的公式如下所示:
其中,TFi表示第i个词语在当前句子中出现的频率,ni表示该词语在当前句子中出现的次数,nk表示当前句子中第k个词语出现的次数。
对于给定的语料库,每个词的IDF值是固定的,词语wi的计算方式如下:
其中:|D|表示总文本个数,分母则表示包含该词语的文本个数。
在一条句子中,针对词语wi的TF-IDF计算公式为:
TFIDFi=TFi*IDFi
问句Qnew、Qrel分别表示为如下向量:
TFIDFnew=[dnew,1,dnew,2,…,dnew,n]T
TFIDFrel=[drel,1,drel,2,…,drel,n]T
dnew,i表示wi在Qnew中的TF-IDF值,drel,j表示wj在Qrel中的TF-IDF值,n表示语料库的词典中包含词语的个数,T表示向量的转置。
将步骤(3)预处理得到的问句Qnew、Qrel分别表示为如下形式的15维向量:
TFIDFnew=[0.0,0.0,0.528634,0.0,0.528634,…]T
TFIDFrel=[0.0,0.0,0.0,0.423394,0.0,…]T。
(4-1-3)计算软余弦距离
软余弦距离是相对于余弦距离而言的,2014年,Sidorov提出了改进的余弦相似度计算方法名为软余弦距离(Soft Cosine),在计算余弦距离时引入关系矩阵来表示词语之间的关系。
问句Qnew、Qrel通过步骤(4-1-2)表示分别为TFIDFnew和TFIDFrel,通过步骤(4-1-1)求得词语之间关系矩阵为Mlev,采用软余弦距离计算问句Qnew、Qrel之间基于字符特征的相似度Rlev(Qnew,Qrel),公式如下:
其中,“·”是向量与矩阵的点乘(下文含义相同),计算方式如下:
(4-2-1)利用word2vec工具训练得到语料库中每个词语的分布式表示,即每个词语对应一个200维的词向量,如下所示:
(4-2-2)对词典大小为n的语料库,通过求词向量之间的余弦距离,计算词典中词语两两之间的语义关系mi,j,i,j∈[1,n],得到关系矩阵Mw2v,Mw2v∈Rn×n。mi,j的计算公式如下:
mi,j=max(0,cos(wi,wj))2
其中,wi、wj表示语料库中第i和第j个词语K维的实数向量,wi,wj∈RK,RK是长度为K的一维向量(下文含义相同),“·”是向量之间的标准点乘(下文含义相同),计算公式如下:
其中,wi,m表示wi的第m个分量,wj,m表示wj的第m个分量。
本实施例中词典大小为15个词,则Mw2v是15×15的矩阵,如下所示:
(4-2-3)读取(4-1-2)计算得出的问句Qnew、Qrel的TF-IDF表示分别为:
TFIDFnew=[0.0,0.0,0.528634,0.0,0.528634,…]T
TFIDFrel=[0.0,0.0,0.0,0.423394,0.0,…]T
(4-2-4)通过软余弦距离公式求问句Qnew、Qrel之间的基于词语语义特征的相似度:
(4-3)基于句子语义特征的相似度
按照上式,问句Qnew、Qrel通过计算句子中词向量的算术平均值分别得到向量AVGnew和AVGrel:
AVGnew=[0.014657,0.075914,-0.042454,0.219559,-0.117374,…]
AVGrel=[-0.088187,-0.025432,-0.05328,0.17098376,-0.13033055,…]
通过求AVGnew与AVGrel的余弦距离得到Qnew、Qrel之间基于问句语义特征的相似度Rvec(Qnew,Qrel),公式如下:
(4-4)基于句子隐含主题特征的相似度
本发明使用LDA(Latent Dirichlet Allocation)隐含主题模型求问句的隐含主题。经过LDA训练之后,可以得到文档集中每篇文档的隐含主题分布,进而得到句子的主题向量。例如,句子Qm的隐含主题分布 表示属于第i个主题的概率,I为隐含主题的数量,则Qm表示为向量:
问句的主题分布通过Gensim(https://radimrehurek.com/gensim/)主题模型开源工具计算得到。首先把语料库作为Gensim中LdaModel函数的输入,通过训练得到LDA模型,然后把需要计算主题分布的问句输入到训练好的LDA模型,得到的输出为该问句的主题分布,并将该句子表示为向量。
针对新提出问句Qnew和历史问句Qrel,通过Gensim主题模型开源工具计算得到两个问句基于主题分布的向量表示,分别记为LDAnew、LDArel:
LDAnew=[0.001784,0.001934,0.002056,0.002072,0.001772,…]
LDArel=[0.001706,0.001850,0.001967,0.001982,0.001695,…]
通过求LDAnew与LDArel的余弦距离,得到基于句子隐含主题特征的相似度Rlda(Qnew,Qrel),公式如下:
(4-5)基于答案语义特征的相似度
问答***中,每一个历史问题都对应着一个候选答案集合。针对新提出问句Qnew和历史问句Qrel,以及Qrel对应的候选答案Arel,采用类似于(4-2)中的方法计算Qnew与Arel的词语层面的语义相似度,作为两个问句基于答案语义特征的相似度Rqa(Qnew,Qrel),具体流程如下:
(4-5-1)读取(4-2-1)计算得到的词典中每个词语200维的词向量;
(4-5-2)读取(4-2-2)计算得到的Mw2v矩阵;
(4-5-3)读取(4-1-2)得到的Qnew的TF-IDF表示:
TFIDFnew=[0.0,0.0,0.528634,0.0,0.528634,…]T
计算步骤(3)预处理得到的Arel的TF-IDF表示,得到如下15维向量:
TFIDFans=[0.408248,0.408248,0.0,0.0,0.0,…]T
(4-5-4)采用软余弦距离计算Qnew、Qrel之间基于答案语义特征的相似度Rqa(Qnew,Qrel),公式如下:
(5)计算最终相似度
计算Qnew与Qrel的最终相似度Sim(Qnew,Qrel),公式如下:
其中,Rk(Qnew,Qrel)代表基于特征k的相似度,已分别由(4-1)~(4-5)求得,即分别为:
Rlev(Qnew,Qrel)=0.225969,Rv2w(Qnew,Qrel)=0.304225,Rvec(Qnew,Qrel)=0.738933,Rlda(Qnew,Qrel)=0.685844,Rqa(Qnew,Qrel)=0..018413
λk是待训练参数,利用线性回归分析方法训练得到。训练方法采用前向逐步回归,每一步都尽可能减小误差。采用平方损失函数,迭代一定次数,直到损失函数最小。平方损失函数如下:
迭代过程如下:
1.随机初始化每个特征对应的权重λk,根据权重计算当前迭代的平方损失;
4.根据新的权重重新计算平方损失,如果当前平方损失不小于前一次迭代的平方损失,则停止迭代,得到每个特征对应的权重λk最终值;否则循环进行2、3、4步骤。
本实施例,根据上述步骤训练得到Rk(Qnew,Qrel)的权重:
λlev=0.055985,λw2v=0.753228,λvec=0.207070,λlda=0.475735,λqa=-0.122604计算最终的相似度为:
可通过各种手段实施本发明描述的技术。举例来说,这些技术可实施在硬件、固件、软件或其组合中。对于硬件实施方案,处理模块可实施在一个或一个以上专用集成电路(ASIC)、数字信号处理器(DSP)、可编程逻辑装置(PLD)、现场可编辑逻辑门阵列(FPGA)、处理器、控制器、微控制器、电子装置、其他经设计以执行本发明所描述的功能的电子单元或其组合内。
对于固件和/或软件实施方案,可用执行本文描述的功能的模块(例如,过程、步骤、流程等)来实施所述技术。固件和/或软件代码可存储在存储器中并由处理器执行。存储器可实施在处理器内或处理器外部。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (3)
1.一种基于多种特征的问题相似度计算方法,其特征在于,包括步骤:针对输入的新问题句子,将其与存储的历史问题及对应的答案进行比对计算,计算出新问题与历史问题之间基于字符特征的相似度、基于词语语义特征的相似度、基于句子语义特征的相似度、基于句子隐含主题特征的相似度和基于答案语义特征的相似度;最终相似度为上述5个相似度及其各自对应权重的乘积和,权重利用线性回归方法训练得到;
计算基于字符特征的相似度的方法是:通过计算每对词语之间的编辑距离得到词语之间的关系矩阵,然后利用问句的TF-IDF表示和关系矩阵计算软余弦距离,将软余弦距离作为基于字符特征的相似度;
词语之间的关系矩阵计算方法是:
定义语料库为用于训练和测试模型的问句和答案文本数据集,假设语料库中词典的大小为n,则词语之间的编辑距离形成的关系矩阵Mlev,Mlev中元素mi,j为词典中第i个词wi与第j个词wj的编辑距离,编辑距离计算公式如下:
其中,||wi||是单词wi中包含字符的个数,||wj||是单词wj中包含字符的个数,α是对角元素的加权因子,β是距离得分的强化因子;lev(wi,wj)的递归计算公式如下:
其中,m和n代表wi和wj词语的长度,cost表示wi中第m个字符到wj中第n个字符的替换代价,如果两个字符一致,则cost为0,否则cost为1;
问句的TF-IDF表示计算方法是:在一条句子中,针对词语wi,计算TF值和IDF值,TF值表示词语在当前句子中出现的频率,IDF值表示逆文本频率指数,针对词语wi的TF-IDF计算公式为:
TFIDFi=TFi*IDFi;
针对新提出问句Qnew和历史问句Qrel,软余弦距离的计算方法是:
问句Qnew、Qrel分别表示为TFIDFnew和TFIDFrel:
TFIDFnew=[dnew,1,dnew,2,…,dnew,n]T
TFIDFrel=[drel,1,drel,2,…,drel,n]T
dnew,i表示wi在Qnew中的TF-IDF值,drel,j表示wj在Qrel中的TF-IDF值,n表示语料库的词典中包含词语的个数,T表示向量的转置;
同时根据求得的词语之间关系矩阵Mlev,采用软余弦距离计算Qnew、Qrel之间基于字符特征的相似度Rlev(Qnew,Qrel),公式如下:
其中,“·”是向量与矩阵的点乘;
计算基于词语语义特征的相似度的方法,步骤是:
(6-1)利用word2vec工具训练得到语料库中每个词语的分布式表示,即每个词语对应一个K维的实数向量;
(6-2)对词典大小为n的语料库,通过求词向量之间的余弦距离,计算词典中词语两两之间的语义关系mi,j,i,j∈[1,n],得到关系矩阵Mw2v,Mw2v∈Rn×n;
(6-3)读取问句Qnew、Qrel采用TF-IDF的表示,分别为TFIDFnew和TFIDFrel;
(6-4)采用软余弦距离计算Qnew、Qrel之间基于词语语义特征的相似度Rw2v(Qnew,Qrel),公式如下:
计算基于句子语义特征的相似度的方法,步骤是:
将问题句子表示为句子中词向量算术平均值的形式,即向量:
按照上式,问句Qnew、Qrel通过计算句子中词向量的算术平均值分别得到向量AVGnew和AVGrel,通过求AVGnew与AVGrel的余弦距离得到Qnew、Qrel之间基于问句语义特征的相似度Rvec(Qnew,Qrel);
计算基于句子隐含主题特征的相似度的方法,步骤是:
把语料库作为Gensim中LdaModel函数的输入,通过训练得到LDA模型;然后把需要计算主题分布的新提出问句Qnew和历史问句Qrel输入到训练好的LDA模型,得到两个问句基于主题分布的向量表示,分别记为LDAnew、LDArel;通过求LDAnew与LDArel的余弦距离,得到Qnew、Qrel之间基于句子隐含主题特征的相似度Rlda(Qnew,Qrel);
计算基于答案语义特征的相似度的方法,步骤是:
针对新提出问句Qnew和历史问句Qrel,以及Qrel对应的候选答案Arel,计算Qnew与Arel的词语层面的语义相似度,作为两个问句基于答案语义特征的相似度Rqa(Qnew,Qrel),具体流程如下:
(9-1)利用word2vec工具训练得到语料库中每个词语的分布式表示,即每个词语对应一个K维的实数向量;
(9-2)对词典大小为n的语料库,通过求词向量之间的余弦距离,计算词典中词语两两之间的语义关系mi,j,i,j∈[1,n],得到关系矩阵Mw2v,Mw2v∈Rn×n;
(9-3)读取问句Qnew的TF-IDF表示TFIDFnew;Arel通过TF-IDF表示,得到TFIDFans=[dans,1,dans,2,...,dans,n]T,其中,dans,i表示wi在Arel中的TF-IDF值,n表示语料库的词典中包含词语的个数,T表示向量的转置;
(9-4)采用软余弦距离计算Qnew、Qrel之间基于答案语义特征的相似度Rqa(Qnew,Qrel),公式如下:
2.根据权利要求1所述的基于多种特征的问题相似度计算方法,其特征在于,对于用于比对计算的新问题句子、历史问题及对应的答案先进行预处理,包括去除标点符号处理、大小写转换、去停用词和低频率词。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811041071.0A CN109344236B (zh) | 2018-09-07 | 2018-09-07 | 一种基于多种特征的问题相似度计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811041071.0A CN109344236B (zh) | 2018-09-07 | 2018-09-07 | 一种基于多种特征的问题相似度计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109344236A CN109344236A (zh) | 2019-02-15 |
CN109344236B true CN109344236B (zh) | 2020-09-04 |
Family
ID=65304890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811041071.0A Active CN109344236B (zh) | 2018-09-07 | 2018-09-07 | 一种基于多种特征的问题相似度计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109344236B (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110399615B (zh) * | 2019-07-29 | 2023-08-18 | 中国工商银行股份有限公司 | 交易风险监控方法及装置 |
CN110532565B (zh) * | 2019-08-30 | 2022-03-25 | 联想(北京)有限公司 | 语句处理方法及装置、以及电子设备 |
CN110543551B (zh) * | 2019-09-04 | 2022-11-08 | 北京香侬慧语科技有限责任公司 | 一种问题语句处理方法和装置 |
CN110825857B (zh) * | 2019-09-24 | 2023-07-21 | 平安科技(深圳)有限公司 | 多轮问答识别方法、装置、计算机设备及存储介质 |
CN110738049B (zh) * | 2019-10-12 | 2023-04-18 | 招商局金融科技有限公司 | 相似文本的处理方法、装置及计算机可读存储介质 |
CN110781662B (zh) * | 2019-10-21 | 2022-02-01 | 腾讯科技(深圳)有限公司 | 一种逐点互信息的确定方法和相关设备 |
CN111723297B (zh) * | 2019-11-20 | 2023-05-12 | 中共南通市委政法委员会 | 一种面向网格社情研判的双重语义相似度判别方法 |
CN111191464A (zh) * | 2020-01-17 | 2020-05-22 | 珠海横琴极盛科技有限公司 | 基于组合距离的语义相似度计算方法 |
CN113139034A (zh) * | 2020-01-17 | 2021-07-20 | 深圳市优必选科技股份有限公司 | 一种语句匹配方法、语句匹配装置及智能设备 |
CN111368177B (zh) * | 2020-03-02 | 2023-10-24 | 北京航空航天大学 | 一种问答社区的答案推荐方法和装置 |
CN111401031A (zh) * | 2020-03-05 | 2020-07-10 | 支付宝(杭州)信息技术有限公司 | 一种目标文本确定方法、装置及设备 |
CN111414765B (zh) * | 2020-03-20 | 2023-07-25 | 北京百度网讯科技有限公司 | 句子一致性的判定方法、装置、电子设备及可读存储介质 |
CN111582498B (zh) * | 2020-04-30 | 2023-05-12 | 重庆富民银行股份有限公司 | 基于机器学习的qa辅助决策方法及*** |
CN111259668B (zh) * | 2020-05-07 | 2020-08-18 | 腾讯科技(深圳)有限公司 | 阅读任务处理方法、模型训练方法、装置和计算机设备 |
CN111680515B (zh) * | 2020-05-21 | 2022-05-03 | 平安国际智慧城市科技股份有限公司 | 基于ai识别的答案确定方法、装置、电子设备及介质 |
CN113779183A (zh) * | 2020-06-08 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | 文本匹配方法、装置、设备及存储介质 |
CN113392176B (zh) * | 2020-09-28 | 2023-08-22 | 腾讯科技(深圳)有限公司 | 文本相似性的确定方法、装置、设备及介质 |
CN112507097B (zh) * | 2020-12-17 | 2022-11-18 | 神思电子技术股份有限公司 | 一种提高问答***泛化能力的方法 |
CN112632252B (zh) * | 2020-12-25 | 2021-09-17 | 中电金信软件有限公司 | 对话应答方法、装置、计算机设备和存储介质 |
CN112926340B (zh) * | 2021-03-25 | 2024-05-07 | 东南大学 | 一种用于知识点定位的语义匹配模型 |
CN113377927A (zh) * | 2021-06-28 | 2021-09-10 | 成都卫士通信息产业股份有限公司 | 一种相似文档检测方法、装置、电子设备及存储介质 |
CN113792125B (zh) * | 2021-08-25 | 2024-04-02 | 北京库睿科技有限公司 | 基于文本相关性和用户意图的智能检索排序方法和装置 |
CN113722459A (zh) * | 2021-08-31 | 2021-11-30 | 平安国际智慧城市科技股份有限公司 | 基于自然语言处理模型的问答搜索方法及相关装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101286161A (zh) * | 2008-05-28 | 2008-10-15 | 华中科技大学 | 一种基于概念的智能中文问答*** |
CN103729381A (zh) * | 2012-10-16 | 2014-04-16 | 佳能株式会社 | 用于识别系列文档中的语义信息的方法和设备 |
CN105701253A (zh) * | 2016-03-04 | 2016-06-22 | 南京大学 | 中文自然语言问句语义化的知识库自动问答方法 |
CN106997376A (zh) * | 2017-02-28 | 2017-08-01 | 浙江大学 | 一种基于多级特征的问题和答案句子相似度计算方法 |
CN107092596A (zh) * | 2017-04-24 | 2017-08-25 | 重庆邮电大学 | 基于attention CNNs和CCR的文本情感分析方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9135240B2 (en) * | 2013-02-12 | 2015-09-15 | International Business Machines Corporation | Latent semantic analysis for application in a question answer system |
US9953027B2 (en) * | 2016-09-15 | 2018-04-24 | International Business Machines Corporation | System and method for automatic, unsupervised paraphrase generation using a novel framework that learns syntactic construct while retaining semantic meaning |
-
2018
- 2018-09-07 CN CN201811041071.0A patent/CN109344236B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101286161A (zh) * | 2008-05-28 | 2008-10-15 | 华中科技大学 | 一种基于概念的智能中文问答*** |
CN103729381A (zh) * | 2012-10-16 | 2014-04-16 | 佳能株式会社 | 用于识别系列文档中的语义信息的方法和设备 |
CN105701253A (zh) * | 2016-03-04 | 2016-06-22 | 南京大学 | 中文自然语言问句语义化的知识库自动问答方法 |
CN106997376A (zh) * | 2017-02-28 | 2017-08-01 | 浙江大学 | 一种基于多级特征的问题和答案句子相似度计算方法 |
CN107092596A (zh) * | 2017-04-24 | 2017-08-25 | 重庆邮电大学 | 基于attention CNNs和CCR的文本情感分析方法 |
Non-Patent Citations (1)
Title |
---|
"A noval similarity calculation method based on Chinese sentence keyword weight";Yu Y等;《Journal of software》;20140530;第1151-1155页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109344236A (zh) | 2019-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109344236B (zh) | 一种基于多种特征的问题相似度计算方法 | |
CN108363790B (zh) | 用于对评论进行评估的方法、装置、设备和存储介质 | |
Liu et al. | Learning semantic word embeddings based on ordinal knowledge constraints | |
US20170177563A1 (en) | Methods and systems for automated text correction | |
Xie et al. | Topic enhanced deep structured semantic models for knowledge base question answering | |
US11068653B2 (en) | System and method for context-based abbreviation disambiguation using machine learning on synonyms of abbreviation expansions | |
US20240111956A1 (en) | Nested named entity recognition method based on part-of-speech awareness, device and storage medium therefor | |
CN111428490A (zh) | 一种利用语言模型的指代消解弱监督学习方法 | |
CN114818717A (zh) | 融合词汇和句法信息的中文命名实体识别方法及*** | |
Zhang et al. | Term recognition using conditional random fields | |
Hussein | A plagiarism detection system for arabic documents | |
CN111400487A (zh) | 一种文本摘要的质量评价方法 | |
CN110991193A (zh) | 一种基于OpenKiWi的翻译矩阵模型选择*** | |
Zhang et al. | Disease prediction and early intervention system based on symptom similarity analysis | |
CN111581365B (zh) | 一种谓词抽取方法 | |
Jian et al. | English text readability measurement based on convolutional neural network: A hybrid network model | |
CN116108840A (zh) | 一种文本细粒度情感分析方法、***、介质和计算设备 | |
CN112926340B (zh) | 一种用于知识点定位的语义匹配模型 | |
Zhang et al. | Dual attention model for citation recommendation with analyses on explainability of attention mechanisms and qualitative experiments | |
CN111767388B (zh) | 一种候选池生成方法 | |
CN114265924A (zh) | 一种根据问句检索关联表格的方法与装置 | |
Ghasemi et al. | FarSick: A Persian Semantic Textual Similarity And Natural Language Inference Dataset | |
Rei et al. | Parser lexicalisation through self-learning | |
Xie et al. | Building a Parallel Corpus for English Translation Teaching Based on Computer-Aided Translation Software | |
CN112417241B (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 |