文本相似度的设计与实现

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

文本相似度的设计与实现

摘要:本文主要设计并实现了一个文本相似度系统,该系统主要功能计算文档之间的相似度,通过使用向量空间模型(VSM, Vector Space Model)及余弦相似度计算公式计算文档之间的相似度,数据预处理过程中加入word2vec模型进行语义扩充,从而能够匹配到更多相关文档。

1.向量空间模型

向量空间模型(VSM, Vector Space Model)由Salton等人于20世纪70年代年提出[1,2]。向量空间模型的主要思想是将文本内容的处理简化为向量空间中的向量运算,这样将空间上的相似度转化为语义上的相似度。当文档被表示为文档空间的向量时,便可通过计算向量之间的相似性来度量文档间的相似性。文本处理中最常用的相似性度量方式是余弦距离。

向量空间模型的基本思想:

给定一篇文档D=D(T1,T2,…T i,…,T n),若T i在文档中既可以重复出现又存在先后次序,因此分析起来会较为困难。针对上述情况,暂不考虑T i的顺序,并要求T i互异,此时可将T1,T2,…T i,…,T n看作n维坐标,每一维对应相应值W i,因此D(W1,W2,…,W i,…,W n)便可以看作一个n维向量。

例如:有一篇文档D={大家好,才是真的好},首先进行分词后转换为D={大家/好/才是/真的/好},之后提取出公因词D={大家,好,才是,真的},最后通过向量空间模型将文档转换为对应的向量D={1,2,1,1}。

向量空间模型只是将文档转换为方便计算的格式,若进行相似度计算,还需使用相似度计算公式进行计算。本文使用余弦相似度计算公式。

2.余弦相似度

余弦相似度计算公式广泛应用于文本数据之间的相似度计算过程中。其数学表达如下:

计算过程如下:

例如,有2个文档D1={大家好},D2={才是真的好},首先将D1、D2分词后,D1={大家/好},D2={才是/真的/好},其次提取出公因词D={大家,好,才是,真的},然后通过向量空间模型转换成向量表达,D1={1,1,0,0},D2={0,1,1,1},最后进行相似度计算

Score==

3.文本相似度系统

本文主要使用向量空间模型及余弦相似度距离公式进行文本相似度计算任务,系统的基本架构如下图1所示:

图1 系统架构

其基本思想为:将文档输入系统,对文档进行数据预处理操作,数据预处理完成后使用向量空间模型将词组转化为向量,之后使用余弦相似度计算公式求解文档之间的相似度,最终将计算后的结果展示出来。

数据预处理阶段,包括分词、取停用词、word2vec语义扩展,其流程如下图2所示:

图2 数据预处理

在word2vec语义扩展阶段,Word2vec是Google于2013年发布的一款基于深度学习的开源工具包,主要用于将单词以向量形式表示[3]。Word2vec首先使用语料训练模型,待模型训练结束后,将新的单词输入模型进行预测,模型可按相关度排序将最相近的预测单词展现给用户,通常而言,会将top30展示给用户。

针对文档语义扩充,系统会先使用搜狗新闻语料训练CBOW模型,待模型训练结束后,将本档中的单词输入CBOW模型进行预测,最终将预测结果扩充回文档中,用于向量空间模型。

同样以之前的2篇文档为例,D 1={大家/好},D 2={才是/真的/好},通过word2vec 模型后,D 1={大家/好/很好/不错},D 2={才是/真的/好/很好/不错},提取出公因词D={大家,好,很好,不错,才是,真的},然后通过向量空间模型转换成向量表达,D 1={1,1,1,1,0,0},D 2={0,1,1,1,1,1},最后进行相似度计算

Score =

=

通过比较两次的Score 值可得出,通过word2vec 能够提高文本相似度的计算分值。

另外系统会计算文档中每一句话所对应的最大匹配及其相似度值,针对文档与文档的相似度计算,本文提出一种平均相似度计算公式,即:

(1)

()1

max Si (1)n dicList i i

avgSimilar milar n dicList =⨯∑

其中n(dicList1)是所求文档中包含的句子个数,公式的主要思路即将每句话的最大匹配相似度叠加后求取平均值。

4. 系统设计

相应代码如下:

数据预处理阶段如下:

模型计算阶段如下:

参考文献:

[1] Salton G, Lesk M E. Computer Evaluation of Indexing and Text Processing[J]. Journal of the

Acm, 1968, 15(1):8-36.

[2] Salton. The SMART Retrieval System—Experiments in Automatic Document Processing[C]//

Prentice-hall, Inc Upper Saddle River. Prentice-Hall, Inc. 1971.

[3]苏增才.基于word2vec和SVMperf的网络中文文本评论信息情感分类研究[D].河北科

技大学,2015.

相关代码下载地址:

/detail/u013473512/9742055

https:///Emmitte/DocDistance

相关文档
最新文档