四、查询与界面
本章主要论述两个方面的内容,对于用户查询包括拼写错误、查询扩展和相关反馈问题。对于显示给用户的结果包括摘要生成、检索结果聚类和文档高亮显示。下面整理几点比较有意思的技术。
A. 查询扩展
在叙词表中词项经过了仔细的选择并进行了质量控制,所以叙词表也称为受控词表(controlled vocabulary)。使用叙词表,用户可与决定要在查询中用到哪些词和短语,并且能够用同义词和相关词来扩展最初的查询。
这里介绍一些衡量词项相关性的算法如:戴斯系数(Dice`s coefficient)、互信息(mutual information)、皮尔森检验方法(pearson`s Chisquared measure)。在说明这些算法之后作者说了这样一段话很重要:基于单个词的词项关联度方法没有产生很好的扩展词项,因为它没有使用查询的上下文信息。使用查询上下文最好的方法是,使用查询日志去分析词之间的关联以及根据点击流数据去找到相似的查询。
由此现在很多人结合本体,语义的想法,通过查询扩展的方式来提高查询准确度。
B. 相关反馈
相关反馈在用到查询扩展和查询提炼具有很长的历史。用户通过指出哪些文档是感兴趣的,以及那些事完全离题的。根据这些信息,系统通过增加词项或对原始词项重新分配权重,自动改写查询,并用改写的查询生成新的文档排序。
在相关反馈技术中,有伪相关反馈,作者对伪相关反馈给出了如下评价:如果最初的排序没有包含相关的文档,通过伪相关反馈获得的扩展词不可能有什么帮助,而且对于某些查询,可能会产生更严重的错误排序结果。根据对查询日志的分析,提议可选择的查询是一种更为可靠的半自动查询扩展替代方法。
C. 个性化查询,建议看一下soso的博客。
http://blog.csdn.net/soso_blog/archive/2010/12/02/6050346.aspx
D. 页面摘要
原来以为自动文摘是随意从文本中截取一段含有关键词的文字,结果看书才知道可以采用Luhn算法。Luhn的方法是采用重要因素对文档中的每个句子进行排序,然后选择最靠前的一些句子作为文摘。详细内容看书P131页。
E. 广告与搜索
读到这里我也感觉奇怪作者为何要单独拿一节来写这个问题,在技术上有什么新意吗?原来广告中的文本比较短,所以一些查询扩展技术不仅被用在查询上,也被应用于广告文档上。同时一些实验结果表明,对于广告最有效的相关排序是,将完全匹配整个文档的广告排序在最前面,然后是能够完全匹配经过词干替换查询的广告,再然后是根据概率相似度匹配扩展后查询的扩展广告文本。
F. 结果聚类
检索结果组织到各个不同含义的类别中的方法,称为逐面分类法。逐面分类法是由一些类别构成,通常这些类别被组织成层次形式,每个类别用一组层面来描述与其相关的一些重要属性。层面的分类主要是通过人工去定义,但是也可以使用数据库模式以及正在研究的一些自动构建层面类别的技术,将数据以结构化形式组织起来,使得可以通过层面的形式浏览这些数据。当然在数据聚类技术中,也可以自动生成族标签。
五、检索模型
这一章论述是搜索引擎最核心的部分。这个部分论述了四种模型,布尔模型、向量模型、概率模型。现在主要使用的是概率模型。说实话布尔模型,向量模型较为容易理解,而概率模型各种平滑技术,以及不同的改进方式较为复杂。
阅读这部分内容需要注意几点:1. 文档的分值如何计算 2. 查询项如何加入计算模型 3. 概率模型中需要用到的相关文档集如何选择
所有模型的出发点来自两点:1. 文档表示为词项的集合 2. 词项的权值计算 有了这两个的基础上才利用不同的模型,计算查询和文件的相关分值。
这部分内容需要已具体的搜索引擎实例进行研究,不过我们不大可能会修改这部分,主要是知道原理。