文本挖掘2相似度计算

在介绍相似度计算之前先介绍一下文档模型,也就是我们在解决一个问题的时候,一般是抽象出一个模型,也可以称为数学模型,这个模型可能是一个函数,可能是一个假设,主要的是为了解决这个问题。

文档模型

image

 

布尔模型建立在经典的集合论和布尔代数的基础上,每个词在一篇文档中是否出现,对应权值为 0或1

向量空间模型中将文档表达为向量空间中的一个矢量或一个点,一个坐标轴代表一个词

基于向量空间模型的相关度计算方法:

    这边有几个概念,词频和逆向文件频率

    词频就是把词进行归一化处理,那词在文档中出现的次数除以总文档总词数

    逆向文件频率,主要衡量一个词重要性的标志,具体计算采用总文档数除以该词出现的文档数后取对数。数学之美中吧为什么逆向文件频率是这么计算简单证明了一下,写得通俗易懂。

好,计算相似性采用的方法有计算欧式距离、计算内积、通过余弦定理来计算文档相似度。

image

为了提高效率,我们可以先进行单位化

image

另外可以通过Jaccard方法计算相似度

image

总结:

相似性计算看起来好像很简单,就是把每篇文档的中的词根据词库大小构建向量,通过计算两个向量直接的夹角来计算两个问题的相关性。

不过具体计算的时候会转化成矩阵,通过SVD进行求解。

 

参考:http://www.icst.pku.edu.cn/course/mining/12-13spring/index.html

posted @ 2014-01-18 15:27  越影&逐日而行  阅读(648)  评论(0编辑  收藏  举报