发明名称 一种短文本间语义距离的计算机辅助计算方法
摘要 一种短文本间语义距离的计算方法属于汉语文字信息处理技术领域,其特征在于把两个短文本间的语义距离定义为句法结构距离和单元语义距离之和进行计算:在对文本进行包括去除网页标记、变异短文本处理以及分词处理以后得到的一系列词串,根据词语相似度矩阵对两个短文本中的对应的词串进行语义对齐,根据对其过程中的词语调节次数得到了句法结构距离;再利用《同义词词林扩展版》中词语的五级结构,同时引入中文关键词和近义词概念,以便在语义对齐的基础上,用词语为单位,对各词语进行包括插入、删除或替换等五种操作,加入权重后的各种操作次数之和的权值来表示词语串之间的单元语义距离。本发明的文本语义距离的相对正确率要高于经典的编辑距离算法。
申请公布号 CN102622338B 申请公布日期 2014.02.26
申请号 CN201210045699.4 申请日期 2012.02.24
申请人 北京工业大学 发明人 杨震;王来涛;赖英旭;高凯明;张龙伯;段立娟;范科峰
分类号 G06F17/27(2006.01)I 主分类号 G06F17/27(2006.01)I
代理机构 北京思海天达知识产权代理有限公司 11203 代理人 楼艮基
主权项 1.一种短文本间语义距离的计算机辅助计算方法,其特征在于,是在计算机中依次按以下步骤实现的: 步骤(1)计算机初始化 设置:ICTCLAS分词算法模块和文本距离计算模块 基于《同义词词林扩展版》的汉语语料库 输入:以句子形式表述的两类不同的短文本,所述短文本是指包括短信、微博、论坛评论和新闻评论在内的应用文本中以句子形式出现的在线评论文本的原始数据; 步骤(2)文本预处理 对步骤(1)中的两类不同的短文本按以下步骤进行预处理,以规范文本数据格式: 步骤(2.1)去除包括&lt;html&gt;、&lt;body&gt;、&lt;div&gt;在内的html网页标记,提取出html页面中的评论内容数据; 步骤(2.2)对步骤(2.1)得到的评论内容数据进行变异短文本处理: 所述变异短文本是指用新的符号、口语化词表达常规词义的文本, 所述变异短文本处理是指对所述变异短文本中的词语的拼音、简写体、数字及标点符号进行统一规范化处理以及删除特殊符号, 步骤(2.3)利用所述ICTCLAS分词算法对经过步骤(2.2)得到的文本进行分词处理,得到一系列的文本的词串; 步骤(3)利用所述文本距离计算模块分别计算两类不同的短文本间的句法结构距离和单元语义距离, 步骤(3.1)按以下步骤计算所述两类不同的短文本间的句法结构距离,以度量短文本间在句法结构上的差别程度: 步骤(3.1.1)计算位于所述两类不同短文本中的词串W<sub>1</sub>和词串W<sub>2</sub>的词语相似度矩阵: 将两类不同的短文本中的较短文本以较长文本为标准进行语义对齐,所述语义对齐是指通过计算两类不同的短文本中任意词语间的相似度:以所述《同义词词林扩展版》中各个以五级结构表达的词语的8位语义代码为基础,计算两类不同的短文本中任意两个词语的相似度:Sim(A,B),A、B分别表示任意的两个词语: <img file="FDA0000380281510000011.GIF" wi="622" he="103" />P为A词语的语义集合,Q为B词语的语义集合;a为语义集合P中的任意语义,b为语义集合B中的任意语义,a∈P,b∈Q, Sim(a,b)=n/(N+1) n为a、b之间的语义代码开始不同的级数,N为编码的位数, 从而得到两类不同的短文本的词语相似度矩阵:矩阵的行为所述词串W<sub>1</sub>中的每个词语, 列为所述词串W<sub>2</sub>中的每个词语,矩阵的元素为所得到的词语相似度Sim(A,B), 步骤(3.1.2)设:所述词串W<sub>1</sub>的长度小于所述词串W<sub>2</sub>的长度,len(W<sub>1</sub>)&lt;len(W<sub>2</sub>),则以所述较长词串W<sub>2</sub>为标准,根据步骤(3.1.1)得到的词语相似度矩阵,进行语义对齐,其步骤如下: 步骤(3.1.2.1)选择所述词语相似度矩阵中词语相似度最大值,其所对应的两个词语作为相似对, 步骤(3.1.2.2)把步骤(3.1.2.1)中所述词串W<sub>1</sub>所对应的词语放在所述词串W<sub>2</sub>对应的词语的位置上,在所述相似度矩阵中的对应词语的行、列的元素值全部置零, 步骤(3.1.2.3)重复步骤(3.1.2.1)和步骤(3.1.2.2),直到所述词语相似度矩阵中所有元素为零,所述词串W<sub>1</sub>经过语义对齐,词语顺序调整为W<sub>1</sub>’,比较词串W<sub>1</sub>、W<sub>1</sub>’的词语,计算所述词串W<sub>1</sub>和所述词串W<sub>2</sub>的句法结构距离α: α=t*λ 其中t为所述词串W<sub>1</sub>和所述词串W<sub>2</sub>语义对齐的次数,λ为语义对齐的权值 步骤(3.2)在步骤(3.1)语义对齐的基础上,按下式计算两类不同的短文本间的单元语义距离,所述单元语义距离是指任意两个短文本在单元语义上的差别程度,其步骤如下: 步骤(3.2.1)设定以下五种编辑操作的权值: ω<sub>1</sub>为插入或删除关键词的操作权值, ω<sub>2</sub>为插入或删除非关键词的操作权值, γ<sub>1</sub>为替换关键词的操作权值, γ<sub>2</sub>为替换非关键词的操作权值, θ为对近义词的替换代价, 所述关键词是指短文本中的全部名词、代词、动词和形容词, 所述非关键词是指除名词、代词、动词和形容词以外,包括数词、量词、副词在内的其他词性的词语, 在λ、ω<sub>1</sub>、ω<sub>2</sub>、γ<sub>1</sub>、γ<sub>2</sub>、θ间的相互关系中,设定: 语义对齐的代价小于插入或删除的代价,表示为:ω<sub>1</sub>&gt;λ 关键词操作的代价大于非关键词操作的代价,表示为:ω<sub>1</sub>&gt;ω<sub>2</sub>,γ<sub>1</sub>&gt;γ<sub>2</sub>近义词的操作代价小于非近义词的操作代价,表示为:λ&gt;θ,ω<sub>1</sub>&gt;θ,ω<sub>2</sub>&gt;θ,γ<sub>1</sub>&gt;θ,γ<sub>2</sub>&gt;θ, 所述近义词是根据所述《同义词词林扩展版》对词语进行同义词扩展而得到的词语, 步骤(4)对步骤(3)得到的句法结构距离和单元语义距离进行归一化,步骤如下: 步骤(4.1)通过对两类不同的短文本间的任意两个词串的句法结构距离、单元语义距离 的操作次数进行统计,得到了以下不同编辑操作次数的最大值和最小值:max(t),min(t);max(a<sub>1</sub>),min(a<sub>1</sub>);max(a<sub>2</sub>),min(a<sub>2</sub>);max(b<sub>1</sub>),min(b<sub>1</sub>);max(b<sub>2</sub>),min(b<sub>2</sub>);max(c),min(c); 步骤(4.2)按下式对所述t、a<sub>1</sub>、a<sub>2</sub>、b<sub>1</sub>、b<sub>2</sub>、c各类编辑操作次数分别进行归一化操作,得到归一化以后的所述各类编辑操作次数t’、a<sub>1</sub>’、a<sub>2</sub>’、b<sub>1</sub>’、b<sub>2</sub>’、c’: <img file="FDA0000380281510000031.GIF" wi="447" he="150" />其中对同一类操作而言:t、a<sub>1</sub>、a<sub>2</sub>、b<sub>1</sub>、b<sub>2</sub>、c∈n,t’、a<sub>1</sub>’、a<sub>2</sub>’、b<sub>1</sub>’、b<sub>2</sub>’、c’∈n’ 将句法结构距离、单元语义距离的权值归一化以后: λ+ω<sub>1</sub>+ω<sub>2</sub>+γ<sub>1</sub>+γ<sub>2</sub>+θ=1 步骤(4.3)按下式计算所述两类不同的短文本间的语义距离β: β=a<sub>1</sub>*ω<sub>1</sub>+a<sub>2</sub>*ω<sub>2</sub>+b<sub>1</sub>*γ<sub>1</sub>+b<sub>2</sub>*γ<sub>2</sub>+c*θ 其中,ω<sub>1</sub>为插入或删除关键词的操作权值,ω<sub>2</sub>为插入或删除非关键词的操作权值,γ<sub>1</sub>为替换关键词的操作权值,γ<sub>2</sub>为替换非关键词的操作权值,θ为对近义词的替换代价,a<sub>1</sub>、a<sub>2</sub>、b<sub>1</sub>、b<sub>2</sub>、c为经过归一化后的对应编辑操作次数; 两类不同的短文本T<sub>1</sub>、T<sub>2</sub>的语义距离可用下式表示: Dis(T<sub>1</sub>,T<sub>2</sub>)=α+β。
地址 100124 北京市朝阳区平乐园100号