文档评分与向量空间模型

上传人:人*** 文档编号:567471996 上传时间:2024-07-20 格式:PPT 页数:51 大小:385.50KB
返回 下载 相关 举报
文档评分与向量空间模型_第1页
第1页 / 共51页
文档评分与向量空间模型_第2页
第2页 / 共51页
文档评分与向量空间模型_第3页
第3页 / 共51页
文档评分与向量空间模型_第4页
第4页 / 共51页
文档评分与向量空间模型_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《文档评分与向量空间模型》由会员分享,可在线阅读,更多相关《文档评分与向量空间模型(51页珍藏版)》请在金锄头文库上搜索。

1、文档评分与向量空间模型李正华稍微删减1提纲1. 排序式检索2. 词项频率词项频率3. tf-idf权重计算4. 向量空间模型2提纲1. 排序式检索2. 词项频率3. tf-idf权重计算4. 向量空间模型3为什么要排序45排序式检索(Ranked retrieval)迄今为止,我们主要关注的是布尔查询文档要么匹配要么不匹配对自身需求和文档集性质非常了解的专家而言,布尔查询是不错的选择对应用开发来说也非常简单,很容易就可以返回1000多条结果然而对大多数用户来说不方便大部分用户不能撰写布尔查询或者他们认为需要大量训练才能撰写合适的布尔查询大部分用户不愿意逐条浏览1000多条结果,特别是对Web搜

2、索更是如此对于刚才的例子,40M的文档,相信大家都不会想去看。56布尔搜索的不足: 结果过少或者过多布尔查询常常会倒是过少(=0)或者过多(1000)的结果查询 1 (布尔或操作): standard user dlink 650 200,000 个结果 太多查询2 (布尔与操作): standard user dlink 650 no card found 0 个结果 太少在布尔检索中,需要大量技巧来生成一个可以获得合适规模结果的查询67排序式检索排序式检索可以避免产生过多或者过少的结果大规模的返回结果可以通过排序技术来避免只需要显示前10条结果不会让用户感觉到信息太多前提:排序算法真的有效

3、,即相关度大的文档结果会排在相关度小的文档结果之前78排序式检索中的评分技术我们希望,在同一查询下,文档集中相关度高的文档排名高于相关度低的文档如何实现?通常做法是对每个查询-文档对赋一个0, 1之间的分值该分值度量了文档和查询的匹配程度怎么做?89查询-文档匹配评分计算如何计算查询-文档的匹配得分?原则先从单词项查询开始若该词项不出现在文档当中,该文档得分应该为0该词项在文档中出现越多,则得分越高9提纲1. 排序式检索2. 词项频率3. tf-idf权重计算4. 向量空间模型1011二值关联矩阵每篇文档可以看成是一个二值的向量 0, 1|V|1112非二值关联矩阵(词频) 每篇文档可以表示成

4、一个词频向量 N|V|1213词袋(Bag of words)模型不考虑词在文档中出现的顺序John is quicker than Mary 及 Mary is quicker than John are 的表示结果一样这称为一个词袋模型(bag of words model)在某种意思上说,这种表示方法是一种“倒退”,因为位置索引中能够区分上述两篇文档1314词项频率 tf词项t的词项频率 tft,d 是指t 在d中出现的次数下面将介绍利用tf来计算文档评分的方法第一种方法是采用原始的tf值(raw tf)但是原始tf不太合适:某个词项在A文档中出现十次,即tf = 10,在B文档中 tf

5、 = 1,那么A比B更相关但是相关度不会相差10倍相关度不会正比于词项频率tf1415一种替代原始tf的方法: 对数词频t 在 d 中的对数词频权重定义如下:tft,d wt,d : 0 0, 1 1, 2 1.3, 10 2, 1000 4, 等等文档-词项的匹配得分是所有同时出现在q和文档d中的词项的对数词频之和(1 + log tft,d )如果两者没有公共词项,则得分为015提纲1.排序式检索2. 词项频率3. tf-idf权重计算4. 向量空间模型1617文档中的词频 vs. 文档集中的词频哪种词重要?的 了 水果 火龙果 刘翔 体育 苏州大学 计算机学院除词项频率tf之外,我们还想

6、利用词项在整个文档集中的频率进行权重和评分计算1718罕见词项所期望的权重罕见词项比常见词所蕴含的信息更多考虑查询中某个词项,它在整个文档集中非常罕见 (例如 赫尔辛根默斯).某篇包含该词项的文档很可能相关于是,我们希望像“赫尔辛根默斯”一样的罕见词项将有较高权重阿尔代夫海滩马路1819常见词项所期望的权重常见词项的信息量不如罕见词考虑一个查询词项,它频繁出现在文档集中 (如 GOOD, INCREASE, LINE等等)一篇包含该词项的文档当然比不包含该词项的文档的相关度要高但是,这些词对于相关度而言并不是非常强的指示词于是,对于诸如GOOD、INCREASE和LINE的频繁词,会给一个正的

7、权重,但是这个权重小于罕见词权重1920文档频率(Document frequency, df)对于罕见词项我们希望赋予高权重对于常见词我们希望赋予正的低权重接下来我们使用文档频率df这个因子来计算查询-文档的匹配得分文档频率指但是出现词项的文档数目2021idf 权重dft 是出现词项t的文档数目dft 是和词项t的信息量成反比的一个值于是可以定义词项t的idf权重: (其中N 是文档集中文档的数目)idft 是反映词项t的信息量的一个指标值得注意的是,对于tf 和idf我们都采用了对数计算方式2122idf的计算样例(inverted document freq)利用右式计算idft:词项

8、dftidftcalpurniaanimalsundayflyunderthe1100100010,000100,0001,000,0006432102223idf对排序的影响idf 会影响至少包含2个词项的查询的文档排序结果例如,在查询 “马尔代夫 海滩”中, idf权重计算方法会增加 马尔代夫 的相对权重,同时降低 海滩 的相对权重对于单词项查询,idf对文档排序基本没有任何影响2324文档集频率 vs. 文档频率词项t的文档集频率(Collection frequency) : 文档集中出现的t词条的个数词项t的文档频率: 包含t的文档篇数为什么会出现上述表格的情况?即文档集频率相差不大

9、,但是文档频率相差很大哪个词是更好的搜索词项?即应该赋予更高的权重上例表明 df (和idf) 比cf (和“icf”)更适合权重计算单词文档集频率文档频率INSURANCETRY1044010422399787602425tf-idf权重计算词项的tf-idf权重是tf权重和idf权重的乘积信息检索中最出名的权重计算方法注意:上面的 “-”是连接符,不是减号其他叫法:tf.idf、tf x idf2526tf-idf小结词项t在文档d中的权重可以采用下次计算tf-idf权重随着词项频率的增大而增大随着词项罕见度的增加而增大26提纲1. 排序式检索2. 词项频率3. tf-idf权重计算4.

10、向量空间模型2728二值关联矩阵每篇文档表示成一个二值向量 0, 1|V|2829词频矩阵 每篇文档表示成一个词频向量 N|V|2930二值 词频 权重矩阵每篇文档表示成一个基于tfidf权重的实值向量 R|V|3031二值 词频 权重矩阵每篇文档表示成一个基于tfidf权重的实值向量 R|V|下一步:需要按列进行归一化(保证每一个列向量的平方和为1)思考一下如何做?原因后面讲。3132文档表示成向量每篇文档表示成一个基于tfidf权重的实值向量 R|V|.于是,我们有一个 |V|维实值空间空间的每一维都对应词项文档都是该空间下的一个点或者向量极高维向量:对于Web搜索引擎,空间会上千万维对每

11、个向量来说又非常稀疏,大部分都是03233查询看成向量每一个查询也可以表示为一个高维稀疏向量。注意,为了简化问题,只考虑tf值,而不考虑idf如:good - 1 movie-2查询对应的向量不需要归一化(为什么自己思考)3334向量空间下相似度的形式化定义先考虑一下两个点之间的距离倒数一种方法是采用欧氏距离但是,欧氏距离不是一种好的选择,这是因为欧氏距离对向量长度很敏感3435欧氏距离不好的例子尽管查询q和文档d2的词项分布非常相似,但是采用欧氏距离计算它们对应向量之间的距离非常大。.Questions about basic vector space setup?3536采用夹角而不是距离

12、来计算将文档按照其向量和查询向量的夹角大小来排序假想实验:将文档 d 复制一份加在自身末尾得到文档d. d 是d的两倍很显然,从语义上看, d 和 d 具有相同的内容两者之间的夹角为0,代表它们之间具有最大的相似度但是,它们的欧氏距离可能会很大3637从夹角到余弦下面两个说法是等价的:按照夹角从小到大排列文档按照余弦从大到小排列文档这是因为在区间0, 180上,余弦函数cosine是一个单调递减函数3738Cosine函数3839文档长度归一化如何计算余弦相似度?一个向量可以通过除以它的长度进行归一化处理,以下使用L2 (2范数):这相当于将向量映射到单位球面上这是因为归一化之后: 因此,长文

13、档和短文档的向量中的权重都处于同一数量级前面提到的文档 d 和 d (两个d 的叠加) 经过上述归一化之后的向量相同3940查询和文档之间的余弦相似度计算qi 是第i 个词项在查询q中的tf-idf权重di是第i 个词项在文档d中的tf-idf权重| | 和 | | 分别是 和 的长度上述公式就是 和 的余弦相似度,或者说向量 和 的夹角的余弦 4041归一化向量的余弦相似度归一化向量的余弦相似度等价于它们的点积(或内积)如果 和 都是长度归一化后的向量4142余弦相似度的图示42下面的内容不讲,有兴趣的同学可以了解4344第一种方法: Jaccard系数计算两个集合重合度的常用方法令 A 和

14、 B 为两个集合Jaccard系数的计算方法:JACCARD (A, A) = 1JACCARD (A, B) = 0 如果 A B = 0A 和 B 不一定要同样大小Jaccard 系数会给出一个0到1之间的值4445Jaccard系数的计算样例查询 “ides of March”文档 “Caesar died in March”JACCARD(q, d) = 1/64546Jaccard系数的不足不考虑词项频率 ,即词项在文档中的出现次数罕见词比高频词的信息量更大,Jaccard系数没有考虑这个信息没有仔细考虑文档的长度因素4647课堂练习: 词项、文档集及文档频率df和cf有什么关系?t

15、f和cf有什么关系?tf和df有什么关系?统计量符号定义词项频率 文档频率文档集频率tft,ddftcft t在文档d中出现的次数出现 t的文档数目t在文档集中出现的总次数4748余弦相似度的计算样例 词项频率tf3本小说之间的相似度(1) SaS(理智与情感):Sense andSensibility (2) PaP(傲慢与偏见):Pride andPrejudice (3) WH(呼啸山庄):WutheringHeights词项SaSPaPWHAFFECTIONJEALOUSGOSSIPWUTHERING11510205870020116384849余弦相似度计算 词项频率 tf 对数词频

16、(1+log10tf)词项SaSPaPWHAFFECTIONJEALOUSGOSSIPWUTHERING3.062.01.3002.761.85002.302.041.782.58词项SaS PaPWHAFFECTIONJEALOUSGOSSIPWUTHERING1151020587002011638为了简化计算,上述计算过程中没有引入idf4950余弦相似度计算 对数词频(1+log10tf) 数词频的余弦归一化结果 词项SaSPaPWHAFFECTIONJEALOUSGOSSIPWUTHERING3.062.01.3002.761.85002.302.041.782.58词项SaSPaPW

17、HAFFECTIONJEALOUSGOSSIPWUTHERING0.7890.5150.3350.00.8320.5550.00.00.5240.4650.4050.588cos(SaS,PaP) 0.789 0.832 + 0.515 0.555 + 0.335 0.0 + 0.0 0.0 0.94.cos(SaS,WH) 0.79cos(PaP,WH) 0.69cos(SaS,PaP) cos(SAS,WH) cos(PaP,WH) 5051tf-idf 计算样例: Inc.Itn查询: “best car insurance”. 文档: “car insurance auto insurance”.1/1.92 0.521.3/1.92 0.68 最终结果 wqi wdi = 0 + 0 + 1.04 + 2.04 = 3.0851

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号