芭奇软件站群技术交流反馈

 找回密码
 注册账号
搜索
查看: 2680|回复: 1

搜索引擎算法浅谈

[复制链接]
bakii 发表于 lasttime | 显示全部楼层 |阅读模式
??(中国电子商务研究中心讯)摘要:系统地分析了现有的页面排序算法,指出了它们各自的优势和存在的不足,并指出不同算法在不同领域和场合所具有的优势。建立专业搜索引擎是提高搜索准确性和性能的有效途径。通过网格技术将各种专业搜索引擎集成在一起,形成一个基于网格的搜索引擎,从而更好地满足不同背景不同偏好的用户需求。
  关键词:搜索引擎;页面排序;链接分析
  中图分类号:tp393.09文献标志码:a
  文章编号:1001-3695(2007)06-0004-04
  随着internet的飞速发展,其提供的文档(网页)也以惊人的速度在增长。有关的调查统计表明,internet上的网页每不到一年的时间就会增长一倍。要从这么大量的信息库中提取出有用的信息就越来越依赖于搜索引擎的功能。而网页的排序则是搜索引擎要解决的关键问题之一。
  sergeybrin等人[1]提出pagerank算法开启了链接分析研究的热潮。基于链接分析的算法,提供了一种衡量网页质量的客观方法;独立于语言,独立于内容;无需人工干预就能自动发现web上的重要资源,挖掘出web上的重要社区,自动实现文档分类。pagerank在google中的应用获得了巨大的商业成功。在最初的google中,首先使用ir(informationretrieve)算法找到所有与查询关键字相匹配的网页;然后根据页面因素(标题、关键字密度等)进行排名;最后通过pagerank得分调整网站排名结果。
  近几年来,基于链接分析的页面排序算法一直是一个热点问题,学者提出了许多页面排序算法。
  1pagerank及其相关算法
  基于链接分析的排序算法中,最为著名的就是pagerank。所谓链接分析主要基于如下两个重要假设:
  ①超文本链接包含了用户对一个网站的判断信息;
  ②对一个网站而言,如果其他网站链接到该网站的入链数越多,该网站越重要。
  以上假设在各种基于链接分析的算法中均以某种方式体现出来。
  网站关键字密度查询1.1pagerank算法
  pagerank算法是最早提出的链接分析算法之一,并被google用于计算网页的重要性得分。其基本思想是:如果网页t存在一个指向网页a的链接,则表明t的所有者认为a比较重要,从而把t的一部分重要性得分赋予a。这个重要性得分的值则由t的pagerank值pr(t)和t的出链(从t链出的链接)数c(t)决定。具体公式为:pr(t)/c(t)。而对于页面a,其pagerank值pr(a)的计算如下:
  pr(a)=pr(t1)/c(t1)+…+pr(tn)/c(tn)(1)
  其中,t1,t2,…,tn为含有指向a链接的页面。
  为了避免linksink(许多网页没有入链或出链)问题,对式(1)引入一个阻尼系数d,使其变为
  pr(a)=(1-d)+d[pr(t1)/c(t1)+…+pr(tn)/c(tn)](2)
  如此经过多次迭代,系统的pr值达到收敛。
  pr的计算公式可以从概率的角度解释为一个随机网络冲浪者随机选择一个网页后,不断地点击网页上的链接,但是从不返回;除非最后厌烦了才随机选择另一个页面。随机冲浪者访问某个页面的随机概率就是该页面的pagerank值;阻尼系数d就是随机冲浪者在某个页面会厌烦然后选择一个新页面的概率。页面的pagerank值越高,则随机冲浪者发现它的概率亦越高。这种思路非常富有创意。一个网页的外部链接越多,则对网络冲浪者来说,发现它的机会也就越大。
  文献[2]结合近年来web出现的一些新特性对pagerank提出了一些改进措施。文献[3]中对pagerank算法中的阻尼系数d进行了深入讨论,从理论上分析了d的取值不同对于pagerank算法效果的影响。文献[4]提出了一种方法用于对pagerank中的迭代计算进行加速。
  pagerank的一个优势在于它是一个与查询无关的静态算法,因此所有网页的pagerank值均可以通过离线计算获得。这样有效地减少了在线查询时的运算量,极大地降低了查询响应时间。
  然而internet上的内容涵盖了众多主题,在现实应用中,人们的查询所希望得到的信息往往是具有某一方面主题特征的,而pagerank仅仅依靠计算网页的外部链接数量来决定该网页的排名,而忽略了页面的主题相关性,从而影响了搜索结果的相关性和准确性。
  另一方面,pagerank算法对新网页有很严重的歧视性,因为一个新网页入链数量通常都很少,自然pr值很低。1.2topicsensitivepagerank
  由于internet上的内容千差万别,涵盖众多不同的领域和主题。同样一个查询如“汽车”,可能用户1是想买一台汽车,他感兴趣的是汽车品牌、价格;而用户2是想参加与汽车相关的运动,他感兴趣的是与汽车相关的运动项目和赛事。因此要想给用户返回更为准确的查询信息就有必要基于不同的主题来对页面排序。最初的pagerank算法中是没有考虑主题相关因素的。主题敏感pagerank算法(topicsensitivepagerank,tspr)[5]正是在这种背景下提出来的。
  tspr核心思想就是通过离线计算,计算出一个pagerank向量集合(在pagerank算法中,仅计算一个pagerank向量),该集合中的每一个向量与某一主题相关,即计算某个页面关于不同主题的得分。例如某个网页在教育这个主题的得分为a,在体育这个主题的得分为b,……。
  具体来说,tspr也可分为两个主要阶段:
  (1)主题相关的pagerank向量集合的计算。先将所有页面的内容划分为16个主题,根据crawler搜集来的网页,计算该网页在不同主题的得分情况,即不同的pagerank向量。
  (2)在线查询,主题的确定。
  根据用户的查询请求和相关context判断用户查询相关的主题(即用户的兴趣取向),从而提高返回结果的准确性无疑是一种有效的方法。
  遗憾的是tspr并没有利用主题的相关性来提高链接得分的准确性。事实上对于网页类别的划分可以更有效地计算链接的价值和权威性。例如评阅论文时,经常需要填写对相关领域的熟悉程度。也就是说,评阅者对论文所属的领域越熟悉,则评阅者所给出的评分越可信,从而在最后的计算中拥有更高的权重。
  对于网页之间的链接分析与上述论文评阅的例子类似。可以把网页a指向网页b的链接视为a对b的评分;若a与b的内容是相近的,则a的评分更为可信。例如一个教育相关的网站a指向另一个教育相关的网站b,较一个娱乐相关的网站c指向教育相关的网站b更为权威、可信。
  因此,可以将上述思想应用到pagerank的pr值计算中。这将在今后的研究工作中作进一步的考虑。
  1.3hilltop
  hilltop[6]算法的指导思想与pagerank是一致的,即通过链接的数量和质量来确定搜索结果的排序权重。与pagerank不同的是,在hilltop中仅考虑那些专家页面(exportsources),即专门用于引导人们浏览资源的页面。hilltop在收到一个查询请求时,首先根据查询的主题计算出一列相关性最强的专家页面,然后根据指向目标页面的非从属专家页面的数量和相关性来对目标页面进行排序。目标页面的排序得分反映了与查询主题相关的最好的独立专家页面的集体意见。若在此过程中,hilltop无法得到一个足够大的专家页面集合,则返回空值。(编选:中国搜索研究中心)
字体下载 发表于 lasttime | 显示全部楼层
qq彩字百度关键词分析

芭奇软件

GMT+8, 2024-5-18 12:54

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表