[IR课程笔记]向量空间模型(Vector Space Model)
VSM思想
把文档表示成R|v|上的向量,从而可以计算文档与文档之间的相似度(根据欧氏距离或者余弦夹角)
那么,如何将文档将文档表示为向量呢?
首先,需要选取基向量/dimensions,基向量须是线性独立的或者正交的向量。
在IR系统中,有两种方式决定基向量:
1.核心概念的思想(core concept):把词语的类型分类,按照其在不同分类上的“倾斜程度”决定向量的值。but,很难决定基向量。
2.把出现过的term(词语)都当作是一个基向量,假定所有的基向量都是相互正交相互独立的。以下我们采用这一种方式。
一个文档的向量表示就是:所有出现在文档中的term的向量之和。
如何决定权重?
1.在文档中,某个term出现记为1,不出现记为0.
2.tf方法(term frequency):在某个文档中,记下term出现的频率(次数)。
3.tf-idf方法(inverse document frequency):原始的词项频率会面临这样一个严重的问题:即在和查询进行相关度计算时,所有词项都被认为是同等重要的。实际上,某些词项对于相关度计算来说几乎没有或很少有区分能力。一个很直接的想法就是给文档集频率较高的词项赋予较低的权重。
dft表示的是词项t出现在所有文档的数目
idft = log(N/dft) N表示的是所有文档数目。
tf-idft,d = tft,d x idft
如何计算相似度?
1.欧式距离
2.余弦夹角
....
LSI(潜层语义分析)
SVM 语言模型是将文档集中所有出现过的每个词语都算成一个维度,这样就出现了一个问题,若出现同义词时,它们将会被算成不同的维度,这样,检索性能将会降低。解决这个问题 的一个方法是将SVM做SVD分解,得到新的矩阵。
如何做SVD分解?
词项-文档矩阵C可以被表示为C=UΣVT C为MxN的矩阵,U为MxM的矩阵,Σ为MxN的矩阵,VT为NxN的矩阵
1.假设词项-文档矩阵为C,首先求出CCT
2.求出CCT的特征值,对这些特征值求均方差,从大到小排序,得到Σ矩阵
3. 求出Σ的逆阵
4. 求出Σ对应的特征向量V,然后对V求转置VT
5. U = CVΣ-1
求出C的SVD分解后,我们在看其中的Σ矩阵,人工决定将最后r列的值置为0,最后求出新的矩阵C’。然后我们用这个新的矩阵进行相似度的计算。
问题:这是一个静态的过程,当不断有新的文档加入进文档集中时,LSI的效果持续下降,所以,我们需要定期的计算新的矩阵。
排序
1. 对每个相关文档进行相似度计算,返回前k个相关度最大的文档,这个时候可以使用堆排序
2. 索引去除技术。对于一个文档中,不需要计算它所有的词项与查询的相似度,首先人工确定一个r值,r值一般大于k。然后计算文档中词项的tf值,保留前r个tf值最高的词项。然后将这r个词项与查询做并集,然后在这个并集下,计算相关度。
3.以上我们计算的都是相关度,另外还有一个重要度的计算。相关度+重要度,决定了哪些文档应该排在前面。
[IR课程笔记]向量空间模型(Vector Space Model)的更多相关文章
- 向量空间模型(Vector Space Model)的理解
1. 问题描述 给你若干篇文档,找出这些文档中最相似的两篇文档? 相似性,可以用距离来衡量.而在数学上,可使用余弦来计算两个向量的距离. \[cos(\vec a, \vec b)=\frac {\v ...
- 向量空间模型(Vector Space Model)
搜索结果排序是搜索引擎最核心的构成部分,很大程度上决定了搜索引擎的质量好坏.虽然搜索引擎在实际结果排序时考虑了上百个相关因子,但最重要的因素还是用户查询与网页内容的相关性.(ps:百度最臭名朝著的“竞 ...
- Solr相似度名词:VSM(Vector Space Model)向量空间模型
最近想学习下Lucene ,以前运行的Demo就感觉很神奇,什么原理呢,尤其是查找相似度最高的.最优的结果.索性就直接跳到这个问题看,很多资料都提到了VSM(Vector Space Model)即向 ...
- 转:Lucene之计算相似度模型VSM(Vector Space Model) : tf-idf与交叉熵关系,cos余弦相似度
原文:http://blog.csdn.net/zhangbinfly/article/details/7734118 最近想学习下Lucene ,以前运行的Demo就感觉很神奇,什么原理呢,尤其是查 ...
- 深度学习课程笔记(十七)Meta-learning (Model Agnostic Meta Learning)
深度学习课程笔记(十七)Meta-learning (Model Agnostic Meta Learning) 2018-08-09 12:21:33 The video tutorial can ...
- ES搜索排序,文档相关度评分介绍——Vector Space Model
Vector Space Model The vector space model provides a way of comparing a multiterm query against a do ...
- 向量空间模型实现文档查询(Vector Space Model to realize document query)
xml中文档(query)的结构: <topic> <number>CIRB010TopicZH006</number> <title>科索沃難民潮&l ...
- 扩展:向量空间模型算法(Vector Space Model)
- 12.扩展:向量空间模型算法(Vector Space Model)
随机推荐
- 本地hosts文件
(1)什么是Hosts文件? Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网 ...
- CSS 实践:实现下拉菜单的方法
基于display属性的切换. 将需要不可见的二级菜单ul元素的display元素设为none,当需要可见的时候改为block. .menu ul li ul { display: none; } . ...
- js库-AngularJS
我是一个不思进取的前端. 我想按部就班的工作. 我想得过且过. 老天呀!你咋又逼迫我学习对于我来说的新知识呢!!!!!!!我想哭呀!!!!! 在某个代码项目中我看到了{{??}}这么个标记!我的神呀! ...
- js 路径改变时获取url参数
当我们在使用react或vue的router作路由跳转时,为了保持菜单与地址栏状态一致,我们可以使用window.onhashchange捕获#后面的变化 window.onhashchange = ...
- Codeforces Gym101502 K.Malek and Summer Semester
K. Malek and Summer Semester time limit per test 1.0 s memory limit per test 256 MB input standard ...
- 管理SQL Server监控
http://blog.csdn.net/DBA_Huangzj/article/category/1133081 http://www.cnblogs.com/bhtfg538/archive/20 ...
- javascript好文 --- 深入理解可视区尺寸client
可视区大小 可视区大小client又称为可见大小或客户区大小,指的是元素内容及其内边距所占据的空间大小 clientHeight clientHeight属性返回元素节点的可见高度 clientHei ...
- 【windows】windows下的hosts文件位置
- paramiko执行命令超时的问题
问题:paramiko远程执行命令,需要等到命令返回信息,如果命令执行时间比较长,返回信息就需要等很久 方案:1.使用nohup + 待执行命令 + & ,使用后台执行的方式,应该可以快速返回 ...
- hadoop安全之hftp
hftp默认是打开的,同意以浏览器的方式訪问和下载文件,以此方式下,能够读取全部文件,留下了安全隐患. 測试例如以下 /user/hive/warehouse/cdntest.db/selfreado ...