向量空间模型将文档映射为一个特征向量V(d)=(t11(d);…;tn, ωn(d)),其中ti(i=1,2, …,n)为一列互不雷同的词条项,ωi(d)为ti在d中的权值, 一般被定义为ti在d中出现频率tfi(d)的函数,即 。 

在信息检索中常用的词条权值计算方法为 TF-IDF 函数,其中N为所有文档的数目,ni为含有词条ti的文档数目。TF-IDF公式有很多变种,下面是一个常用的TF-IDF公式: 

根据TF-IDF公式,文档集中包含某一词条的文档越多,说明它区分文档类别属性的能力越低,其权值越小;另一方面,某一文档中某一词条出现的频率越高,说明它区分文档内容属性的能力越强,其权值越大。

两文档之间的相似度可以用其对应的向量之间的夹角余弦来表示,即文档di,dj的相似度可以表示为

进行查询的过程中,先将查询条件Q进行向量化,主要依据布尔模型:

当ti在查询条件Q中时,将对应的第i坐标置为1,否则置为0,即

从而文档d与查询Q的相似度为

根据文档之间的相似度,结合机器学习的一些算法如神经网络算法,K-近邻算法和贝叶斯分类算法等,可以将文档集分类划分为一些小的文档子集。

在查询过程中,可以计算出每个文档与查询的相似度,进而可以根据相似度的大小,将查询的结果进行排序。

向量空间模型可以实现文档的自动分类和对查询结果的相似度排序,能够有效提高检索效率;它的缺点是相似度的计算量大,当有新文档加入时,则必须重新计算词的权值。

向量空间模型(VSM)--用于计算文本相似度相关推荐

  1. vsm java_向量空间模型(VSM)在文档相似度计算上的简单介绍

    C#实现在: 向量空间模型(VSM:Vector space model)是最常用的相似度计算模型,在自然语言处理中有着广泛的应用,这里简单介绍一下其在进行文档间相似度计算时的原理. 假设共有十个词: ...

  2. 向量空间模型(VSM)在文档相似度计算上的简单介绍

      向量空间模型(VSM:Vector space model)是最常用的相似度计算模型,在自然语言处理中有着广泛的应用,这里简单介绍一下其在进行文档间相似度计算时的原理. 假设共有十个词:w1,w2 ...

  3. Bag-of-words模型-可用于计算文本及图片相似度

    引言 本blog之前已经写了四篇关于SIFT的文章,请参考九.图像特征提取与匹配之SIFT算法,九(续).sift算法的编译与实现,九(再续).教你一步一步用c语言实现sift算法.上,及九(再续). ...

  4. 【转载】向量空间模型VSM及余弦计算

    向量空间模型VSM及余弦计算 向量空间模型的基本思想是把文档简化为以特征项(关键词)的权重为分量的N维向量表示. 这个模型假设词与词间不相关(这个前提造成这个模型无法进行语义相关的判断,向量空间模型的 ...

  5. 自然语言处理(NLP)之使用TF-IDF模型计算文本相似度

    自然语言处理(NLP)之使用TF-IDF模型计算文本相似度 所用数据集:ChnSentiCorp_htl_all.csv 语料库即存放稀疏向量的列表. 要注意的是,搜索文本text与被检索的文档共用一 ...

  6. NLP——计算文本相似度的常用算法

    文章目录 一.绪论 二.余弦相似度 2.1 余弦相似度定义 2.2 计算相似度步骤 2.3 举例 2.4 改进方式 2.5 代码 三.TF-IDF计算 3.1 TF.IDE.TF-IDF的计算方法 3 ...

  7. 使用余弦相似度算法计算文本相似度-数学

    20211201 也就是效果 皮尔逊>余弦>欧式 余弦相似度的局限 皮尔逊的优势,相当于是改进版余弦相似度 欧式与 余弦 欧式侧重于直线距离 归一化之后的欧式和余弦的效果也不同 比如 0, ...

  8. 使用余弦相似度计算文本相似度

    1. 使用simhash计算文本相似度 2. 使用余弦相似度计算文本相似度 3. 使用编辑距离计算文本相似度 4. jaccard系数计算文本相似度 2.向量余弦计算文本相似度 2.1 原理 余弦相似 ...

  9. 使用gensim计算文本相似度

    使用gensim计算文本相似度 计算文本相似度步骤逻辑 1.将文本数据,通过jieba分词进行处理,形成一个二维数组 2.将二维数组生成词典 3.将二维数组通过doc2bow稀疏向量,形成语料库 4. ...

最新文章

  1. 赛门铁克卸载工具_神奇的安卓恶意软件 xHelper:自卸载且无法删除
  2. Bitmap那些事之内存占用计算和加载注意事项
  3. linux把用户添加到组
  4. 7.定义一个有80个元素的字符数组,从键盘输入一串字符,将其中的大写字母转换为小写字母,而将原来为小写的字母转换为大写字母,其他字符不变。
  5. 面试题 17.24. 最大子矩阵
  6. WPF应用程序内存泄漏的一些原因
  7. #include 中的stat.h文件到底在哪个目录下面?
  8. 美国世态什么样,看这条“K”线就够了
  9. 网易云android视频播放器,网易云服务-在线搜歌-数据结构
  10. JAVA程序设计基础(第六版)第六章习题 6.13
  11. Mac OS 如何批量转换图片格式
  12. 创业公司的融资阶段:天使轮、种子轮、A轮、C轮、E轮到底是什么意思?
  13. 冰雪复古优化服务器,冰雪复古单职业:最适合长久稳定打金的传奇
  14. 秋冬易感冒着凉 风寒感冒9大食疗方
  15. Mac--技巧:修复“闪烁的问号”错误提示
  16. Windows 10配置网络代理服务器
  17. 解决笔记本windows11充电后,屏幕亮度忽明忽暗的问题
  18. 【Basic Algebra】群论学习整理
  19. ESP8266_MQTT协议
  20. Netty学习(七):心跳检测机制

热门文章

  1. python实训day5
  2. 浏览器与WEB服务器交互
  3. Fortran基础练习02--循环2
  4. 【LeetCode 69】Sqrt(x)
  5. ASP.NET 2.0 数据绑定高级技巧
  6. 【Java】使用springboot框架中的注解@ManyToOne遇到的坑
  7. JConsole监控远程linux下的JVM
  8. udt编写高性能服务器,基于UDT协议的Oracle数据库远程备份的设计和实现
  9. Postman的新手教学,一学就会!
  10. grDevices | R语言中的配色方法汇总(Ⅱ-2)