1、本 科 毕 业 论 文个性化搜索引擎及相关技术研究:个性化搜索基础平台相关页面排序算法研究Personalized search engine and related technology research: Page ranking research on basic personalized search platform姓 名: 学 号:学 院:软件学院系:软件工程专 业:软件工程年 级:指导教师: 年 月I摘 要目前,随着 Internet 的迅猛发展, 网络信息呈爆炸式增长。在庞大的互联网中搜索自己所需要的信息,已经成为大部分用户经常性的操作。搜索引擎的出现,使用户搜索信息的过程变得
2、更为方便快捷,它已成为用户在互联网中收集信息不可缺少的工具,具有广阔的应用前景,成为非常活跃的研究领域。搜索引擎是一个从海量数据中检索用户感兴趣信息的综合技术, 它从一定程度上满足了用户对信息的需求, 但返回页面的数量依然十分巨大。当搜索引擎最终以一定的顺序将搜索结果返回给用户时,用户希望能方便快速地查找到自己需要的网页。因此,如何对搜索结果进行排序已成为影响搜索质量的一个重要问题。本文研究的目的就在于把符合用户检索需求的网页更好的排在搜索结果的前面,得到较高的查准率,为符合用户的个性化搜索进行前期探索。本文首先介绍了搜索引擎的运作流程,指出页面排序在搜索引擎中的地位。其次介绍传统的信息检索排
3、序方法和当前常用的基于网页链接结构排序算法,简述它们的优缺点。之后着重阐述 PageRank 算法,并根据网页的超链接结构特性,建立网页链接文档,在此基础上通过简单 GUI 界面实现离线计算的PageRank 算法。最后介绍并采用传统的 TF*IDF 算法实现一个简单的搜索引擎系统,模拟用户的输入,对返回的目标页面进行排序,并对系统进行查准率评价。本文的实验结果表明,页面排序在搜索引擎应用中占有重要的地位,它能指导用户方便地找到所需要的网页;传统的 TF*IDF 算法,具有一定的查准率,在此基础上可以建立个性化的搜索引擎。关键词: 页面排序;TF*IDF;搜索引擎IIAbstractAlong
4、 with rapidly development of Internet , the information on the Internet has increased explosively . It becomes very active research area for its wide application foreground. Search engine is an integrated technology that retrievesinteresting information from huge amount data. It can help people in s
5、ome degree , but still returns lots of pages. It has been an important problem to sort the search result properly .This thesis aims at implementing an efficient ranking algorithm to give users a high precision of getting search results, and exploring for personalized search engine.This paper introdu
6、ce the flow of search engine first, secondly compares the ranking method based on traditional information retrieval with the algorithm based on link structure of webs and analyze their advantages and disadvantages. Then puts the emphasis on the PageRank algorithm, create an application with GUI inte
7、rface to compute offline PageRank. At last, design a search engine base on TF*IDF algorithm. Simulating the input query by users and return the results ranked by PageRank.The results are estimated by query precision.The result returned by experiment reflects the importance of ranking method in pract
8、ice.It can guide users to find out useful information easily and efficiently.Key words: page ranking; TF*IDF; search engin个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究III目 录第一章 引言 11.1 研究背景和意义 11.2 本文的主要工作 2第二章 搜索引擎简介 32.1 页面搜集 32.1.1 定期搜集 32.1.2 增量搜集 42.2 预处理 42.2.1 关键词的提取 42.2.2 建立倒排文件 52.3 查询服务 52.3.1 查询方式
9、 52.3.2 文档摘要 62.3.3 结果排序 6第三章 页面排序算法 83.1 词频位置加权算法 83.1.1 原理 83.1.2 评价 93.2 PageRank 算法 103.2.1 原理 103.2.2 评价 113.3 HITS 算法 123.3.1 原理 123.3.2 评价 143.4 其他链接分析算法 153.4.1 Hub 平均算法 .153.4.2 阈值算法 153.4.3 ARC 算法 163.5 Direct Hit 算法 .163.5.1 原理 163.5.2 评价 173.6 竞价排名 173.6.1 原理 183.6.2 评价 183.7 页面排序不足和发展 1
10、9第四章 PageRank 算法理论及实现 .214.1 PageRank 算法分析 224.2 基于 PageRank 的改进算法分析 28个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究IV4.2.1 TSPR 算法 284.2.2 HillTop 算法 .294.2.3 Topic PageRank 算法 .304.2.4 融入链接相似度的 PageRank 算法 30第五章 基于 TF*IDF 算法的搜索引擎实现 335.1 简单搜索引擎的设计 335.1.1 系统用例图 345.1.2 系统框架 345.2 系统平台及开发环境 355.3 评分排序的实现 355
11、.4 用户界面 395.4.1 简单搜索引擎系统 395.4.2 页面评分子模块 405.5 测试结果及分析 42第六章 结论 46致谢语 47参考文献 48个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究VContentsChapter 1 Introduce.11.1 Background11.2 Content.2Chapter 2 Search Engine .32.1 Page Collection 32.1.1 Regular Collection 32.1.2 Incremental Collection 42.2 Pretreatment42.2.1 Ke
12、yword Extraction 42.2.2 Establish Index 52.3 Query Service 52.3.1 Query Pattern 52.3.2 Abstract .62.3.3 Sort Result.6Chapter 3 Page Sort Algorithm 83.1 Frequency Position Weighted 83.1.1 Principle 83.1.2 Evaluate.93.2 PageRank .103.2.1 Principle 103.2.2 Evaluate.113.3 HITS .123.3.1 Principle 123.3.2
13、 Evaluate.143.4 Other Algorithm153.4.1 Hub Average .153.4.2 Threshold.153.4.3 ARC.163.5 Direct Hit163.5.1 Principle 163.5.2 Evaluate.173.6 Bid Ranking .173.6.1 Principle 183.6.2 Evaluate.183.7 Disadvantage19Chapter 4 PageRank Algorithm .214.1 PageRank Analysis224.2 Improve 28个性化搜索引擎及相关技术研究: 个性化搜索基础平
14、台相关页面排序算法研究VI4.2.1 TSPR .284.2.2 HillTop 294.2.3 Topic PageRank 304.2.4 Link Similarity PageRank .30Chapter 5 Search Engine with TF*IDF .335.1 Design .335.1.1 Use Case345.1.2 Framework 345.2 Develop Environment .355.3 Score Sort.355.4 Interface .395.4.1 Simple Search Engine .395.4.2 Score Sort Sun-m
15、odule .405.5 Test Result42Chapter 6 Conclusion.46Acknowledgement 47References .48个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究1第一章 引言1.1 研究背景和意义随着 Internet 的迅速发展,互联网上的网页数量和信息迅猛膨胀,人们越来越感到快速准确获取自己所需的各种各样有价值信息的重要性。互联网可以看作是一座收藏量巨大的图书馆,通过网络将零星的资源汇集在一起,使之成为全世界范围内网络用户共享的财富。截止 2008 年底, 1 中国网页总数超过 160亿个,年增长率达到了 90%,其中
16、 2008 年全年增加了 76.2 亿!如果按照平均每分钟浏览一个网页计算,如果一个人 24 小时不停地阅读,读完这 160 亿个网页需要 3 万年!随着网络资源数量的日益膨胀,人们获取信息的难度日益增加。另一方面,由于网络本身的随意性,没有书籍出版那样的严格程序,网页质量参差不齐,许多真正有价值的信息就被淹没在信息的海洋中了。再者,网页内容不稳定,除了不断有新的网页出现外, 2 旧的网页也会因为各种原因被删除(有研究指出 50%网页的平均生命周期大约为 50 天) 。以上诸多因素常常导致人们对如何有效地获取所需的信息感到束手无策。对于高速发展的互联网来说,如何从如此众多的信息中及时、准确地获
17、取所需要的信息,是亟待解决的问题。为了使用户能够省时省力的寻找自己真正需要的资源,为了使资源发布者能够向更多的用户共享信息和服务,为了将众多的网络资源搜集起来供用户查询访问,搜索引擎应运而生。通过搜索引擎人们可以快速访问所需要的信息,在一定程度上缓解了人们面对浩瀚无边的信息一筹莫展的困境。搜索引擎是利用信息挖掘系统在网络空间寻找和挖掘相关或有用信息,在此基础上建立检索数据库,并通过提供简单友好的查询界面,帮助用户进行网络信息检索的信息服务系统或工具。CNNIC 的信息统计指出,目前搜索引擎已经成为继电子邮件之后人们用得最多的网上信息服务系统。据调查,访问搜索引擎已经成为 88%的 Web 会话
18、中的第一步,而用户平均在每次会话中访问 3.2 个站点(访问搜索引擎除外)。正确个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究2地使用搜索引擎可以帮助用户减少在网上盲目冲浪的时间,加快定位到所需的站点、页面。统计结果 3 表明:65%-70%的网民仅点击搜索结果的第一页,即前 10 条,20%-25%的网民点击搜索结果的第二页,即第 11-20 条,而只有 3%-4%的网民点击第二页以后的搜索结果。因此,在将结果网页返回给用户之前,一个好的搜索引擎就需要进行相关性排序工作 4 ,尽可能将与用户查询相符合的结果排在前面,而这与页面排序算法是不可分割的。为了能够对结果网页进
19、行相关性排序,需要给出网页排序的标准,分析结果网页与用户查询的匹配程度,查准率和查全率 5 是很重要的两个指标。本文的研究意义就在于对传统和当前搜索引擎使用的排序算法分析优缺点,通过对页面的合理排序,使得用户所需的信息排在返回结果的靠前位置,从而得到较好的查准率。1.2 本文的主要工作本文的主要工作在于对传统和当前的一些网页排序算法进行了研究对比,分析它们的优缺点,综述研究成果;详细分析了 PageRank 算法的特点和基本原理,并对传统的 PageRank 算法的优缺点进行了分析讨论,使用 Java 语言实现PageRank 算法;详细分析 TF*IDF 算法优缺点,采用 TF*IDF 算法
20、设计并实现了基于 Spring、Struts2 框架的搜索引擎系统,较好的呈现查询结果。个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究3第二章 搜索引擎简介搜索引擎实际是在 Internet 上应用的软件系统,这种软件系统与一般的网站不同,其主要工作是以一定的策略自动搜寻和发现 Web 上的信息,将信息进行分类、建立索引,然后把索引的内容存放到数据库中,便于以查询的方式提交给用户。搜索引擎可以帮助人们更加准确高效地获取所需要的信息资源,提高了工作效率,是网络时代不可或缺的工具。现代大规模高质量搜索引擎 6 一般采用如图 2-1 所示的称之为三段式的工作流程,即:页面搜集
21、、预处理和查询服务。 图 2-1: 搜索引擎三段式工作流程 2.1 页面搜集面对大量的用户查询,不可能想象每来一个查询,系统就到网上“搜索” 一次。 在网络比较畅通的情况下,从网上下载一篇网页大约需要 1 秒钟左右,因此如果在用户查询的时候即时去网上抓来成千上万的网页,一个个分析处理,和用户的查询匹配,不可能满足搜索引擎的响应时间要求。不仅如此,这样做的系统效益也不高(会重复抓取太多的网页) 。所以搜索引擎服务的基础是一批预先搜集好的页面。网页搜集可以有两种方法:定期搜集和增量搜集。2.1.1 定期搜集定期搜集,每次搜集替换上一次的内容,也称作批量搜集。这样做的好处是系统实现比较简单,主要缺点
22、是时新性不高,还有重复搜集所带来的额外带个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究4宽的消耗,开销较大。2.1.2 增量搜集增量搜集,开始时搜集一批,往后只是(1)搜集新出现的网页,(2)搜集那些在上次搜集后有过改变的网页,(3)发现自从上次搜集后已经不再存在了的网页,并从库中删除。由于除新闻网站外,许多网页的内容变化并不是很经常的(有研究指出 50%网页的平均生命周期大约为 50 天 7 ) ,这样做每次搜集的网页量不会很大, 这样的系统表现出来的信息时新性就会比较高,主要缺点是系统实现比较复杂。2.2 预处理得到数量庞大的页面集合后,并不能直接用来进行搜索,否则
23、效率相当低下,而是应该先对搜集到的页面进行预处理以便查询。预处理主要工作是:对现有的页面集合进行关键词的提取,建立倒排文件;分析页面中的链接关系;一些搜索引擎页面排序算法在预处理阶段就开始计算页面的重要程度了。其中为网页建立全文索引是网页预处理的核心部分,包括关键词的提取和建立倒排文件。建立全文索引的流程如图 2-2 所示。图 2-2: 建立全文索引的流程2.2.1 关键词的提取提取关键词主要的操作对象是数据源以及用户提供的查询语句,系统首先通过分词工具对数据源进行分词,形成索引表,然后再将用户的查询条件用同样的分词工具进行分词,最后根据分词后的词条进行查询。个性化搜索引擎及相关技术研究: 个
24、性化搜索基础平台相关页面排序算法研究52.2.2 建立倒排文件提取关键词后,得到如图 2-3 a)所示的正向索引表,若在搜索时根据输入的特征项到每篇页面中找含有关键词的页面,这样效率相当低下,无法想象一次搜索将耗时多久,更何况搜索引擎面临的是大量的用户检索。因此大运算量的工作应该尽量在预处理阶段完成,在搜索引擎中通常采用倒排索引技术,它使得搜索引擎能够较快地响应用户检索。图 2-3: 由正向索引建立反向索引倒排索引技术由正向索引表来建立如图 2-3 b)的反向索引表,使得索引由原来的从页面指向特征项,转换成由特征项指向页面。这样一来,根据用户输入的特征项,就可以快速定位到包含该关键词的页面,将
25、结果集排序后返回。2.3 查询服务查询服务主要包括包括提供的查询方式、文档摘要和结果排序这三方面的内容。2.3.1 查询方式查询方式指的是系统允许用户提交查询的形式,用一个词或者短语来直接表达信息需求,希望网页中含有该词或者该短语中的词,是主流的搜索引擎查询模式。一般来讲,系统面对的是查询短语。系统先将原始查询按照和关键词提取的相同方法进行切词,形成一个用于参与匹配的查询词表 q = t1, t2, , tm。个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究6显然,q 中的词必须是包含在倒排文件词表中才有意义。有了这样的 q,它的每一个元素都对应倒排文件中的一个倒排表(文
26、档编号的集合) ,它们的交集即为对应查询的结果文档集合,从而实现了查询和文档的匹配。2.3.2 文档摘要搜索引擎在生成摘要时,基本上可以归纳为有两种方式:静态和动态方式。静态方式,即独立于查询,按照某种规则,事先在预处理阶段从网页内容提取出一些文字,例如截取网页正文的开头 512 个字节,或者将每一个段落的第一个句子拼起来,等等。这样形成的摘要存放在查询子系统中,一旦相关文档被选中与查询项匹配,就读出返回给用户。动态方式,即在响应查询的时候,根据查询词在文档中的位置,提取出周围的文字来,在显示时将查询词标亮。这是目前大多数搜索引擎采用的方式。为了保证查询的效率,需要在预处理阶段分词的时候记住每
27、个关键词在文档中出现的位置。 2.3.3 结果排序得到和用户查询相关的文档集合之后,这个集合的元素需要以一定的形式通过计算机显示屏呈现给用户。结果排序就是指根据网页的得分值,对网页内容进行相关性排序。为了形成一个合适的顺序,在搜索引擎出现的早期人们采用了传统信息检索领域很成熟的基于词汇出现频度的方法。一篇文档中包含的查询中的那些词越多,则该文档就应该排在越前面;再精细一些的考虑则是若一个词在越多的文档中有出现,则该词用于区分文档相关性的作用就越小。由于网页编写的自发性、随意性较强,仅仅针对词的出现来决定文档的顺序,在 Web 上做信息检索表现出一定的缺点,需要有其他技术的补充。这方面最重要的成
28、果就是由 Google 提出的 PageRank。通过在预处理阶段为每篇网页形成一个独立于查询词(也就和网页内容无关)的重要性指标,将它和查询过程中形成的相关性指标结合形成一个最终的排序,是目前搜索引擎给出查询结个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究7果排序的主要方法。对应一个查询往往会有成千上万的结果,返回给用户的内容通常都是按页组织的,一般每页显示 10 个结果。统计表明 8 ,网络用户一般没有耐心一页页看下去,平均翻页数小于 2。因此结果排序直接影响到搜索引擎的查全率和查准率,采用什么页面排序算法显得至关重要。个性化搜索引擎及相关技术研究: 个性化搜索基础
29、平台相关页面排序算法研究8第三章 页面排序算法Web 上存在着各种各样的信息,而这些信息是以页面的格式显示给用户的。早期的搜索引擎按照关键词的相关性来对页面排序,而由于 Web 页面的复杂性,单纯用传统的信息检索方法,对用户检索结果的排序方面显得力不从心。链接分析的出现,使得通过页面间的链接关系量化网页信息变得可能。此外,还出现了关注用户点击或者竞价方式的排序方法。3.1 词频位置加权算法词频位置加权排序算法是一种从关键词出现次数和位置考虑进行排序的方法。3.1.1 原理该方法以一个关键词与网页的相关度大小作为排序标准,而关键词在网页中的相关度则由它在网页中出现的频次和位置两方面加权计算得出。
30、在这种方法中,词对网页的相关性与词在该网页中的权值成正比。词频加权的方法有绝对词频加权、相对词频加权、反词频加权、基于词分辨值加权等等。对于单一词搜索引擎,只用单纯地计算一个词在网页中的出现频率就可给定权值;而对于具有进行多重逻辑功能的搜索引擎,则必须用其它的加权方法。因为用多重逻辑检索式检索时,检索结果跟检索式中的每个检索词相关,而每个检索词在所有的网页中出现的总频率是不同的,如果按照总的权值来排序,就会造成结果的不相关。可以利用相对词频加权原理来解决:通过对大量网页的统计,把越是在所有网页中出现频率高的词赋予一个较低的初始值;相对地,在所有网页中出现频率低的词,给一个较高的权值 9 。位置
31、加权主要是通过对词在网页中不同位置和版式,给予不同的权值,从而根据权值来确定所搜索的结果和搜索词的相关程度。词的位置包括:网页标题、网页描述/关键字、正文标题、正文内容、文本链接、 ALT 标识等。版式包括:字体、字号、有无加粗强调等。和传统文献一样,一般在较重要的位置如标题、个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究9正文的结尾句等出现的词给较大的权值。在理想状态下,这些不同的标签对应的内容在表达网页主题的能力上有所差异。通常字符较大、加粗强调的地方,一般也会给予较大的权值。例如关键词 k 为“搜索引擎” ,它在 HTML 中以搜索引擎的形式出现,则其权值应为:(
32、3-1)()(0strongWtileWkkk其中 W0 为关键词 k 的初始权值, Wk(title) 为标签的权值,W k(strong)为标签 的权值。如果此关键词在网页中出现 n 次,每次出现的位置权值为Wk1,W k2,W kn,那么此关键词在整篇文档中的权值为:(3-2)niKiK1对于一个网页,应用以上公式对每个关键词进行权值计算是公平的,但相同的关键词会出现在不同网页中,网页长度越长,关键词得到的权值也就越高。另外,考虑到区分高频词和低频词对网页的影响程度,关键词 k 的权值为: (3-3)(/lg)(/lg(max TNpSWkk 其中,Smax 表示最大的网页可索引文本大小
33、,S(p)代表网页 p 的可索引文本大小,N 代表被索引的网页总量,T(k)是包含关键词 k 的网页数量。通过词频和位置的加权,可以得出词对网页的权值。用户检索该关键词,搜索引擎按照检索词在不同网页的相关度排序,这就是词频位置加权排序算法。3.1.2 评价利用词频和位置加权算法是在传统的情报检索理论和技术基础上发展而来的,具有简单、易实现的优点,是搜索引擎早期排序的主要思想,技术发展最成熟。对用户输入的检索词,如果在网页中出现的频率越高,出现的位置越重要,则认为,这网页与此检索词的相关性越好,越能满足用户的需求。词频统计比较适用于结构化文档数据,然而网络时代的主要文献是以网页个性化搜索引擎及相
34、关技术研究: 个性化搜索基础平台相关页面排序算法研究10的形式存在的。算法仅仅根据词频和位置信息排序,根本没有利用网络中超文本的新特性,可以说是前网络时代的技术。现在几乎每个人都可以随意地在网上发表各种内容,词频相同的两个网页,质量相差可以很远,很难保证文档的结构和文档的质量。为了能够排在某些检索结果的前几位,许多网页内容的制作者在其页面上堆砌关键词,特别是在重要的位置( 例如 )中放置许多流行的、用户检索比较多的、但和主题无关的关键字。当人们浏览网页时,完全看不到所需的信息,而在搜索引擎标引时,却能发现。尽管词频位置加权排序仍然存在着一些问题,但它至今仍是许多搜索引擎的核心排序技术。因为如果
35、单纯依靠链接分析,就算网页的质量再高,再权威,检索词和网页相关度不高,对于用户来说也是没用的。可以将链接分析与词频信息相结合,得出更好的排序效果。3.2 PageRank 算法搜索引擎 Google 最初是斯坦福大学的博士研究生 SergeyBrin 和LawrencePage 实现的一个原型系统,现在己经发展成为 WWW 上最好的搜索引擎之一。Google 的体系结构类似于传统的搜索引擎,它与传统的搜索引擎最大的不同处在于对网页进行了基于权威值的排序处理,通过独创的 PageRank 算法计算出每个网页的 PageRank 值,PageRank 值越高的网页,在结果中出现的位置越前。这样使最
36、重要的网页出现在结果的最前面。3.2.1 原理PageRank 的基本原理是基于“从许多优质的网页链接过来的网页,必定还是优质网页”的关系,来判断所有网页的重要性。如果 A 页面中存在一个超链接指向了 B,就认为 A 投了 B 一票。一个页面被投票的数目越多,入度值越大就表明一个页面越重要。最后根据网页的得票数评定其重要性,以此来帮助实现排序算法的优化,而这个重要性的量化指标就是 PageRank 值。本文将在第四章单独介绍 PageRank 算法,在此不作赘述。个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究113.2.2 评价由于网页本身相当随意,出版非常自由、成本很
37、低并缺乏控制,网页中常常被嵌入和主题毫无关系的链接(如:广告),由此简单的链接数量计算并不能客观真实地反映网页的重要性。PageRank 除了考虑网页得票数(即链接)的纯数量之外,还要考虑为其投票的网页的重要性,重要的网页所投之票有助于增强其他网页的“重要性” 。整个网络结构通过超链接联系起来,并相互制约、相互影响,使得对网页的重要性评价更为客观公正。算法中每个网页的 PR 值都是预先计算好的,和查询及网页内容完全无关。在查询时,只需要快速查找一下倒排索引确定一下匹配网页,随即应用PageRank 值进行排序。因为它单独计算新网页的 PR 值,因此不会对在线查询造成影响,响应快速。由于整个过程
38、基本上不考虑传统意义上的相关度问题,使得 PagoRank 算法仍然有着一些弱点。PageRank 算法中对于向外的链接是平均分配它的 PageRank 值的,即认为向外的链接是公平的,不考虑不同链接的重要性。但网页上的链接一般都有导航或广告作用,而有注释的链接才用来权威判断。由于商业网站的竞争因素,很少有网页会指向其同领域的权威网页。一个页面上的所有链接,它们与当前页面的主题相关性 10 是不同的,那些与当前页面相关度高的链接应该分配得到更高的 PageRank 值。PageRank 值是与用户的查询无关的,当用户提交一个关键词的时候,返回的结果按照所检索出的页面的 PageRank 值排序
39、,而可能有些包含此关键词的网页与用户的查询关系并不大,但它却有较高的 PageRank 值,因此排在了结果的前面。由于 PageRank 是单纯依据网络上的链接关系进行计算的,当用户搜索的目的是寻找关于某些关键字的站点资源或网站入口时,它是有效的。但当用户搜索的目的是寻找关于某些内容的有效信息本身时,超链分析的结果不仅没有参考价值,而且会破坏用户搜索结果的精确度。它返回给用户的结果可能出现大量 PageRank 值很高而与用户的查询主题不相关的页面,造成主题偏移 12 。PageRank 算法偏重.com 网站。综合性网站(.com)较容易获得更多的链接,从而得到较高的 PageRank 值。
40、但.com 网站对一些专业内容往往难于做深刻论个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究12述,在特定领域的权威性不如专业网站,尤其是大专院校或研究院所网站(其url 后缀一般不是 com)。新网页的 PageRank 值偏低。决定某网页 PageRank 值的主要因素是指向它的链接个数,而新网页获得的链接不多,其 PageRank 值自然就很低,在检索结果列表中往往会排在较后的位置,这与大多数用户的需求恰恰相反。因此,PageRank 值并不一定能反映出网页重要性。3.3 HITS 算法HITS 是由 Jon Kleinberg 博士于 1998 年首先提出的,
41、HITS 的英文全称为Hypertext-Induced Topic Search。目前,它为 IBM 公司阿尔马登研究中心的名为“CLEVER”的研究项目中的一部分 11 。3.3.1 原理Web 作为一个分布式的信息存储空间,特点是信息的发布和增长具有明显的随意性和分散性,不管是个人信息还是公共信息、不论是地域性的还是全球性的,不管是粗糙的还是精致的,都可以随意地在 Web 上进行发布进而扩散,因此,整个 Web 信息的主题分布是比较混杂的。但是近年来,许多学者通过研究发现,Web 其实具有良好的 “自组织性” ,它的主题分布是有一定规律的。Kleinberg 提出 Web 上存在大量的
42、Hub 页面,这种页面不但含有许多 Out-link 链接( 出链接),并且这些链接趋向于与同一个主题相关。也就是说,Hub 页面是指向相关主题页面的一个中心。另外,他还定义了权威页面(Authority)的概念,即其它许多页面都认为相关于这一主题有价值的好页面。好的 Hub 页面一般指向多个 Authority 的页面,并且所指向的 Authority 页面越权威,Hub 页面的质量也越好;反过来,Hub 页面的质量越好,它所指向的每个页面也趋向于越权威。HITS 将网页分为 Hubs(有许多链接指向其它页面)和 Authorities(被许多外部链接所指向)两类 (交集可不为空)。应该注意
43、的是,每个页面也有两个级别,即Hubs(中心级别) 和 Authorities(权威级别),Authorities 为具有较高价值的网页,个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究13依赖于指向它的页面,而 Hubs 为指向较多 Authority 的网页,依赖于它所指向的页面。HITS 算法的目标就是通过一定的计算(迭代计算)方法以得到针对某个检索提问的最具价值的网页,即排名最高的 Authority。网页的 authority 与 hub的公式如公式(3-4)和公式(3-5) 所示:(3-4)()(iqHpA(3-5)i其中 qi 是所有链接到 p 的页面,q
44、是所有页面 pi 所链接到的页面。A(p)值为所有指向 p 的页面 q 的中心权重 H(q)之和,同样,页面 p 的中心权重 H(p)值是所有 p 所指向的页面 q 的权威权重 A(q)之和。Kleinberg 认为搜索开始于用户的检索提问,每个页面的重要性也依赖于用户的检索提问,他将用户检索提问分为三种:特指主题检索提问、泛指主题检索提问及相似网页检索提问。现在假设给定一个泛指主题检索提问 q,需要通过链接分析确定该提问的权威页。首先确定 HITS 算法作用的 WWW 子集。理想地, Kleinberg 希望得到的集合 S。满足以下条件: (1)S 相对较小;(2)S 中相关网页丰富; (3
45、)S 包含多数最有价值的 Anthority 页面。具体做法如下:(a) 将查询 q 提交给传统的基于关键字匹配的搜索引擎来得到 q 的查询结果集,取排名最高的前 t(t 值通常设为 200)位结果集 R(称为 RootSet),Kleinberg认为 R 满足条件 (1)和(2),但远不能满足(3) ,因此需要扩充 R。(b) 扩充 R 分为两个方面:一是将所有 R 中页所指向的页面扩充进去,该扩充在数量上没有限制,二是将指向 R 中的每一页面的链接页面取其中任意 d个页面(d 值通常设定为 50,如果 d 不大于 50,则取其所有页面),扩充到原来的 R 中形成 S (称为 BaseSet
46、)。通过实验表明,这样的集合 S 能够较好地满足上述三个条件,S 的数量范围一般在 1000 至 5000。(c) 为了排除干扰,提高计算效果,Kleinberg 还将 S 作了进一步的处理,他将链接分为两种情况:一是指有链接关系的两个页面处在不同域名之间,这样的链接称为横向链接;还有一种情况是指有链接关系的两个页面处于同一域名之下,这样的链接称为内在链接。Kleinberg 认为内在链接只具有网站内部的导航功能,它几乎不能传递网页间的 anthority,因此需要将这种内在链接从 S个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究14中删去,形成 G。3.3.2 评价该
47、算法通过对网络中超链接的分析,利用页面的被引用次数及其链接数目来决定不同网页的权威性。Authority 表示一个权威网页被其它网页所引用的数量,即该权威网页的入度值。若某网页被引用的数量越大,则该网页的入度值越大,Authority 越大;Hub 表示一个 Web 页面指向其它网页的数量,即该 Web 页的出度值,它提供了指向权威页面的链接集合。若某网页的出度值越大,则该网页的 Hub 值越大。Hub 起到了隐含说明某话题权威页面的作用。Hub 页面本身可能并不突出,但它却提供了指向就某个公共话题而言最为突出的站点链接,如一门课程主页上推荐的参考文献站点。一般情况下,好的Hub 页是指向许多
48、具有较高 Authority 值的页面;反过来,好的 Authority 页是由许多具有较高的 Hub 值所指向的页面。这种 Authority 和 Hub 的相互作用可用于权威网页的挖掘和高质量 Web 结构和资源的自动发现。HITS 算法虽然查准率相对较高,但也存在一些缺点。根集的质量无法保证。根集的质量应该是很高的,否则扩展后的网页集中会增加很多无关的网页,降低查准率。HITS 算法中,扩展检索出的网页根集将花费很大的时间开销,因为它需要分析根集中每个网页包含的所有链接,并且对链接进行处理和消重。而每个页面都有一个 Authority 值和 Hub 值,计算量较大。扩展根集时,如果将少数
49、与查询主题无关的网页包含进来,而这些网页又是紧密链接的,那么就会引入大量的噪声信息,同样会造成主题偏移,用户搜索时就会得到与查询无关的页面。网页中一些无关的链接影响 Authority 和 Hub 值的计算。在制作网页的时候可以轻易的通过增加链接提高其网页的中心度,由于权威度和中心度的相互相依赖/ 增强关系,其网页的权威度也必然得到增强。同时,由于 HITS 生成的有向图是查询相关的,仅仅是整个 Web 图的很小的一个子集,这种作弊的效果就会显得非常突出。个性化搜索引擎及相关技术研究: 个性化搜索基础平台相关页面排序算法研究15文献 13 表明,由于 HITS 是与用户的查询相关的, HITS 的排名准确性要比 PageRank 高,但是需要在在线模型下对每个关键字做多次计算,影响算法的性能,从而导致该算法现今未能用于大规模的搜索引擎。3.4 其他链接分析算法3.4.1 Hub 平均算法AllanBorodin 指出了一种现象,设有 M+1 个 Hub 网页,M+1 个 Authority网页,前 M 个 Hub 指向第一个 Authority 网页,第 M+1 个 Hub 网页指向了所有 M+1 个 Authority 网页。显然根据 HITS 算法,第一个 Authority 网页