句子相似度计算模型的改进.doc句子相似度计算模型的改进摘要:智能搜索需维护一个动态的问题与答案的数据库。一方面涉及到关键词的提取、逻辑组合等知识。另一方面,由于用户的用词和系统中存储的关键词在表达方式上可能不完全一样,精确的关键词匹配法必将导致很多问题找不到答案,或者找不准答案。智能搜索的关键性技术之一是句子相似度计算,该文从词型、词序、词长和不同特征加不同权值两方面对句子相似度进行优化改进,对于智能搜索性能的提高有着显著的作用。关键词:智能搜索;词形相似度;语句长度相似度;词序相似度中图分类号:TP181文献标识码:A文章编号:1009-3044(2008)36-2817-02 1基于词型、词序、词长的句子相似度的改进句子语句相似度由词形相似度、语句长度相似度、词序相似度决定的,并在此基础上提出基于此三个特征的新的句子相似度计算模型。其中词形相似度起主要作用,语句长度相似度起次要作用,词序相似度的作用最小。下面分别加以说明与分析。 (文中以汉字为例)中的一个语句S(Sentence)是L中的单字和特殊符号(以下简称单字)的一个有序集合。S的长度即是S中单字的个数,此处用Length(S)表示。SameWC(S1,S2)表示语句S1,S2Y中相同单字的个数,当一个单字在S1,S2中出现的次数不同时,以出现次数少的计数。语句S1,S2的词形相似度WordSimilar(X,Y)由下面公式决定: WordSimilar(X,Y)=SameWC(X,Y)Max(Length(X),Length(Y)) 容易得出WordSimilar(X,Y)∈[0,1],其意义是两个语句相同的字数越多,两个语句越相似。例如:S1=正态分布的含义是什么?S2=什么是正态分布? 则WordSimilar(S1,S2)=8/11≈。 Length(S1),Length(S2)分别表示语句S1和语句S2的长度,即两个语句中的单字的个数。语句长度相似度LenghtSimilar(S1,S2)由以下公式决定, 容易得出LenghtSimilar(S1,S2)∈[0,1],其意义是两个语句的长度越接近,两个语句越相似。如上例中Length(S1)=11,Length(S2)=8则LenghtSimilar(S1,S2)≈。 ur(S1,S2)表示在S1,S2中都出现且都只出现一次的单字的集合。PFirst(S1,S2)ur(S1,S2)中的单字在S1中的位置序号构成的向量,PSecond(S1,S2)表示PFirst(S1,S2)中的分量按对应单词在S2中的次序排列生成的向量。例如S1=正态分布的含义是什么?S2=什么是正态分布? ur(S1,S2)={“正”,“态”,“分”,“布”,“的”,“含”,“义”,“是”“什”,“么”,“?”},S1中单字与序号的对应关系为: 则PFirst(S1,S2)=(0,2,3,7,8,9,10),由各分量对应的单词在S2中的顺序为: PSecond(S1,S2)=(8,9,7,0,1,2,3,10),ReWord(S1,S2)表示PSecond(S1,S2)各相邻分量的逆序数。上例中:8<9,9<7,7<0,0<1,1<2,2<3,3<10,得ReWord(S1,S2)=2。语句S1,S2的词序相似度由
句子相似度计算模型的改进 来自淘豆网m.daumloan.com转载请标明出处.