向量空间模型算法(Vector Space Model)
概念介绍
向量空间模型(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)相关推荐
- 向量空间模型算法( Vector Space Model )
概念介绍 向量空间模型(VSM:Vector Space Model)由Salton等人于20世纪70年代提出,并成功 地应用于文本检索系统. VSM概念简单,把对文本内容的处理简化为向量空间中的向量 ...
- NLP --- 文本分类(向量空间模型(Vector Space Model)VSM)
本节主要介绍文本分类中的一种算法即向量空间模型,这个算法很经典,包含文本预处理.特征选择.特征权值计算.分类算法.这是VSM的几个主要步骤,在宗老师的书里都有详细的讲解,这里也会进行深入的讲解,浅显易 ...
- 大数据入门10:向量空间模型(Vector Space Model)
文章目录 向量空间模型(Vector Space Model) 0. 概述 1. TF(Term frequency ,TF) 2. IDF(Inverse document frequency,ID ...
- 信息检索——向量空间模型(Vector Space Model)
TF: tf 即 term frequency, 表示一个 term t 出现在 document d 中的次数,这是文档中一个很重要的概念.出现次数更多意味着重要程度越高,但是需要注意的是,相关度的 ...
- 白话Elasticsearch24- 深度探秘搜索技术之TFIDF算法/向量空间模型算法/lucene的相关度分数算法
文章目录 概述 boolean model TF/IDF TF: term frequency IDF:inversed document frequency length norm vector s ...
- ElasticSearch之向量空间模型算法
一 检索模型 1.1 bool模式 bool模式下,是最简单的检索模式,依据操作符AND 或者 OR 过滤document,结果只是包含指定的term的文档.他不会对document打分,只是为了减少 ...
- 向量空间模型(Vector Space Model)的理解
https://www.cnblogs.com/hapjin/p/8687527.html
- 向量空间模型原理(VSM)
VSM概念介绍 VSM概念简单来说,就是把对文本内容的处理简化为向量空间中的向量运算,并且它以空间上的相似度表达语义的相似度,直观易懂.当文档被表示为文档空间的向量,就可以通过计算向量之间 的相似性来 ...
- 经典检索模型——向量空间模型(VSM)的简单理解
笔者在课后作业中遇到了向量空间模型的概念题,对课堂重温后有了一些简单的理解,在此分享. 向量空间模型(VSM) 向量空间模型(Vector Space Model,VSM),是基于代数的一种常用模型. ...
- 文档查询匹配的方法:布尔模型,向量空间模型
文档查询匹配的方法:布尔模型,向量空间模型 文档表示:词袋方法Bag-of-Words Approach • 在 IR 中表示文档(和查询)的传统方法: 记录出现的单词(术语; 通常,加上每个文档中的 ...
最新文章
- SQL SERVER 2008权限配置
- 业界率先支持 MCP-OVER-XDS 协议,Nacos 2.0.1 + 1.4.2 Release 正式发布
- html表单提交后怎么发送邮箱,Dreamweaver中用表单制作了留言板,如何将内容提交后发到指定邮箱?...
- 7-2 作业调度算法--短作业优先 (30 分)(思路+详解+vector容器做法)Come Baby!!!!!!!!!!!
- C++ class实现顺序栈(完整代码)
- java开发工作找不到要放弃吗,年薪50W
- 使用C++代码打印数字正方形
- SQL入门试炼创建表
- mysql导出数据 程序_mysql导出数据
- 定义一个函数模板,要求返回两个值中的较小值。
- 为什么c语言运行了是cmd,为什么C语言的程式码执行都在命令提示符进行?而且学习的基本都是数学问题,跟开发软体有什么关系?...
- java 正则判断二进制_用正则表达式判断一个二进制数是否能被3整除
- taro 请务必在小程序页面中完善页面基础信息_如何一人五天开发完复杂微信小程序...
- html canvas php,关于HTML canvas的总结
- 苹果x来电闪光灯怎么设置_免费设置来电视频彩铃,安卓苹果都适用!
- 公司网络上网慢排查项
- 【信号与系统学习笔记】—— 拉普拉斯变换的性质分析
- 小白篇之RTMP编码器辅助OBS实现多个平台推流直播
- 小程序EXcel文件下载并打开
- 【《深度学习入门》—— 学习笔记(一)】
热门文章
- mysql standby_数据库的 standby模式
- 美团点评运营数据产品化实战
- Java将 PDF 拆分为多个 PDF 文件
- 80后一代开始结婚 独生子女开始承担新的责任
- 采用最终一致性解决微服务一致性问题
- qt 雷达扫描障碍物_激光雷达Lidar与毫米波雷达Radar:自动驾驶的利弊
- html修改progress背景色,html5 progress标签如何更改进度条颜色?progress进度条详解...
- mysql设置校对规则_MySQL校对规则
- GooglTest GoogleMock 实践感想三 死亡测试初步(1)
- django静态页面