CN109857841A - 一种faq问句文本相似度计算方法及系统 - Google Patents
一种faq问句文本相似度计算方法及系统 Download PDFInfo
- Publication number
- CN109857841A CN109857841A CN201811478485.XA CN201811478485A CN109857841A CN 109857841 A CN109857841 A CN 109857841A CN 201811478485 A CN201811478485 A CN 201811478485A CN 109857841 A CN109857841 A CN 109857841A
- Authority
- CN
- China
- Prior art keywords
- question sentence
- similarity
- character string
- sentence
- classification
- 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.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种FAQ问句文本相似度计算方法及系统,所述方法:分别计算第一问句A与第二问句B之间的语义相似度semanticSim(A,B)、分类相似度ClassSim(A,B)、编辑距离相似度levSim(A,B);将所述第一问句A与第二问句B之间的语义相似度semanticSim(A,B)、分类相似度ClassSim(A,B)、编辑距离相似度levSim(A,B)计算第一问句A与第二问句B之间的相似度Sim(A,B)按照各自的权值进行加权求和,得到所述第一问句A与所述第二问句B之间的相似度,本发明方法及系统可以更准确的计算FAQ问题的相似度匹配问题以及更新FAQ库,可以提高FAQ问答系统性能。
Description
技术领域
本发明涉及FAQ问答技术领域,特别是涉及一种FAQ问句文本相似度计算方法及系统。
背景技术
常用问答对(Frequently Asked Questions,FAQ)是问答系统的重要组成部分,问答系统通过将常见的问题和答案存储起来形成常见问题集,来提高相似问题的答案搜索与合成效率。FAQ在使用上主要存在两个问题:更新问题库和匹配新问题。而解决这两个关键问题的核心,就在于问句相似度的准确计算。目前对于FAQ问句相似度的计算基本都是和陈述句的文本相似度计算方法一致,普通陈述句之间的语义相似度更多的是反映句子问语义上的匹配符合程度,当相似度达到某个阈值时,就认为两个句子相似。而FAQ中问句的相似性,不仅要求问句的相似性很高,而且要求两者的答案一致性。所以普通陈述句相似度计算方法没有考虑到问句与答案之间的对应,如果陈述句的文本相似度计算方法用于问句相似度计算,必定会影响FAQ问答系统的性能。
发明内容
本发明的目的在于提出一种多模型融合的方式,结合问句的特征,计算问句的文本相似度,提升FAQ问答系统的性能,为达成上述目的,本发明方法包括,获取待比较的第一问句A和第二问句B;计算第一问句A与第二问句B之间的语义相似度;所述方法还包括,计算第一问句A与第二问句B之间的分类相似度,所述分类相似度是分别对第一问句A和第二问句B的问句的特征进行意图识别,并根据意图识别结果判断第一问句A和第二问句B是否属于相同的类别,并第一问句A和第二问句B是否属于相同的类别来获取分类相似度的取值;计算第一问句A与第二问句B之间的编辑距离相似度;将所述语义相似度、分类相似度、编辑距离相似度按照各自的权值进行加权求和,得到所述第一问句A与所述第二问句B之间的相似度。
具体而言,本发明的FAQ问句文本相似度计算方法,包括如下步骤:
获取待比较的第一问句A和第二问句B;
分别计算第一问句A与第二问句B之间的语义相似度semanticSim(A,B)、分类相似度ClassSim(A,B)、编辑距离相似度levSim(A,B);
根据所述第一问句A与第二问句B之间的语义相似度semanticSim(A,B)、分类相似度ClassSim(A,B)、编辑距离相似度levSim(A,B)计算第一问句A与第二问句B之间的相似度Sim(A,B),Sim(A,B)=α×semanticSim(A,B)+β×ClassSim(A,B)+γ×levSim(A,B)。
其中,所述第一问句A中包含的字符串为w11,w12,...,w1n,所述第二问句B中包含的字符串为w21,w22,...,w2m,sim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,i、j、n、m均为正整数,1≤i≤n,1≤j≤m。
则第一问句A和第二问句B之间的语义相似度semanticSim(A,B),
其中,α为所述语义相似度的权重值,β为所述分类相似度的权重值,γ为所述编辑距离相似度的权重值;α+β+γ=1,α>0,β≥0,γ≥0。
进一步的,在本发明一实施例中,优选地,β=0,α+γ=1。
进一步的,在本发明一实施例中,优选地,γ=0,α+β=1。
进一步的,在本发明一实施例中,优选地,α=0.6,β=0.1,γ=0.3。
其中,计算第一问句A与第二问句B之间的分类相似度ClassSim(A,B)具体为:分别对第一问句A和第二问句B的问句的特征进行意图识别,并根据意图识别结果判断第一问句A和第二问句B是否属于相同的类别,若第一问句A和第二问句B属于相同的类别,则第一问句A与第二问句B之间分类相似度ClassSim(A,B)为1,否则第一问句A与第二问句B之间分类相似度ClassSim(A,B)为0。
进一步的,所述第一问句A与第二问句B之间的编辑距离相似度levSim(A,B),
其中,editsim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,其中i、j、n、m均为正整数,且1≤i≤n、1≤j≤m;
其中,editdis(w1i.length,w2j.length)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的长度,w1i.length为第一问句A第i个字符串的长度;w2j.length第二问句B第j个字符串的长度。
相应地,本发明的另一实施例还提供了一种FAQ问句文本相似度计算系统,所述系统包括:
语义模块,用于计算第一问句A与第二问句B之间的语义相似度;
分类模块,用于计算第一问句A与第二问句B之间的分类相似度,具体为分别对第一问句A和第二问句B的问句的特征进行意图识别,并根据意图识别结果判断第一问句A和第二问句B是否属于相同的类别,并第一问句A和第二问句B是否属于相同的类别来获取分类相似度的取值;
编辑距离模块,用于计算第一问句A与第二问句B之间的编辑距离相似度;
相似度计算模块,用于将所述语义相似度、分类相似度、编辑距离相似度按照各自的权值进行加权求和,得到所述第一问句A与所述第二问句B之间的相似度。
进一步的,所述第一问句A中包含的字符串为w11,w12,...,w1n,所述第二问句B中包含的字符串为w21,w22,...,w2m,sim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,其中,i、j、n、m均为正整数,1≤i≤n,1≤j≤m,
所述语义模块计算得到的第一问句A和第二问句B之间的语义相似度semanticSim(A,B),
若第一问句A和第二问句B属于相同的类别,则所述分类模块计算得到的第一问句A与第二问句B之间分类相似度ClassSim(A,B)为1,否则所述分类模块计算得到的第一问句A与第二问句B之间分类相似度ClassSim(A,B)为0;
所述编辑距离模块计算得到的所述第一问句A与第二问句B之间的编辑距离相似度levSim(A,B),
其中,editsim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,其中i、j、n、m均为正整数,且1≤i≤n、1≤j≤m;
其中,editdis(w1i.length,w2j.length)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的长度,w1i.length为第一问句A第i个字符串的长度;w2j.length第二问句B第j个字符串的长度。
进一步的,所述相似度计算模块计算得到第一问句A与第二问句B之间的相似度为Sim(A,B);Sim(A,B)=α×semanticSim(A,B)+β×ClassSim(A,B)+γ×levSim(A,B);
其中,α为所述语义相似度的权重值,β为所述分类相似度的权重值,γ为所述编辑距离相似度的权重值;α+β+γ=1,α>0,β≥0,γ≥0。
本发明的FAQ问句文本相似度计算方法是一种多模型融合的方式,结合问句的特征、计算问句的文本相似度,与现有技术的陈述句的文本相似度计算方法,本发明方法及系统可以更准确的计算FAQ问题的相似度匹配问题以及更新FAQ库,可以提高FAQ问答系统性能。
附图说明
此处所说明的附图用来提供对发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明的实施例1的FAQ问句文本相似度计算方法的流程图;
图2为本发明的实施例4的FAQ问句文本相似度计算系统的原理图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
实施例1
一种FAQ问句文本相似度计算方法,如附图1所示,具体包括如下步骤:
(1)获取待比较的第一问句A和第二问句B;
(2)计算第一问句A与第二问句B之间的语义相似度semanticSim(A,B),
其中,所述第一问句A中包含的字符串为w11,w12,...,w1n,所述第二问句B中包含的字符串为w21,w22,...,w2m,sim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,则第一问句A和第二问句B之间的语义相似度semanticSim(A,B),
其中,i、j、n、m均为正整数,1≤i≤n,1≤j≤m。
(3)计算第一问句A与第二问句B之间的分类相似度ClassSim(A,B);
根据第一问句A和第二问句B的问句的特征进行问句分类计算分类相似度ClassSim(A,B);具体为:分别对第一问句A和第二问句B的问句的特征进行意图识别,并根据意图识别结果判断第一问句A和第二问句B是否属于相同的类别,若第一问句A和第二问句B属于相同的类别,则第一问句A与第二问句B之间分类相似度ClassSim(A,B)为1,否则第一问句A与第二问句B之间分类相似度ClassSim(A,B)为0;
为了结合问句的特征,可第一问句A与第二问句B进行问句分类,对于两个问句,如果根据意图识别模块识别出两个问句属于相同的分类,例如都是咨询价格,那么这两个问句的相似度记为1,否则记为0,公式如下:
(4)计算第一问句A与第二问句B之间的编辑距离相似度levSim(A,B);
编辑距离表示将一个字符串转化为另一个字符串需要的代价,代价越大,编辑距离越大,两个字符串也就越不相似。编辑距离,又称Levenshtein距离(莱文斯坦距离也叫做Edit Distance),是指两个字串之间,由一个转成另一个所需的最少编辑操作次数,如果它们的距离越大,说明它们越是不同。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。这个概念是由俄罗斯科学家Vladimir Levenshtein在1965年提出来的,所以也叫Levenshtein距离。它可以用来做DNA分析、拼字检测、抄袭识别等等。总是比较相似的,或多或少我们可以考虑编辑距离。编辑操作只有三种:插入,删除,替换这三种操作,两个字符串,将其中一个字符串经过上面的这三种操作之后,得到两个完全相同的字符串付出的代价是什么,得到了两个字符串的编辑距离之后,就可以得到这两个字符串之间的相似度editsim(str1,str2);
editdis(str1.length,str2.length)为字符串str1与字符串str2之间的长度,str1.length为字符串str1的长度,str2.length为字符串str2的长度;
所述第一问句A与第二问句B之间的编辑距离相似度levSim(A,B),
其中,editsim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,其中i、j均为正整数,且1≤i≤n、1≤j≤m;editdis(w1i.length,w2j.length)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的长度,w1i.length为第一问句A第i个字符串的长度;w2j.length第二问句B第j个字符串的长度。
(5)将所述语义相似度、分类相似度、编辑距离相似度按照各自的权值进行加权求和,得到所述第一问句A与所述第二问句B之间的相似度,所述第一问句A与所述第二问句B之间的相似度标记为Sim(A,B),根据所述第一问句A与第二问句B之间的语义相似度semanticSim(A,B)、分类相似度ClassSim(A,B)、编辑距离相似度levSim(A,B)计算第一问句A与第二问句B之间的相似度Sim(A,B),
Sim(A,B)=α×semanticSim(A,B)+β×ClassSim(A,B)+γ×levSim(A,B);
其中,α为所述语义相似度的权重值,β为所述分类相似度的权重值,γ为所述编辑距离相似度的权重值;α+β+γ=1,α>0,β≥0,γ≥0。
在本发明实施例中,进一步的,优选地,α=0.6,β=0.1,γ=0.3,其问句的相似度计算精度大概能提高2个百分点。
为了进一步说明本发明方法的应用,以α=0.6,β=0.1,γ=0.3为例,本发明以问句Q0:“做种植义齿需要就诊几次?”为例说明,比较问句Q1与FAQ中的其他问题的相似度,FAQ的问句库包含问句Q1:“治疗几次能够做完义齿种植?”,问句Q2:“活动假牙需要就诊几次?”,问句Q3:“固定义齿总共需要就诊几次?”。
采用本发明方法应用于查找问句Q0:“做种植义齿需要就诊几次?”在FAQ库中最相似问句:
(1)获取待比较的第一问句A(即问句Q0)和第二问句B(即问句Q1)的相似度,获取问句Q0与问句Q1之间的语义相似度semanticSim(Q0,Q1)=0.862,问句Q0与问句Q1之间的分类相似度ClassSim(Q0,Q1)=1,问句Q0与问句Q1之间的编辑距离相似度levSim(Q0,Q1)=0.952,则通过本发明方法问句Q0与问句Q1之间的相似度Sim(Q0,Q1);Sim(Q0,Q1)=0.6×semanticSim(Q0,Q1)+0.1×ClassSim(Q0,Q1)+0.3×levSim(Q0,Q1)=0.6×0.862+0.1×1+0.3×0.952=0.903;
(2)获取待比较的第一问句A(即问句Q0:“做种植义齿需要就诊几次?”)和第二问句B(即问句Q2:“治疗几次能够做完义齿种植?”)的相似度,获取问句Q0与问句Q2之间的语义相似度semanticSim(Q0,Q2)=0.883,问句Q0与问句Q2之间的分类相似度ClassSim(Q0,Q2)=1,问句Q0与问句Q2之间的编辑距离相似度levSim(Q0,Q2)=0.854,通过本发明方法问句Q0与问句Q2之间的相似度Sim(Q0,Q2),Sim(Q0,Q2)=0.6×semanticSim(Q0,Q2)+0.1×ClassSim(Q0,Q2)+0.3×levSim(Q0,Q2)=0.6×0.883+0.1×1+0.3×0.854=0.886;
(3)获取待比较的第一问句A(即问句Q0:“做种植义齿需要就诊几次?”)和第二问句B(即问句Q3:“固定义齿总共需要就诊几次?”)的相似度,分别获取问句Q0与问句Q3之间的语义相似度semanticSim(Q0,Q3)、分类相似度ClassSim(Q0,Q3)、编辑距离相似度levSim(Q0,Q3),其中,问句Q0与问句Q3之间的语义相似度semanticSim(Q0,Q3)=0.904,问句Q0与问句Q3之间的分类相似度ClassSim(Q0,Q3)=1,问句Q0与问句Q3之间的编辑距离相似度levSim(Q0,Q3)=0.748,通过本发明方法问句Q0与问句Q3之间的相似度Sim(Q0,Q3);
Sim(Q0,Q3)=0.6×semanticSim(Q0,Q3)+0.1×ClassSim(Q0,Q3)+0.3×levSim(Q0,Q3)
=0.6×0.904+0.1×1+0.3×0.748=0.867;
由上面比较可知,采用本发明的多模式融合的方法进行相似度比较结果为:Sim(Q0,Q1)>Sim(Q0,Q2)>Sim(Q0,Q3),而采用现有技术的语义相似度算法相似度比较比较结果为:semanticSim(Q0,Q1)<semanticSim(Q0,Q2)<semanticSim(Q0,Q3);现有技术方法那么与问句Q0:“做种植义齿需要就诊几次?”之匹配的最相似的问句Q3为“固定义齿总共需要就诊几次”,semanticSim(Q0,Q3)=0.904,因为两者语法结构完全一样,所以认为更加相似,而本发明方法给出的多模型融合的方法得到的最相似的问句Q1为“治疗几次能够做完义齿种植?”,从人的主观判断,问句Q1为“治疗几次能够做完义齿种植?”也更加符合问句Q0:“做种植义齿需要就诊几次?”要问的问题,即采用本发明方法即匹配到了FAQ的问句库的正确问题。
另外,采用了832个问题做测试匹配FAQ的问句库,实验结果表明采用语义相似度算法的匹配精度为90.8%,而采用本发明方法本文提出的多模型融合的方法精度达到92.7%。
实施例2
本发明实施例提供了一种FAQ问句文本相似度计算方法,具体包括如下步骤:
(1)获取待比较的第一问句A和第二问句B;
(2)计算第一问句A与第二问句B之间的分类相似度ClassSim(A,B);
根据第一问句A和第二问句B的问句的特征进行问句分类计算分类相似度ClassSim(A,B);具体为:分别对第一问句A和第二问句B的问句的特征进行意图识别,并根据意图识别结果判断第一问句A和第二问句B是否属于相同的类别,若第一问句A和第二问句B属于相同的类别,则第一问句A与第二问句B之间分类相似度ClassSim(A,B)为1,否则第一问句A与第二问句B之间分类相似度ClassSim(A,B)为0;
(3)计算第一问句A与第二问句B之间的语义相似度semanticSim(A,B),
其中,所述第一问句A中包含的字符串为w11,w12,...,w1n,所述第二问句B中包含的字符串为w21,w22,...,w2m,sim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,则第一问句A和第二问句B之间的语义相似度semanticSim(A,B),
其中,i、j、n、m均为正整数,1≤i≤n,1≤j≤m。
(4)计算第一问句A与第二问句B之间的编辑距离相似度levSim(A,B);
所述第一问句A与第二问句B之间的编辑距离相似度levSim(A,B),
其中,editsim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,其中i、j、n、m均为正整数,且1≤i≤n、1≤j≤m;editdis(w1i.length,w2j.length)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的长度,w1i.length为第一问句A第i个字符串的长度;w2j.length第二问句B第j个字符串的长度。
(5)根据所述第一问句A与第二问句B之间的语义相似度semanticSim(A,B)、分类相似度ClassSim(A,B)、编辑距离相似度levSim(A,B)计算第一问句A与第二问句B之间的相似度Sim(A,B),
Sim(A,B)=α×semanticSim(A,B)+β×ClassSim(A,B)+γ×levSim(A,B);
其中,α为所述语义相似度的权重值,β为所述分类相似度的权重值,γ为所述编辑距离相似度的权重值;α+β+γ=1,α>0,β≥0,γ≥0。
在本发明实施例中,进一步的,优选地,γ=0,α+β=1,第一问句A和第二问句B之间的相似度计算精度相对于现有技术方法大概能提高1个百分点。
实施例3
本发明实施例提供了一种FAQ问句文本相似度计算方法,具体包括如下步骤:
(1)获取待比较的第一问句A和第二问句B;
(2)计算第一问句A与第二问句B之间的编辑距离相似度levSim(A,B);
所述第一问句A与第二问句B之间的编辑距离相似度levSim(A,B),
其中,editsim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,其中i、j、n、m均为正整数,且1≤i≤n、1≤j≤m;editdis(w1i.length,w2j.length)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的长度,w1i.length为第一问句A第i个字符串的长度;w2j.length第二问句B第j个字符串的长度。
(3)计算第一问句A与第二问句B之间的分类相似度ClassSim(A,B);
根据第一问句A和第二问句B的问句的特征进行问句分类计算分类相似度ClassSim(A,B);具体为:分别对第一问句A和第二问句B的问句的特征进行意图识别,并根据意图识别结果判断第一问句A和第二问句B是否属于相同的类别,若第一问句A和第二问句B属于相同的类别,则第一问句A与第二问句B之间分类相似度ClassSim(A,B)为1,否则第一问句A与第二问句B之间分类相似度ClassSim(A,B)为0;
(4)计算第一问句A与第二问句B之间的语义相似度semanticSim(A,B),
其中,所述第一问句A中包含的字符串为w11,w12,...,w1n,所述第二问句B中包含的字符串为w21,w22,...,w2m,sim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,则第一问句A和第二问句B之间的语义相似度semanticSim(A,B):
其中,i、j、n、m均为正整数,1≤i≤n,1≤j≤m。
(5)根据所述第一问句A与第二问句B之间的语义相似度semanticSim(A,B)、分类相似度ClassSim(A,B)、编辑距离相似度levSim(A,B)计算第一问句A与第二问句B之间的相似度Sim(A,B),
Sim(A,B)=α×semanticSim(A,B)+β×ClassSim(A,B)+γ×levSim(A,B);
其中,α为所述语义相似度的权重值,β为所述分类相似度的权重值,γ为所述编辑距离相似度的权重值;α+β+γ=1,α>0,β≥0,γ≥0。
在本发明实施例中,进一步的,优选地,β=0,α+γ=1,第一问句A和第二问句B之间的相似度计算精度相对于现有技术方法大概能提高1个百分点。
以上本实施例是本发明列举的几个实施例,其中,α=0.6,β=0.1,γ=0.3为最较佳实施例,其问句的相似度计算精度大概能提高2个百分点。本领域技术人员结合公知或现有技术、知识对α、β,γ进行取值所进行的改动也应视为在本发明的保护范围内。
另外,需要说明的是,在本发明方法中之需要分别计算第一问句A与第二问句B之间的语义相似度semanticSim(A,B)、分类相似度ClassSim(A,B)、编辑距离相似度levSim(A,B);步骤(2)、步骤(3)、步骤(4)不分先后顺序,即获取所述语义相似度semanticSim(A,B)步骤、所述分类相似度ClassSim(A,B)步骤、所述编辑距离相似度levSim(A,B)步骤。
实施例4
本发明实施例提供了一种FAQ问句文本相似度计算系统,如附图2所示,包含了语义模块,用于计算第一问句A与第二问句B之间的语义相似度;
分类模块,用于计算第一问句A与第二问句B之间的分类相似度,具体为分别对第一问句A和第二问句B的问句的特征进行意图识别,并根据意图识别结果判断第一问句A和第二问句B是否属于相同的类别,并第一问句A和第二问句B是否属于相同的类别来获取分类相似度的取值;
编辑距离模块,用于计算第一问句A与第二问句B之间的编辑距离相似度;
相似度计算模块,用于将所述语义相似度、分类相似度、编辑距离相似度按照各自的权值进行加权求和,得到所述第一问句A与所述第二问句B之间的相似度。
所述第一问句A中包含的字符串为w11,w12,...,w1n,所述第二问句B中包含的字符串为w21,w22,...,w2m,sim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,其中,i、j、n、m均为正整数,1≤i≤n,1≤j≤m,
进一步的,所述语义模块计算得到的第一问句A和第二问句B之间的语义相似度semanticSim(A,B),
进一步的,若第一问句A和第二问句B属于相同的类别,则所述分类模块计算得到的第一问句A与第二问句B之间分类相似度ClassSim(A,B)为1,否则所述分类模块计算得到的第一问句A与第二问句B之间分类相似度ClassSim(A,B)为0;
进一步的,所述编辑距离模块计算得到的所述第一问句A与第二问句B之间的编辑距离相似度levSim(A,B),
其中,editsim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,其中i、j、n、m均为正整数,且1≤i≤n、1≤j≤m;
其中,editdis(w1i.length,w2j.length)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的长度,w1i.length为第一问句A第i个字符串的长度;w2j.length第二问句B第j个字符串的长度。
进一步的,所述相似度计算模块计算得到第一问句A与第二问句B之间的相似度为Sim(A,B),Sim(A,B)=α×semanticSim(A,B)+β×ClassSim(A,B)+γ×levSim(A,B)。
其中,α为所述语义相似度的权重值,β为所述分类相似度的权重值,γ为所述编辑距离相似度的权重值;α+β+γ=1,α>0,β≥0,γ≥0。
本发明的FAQ问句文本相似度计算系统的具体应用案例与实施例1具体应用相同,本发明实施例在此不再赘述。
上述说明描述了本发明的优选实施例,但应当理解本发明并非局限于上述实施例,且不应看作对其他实施例的排除。通过本发明的启示,本领域技术人员结合公知或现有技术、知识所进行的改动也应视为在本发明的保护范围内。
Claims (9)
1.一种FAQ问句文本相似度计算方法,其特征在于,所述方法包括:
获取待比较的第一问句A和第二问句B;
计算第一问句A与第二问句B之间的语义相似度;
所述方法还包括,
计算第一问句A与第二问句B之间的分类相似度,所述分类相似度是分别对第一问句A和第二问句B的问句的特征进行意图识别,并根据意图识别结果判断第一问句A和第二问句B是否属于相同的类别,并第一问句A和第二问句B是否属于相同的类别来获取分类相似度的取值;
计算第一问句A与第二问句B之间的编辑距离相似度;
将所述语义相似度、分类相似度、编辑距离相似度按照各自的权值进行加权求和,得到所述第一问句A与所述第二问句B之间的相似度。
2.根据权利要求1所述的FAQ问句文本相似度计算方法,其特征在于,
所述第一问句A与第二问句B之间的语义相似度为semanticSim(A,B),所述第一问句A与第二问句B之间的分类相似度为ClassSim(A,B),所述第一问句A与第二问句B之间的编辑距离相似度levSim(A,B),根据第一问句A与第二问句B之间的语义相似度、分类相似度、编辑距离相似度计算第一问句A与第二问句B的相似度,所述第一问句A与第二问句B之间的相似度为Sim(A,B);
其中,Sim(A,B)=α×semanticSim(A,B)+β×ClassSim(A,B)+γ×levSim(A,B),α为所述语义相似度的权重值,β为所述分类相似度的权重值,γ为所述编辑距离相似度的权重值;α+β+γ=1,α>0,β≥0,γ≥0。
3.根据权利要求2所述的FAQ问句文本相似度计算方法,其特征在于,
所述第一问句A中包含的字符串为w11,w12,...,w1n,所述第二问句B中包含的字符串为w21,w22,...,w2m,sim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,
则第一问句A和第二问句B之间的语义相似度semanticSim(A,B),
其中,i、j、n、m均为正整数,1≤i≤n,1≤j≤m。
4.根据权利要求2所述的FAQ问句文本相似度计算方法,其特征在于,
计算第一问句A与第二问句B之间的分类相似度ClassSim(A,B)具体为:分别对第一问句A和第二问句B的问句的特征进行意图识别,并根据意图识别结果判断第一问句A和第二问句B是否属于相同的类别,若第一问句A和第二问句B属于相同的类别,则第一问句A与第二问句B之间分类相似度ClassSim(A,B)为1,否则第一问句A与第二问句B之间分类相似度ClassSim(A,B)为0。
5.根据权利要求2所述的FAQ问句文本相似度计算方法,其特征在于,
所述第一问句A与第二问句B之间的编辑距离相似度levSim(A,B),
其中,editsim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,其中i、j、n、m均为正整数,且1≤i≤n、1≤j≤m;
其中,editdis(w1i.length,w2j.length)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的长度,w1i.length为第一问句A第i个字符串的长度;w2j.length第二问句B第j个字符串的长度。
6.根据权利要求2所述的FAQ问句文本相似度计算方法,其特征在于,
α=0.6,β=0.1,γ=0.3。
7.一种FAQ问句文本相似度计算系统,其特征在于,所述系统包括:
语义模块,用于计算第一问句A与第二问句B之间的语义相似度;
分类模块,用于计算第一问句A与第二问句B之间的分类相似度,具体为分别对第一问句A和第二问句B的问句的特征进行意图识别,并根据意图识别结果判断第一问句A和第二问句B是否属于相同的类别,并第一问句A和第二问句B是否属于相同的类别来获取分类相似度的取值;
编辑距离模块,用于计算第一问句A与第二问句B之间的编辑距离相似度;
相似度计算模块,用于将所述语义相似度、分类相似度、编辑距离相似度按照各自的权值进行加权求和,得到所述第一问句A与所述第二问句B之间的相似度。
8.根据权利要求7所述的FAQ问句文本相似度计算系统,其特征在于,
所述第一问句A中包含的字符串为w11,w12,...,w1n,所述第二问句B中包含的字符串为w21,w22,...,w2m,sim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,其中,i、j、n、m均为正整数,1≤i≤n,1≤j≤m,
所述语义模块计算得到的第一问句A和第二问句B之间的语义相似度semanticSim(A,B),
若第一问句A和第二问句B属于相同的类别,则所述分类模块计算得到的第一问句A与第二问句B之间分类相似度ClassSim(A,B)为1,否则所述分类模块计算得到的第一问句A与第二问句B之间分类相似度ClassSim(A,B)为0;
所述编辑距离模块计算得到的所述第一问句A与第二问句B之间的编辑距离相似度levSim(A,B),
其中,editsim(w1i,w2j)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的相似度,其中i、j、n、m均为正整数,且1≤i≤n、1≤j≤m;
其中,editdis(w1i.length,w2j.length)为第一问句A的第i个字符串w1i与第二问句B的第j个字符串w2j之间的长度,w1i.length为第一问句A第i个字符串的长度;w2j.length第二问句B第j个字符串的长度。
9.根据权利要求7所述的FAQ问句文本相似度计算系统,其特征在于,
所述相似度计算模块计算得到第一问句A与第二问句B之间的相似度为Sim(A,B);
Sim(A,B)=α×semanticSim(A,B)+β×ClassSim(A,B)+γ×levSim(A,B);
其中,α为所述语义相似度的权重值,β为所述分类相似度的权重值,γ为所述编辑距离相似度的权重值;α+β+γ=1,α>0,β≥0,γ≥0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811478485.XA CN109857841A (zh) | 2018-12-05 | 2018-12-05 | 一种faq问句文本相似度计算方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811478485.XA CN109857841A (zh) | 2018-12-05 | 2018-12-05 | 一种faq问句文本相似度计算方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109857841A true CN109857841A (zh) | 2019-06-07 |
Family
ID=66890633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811478485.XA Pending CN109857841A (zh) | 2018-12-05 | 2018-12-05 | 一种faq问句文本相似度计算方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109857841A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110674087A (zh) * | 2019-09-03 | 2020-01-10 | 平安科技(深圳)有限公司 | 文件查询方法、装置及计算机可读存储介质 |
CN110727783A (zh) * | 2019-10-23 | 2020-01-24 | 支付宝(杭州)信息技术有限公司 | 一种基于对话系统对用户问句提出反问的方法和装置 |
CN111382255A (zh) * | 2020-03-17 | 2020-07-07 | 北京百度网讯科技有限公司 | 用于问答处理的方法、装置、设备和介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101930462A (zh) * | 2010-08-20 | 2010-12-29 | 华中科技大学 | 一种综合的本体相似度检测方法 |
CN104951433A (zh) * | 2015-06-24 | 2015-09-30 | 北京京东尚科信息技术有限公司 | 基于上下文进行意图识别的方法和系统 |
CN105389307A (zh) * | 2015-12-02 | 2016-03-09 | 上海智臻智能网络科技股份有限公司 | 语句意图类别识别方法及装置 |
CN106970912A (zh) * | 2017-04-21 | 2017-07-21 | 北京慧闻科技发展有限公司 | 中文语句相似度计算方法、计算装置以及计算机存储介质 |
CN107436864A (zh) * | 2017-08-04 | 2017-12-05 | 逸途(北京)科技有限公司 | 一种基于Word2Vec的中文问答语义相似度计算方法 |
US20180173696A1 (en) * | 2016-12-21 | 2018-06-21 | Wipro Limited | System and method for creating and building a domain dictionary |
CN108345672A (zh) * | 2018-02-09 | 2018-07-31 | 平安科技(深圳)有限公司 | 智能应答方法、电子装置及存储介质 |
CN108446322A (zh) * | 2018-02-10 | 2018-08-24 | 灯塔财经信息有限公司 | 一种智能问答系统的实现方法和装置 |
CN108536708A (zh) * | 2017-03-03 | 2018-09-14 | 腾讯科技(深圳)有限公司 | 一种自动问答处理方法及自动问答系统 |
-
2018
- 2018-12-05 CN CN201811478485.XA patent/CN109857841A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101930462A (zh) * | 2010-08-20 | 2010-12-29 | 华中科技大学 | 一种综合的本体相似度检测方法 |
CN104951433A (zh) * | 2015-06-24 | 2015-09-30 | 北京京东尚科信息技术有限公司 | 基于上下文进行意图识别的方法和系统 |
CN105389307A (zh) * | 2015-12-02 | 2016-03-09 | 上海智臻智能网络科技股份有限公司 | 语句意图类别识别方法及装置 |
US20180173696A1 (en) * | 2016-12-21 | 2018-06-21 | Wipro Limited | System and method for creating and building a domain dictionary |
CN108536708A (zh) * | 2017-03-03 | 2018-09-14 | 腾讯科技(深圳)有限公司 | 一种自动问答处理方法及自动问答系统 |
CN106970912A (zh) * | 2017-04-21 | 2017-07-21 | 北京慧闻科技发展有限公司 | 中文语句相似度计算方法、计算装置以及计算机存储介质 |
CN107436864A (zh) * | 2017-08-04 | 2017-12-05 | 逸途(北京)科技有限公司 | 一种基于Word2Vec的中文问答语义相似度计算方法 |
CN108345672A (zh) * | 2018-02-09 | 2018-07-31 | 平安科技(深圳)有限公司 | 智能应答方法、电子装置及存储介质 |
CN108446322A (zh) * | 2018-02-10 | 2018-08-24 | 灯塔财经信息有限公司 | 一种智能问答系统的实现方法和装置 |
Non-Patent Citations (3)
Title |
---|
强继朋: "FAQ问答系统中的问句相似度研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
田卫东,强继朋: "基于问句类型的问句相似度计算", 《计算机应用研究》 * |
许展乐;张琳: "中文问答系统中句子相似度计算方法研究", 《现代计算机(专业版)》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110674087A (zh) * | 2019-09-03 | 2020-01-10 | 平安科技(深圳)有限公司 | 文件查询方法、装置及计算机可读存储介质 |
WO2021043088A1 (zh) * | 2019-09-03 | 2021-03-11 | 平安科技(深圳)有限公司 | 文件查询方法、装置、计算机设备及存储介质 |
CN110727783A (zh) * | 2019-10-23 | 2020-01-24 | 支付宝(杭州)信息技术有限公司 | 一种基于对话系统对用户问句提出反问的方法和装置 |
CN111382255A (zh) * | 2020-03-17 | 2020-07-07 | 北京百度网讯科技有限公司 | 用于问答处理的方法、装置、设备和介质 |
CN111382255B (zh) * | 2020-03-17 | 2023-08-01 | 北京百度网讯科技有限公司 | 用于问答处理的方法、装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019232893A1 (zh) | 文本的情感分析方法、装置、计算机设备和存储介质 | |
CN109857841A (zh) | 一种faq问句文本相似度计算方法及系统 | |
CN101261690A (zh) | 一种问题自动生成的系统及其方法 | |
CN110750998B (zh) | 一种文本输出方法、装置、计算机设备和存储介质 | |
Kim et al. | Extraction of left ventricular ejection fraction information from various types of clinical reports | |
CN105868179A (zh) | 一种智能问答方法及装置 | |
CN107688583A (zh) | 创建用于自然语言处理装置的训练数据的方法和设备 | |
Xu et al. | Accounting for sentence position and legal domain sentence embedding in learning to classify case sentences | |
CN111553140B (zh) | 数据处理方法、数据处理设备及计算机存储介质 | |
Quan et al. | End-to-end joint opinion role labeling with BERT | |
Ghuge et al. | Survey in textual entailment | |
Chen | Assertion detection in clinical natural language processing: a knowledge-poor machine learning approach | |
GUO et al. | Design and implementation of intelligent medical customer service robot based on deep learning | |
Allein et al. | Automatically correcting Dutch pronouns" die" and" dat" | |
CN116933789A (zh) | 一种语言表征模型的训练方法以及训练装置 | |
Wang et al. | End-to-end pre-trained dialogue system for automatic diagnosis | |
Liu et al. | Sequence labeling of chinese text based on bidirectional Gru-Cnn-Crf model | |
Mo et al. | Syllable-Based Neural Named Entity Recognition for Myanmar Language | |
Shali et al. | Bots Using Natural Language Processing in Medical Sector | |
Madanagopal et al. | Bias Neutralization in Non-Parallel Texts: A Cyclic Approach with Auxiliary Guidance | |
Das et al. | Tagging of research publications based on author and year extraction | |
Li et al. | A new algorithm to the automated assessment of the Chinese subjective answer | |
Sun et al. | Analyzing the granularity and cost of annotation in clinical sequence labeling | |
Zhu et al. | Improving anaphora resolution by animacy identification | |
Yan et al. | WUST at the NTCIR-14 STC-3 Dialogue Quality and Nugget Detection Subtask |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190607 |