概念介绍

向量空间模型(VSM:Vector Space Model)由Salton等人于20世纪70年代提出,并成功地应用于文本检索系统。
VSM概念简单,把对文本内容的处理简化为向量空间中的向量运算,并且它以空间上的相似度表达语义的相似度,直观易懂。当文档被表示为文档空间的向量,就可以通过计算向量之间 的相似性来度量文档间的相似性。文本处理中最常用的相似性度量方式是余弦距离。
M个无序特征项ti,词根/词/短语/其他每个文档dj可以用特征项向量来表示(a1j,a2j,…, aMj)权重计算,N个训练文档AM*N= (aij) 文档相似度比较

向量空间模型 (或词组向量模型) 是一个应用于信息过滤,信息撷取,索引以及评估相关性的代数模型。

算法原理

1.计算权重(Term weight)的过程。

影响一个词(Term)在一篇文档中的重要性主要有两个因素:

Term Frequency (tf):即此Term在此文档中出现了多少次。tf 越大说明越重要。

Document Frequency (df):即有多少文档包含次Term。df 越大说明越不重要。

词(Term)在文档中出现的次数越多,说明此词(Term)对该文档越重要,如“搜索”这个词,在本文档中出现的次数很多,说明本文档主要就是讲这方面的事的。然而在一篇英语文档中, this出现的次数更多,就说明越重要吗?不是的,这是由第二个因素进行调整,第二个因素说

明,有越多的文档包含此词(Term), 说明此词(Term)太普通,不足以区分这些文档,因而重要性越低。

我们来看一下模型公式:


说明:

这仅仅只term weight计算公式的简单典型实现。实现全文检索系统的人会有自己的实现, Lucene就与此稍有不同。

2.判断Term之间的关系从而得到文档相关性的过程,也即向量空间模型的算法(VSM)。

我们把文档看作一系列词(Term),每一个词(Term)都有一个权重(Term weight),不同的词(Term)根据自己在文档中的权重来影响文档相关性的打分计算。
于是我们把所有此文档中词(term)的权重(term weight) 看作一个向量。

Document = {term1, term2, …… ,term N}

Document Vector = {weight1, weight2, …… ,weight N}

同样我们把查询语句看作一个简单的文档,也用向量来表示。

Query = {term1, term 2, …… , term N}

Query Vector = {weight1, weight2, …… , weight N}

我们把所有搜索出的文档向量及查询向量放到一个N维空间中,每个词(term)是一维。

如图:

我们认为两个向量之间的夹角越小,相关性越大。

所以我们计算夹角的余弦值作为相关性的打分,夹角越小,余弦值越大,打分越高,相关性越大。

相关性打分公式如下

举个例子,查询语句有11个Term,共有三篇文档搜索出来。其中各自的权重(Term weight), 如下表格。

于是计算,三篇文档同查询语句的相关性打分分别为:



于是文档二相关性最高,先返回,其次是文档一,最后是文档三。

到此为止,我们可以找到我们最想要的文档了。

向量空间模型算法(Vector Space Model)相关推荐

  1. 向量空间模型算法( Vector Space Model )

    概念介绍 向量空间模型(VSM:Vector Space Model)由Salton等人于20世纪70年代提出,并成功 地应用于文本检索系统. VSM概念简单,把对文本内容的处理简化为向量空间中的向量 ...

  2. NLP --- 文本分类(向量空间模型(Vector Space Model)VSM)

    本节主要介绍文本分类中的一种算法即向量空间模型,这个算法很经典,包含文本预处理.特征选择.特征权值计算.分类算法.这是VSM的几个主要步骤,在宗老师的书里都有详细的讲解,这里也会进行深入的讲解,浅显易 ...

  3. 大数据入门10:向量空间模型(Vector Space Model)

    文章目录 向量空间模型(Vector Space Model) 0. 概述 1. TF(Term frequency ,TF) 2. IDF(Inverse document frequency,ID ...

  4. 信息检索——向量空间模型(Vector Space Model)

    TF: tf 即 term frequency, 表示一个 term t 出现在 document d 中的次数,这是文档中一个很重要的概念.出现次数更多意味着重要程度越高,但是需要注意的是,相关度的 ...

  5. 白话Elasticsearch24- 深度探秘搜索技术之TFIDF算法/向量空间模型算法/lucene的相关度分数算法

    文章目录 概述 boolean model TF/IDF TF: term frequency IDF:inversed document frequency length norm vector s ...

  6. ElasticSearch之向量空间模型算法

    一 检索模型 1.1 bool模式 bool模式下,是最简单的检索模式,依据操作符AND 或者 OR 过滤document,结果只是包含指定的term的文档.他不会对document打分,只是为了减少 ...

  7. 向量空间模型(Vector Space Model)的理解

    https://www.cnblogs.com/hapjin/p/8687527.html

  8. 向量空间模型原理(VSM)

    VSM概念介绍 VSM概念简单来说,就是把对文本内容的处理简化为向量空间中的向量运算,并且它以空间上的相似度表达语义的相似度,直观易懂.当文档被表示为文档空间的向量,就可以通过计算向量之间 的相似性来 ...

  9. 经典检索模型——向量空间模型(VSM)的简单理解

    笔者在课后作业中遇到了向量空间模型的概念题,对课堂重温后有了一些简单的理解,在此分享. 向量空间模型(VSM) 向量空间模型(Vector Space Model,VSM),是基于代数的一种常用模型. ...

  10. 文档查询匹配的方法:布尔模型,向量空间模型

    文档查询匹配的方法:布尔模型,向量空间模型 文档表示:词袋方法Bag-of-Words Approach • 在 IR 中表示文档(和查询)的传统方法: 记录出现的单词(术语; 通常,加上每个文档中的 ...

最新文章

  1. SQL SERVER 2008权限配置
  2. 业界率先支持 MCP-OVER-XDS 协议,Nacos 2.0.1 + 1.4.2 Release 正式发布
  3. html表单提交后怎么发送邮箱,Dreamweaver中用表单制作了留言板,如何将内容提交后发到指定邮箱?...
  4. 7-2 作业调度算法--短作业优先 (30 分)(思路+详解+vector容器做法)Come Baby!!!!!!!!!!!
  5. C++ class实现顺序栈(完整代码)
  6. java开发工作找不到要放弃吗,年薪50W
  7. 使用C++代码打印数字正方形
  8. SQL入门试炼创建表
  9. mysql导出数据 程序_mysql导出数据
  10. 定义一个函数模板,要求返回两个值中的较小值。
  11. 为什么c语言运行了是cmd,为什么C语言的程式码执行都在命令提示符进行?而且学习的基本都是数学问题,跟开发软体有什么关系?...
  12. java 正则判断二进制_用正则表达式判断一个二进制数是否能被3整除
  13. taro 请务必在小程序页面中完善页面基础信息_如何一人五天开发完复杂微信小程序...
  14. html canvas php,关于HTML canvas的总结
  15. 苹果x来电闪光灯怎么设置_免费设置来电视频彩铃,安卓苹果都适用!
  16. 公司网络上网慢排查项
  17. 【信号与系统学习笔记】—— 拉普拉斯变换的性质分析
  18. 小白篇之RTMP编码器辅助OBS实现多个平台推流直播
  19. 小程序EXcel文件下载并打开
  20. 【《深度学习入门》—— 学习笔记(一)】

热门文章

  1. mysql standby_数据库的 standby模式
  2. 美团点评运营数据产品化实战
  3. Java将 PDF 拆分为多个 PDF 文件
  4. 80后一代开始结婚 独生子女开始承担新的责任
  5. 采用最终一致性解决微服务一致性问题
  6. qt 雷达扫描障碍物_激光雷达Lidar与毫米波雷达Radar:自动驾驶的利弊
  7. html修改progress背景色,html5 progress标签如何更改进度条颜色?progress进度条详解...
  8. mysql设置校对规则_MySQL校对规则
  9. GooglTest GoogleMock 实践感想三 死亡测试初步(1)
  10. django静态页面