信息检索之文档评分、词项权重计算及向量空间模型

来源:互联网 发布:数据通信与网络 pdf 编辑:程序博客网 时间:2024/06/11 07:13
1、主要内容:
    在文档规模很大的情况下,满足布尔查询的结果文档数量可能非常多,往往会大大超过用户能够浏览的文档的数目。需要对搜索出来的文档进行评分和排序。
    ①、参数化索引及域索引的概念;目的:1、可以通过元数据(文档的作者、标题、出版日期等)来对文档进行索引和检索;2、上述索引能够提供一个简单的文档评分;
    ②、词项字在文档中的权重的概念,并通过期出现的统计信息进行权重计算;
    ③、每篇文档被表示为上述权重计算结果的向量,通过它可以计算查询和每篇文档的相似度。(向量空间方法);
    ④、向量空间模型中的权重计算的各种变形。
2、参数化索引及域索引:
    ①、元数据:指的是和文档有关的一些特定形式的数据,比如文档的作者、标题以及出版日期等等;
    ②、字段:元数据包含字段信息,如文档的创建日期、文档的格式、作者的信息,其取值通常是有限的。有点类似数据库中表中的字段(属性);
    ③、参数化索引:对每个字段(比如文档的创建时间)都存在一个与之对应的参数化索引,通过它我们只会选择在时间字段上满足查询需求的文档;
    ④、域索引:域可以是由任意的、数目无限制的文本组成。比如,吧文档的标题和摘要当做域。可以对文档的不同域建立索引。参数化索引,词典常常来自固定的词汇表,但是在域索引中,词典来自域中自由文本的所有词汇。


图6-2
经过编码后:


图6-3
    ⑤、域加权平均:给定一系列文档,嘉定每篇文档有l个域,其对应的权重分别是g1,g2,g3……gl∈[0,1],并且满足其和为1。令si未查询和文档的第i个域的匹配得分(1:匹配,0:未匹配)。则域加权评分方法可以定义为:,该方法也成为排序式布尔检索。
        这里的关键在于计算出该文档的得分。
    ⑥、权重学习:
        训练样本的误差函数为:,其中,g∈[0,1]
         这是一个二次规划问题,可参见《数学规划》第5章,约束规划部分。
    ⑦、词项频率及权重计算:
        提出问题:温昂中所有词项的重要性是一样的吗?
        核心思想:将文档频率(dft,表示出现词项t的所有文档数目)高的赋予较低的权重。越是经常出现的词汇其价值越小,比如说停用词。使用逆文档频率来表示。
        逆文档频率:idft=log(N/dft)。其中N为总的文档数。
        词项频率:词项t在文档d中出现的次数,记为tft,d。
        权重计算:tf-idft,d=tft,d×idft
        1、当t只在少数几篇文档中多次出现时,权重取值最大,此时能够对这些文档提供最强的区分能力;
        2、当t在一篇文档中出现次数很少,或者在很多文档中出现,权重取值次之,此时对最后的相关度计算作用不大;
        3、如果t在所有文档中都出现,那么权重取值最小。
    ⑧、向量空间模型(VSM):
        是信息检索领域一系列相关处理的基础,比如文档的评分、文档的分类和聚类等。(可看《集体智慧编程》第六章 文档过滤和《机器学习实战》第四章 基于概率论的分类方法:朴素贝叶斯 中从文本中构建词向量P58)
        使用余弦相似度定义两篇文章的相似度:

        下面有一个示例:
       
        图6-12
    ⑨、查询向量:

        示例6-4:
     

       
    ⑩向量相似度计算算法如下图:
       
        图6-14
      对于最后一步,求得最高的K个得分,可以使用二项堆来实现,见《算法导论》第19章 二项堆。

还有其他的方法计算tf-idf权重,如tf的亚现行尺度变换方法,基于最大值的tf归一化等;

问题:在实际的计算中,相似度都是数万维的向量的内积计算,计算量大。
0 0
原创粉丝点击