摘要:为了运用户快速地从网页中找到所需求的内容,在设计查找引擎时,需求更好地进步查找引擎功率和精度,该文阐述了六种进步查找引擎功率和精度的技能。
关键词:查找引擎;聚类;相关度
中图分类号:TP393文献标识码:A文章编号:1009-3044(2008)27-1929-02
TheKeyTechnologytoImprovetheEfficiencyandPrecisionofSearchEngine
XIEJian-guo
(ComputerDepartment,MinxiVocationalTechnicalCollege,Longyan364021,China)
Abstract:Inordertomakeuserstoquicklyfindthecontentswhattheywantedinwebpage,whendesignsearchengine,needtoimprovetheefficiencyandprecisionofsearchengine,thispaperexpatiates6technologieswhichcanimprovetheefficiencyandprecisionofsearchengine.
Keywords:searchengine;clustering;degreeofassociation
互联网自诞生以来不断成长,其内容不断丰富,整个网络逐渐堆积成一个前所未有的超大型信息库。Internet作为一个信息平台在人们的日常生活和作业中发挥着越来越重要的效果,人们越来越多地经过Internet获取信息。然而随同互联网的飞速开展,普通网络用户想找到所需的材料简直好像大海捞针,以至于迷失在信息的海洋中手足无措。查找引擎的呈现正好缓解了人们面临互联网信息爆炸带来的压力,可是虽然如此,查找引擎查找得到的成果中仍然包括了与用户查询恳求不相关的文档,用户有必要逐一地阅读以找到相关文档,花费了许多的精力。当返回的成果数目很多时,这个问题更为杰出。因而怎么更好地进步查找引擎功率和精度,成为查找引擎重点需求处理的问题。目前进步查找引擎功率和精度的办法首要有如下六个关键技能。
1依据超链的相关度排序
排序查找引擎的检索成果往往过于巨大,用户一般只会阅读前面的一部分成果。经过对检索成果进行相关度排序,查找引擎试图使相关的文档尽可能地呈现在成果的前面部分,以改善检索成果的输出。虽然各个查找引擎中相关度排序的具体完成各不相同,可是根本上都采用了依据Web文档内容的办法,即考虑用户所查询的词条在文档中的呈现状况,包括:词条频率、逆文档频率、词条方位等因素。这种办法有很大的局限性。一方面,相关度高的页面不一定是用户遍及欢迎的页面;另一方面,有些Web页面的作者运用上述因素来欺骗查找引擎(spamming),以进步其页面的排序。
事实上,Web中还蕴含了丰富的结构信息。页面之间的超链反映了页面间的引证联系,一个页面被其它站点引证的次数根本上反映了该页面的受欢迎程度(重要性)。超链中的符号文本(anchor)对链宿页面也起到了归纳效果,这种归纳在一定程度上比链宿页面作者所作的归纳(页面的标题、关键字、摘要)要更为客观、准确。因而,近年来呈现了一些依据超链的相关度排序办法,作为依据内容办法的补偿,例如,Stanford大学研讨的PageRank算法等。这类办法经过为Web页面结构引证图,并综合考虑页面的被引证次数以及链源页面的重要性来判断链宿页面的重要性。一些查找引擎现已开端运用依据超链的相关度排序办法。例如,以PageRank为核心技能的查找引擎Google可以查询与用户恳求相关的“权威”页面[1]。此外,Google经过剖析超链中包括的文本,可以对链宿页面进行非全文索引,而不需求下载和剖析实践的页面。目前,Google现已开展成为一个首要的查找引擎,实践下载并索引了近100000000的Web页面。可是经过超链剖析,其覆盖度达到了300000000,超过了其它任何查找引擎。
2检索成果的联机聚类
虽然查找引擎采用了各种办法来进步检索成果的精度,可是成果中仍然包括了与用户查询恳求不相关的文档,其比例高达75%以上。此外,查找引擎返回给用户的通常是一个线性的文档列表,虽然经过了相关度排序,可是相关文档和不相关文档仍然混杂于其中。用户有必要逐一地阅读以找到相关文档,花费了许多的精力。当返回的成果数目很多时,这个问题更为杰出。
为了方便用户的阅读,一些研讨人员开端将聚类技能用于Web信息检索成果的可视化输出。聚类是指将文档调集分成若干个簇,要求同一簇内文档内容的类似度尽可能地大,而不同簇间的类似度尽可能地小。Hearst等人的研讨现已证明了“聚类假定”,即与用户查询相关的文档通常集聚类得比较靠近,而远离与用户查询不相关的文档。因而,咱们可以运用聚类技能将查找引擎的检索成果调集S划分为若干个簇(S1,…,Si,…,Sm),并以簇Si的质心averaged∈Si(d)作为簇Si的描绘。这样,用户只需求考虑那些相关的簇,大大缩小了所需求阅读的成果数量。当一次聚类生成的簇Si中仍然包括许多文档时,可以对该簇中的文档再次聚类得到若干个子簇(Si,1,…,Si,
宁波网站优化j,…,Si,n),直到用户满意停止[2]。。Etzioni等人的试验成果表明,运用一些改善算法来对检索成果进行联机聚类不可是可行的,并且十分有用。
3依据概念的检索
大多数查找引擎提供的检索服务是一种关键字检索(KeywordSearch),即检索出那些显式地包括用户指定词条的文档。由于自然语言中广泛存在同义和多义现象,关键字检索显然是不够的。一些查找引擎,例如Magellan,开端在关键字检索的基础上引进依据概念的检索(ConceptSearch)。该办法运用了词条在概念上的相关性,因而可以检索出那些并不显式地包括用户指定的词条,可是却包括其同义词或许下位词的文档。例如,用户向Magellan查询“robot”时,Magellan除了返回包括“robot”的成果,还会找到提及“crawler”,“spider”,“wander”等词条的成果。这样,既方便了用户恳求的输入,也进步了信息检索的召回率。
查找引擎在完成依据概念的检索时,一般经过对用户的查询进行概念/词条扩展,然后转化为关键字检索。概念/词条联系的取得可以有以下两种办法。
1)手艺树立词典来存储概念层次及词条之间的穿插联系,该作业通常由领域专家来完成。
2)运用语法剖析、核算等技能从文档调集中主动学习。
4相关度反应
在许多状况下,用户难以提出查询,其初始的查询恳求q通常是不精确、不彻底的。与依据概念的检索类似,相关度反应技能也可以协助用户构成查询恳求。可是,依据概念检索的目的是经过扩展查询恳求来进步体系的召回率,而相关度反应技能则是经过对查询恳求不断地进行批改以进步体系的精确度。。
具有相关度反应功用的体系中,体系依照下述进程对用户的查询恳求进行逐步求精。
1)索引器给出查询q的检索成果调集S。
2)用户对S中文档的相关度进行点评,并反应给体系。一切被用户符号为“相关”的成果组成了正反应调集S+,符号为“不相关”的成果组成了负反应调集S-。
3)体系依据用户的反应对查询q进行批改。例如,在矢量空间索引模型中,可以将正反应调集中的文档矢量加到查询矢量上,一起减去负反应调集中的最不相关的若干文档矢量,即V(q)←V(q)+∑d∈S+V(d)-∑d∈argmax(S-)V(d)。
4)重复过程1),2),3),直到用户得到满意的成果停止[3]。
一些研讨和试验成果表明,运用相关度反应可以较好地改善检索效果。可是,目前很少有查找引擎支撑该功用。其原因可能是因为相关度反应需求用户的参加,而普通用户在运用查找引擎时不太愿意花时刻运用这些附加功用。
5分词技能
网上的中文信息具有分词复杂、多内码转换等特色。因而,中文智能查找有其独有的特色。
对中文信息的拜访,不可避免的会遇到分词,这也是中文查找引擎要处理的首要问题。现有的汉语分词算法有许多,如依据词库的最大匹配法、逆向最大匹配法、最佳匹配法、高频优先分词法;依据语法和规矩的分词法;依据频度和核算的分词法;依据神经网络的分词法和专家体系分词法等[4]。这些算法适用于不同要求的场合但又存在各自的缺陷,在具体应用时一般运用几种算法相结合的办法来补偿单纯运用一种分词法所带来的缺乏。分词技能中的依据词库的算法日前运用较广,也较为成熟。这类算法分词的正确性很大程度上取决于所建的词库。一个词库应具有齐备性和彻底性两方面。词库的齐备性,简略来说就是对恣意一个字串,总能按词库找到对它进行切分的办法。词库的彻底性,意味着词库应包括一切的词。通常先结构一个最小齐备词库,然后在此基础上进行扩展,树立一个彻底词库。
6数据库中增量式信息更新办法
增量式信息更新办法的根本思路是:在WWW中包括许多的文档资源,这些资源的改变周期是不一致的:有的改变无常,有的十分安稳。因而应该以文档的改变周期作为进行有用性验证的依据,在每一次索引信息库的更新进程中,只对那些最可能发生改变的(部分)文档进行验证。
一个文档的改变周期就是它相邻的两次改变之间的时刻距离。
值得注意的是,一个文档的改变周期可能是不固定的。在某个时期内,它可能改变得比较频繁,而在另一个时期内,它则可能比较安稳。一般地说,无法准确地核算一个文档改变周期,只能依据文档在一个时期内的改变状况来预算它的改变周期。下面给出一个启发式规矩,作为预算文档改变周期的一个依据。
假如在一个时刻距离内一个文档的内容没有发生改变,那么可以以为它处在一个安稳期,在下一个相同的时刻距离内它也很可能不会发生改变。反之,假如在一个时刻距离内一个文档的内容发生了改变,那么在这个时刻距离内它就很可能发生了屡次改变。
从有用的视点动身,通常以索引信息体系的信息更新周期作为衡量文档改变周期的时刻单位,也就是说,一个文档改变周期的取值只能是体系信息更新周期的倍数。给出如下的增量式信息更新算法:
/*假定当时正在进行的是第k(k≥1)次信息更新进程。*/
Begin
While(索引信息库中还有文档信息的有用性没有验证时){任取一个未验证的文档作为当时文档;
If(当时文档的改变周期f是k的因子)Then
{验证当时文档的有用性;
If(当时文档已不能被拜访)Then
从索引信息库中删去对应的记载
If(当时文档现已发生了改变)Then
{把当时文档URL加入到方针列表;
把当时文档的改变周期修改为Max(1,f/2);
}
Else
把当时文档的改变周期修改为2f;
}
以方针列表中的URL作为阅读起点,启动机器人开端新一轮信息收集作业;
End[5]
当一个文档第一次进入体系时,它的改变周期被假定为1。也就是说,假定它会在体系更新周期内发生改变。跟着信息更新进程的不断进行,将依据文档的实践改变状况,不断地调整它们的改变周期。假如一个文档的索引信息在一次信息更新进程需求予以更新,也就是说,文档的内容发生了改变,咱们以为它很可能会在近期内再发生改变,因而,把它的改变周期缩短为本来的一半。假如在预计的改变周期内文档没有改变,那么就以为它在近期是比较安稳的,因而把它的改变周期扩展为本来的两倍。
增量式信息更新办法可以极大地减轻查找引擎进行索引信息库维护的负担。由于咱们以体系信息更新周期作为衡量文档改变周期的根本时刻单位,并且文档改变周期只能是体系信息更新周期的2的幂次,因而可能会影响少量文档索引信息的时效性。可是,考虑到WWW巨大的规划,从整体上看,增量式信息更新办法是一个可以进步查找引擎作业功率的有用手段。
总的说来,在查找引擎的开展进程中,虽然呈现了上述很多的技能来进步引擎作业功率,但不管是那种技能,短期内,要彻底使查找引擎在完成技能上都超过人脑仍然是难以达到的。因而,人脑和电脑的分工和合作仍然会是发生一个高质量查找引擎的最好确保,这也是今后查找引擎的开展一切必要要注意的重要事情。
参考文献:
[1]凤元杰,刘正春,王坚毅.查找引擎首要性能点评指标体系研讨[J].情报学报,2004,23(1).
[2]梁斌.走进查找引擎[M].北京:电子工业出版社,2007.10
[3]徐宝文.查找引擎与信息获取技能[M].北京:清华大学出版社,2003.
[4]邱哲,符滔滔.开发自己的查找引擎[M].北京:人民邮电出版社,2007.
[5]CayS.HorstmannJAVA2核心技能卷II:高档特性[M].7版.北京:机械工业出版社,2006.
本文转载自
宁波网站优化www.leseo.net
补充词条:
宁波谷歌优化
宁波seo外包
宁波seo优化公司
宁波seo推广公司
宁波网站优化推广