1、个性化 web 信息检索排序算法成家乐(湖北第二师范学院 计算机科学与技术)摘要: 本文主要分别论述了基于 Web 页面内容的排序算法、基于 Web 页面链接分析的排序算法和基于检索用户的排序算法第一章 引言随着社会的进步,科学的发展。互联网成为了社会生活的重要部分。这也使得 Web 上信息量讯速膨胀。随着 Web 上信息量的快速膨胀 , 互联网的信息检索平台 , 比如搜索引擎 ( Baidu, Goog le 等 ) , 在得到广泛应用的同时也面临着许多困难。首先对于同样的查询关键词 , 不同的用户可能会有完全不同的信息要求。只要用户输入的查询关键词是一样的 , 搜索引擎对所有的用户返回同样
2、的查询结果。其次用户的信息需求也会随着时间发生变化。现有的搜索引擎也没有处理用户需求的改变的情况。Web 信息检索排序技术是搜索引擎最为核心和关键的技术之一,也是当前搜索引擎亟待进一步研究和完善的问题之一由于现有搜索引擎排序算法的设计不尽合理,使得许多用户真正感兴趣的结果淹没在搜索引擎数量众多的查询结果之中,降低了搜索引擎的使用效率,浪费了用户的时间,进而影响了用户对搜索引擎的满意度自 20 世纪 90 年代中期以来,人们在传统信息检索排序技术的基础上,结合 Web 信息检索的自身特性,提出了许多Web 页面检索排序算法,主要分为 3 类:基于 Web 页面内容的排序算法、基于 Web 页面链
3、接分析的排序算法和基于检索用户的排序算法第二章 基于 Web 页面内容的排序算法传统的搜索引擎在进行网页的页面排序时候只考虑用户输入的关键词和页面的相关度这一个因素,搜索结果按照关键词和页面的相关度排列然后返回给用户。1.1 Web 页面内容的排序算法基于 Web 页面内容的排序算法,主要源自传统信息检索中常用的文本文档加权标引算法,其基本思想是通过计算 Web页面中与查询关键词相匹配的索引项,对 Web 页面主题内容的表征程度进行排序基于 Web 页面内容的排序算法非常丰富,其中以基于词频和位置的加权排序算法应用最为广泛,有些算法尽管可以获得更好的排序效果,但往往由于分析处理过于复杂而不能满
4、足海量 Web 信息检索快速响应的 需要在基于词频排序的算法中,一般会考虑 2 个因素来度量索引项对该文档主题内容的表征程度:词在文档中出现的频次越高,则这个词越重要,应给以更高的权重,即词频因子;包含该索引项的 Web 页面数越多,则这个索引项越不重要,即逆文档频率因子在此基础上,为了消除不同 Web 页面长度对索引项出现频次统计的影响,通常还会进一步引入规范化因子记词频因子、逆文档频率因子、规范化因子分别为 web_tf , web idf , norm , Web 页面集合为D=d l, d 2, , d n ,其索引项集合为 T=t l, t2, , tm , ti在 d j 中出现的
5、频次和权重分别为 tf ij 和 w ij, ti 在整个集合 D 中出现的频次为 f i, D 中包含 ti 的 Web 页面数量为 df i, d j 包含的不同索引项个数为 lj, d j 的文档长度为 charLength 应用权重分配模式,基于词频的加权排序函数可以表示为Score(q,d j)= = , jidqtiw)*_( jiij nodfebtf()表 1 Web 页面中索引项的权重分配模式词频因子 web_tf 逆文档频率因子 web_idf 规范化因子norm代码 取值 代码 取值 代码 取值b 1 或 0 n 1.0 n 1.0n tfij t log c idfN/
6、12mijwa 0.5+0.5 p log u )(maxkjitfif jlsopeivtslope*)(l 1+logtfij g b a1idf achrLngt1L h 1+mijijtf1logNjjijift1logl其中 web_tf ij, web_idf j 和 norm j 的常见取值参见表 1 。根据表1 ,可以组合出多种基于词频的加权算法,如 “ ntn ” 组合就是著名的 TF IDF 公式另外,基于词频的 BM25 加权算法在概率检索排序中也有良好的表现Web 页面的题目 (title) 、标题 (H1 一 H6) 、强调的文本(strong) 、首尾段落、段落的首
7、尾句以及人链锚文本等区域出现的索引项通常更能表征 Web 页面的主题内容,因此,在检索排序过程中,通常会在排序函数中引入位置信息或者适当调高词频因子 web_idf 的权重。 Google , Baidu 等搜索引擎在检索排序过程中都十分重视索引项在 Web 页面中所处的位置另外, Web 页面各索引项间的邻近距离的远近,在一定程度上揭示了这些索引项联合表达某一主题的准确程度,因而在多关键词检索排序过程中还会适度考虑词间邻近距离 基于词频和位置的排序算法简单易用,具有一定的合理性,经传统文本信息检索实践证明是较为客观准确的,为当前各大搜索引擎普遍采用但是基于词频的排序算法并没有考虑不同文档质量
8、上的差异,就海量的 Web 信息资源而言, Web页面质量参差不齐,同一内容经常被多个页面转贴复制,使得许多权威的、高质量的 Web 页面被淹没其中另外,由于自然语言的丰富性和写作上的需要,同义词、近义词在文档中被大量使用,基于词频的排序算法只是通过查询关键词在文档及文档集中出现的频次来表征文档主题 内容,而不是真正从语义上分析文档所要表达的主题内容,使得许多语义上高度相关的 Web 页面无法被检索出来,同时也极易为人利用来获取更高的检索排名 (如在 Web 页面中增加关键词的数量 )基于位置的加权方法也存在一定问题,当前这类方法大多建立在统计分析和经验的基础上,不同方法针对不同位置进行权重分
9、配差异较大且过于刚性,缺乏令人信服的分配方案1.2 基于页面内容的排序算法的优缺点 基于页面内容的排序算法自身有很多优点,在 Web 发展的前段时间,可以满足用户对信息检索的需求,并且是传统搜索引擎和 Web 挖掘的主要方法和技术。但是它也有一些缺点,从研究对象角度分析,向量空间模型中很多算法最初是用普通文本作为分析的对象,即只考虑网页中用户可见的文字部分,而忽略标记和超链接等内容。而实际 Web 上的网页质量参差不齐,大量的网页组织性、结构性比较差,缺乏统一的规范,而且网页包含的内容涉及到广泛的领域,大部分搜索用户经常只输入一个或两个检索词来检索所需要的网页,结果会返回大量的结果,很难准确的
10、达到用户的满意。 从排序依据角度分析,基于页面内容的排序算法考虑到了关键词的流行度,它认为页面出现的关键词多,那么相应的页面就更符合用户对搜索结果的要求,目前,它仍是各大搜索引擎排序的重要因素。然而实际上,网页作者可以通过对页面信息的人工操作,使其得到较高的基于关键词的权值。这种情况的避免是页面内容排序所不能解决的,为此我们必须用其他方法解决这个问题,这个就是 Web 超链接结构分析所研究和解决的问题。下一节我们将着重展开对 Web 链接结构排序算法的分析。第三章 基于 Web 页面链接排序3.1 Web 页面链接排序早期的搜索引擎对网页的文本检索,主要按照关键词的相关性进行网页排序并返回给用
11、户查询结果。随着 Web 的快速发展, Web 上的网页质量参差不齐,大量的网页 组织性、结构性比较差,缺乏统一的规范,给用户提供符合查询要求的高质量的相关性页面变得更加困难。因为一些 Web 页面的不是自描述 (self-descriptive) 的,加上一些页面纯粹是为了导航的目的,可以人工干预排序的结果,使得仅仅依靠页面的内容找到合适的页面变得愈加困难 。 链接分析的出现,使得通过网页间的链接关系量化网页信息变得可能。基于链接分析的页面排序算法是以一定的策略自动排序所搜索的页面,可以排除人为因素对搜索结果的影响。如果把基于链接分析的排序结果和基于内容的排序算法很好的结合,将能更好的避免用
12、户作弊带来的排序结果不理想的状态,并且能够返回给用户更加满意的结果。从这个意义上讲,对于基于关键字的搜索引擎技术来说,链接分析无疑是一项优秀的技术。而且,它使得搜索排序结果更为客观、公正,在总体上反映了互联网中各个网页的重要程度。一般情况下, Web 页面的链接反映的是 Web 页面之间形成的 “ 参考 ”、 “ 引用 ” 或 “ 推荐 ” 关系,如果某一 Web 页面被较多页面链接,则表示它相对被人关注,其内容应该是比较重要或比较有用的,基于 Web 页面链接分析的排序算法正是基于这一思想来度量 Web 页面的重要性 (质量 )进行排序,其中以 PageRank 和 HITS 算法最具代表性
13、 PageRank 算法以“ 随机冲浪 ” 模型为理论基础,而 HITS 算法使用 Authority和 Hub 页面相互加强模型,二者都利用了页面和超链接组成的有向图,根据连接关系进行递归运算来确定 Web 页面的重要性3.2.1 PageRank 算法分析PageRank 算法是 Google 搜索引擎的核心算法,由 Google的创始人 Larry Page 和 Sergey Brin 于 1998 年提出,PageRank 算法是最早且最成功地将链接分析技术应用到商业搜索引擎中的算法 PageRank 利用了互联网独特而巨大的链接结构。把整个互联网中的每个页面视为一个节点,页面间的链接
14、视为一条有向边,整个互联网就可以看做一个有向图,依据此图模型, PageRank 算法能够快速地计算出网页的级别PageRank 算法其基本思想是 :如果网页 T 存在一个指向网页 A 的链接 ,则表明 T 的所有者认为 A 比较重要 ,从而把 T 的一部分重要性得分赋予 A 。这个重要性得分的值则由 T 的 PageRank 值 PR ( T) 和 T 的出链数 C ( T) 决定 。具体公式为 : PR ( T)/ C( T) 。其 PageRank 值 PR (A ) 的计算如下 :PR(u)= (1)( |)(|uClinkvliOtPRPageRank 算法是基于随机网络冲浪模型提出
15、的。其特点在于它是个与查询无关的静态算法,所有网贸的 PageRank值均可以通过离线计算获得。这样有效地减少了在线查询时的运算量 ,极大地降低了查询响应时间。该算法在用户查询时仅仅根据关键字匹配获得网页集合,然后排序推荐给用户,由此具有很高的响应速度。 PageRank 仅仅依靠计算网页的外部链接数量来决定该网页的排名 ,而忽略了页面的主题相关性 , 从而影响了搜索结果的相关性和准确性 。另一方面 ,PageRank 算法对新网页有很严重的歧视性 ,新网页入链数量通常都很少 , 自然 PR 值很低 。3.2.2 HITS 算法分析Kleinberg 提出的 HITS 算法是一种与用户查询主题
16、相关排序算法,考虑了页面的权威性与中心性具体思想如下 :将查询 q 提交给传统的基于关键字匹配的搜索引擎 ,搜索引擎返回很多网页 ,从中取前 n 个网页作为根集 (Root Set) ,用 S 表示 。 S 满足如下 3 个条件 : S 中网页数量相对较小 ; S 中网页大多数是与查询 q 相关的网页 ; S 中网页包含较多的权威网页 。在算法中, Kleinberg 引入Authority 页面和 Hub 页面概念 Authority 页面是指具有较高价值的页面,即对于一个特定的查询能提供最好的相关信息的网页; Hub 页面是指向较多 Authority 页面的网页通过Authority 页
17、面与 Hub 页面的相互作用, HITS 算法更好地描述了 Web 的一个重要组织特点: Authority 页面之间通常是通过 Hub 页面而彼此发生联系的 HITS 算法的基本思想是:对于一个确定的查询,首先通过搜索引擎获取一个主题相关的结果集,从中挑选一定数量 (约 200 个 )的页面组成根集合 (root set) ,然后利用根集合页面的人链和出链对根集合进行扩充,这样就获得了一个包含 1, 个页面的基础集合 (base set)(1 000 5 000 张页面 )基础集合可以通过一个 ,X n 的邻接矩阵 A 加以表示,如果基础集合中任一页面 i 存在一个链接指向集合中的页面, ,
18、则 A ij =1 ,否则 A ij =0 为页面 i 分配2 个度量值: Authority 权重 a i 和 Hub 权重记为 h i,则a i= , h i= , ( 3 )1jiA1ji设向量 a=(a 1, a 2, , a n ) T, h=(h l, h 2, , h n ) T,公式 (3) 可以表示为a=A T h , h=Aa, (4)给向量 a 和 h 赋初始值为 a=h=(1 , l, , 1) ,采用公式 (4) 反复迭代,每次迭代后对向量 a 和 h 规范化,经过足够的迭代次数,口和 h 将分别收敛于矩阵 A T A 和 AA T 的主特征向量一旦 a 和 h 确定
19、,就可按照各页面 Authority 权重和 Hub权重的大小,分别取前若干个页面作为检索结果返回给用户HITS 算法首先用基于关键词的文本检索算法得到一个 Web 子集,该子集内的页面和用户查询关键词相关性较大;然后通过通过对该子集进行扩展构造链接结构图;最后用 HITS 算法对链接结构图进行链接分析找到子集内与查询相关的 Authority 和 Hub 页面。下面将对算法的具体步骤进行详细的说明 .HITS 算法主要包括两个过程:一、构造特定主题的 Web 链接结构子图;二、迭代式链接分析计算。3.3 两种经典算法的评价及相关改进研究 PageRank 算法 HITS 算法是 Web 挖掘
20、页面排序算法的代表,两种算法都是基于链接分析的算法,并且认为超链接表示了一种权威认可关系。 Web 页面链接结构分析的出现,使得对网页的重要性评价更为客观公正,它在总体上反映了互联网中各个能被搜索引擎收集到的页面的重要性,大大提高 Web 检索的准确性,克服了基于内容匹配方法的不足之处。当然PageRank 和 HITS 算法也都存在着缺陷, PageRank 是独立于查询的,它的计算量比较小但在内容匹配上会损失部分性能; HITS 虽然是查询相关的,但它的链接分析仅仅局限在几千个节点的 Web 子图内,从统计的角度来不能反映整个 Web 的链接状态,下面是对两个算法较为详细的评价。 3.3.
21、1 ageRank 算法评价及改进研究PageRank 算法的优点之一是独立于查询的,因为 PageRank 值是基于整个 Web 网计算出来的,这使得PageRank 算法有较好的通用性,然而这个事实也可能成为PageRank 算法的缺点,因为 Web 的复杂和多变性。下面为 Web 的链接的特征: 1. 有些链接具有注释性,而有些链接则纯粹起导航或广告作用。只有非注释性的链接才可用于权威判断。2. 基于商业或竞争因素考虑,很少有 Web 网页指向其竞争领域的权威网页。权威网页一般不会出现自描述的状况,如 Google 页面不会明确给出 Web 搜索引擎之类的描述信息。而 PageRank
22、算法不区分不同链接的重要性,页面向外平均分配权值是不符合链接情况的,这是 PageRank 算法的缺点之一。由于时间因素的存在, PageRank 算法会比较偏重旧网页,旧网页被别的页面指向的可能性大于新网页,而现实情况可能是新网页的参考价值更高,这也是 PageRank 算法的缺点之一。 另一个主要缺点是主题漂移现象的存在,主题漂移是指搜索的结果明显偏离搜索主题或者过于泛化。搜索的结果明显偏离搜索主题的出现是算法本身设计的问题,比如我们输入“ abortion ” 关键词,输出结果中可能出现很多指向“ adoption ” 的页面,从而出现明显的主题漂移现象。 HITS 的作者 Kleinb
23、erg 指出应该丢弃那些链接回到同一个站点的链接,这些链接是一种 “ 偏祖性链接 (Nepotistic links) ”,它们并不具有多少权威信息,因为算法本身的迭代性 ,这种偏袒性质会在算法执行过程中加速影响作用。泛化现象指搜索结果囊括了各方面的信息,会有指向不同主题的链接存在,同时会有较高的权威值,这样在搜索某个主题时候,搜索结果过 于泛化而并不是我们想要的结果,从而把某些我们真正想要的专业网站湮没。下面是一些相关的 PageRank 改进算法研究。3.3.2 HITS 算法评价及改进研究 因为 HITS 算法是基于关键词的,故算法能有力地检索到不包含关键词但与主题高度相关的网页,使主题
24、不受关键词语种的约束。此算法有以下缺点: 1. 页面根集 R 扩展为基集 B 时开销昂贵,它需要分析根集中每个网页包含的所有链接,并且要消除重复页面。每个页面都需要计算权威值和枢纽值,计算量较大; 2.R 扩展为 B 的过程中,如果将少数与查询主题无关的页面包含进来,将会引入大量的噪声数据,可能造成主题漂移(topic drift) 现象 56 ,从而用户搜索时候达到与查询主题无关的页面; 3. 不合理的页面互相加强关系。此算法假定不同的链接反映不同的作者的评价,即网页的权威值和枢纽值是由不同的个体决定的。而实际情况确是一个主机 H 1 的很多文档同时指向另外一个主机 H 2 的文档上,这样就
25、增加了 H 1 的枢纽值和 H 2 的权威值。 继 J. Kleinberg 提出 HITS 算法以后,很多研究者对 HITS 进行了改进,提出了许多 HITS 的变种算法,下面是一些改进的算法研究: 针对上述出现的第三个问题, Monika R. Henzinger 和Krishna Bharat 对 HITS 进行了改进,提出 imp 算法,重新定义了 I, O 操作,可以有效的避免页面之间 IBM Almaden 研究中心研究人员通过引入网页超链接的锚文本的不合理加强作用。信息来有效的实现对链接的一致性对待,提出了ARC(Automatic Resource Compilation) 算
26、法,有效的避免了主题漂移现象的发生,并成功的应用于 Clever 搜索引擎上。作者 J.Gevrey 和 S.Ruger 于 2002 年提出来两个基于超链接和内容的网页排序算法 Average 算法和 Sim 算法 58 ,区别于HITS 算法仅仅度量页面链接关系实现排序,上述两个算法重新考虑页面与查询主题的相似度,并重新定义了页面的权威值,从而实现了能够返回与用户需求更吻合的页面。考虑到用户浏览网页时候后退的情况,结合 PageRank 算法的随机漫游和 HITS 算法的权威值和枢纽值思想, R.Lempel 和 S. Moran 提出了 SALSA(StochasticApproach
27、for link-Structure Analysis) 算法,充分结合两者的优点,在精确性和健壮性方面有较好的表现。 第四章 改进的 Web 页面排序算法由 3.2.3 可以看出,很多研究人员都致力于 PageRank 算法的研究和改进,前提是在不改变其原有的数学模型的基础上。由改进 PageRank 函数公式 (3-17) , (3-18) , (3-19) 并经过对比分析可以得出一个 PageRank 函数框架公式如式 (4-1) 所示: PR (v ) = (1d ) f 1 (u ,v ) +d PR (u ) f 2 (u ,v ),v V (4-1)vBuB u 为指向页面 u
28、的页面集合, PR (u ) 为页面 u 的排序值, f 1 (u, v) 为页面 u 跳转到其他页面时的概率值, f 2 (u, v) 为在页面 u 继续浏览页面 v 的概率值。可以看出上面的公式都是此公式的具体定义,这样我们就可以根据实际情况定义符合不同情况的 PageRank 公式,并按传统的 PageRank 算法执行相应的定制型的页面排序,这就为本章的改进 Web 页面排序算法提供了突破口4.1 Improved PageRank 算法 由 3.2.3 节讨论了 PageRank 算法的缺点,其中的主题漂移现象的发生是因为算法本身的设计引起的,页面对外链接的贡献是平均的,本质上说就是
29、页面间的转移概率定义为页面出度的倒数,这样导致了页面的出度边上赋予了相同的权值。而这个一般与现实情况不符合,链接边指向的页面间应该有区别的,并且每个页面被直接赋予的权值也应是不同的,而一个页面的权威性与它的入度有正相关性的关系。受小规模数据集上实验结果的启发,同时借鉴 HITS 算法枢纽网页的思想,定义了新的页面间的转移概率。为叙述方便,我们在第一小节给出该问题的具体描述,第二节介绍算法的具体细节,第三节讨论了实验的设计和结果分析。 4.1.1 问题描述 通过 PageRank 算法可以获得好的排序结果,能够更好的为冲浪者提供好的页面参考,但 PageRank 算法有主题漂移现象出现,而主题漂
30、移现象的主要原因是页面间链接按照出度均分赋值引起的,而其归根到底是页面间的转移概率定义引起的,我们以此为突破口并遵循式 (4-1) 所示的 PageRank 函数框架重新定义页面间转移概率。 由科学文献引用分析和 PageRank 算法的思想知道页面权威值和页面的入度有关系,并且是成正相关性的关系,故我们认为入度是影响页面权威的一个因素。同时,我们以 http:/ 为根节点爬出规模为 3000 的数据集,此数据集对应的链接矩阵的点阵图如图 4.1 所示。从图中可看出爬出的页面集合呈现明显的块状结构 5 ,同时对角线区域点集合相对较密集。从左上角到右下角的块状结构依次对应域名为 、 、 、
31、 的页面集合,而由于块状结构间内部的强链接性质,故图形中的对角线呈现一条较规整的密集点集。在此数据集上运行 PageRank 算法,从文档集中选择了几个有代表性的网页作为参照,并分析它们在阻尼系数不同情况下的 PageRank 值。这里我们选取的四个网页的 URL 分别为: http:/ , http:/ , http:/ , http:/ ,表 4.1 给出了选取网页在不同阻尼系数下的运行 PageRank 算法所得到的 PageRank 值(详细的内容见附录一) 。从表 4.1 可以看出,新浪、搜狐等页面的排序值相对低,而百度、腾讯页面的排序值相对 高,同时可以发现新浪、搜狐页面的出度很
32、大,我们希望能把出度作为度量页面权威值的一个因素。受 HITS 算法的枢纽页面定义的启发,我们知道页面的枢纽值和其链出页面数有关,且符合式 (3-15) 的定义。因此我们认为单靠页面入度度量页面的权威并不合理,我们将综合考虑页面的出度和入度。 结合上述两个因素,我们把页面入度和出度均作为度量页面权威的因素,式 (4-2) 为我们定义的页面间的转移概率P uv : P uv = ,uRtttvOI)(Evuif),(4-2)oherwispuv,0其中 P uv 为页面 u 到 v 的转移概率, I v 为页面 v 的入度, R u 为所有与页面 u 直接邻接的页面集 ,E 为 Web 图中边的
33、集合,由式 (4-2) 可以推导出 Improved PageRank 算 法的排序函数如式 (4-3) 所示。 这样从直观上看,页面不是均分赋值于其直接链接边,而是既考虑链接边的入度这个因素,也考虑了页面出度的影响,这样应该可以规避主题漂移现象的发生。在和表 4.1 相同的实验条件下,我们运行 Improved PageRank 算法,表 4.2 为选取网页在不同阻尼系数下的 PageRank 值(详细的内容见附录二) 。对比表 4.1 和表 4.2 结果,明显看出 Improved PageRank 算法的运行结果优于经典 PageRank 算法的结果,在相同条件下,不但 PageRank
34、 值有明显的提高,而且像新浪、搜狐等页面权威值也得到了明显的提高。算法的性能在 4.1.3 节大规模数据集上会做进一步实验和分析。表 4.1 经典 PageRank 算法下不同阻尼系数的 PageRank 值url In-links Out-links Pagerank( =1.0e-9,d=?)0.95 0.85 0.75 0.65 0.55http:/ 141 4 0.01090.00960.00810.00680.0055http:/389 0 0.00830.00730.00620.00520.0043http:/ 429 1014 0.00420.00420.00400.00370.
35、0033http:/ 217 867 0.00370.00370.00350.0032表 4.2 Improved PageRank 算法下不同阻尼系数的 PageRank 值url In-links Out-links Improved Pagerank( =1.0e-9,d=?)0.95 0.85 0.75 0.65 0.55http:/ 141 4 0.01360.01230.01090.00940.0080http:/389 0 0.00980.00860.00740.00620.0051http:/ 429 1014 0.01480.01490.01410.01300.0115htt
36、p:/ 217 867 0.01700.01620.01470.01300.01134.1.2 算法介绍 如果转移概率按照上节定义,那么 Improved PageRank 算法的排序函数定义 为:, (4-3)vuBuRtttvOIPdvPR)()1() Vv下面是算法的矩阵转化过程,设 表示 Web 图的连接关系矩阵,NijgG*)(为 Improved PageRank 算法的转移概率矩阵,其中 和 分别由式(4-4)和NijnqQ*)( ijgijq式(4-5)定义给出:(4-4)Ejiifotherwiseijg),(,1,0(4-5) EjifOIotherwisijjRkkkii
37、q),(,)(,0由于实际 Web 图的复杂性,上述矩阵 可能不满足随机nQ矩阵的条件,我们需要把 转化为矩阵 ,为保证 为一个nQ 有效的随机矩阵, 中不能有全零行,且必须满足条件e=e ,必须经过一定的转化步骤,经过转化后我们就可以Q完成无出度节点的处理,详细无出度节点处理过程如式 (4-6)所示:1*Nv( 4-7 )TEEdQn)(令 ,Improved PageRank 算法既是求转移矩阵 A 的主TA)(特征向量(所求的 PageRank 向量) , Improved PageRank 算法算 A 的主特征向量是按照式( 4-8 )迭代计算直到收敛,Improved PageRan
38、k 算法:, ( 4-8 ))()1(kkx 1*)0(NvIm proved _ PageRank (G ,x (0) ,v ) Construct from G :nQjRkkiiijOIq)(repeat ;)()1(kTkxdMx;)1()(u;vuxkk)1()1(;)()(kuntil ; return x (k +1) ; 4.1.3 实验设计及结果讨论 我们首先讨论主题漂移现象,数据集用多伦多大学的Panayiotis Tsaparas 提供的文档集 19 ,我们取其中关键 abortion 的 Web 文档集(此数据集只用来做主题漂移现象验证实验)作为实验对象,其中含有 22
39、93 个页面,运行结果如表 4.3 、 4.4 所示。由表 4.3 可知,返回的结果中出现明显的主题漂移现象,排序值为 4 、 5 、 7 的页面和主题 abortion 没有关系,都明显偏移到主题 adoption 相关的页面上去了,而别的页面都是和 abortion 主题相关的;而从表 4.4 的结果可知只有排序值为 4 的 页面和主题 abortion 没有关系,其余都是和主题 abortion 相关页面,可见 Improved PageRank 相比经典 PageRank ,能够有效的避免主题漂移现象的发生,且提供较好的搜索结果。表 4.3 PageRank 算法返回的前 10 个关于
40、 Abortion 权威值最高的页面Order Url pagerank1 http:/www.prochoice.org 0.015806300467832 http:/ 0.009600747678383 http:/ 0.007385349109854 http:/ 0.007147678338545 http:/www.adoptachild.org 0.006790190747856 http:/www.wcla.org 0.00630047678338547 http:/ 0.005901907478458 http:/www.wcla.org/linkspage.html 0.0
41、05492815154659 http:/wcla.org/99-spring/internet.htm 0.00521991.6402810 http:/ 0.00493491095486为便于进一步比较 Improved PageRank 算法和 Classical PageRank 算法,我们用斯坦福大学的链接结构信息为数据集,该数据集有 281903 个网页,约 230 万链接。评价标准借鉴目前普遍使用的标准 P n (Mean Precision at n) 方法,在此我们仅考虑链接结构信息,而不考虑文档的内容信息,即不考虑相关性度量。式 (4-9) 给出了 P n 的定义:(4-9
42、)(,101iifPRotherwsiniinP,其中, PR (i ) 为页面 i 的 PageRank 值, 为一个给定的值。因为搜索引擎在排序返回的结果中,冲浪者一般只浏览第一页的内容,一个页面一般为 10 个结果;如果在第一页找不到需要的信息,冲浪者至多查找 5 页,故我们在本实验中用 P 10 和 P 50 来做为评估两个排序算法的标准。首先考虑确定算法终止条件即阀值的取定,我们确定 =1.0e 9 ,下面是具体的讨论过程。我们在迭代前设置一个阈值,当第 i 次和第 i+1 次计算的 PageRank 值之差小于这个阈值时值之差小于这个阈值时,则迭代停止。当我们设置的阈值不同时, P
43、ageRank 进行迭代计算的次数也不同,从而得出的同一网页的 PageRank 值也不相同,PageRank 算法在不同阀值下的迭代次数如表 4.5 所示。同时,从文档集中选择了几个有代表性的网页作为参照,来分析它们在不同阀值下的 PageRank 值,这里我们选取的四 个网页的 URL 分别为:http:/www.harvard.edu,http:/www.gse.harvard.edu ,http:/www.hms.harvard.edu , http:/www.med.harvard.edu ,分别用 1-4 代替,表 4.6 给出了选取页面在运行 PageRank 算法时不同阀值下的
44、 PageRank 值。 从表 4.5 和表 4.6 可以看出,当阈值取到 1.0e-9 时,迭代的结果已经和阈值 1.0e-8 时相差很小,并且迭代次数也基本稳定,因此我们在下面的实验中将阈值取为 1.0e-9 。第四章 改进的 Web 页面排序算法阈值 1.0e-4 1.0e-5 1.0e-6 1.0e-7 1.0e-8 1.0e-9 1.0e-10 1.0e-11迭代次数12 26 40 54 68 83 97 111表 4.6 PageRank 算法在不同阀值下的 PageRank 值 1 2 3 41.0e-4 0.00001970699627 0.00000649046820 0.
45、00000355577632 0.000004446080961.0e-5 0.00001970699555 0.00000649046756 0.00000355577572 0.000004446080821.0e6 0.00001970699475 0.00000649046749 0.00000355577547 0.000004446080751.0e-7 0.00001970699462 0.00000649046730 0.00000355577512 0.000004446080591.0e-8 0.00001970699434 0.00000649046720 0.00000
46、355577462 0.000004446080431.30e-9 0.00001970699414 0.00000649046652 0.00000355577442 0.000004446080281.0e-10 0.00001970699413 0.00000649046650 0.00000355577442 0.00000444608026取定终止阀值 = 1.0e9 后,我们在此数据集上运行 Classical PageRank 算法和 Improved PageRank 算法,当 取不同值时,可得到不同的 P 10 和 P 50 的比 较曲线,我们可取两组典型的比较曲线来比较两个算法。图 4.2-4.3 给出了 =0.0000125 时候的 P 10 和 P 50 的比较曲线,图 4.4-4.5 给出了 =0.0000095 时的 P 10 和 P 50 的比较曲线。可以看出 Improved PageRank 算法几乎一致的超过了 Classical PageRank 算法。即在相同条件下,两个算法返回的前 n 个结果中, Improved PageRank 算法返回的结果中 相关性 页面要明显多于对应的 Classical PageRank 算法结果,这就表明了 Improved Page