zoukankan      html  css  js  c++  java
  • 文本挖掘2相似度计算

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

    文档模型

    image

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

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

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

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

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

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

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

    image

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

    image

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

    image

    总结:

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

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

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

  • 相关阅读:
    java--保留重复排序
    java--TreeSet比较器排序
    java--去重练习
    java--HashSet
    java--集合可变参数
    spring MVC入门
    java IO详解
    spring入门
    redis详解
    maven教程
  • 原文地址:https://www.cnblogs.com/fengbing/p/3525138.html
Copyright © 2011-2022 走看看