搜索引擎语义排序的设计与实现论文 联系客服

发布时间 : 星期四 文章搜索引擎语义排序的设计与实现论文更新完毕开始阅读2108e37aa7c30c22590102020740be1e650eccdf

3 系统需求分析

3.1搜索引擎的工作原理

为了帮助大家更好的理解本系统,首先向大家介绍一下搜索引擎的工作原理。搜索引擎系统由四部分构成:信息搜集模块、分析索引模块和检索服务模块、。

信息搜集模块采用一种像真人一样可以浏览网页的Robot程序, 这类程序能自动地在网上漫游, 从一个或一组URL开始访问, 然后下载相应的网页,抽取页面中的链接, 按照某种算法决定下一步要访问的URL地址, 常用的算法有广度优先和深度优先。

Robot(机器人)一词对编程者有特殊的意义。Computer Robot是指某个能以人类无法达到的速度不断重复执行某项任务的自动程序。由于专门用于检索信息的Robot程序像蜘蛛(spider)一样在网络间爬来爬去,因此,搜索引擎的Robot程序被称为spider程序。Robot程序不停地重复这个访问过程, 搜集信息资料, 存储到本地数据库, 直至再没有满足条件的新的URL地址或超出了某些条件限制。

分析索引模块将Robot程序采集的信息进行比较分析, 删除那些内容基本相似的转载网页, 以及未加任何修改, 内容完全相同的镜像网页, 然后, 对留存的网页信息, 剔除HTML等的标志符号, 提取出网页源文件内容特征的关键词, 汇集成索引数据库, 并随时顺着链接跟踪网上新加入的主页, 为其建立索引。索引数据库就是一个很大的查询表, 主要的字段有:网站的名称、标题、URL地址、摘要等。对Web页面内容进行全文索引, 即对Web页中每一个单词进行标引。从网页中按某些分类或特征对信息进行抽取。例如: Lycos 仅标引文件名、文件标题和全文前20 行的内容。而AltaVista 的索引处理则最为全面, 不仅对网页的所有文本、图像及链接等进行索引, 而且还记录单词之间的相对位置。一般来说, 标引的索引词越多, 检索的全面性越高, 分析索引模块是搜索引擎提供检索服务的基础。 3.2系统功能需求

本系统的功能需求是:搜索引擎系统从一个或一组已URL开始访问互联网,下载相关的网页信息及新的链接, 以一定的策略遍历新链接, 并读取新链接的信息内容, 将它们加入到本地数据库。然后, 由分析索引模块对这些数据进行处理组织后, 形成

第 7 页 共 43页

索引数据库。用户通过用户模块提交查询服务, 在搜索框中输入检索式, 系统就会自动完成检索, 并按一定的排列方式返回检索结果。对它有如下基本要求。能够接受用户通过浏览器提交的查询词或者短语,记作q,例如“联想”,“IBM”,“hp”等等。 在一个可以接受的时间内返回一个和该用户查询匹配的网页信息列表。系统根据功能可分为两个部分:检索界面, 可以接受用户提交的检索要求;检索结果,将检索到的资料整理组织后按一定顺序提供给用户。搜索引擎的检索结果通常包含大量文献, 为了将最有“价值”的网页提供给用户, 搜索引擎一般都能按查询的相关程度对检索结果进行排列, 最相关的文献通常排在最前面。 3.3系统性能需求

(1)系统要有很好的可移植性。

(2)系统必须有很好的可维护性,代码的格式规范。 (3)系统要有健壮性。

(4)界面设计要求简洁、美观、大方。

(5)系统运行必须稳定,消耗资源少,代码效率高。 (6)系统运行环境:Windows操作系统,火狐浏览器。 (7)系统开发环境:myeclips,Oracle10g数据库。

第 8 页 共 43页

4 系统总体设计

4.1“飞梦”搜索引擎系统总体介绍 4.1.1 “飞梦”搜索引擎系统工作机制

首先通过网页爬虫技术将网页链接或者摘要搜集到数据库中,然后定时将缓存更新,用户在查询时可直接从缓存中读取信息,大大提高了响应速度。用户的请求在得到响应后应先将查询结果存于缓存,然后调用排序算法进行二次排序,最后将排序好的结果响应给用户。

4.1.2 几种常见的语义WEB排序技术 (1)基于Web页面内容排序

基于Web页面内容的排序算法,主要源自传统信息检索中常用的文本文档加权标引算法,其基本思想是通过计算Web页面中与查询关键词相匹配的索引项,对Web页面主题内容的表征程度进行排序.基于Web页面内容的排序算法非常丰富,其中以基于词频和位置的加权排序算法应用最为广泛,有些算法尽管可以获得更好的排序效果,但往往由于分析处理过于复杂而不能满足海量Web信息检索快速响应的需要. (2) 基于Web页面链接排序

Web页面的链接反映的是Web页面之间形成的“参考”、“引用”或“推荐”关系,如果某一Web页面被较多页面链接,则表示它相对被人关注,其内容应该是比较重要或比较有用的,基于Web页面链接分析的排序算法正是基于这一思想来度量Web页面的重要性(质量)进行排序其中以PageRank算法最具代表性.PageRank算法以“随机冲浪”模型为理论基础,而HITS算法使用Authority和Hub页面相互加强模型,二者都利用了页面和超链接组成的有向图,根据连接关系进行递归运算来确定Web页面的重要性得分.但是,PageRank算法在计算时没有考虑用户的具体查询内容和Web页面实际表达内容,对与页面相链接的其他页面是否和该页面主题相关也没有考虑,因此在排序时容易产生主题漂移(topic drift).另外,页面的PageRank值单纯依靠人链数量的多寡及入链的PageRank值进行计算,使得许多内容质量很高的页面可能因为人链数量过少只能获得较低的排名,旧页面的排序往往比新页面更为有

第 9 页 共 43页

利,因为新页面获得的链接数量通常要少于旧页面,搜索引擎优化(SEO)人员也很容易通过增加页面入链数量等方式来获得更高的页面排名。 (3) 基于检索用户排序

搜索引擎查询结果是否相关、排序是否合理最终取决于用户的主观判断.不同用户的动机、知识、兴趣、社会阅历等差异很大,因而对检索结果的评价也会产生较大的偏差,理想的检索排序算法应该对来自用户的个人因素加以考虑.基于检索用户的排序主要分为2种:一种是基于检索用户群体的排序,如AskJeeves公司提出的Direct Hit算法;一种是基于检索用户个体的排序,也称为个性化检索排序,用户个性的

表达可以通过2种方式完成:一种是用户主动提交个人信息或直接对系统进行相关反馈;另一种是系统通过分析该用户在客户端或服务器端的检索行为加以确定. 4.1.3 语义本体概念

本体知识库是语义搜索引擎进行推理和知识积累的基础和关键,而Ontology(本体)则是知识库的基础。一般来说,本体提供一组术语和概念来描述某个领域,知识库则使用这些术语来表达该领域的事实。例如医药本体可能包含“白血病”、“皮肤病”等术语的定义,但它不会包含具体某一病人的诊断结果,而这正是知识库所要表达的内容。比如张三患有皮肤病、李四患有皮肤病和白血病、王五患有白血病,其中的皮肤病、白血病就是本体。而各个病症的实例(张三、李四、王五)及其病症描述就是知识库的内容。对它有如下基本要求:能够接受用户通过浏览器提交的查询词或者短语。 在一个可以接受的时间内返回一个和该用户查询匹配的网页信息列表。这个列表的每一条目至少包含三个元素(标题,网址链接,摘要) 4.1.4 语义搜索

搜索引擎技术伴随着WWW的发展是引人注目的。“飞梦”搜索引擎是基于Web的,基于语义排序的搜索引擎。顾名思义,所谓语义搜索,是指搜索引擎的工作不再拘泥于用户所输入请求语句的字面本身,而是透过现象看本质,准确地捕捉到用户所输入语句后面的真正意图,并以此来进行搜索,从而更准确地向用户返回最符合其需求的搜索结果。

第 10 页 共 43页