(计算机软件与理论专业论文)基于nutch的垂直搜索引擎研究与实现.pdf_第1页
(计算机软件与理论专业论文)基于nutch的垂直搜索引擎研究与实现.pdf_第2页
(计算机软件与理论专业论文)基于nutch的垂直搜索引擎研究与实现.pdf_第3页
(计算机软件与理论专业论文)基于nutch的垂直搜索引擎研究与实现.pdf_第4页
(计算机软件与理论专业论文)基于nutch的垂直搜索引擎研究与实现.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

(计算机软件与理论专业论文)基于nutch的垂直搜索引擎研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中文摘要 中文摘要 随着w e b 信息量的飞速增长,越来越多的人希望能够快速且有效地找到自 己所需要的与特定领域主题有关的信息,目前通用搜索引擎( s e a r c he n g i n e ) 面临 着空前的挑战。垂直搜索引擎( v e r t i c a ls e a r c he n g i n e ) 由于仅仅采集用户指定的、 与某一特定主题相关的信息,过滤不相关的信息,以构筑某一主题或学科领域 的w e b 信息资源库为目标,并在查询结果排序时给予主题相关度高的网页更高 的优先级,具有很高的实用价值和广阔的应用领域,因而成为目前网络信息检 索领域的研究热点之一。 n u t c h 是一个开源( o p e ns o u r c e ) 的w 曲搜索引擎,它将尽自己最大的努力为 用户提供最好的搜索结果。本文在n u t c h 平台上实现了中文分词插件,从而使 n u t c h 具有中文信息处理能力。此外分析并研究了目前常用的主题相关度判别方 法,在系统实现中采用了基于向量空间模型的主题相关度判别算法,并对该算 法进行改进,加入元数据判别机制和重要标签所包含关键词的加权处理。分析 了“隧道现象”的成因和日前的处理方式,在n u t c h 原有的爬虫部分源代码加入 “隧道处理”机制,以处理主题网页分离的问题,并且修改了检索结果排序的 源代码,在原有的基于链接相关度评分的基础上加入了根据页面主题相关度评 分,使其更适应垂直搜索引擎的要求。最终本文实现了一个港l i 物流信息垂直 搜索引擎,从而实现了各个港口物流信息的快捷查询和共享。实验结果表明这 些改进提高了主题判别的准确度和效率,使信息的定位和查找更加的精确,减 少了不相关信息的干扰,并提高了系统对于互联网复杂环境的处理能力,因此 本文实现的系统具有很高的实用价值和研究意义。 关键字:n u t c h 垂直搜索向量空间模型中文分词索引检索 a b s t r a c t 一一 a b s t r a c t w i t ht h er a p i dg r o w t ho fi n t e m e t ,m o r ea n dm o r ep e o p l ew a l l tt ob ea b l e t 0f m d t h e1 n f o r m a t i o no ft h e i ri n t e r e s tq u i c k l ya n d a c c u r a t e l y v e r t i c a ls e a r c he n g i n e so i l l y c o l l e c tu s e r - s p e c i f i e do rs u b j e c t 。r e l a t e dp a g e s i t sg o a li st ob u i l da w e bi n f o n n a t i o n a i l dr e s o u r c el i b r a r yf o ro n et a r g e tt h e m eo r a c a d e m i cf i e l db y f o c u s i n g0 nt h e r e t r i e v a lo fr e l e v a n tp a g e sa n d f i l t e r i n gi r r e l e v a n tp a g e s b e c a u s eo fi t sh i g hp r a c t i c a l v a l u ea n de x t e n s i v ea p p l i c a t i o n d o m a i n ,v e r t i c a ls e a r c he n g i n e t e c h n o l o g yh a s b e c o m eah o tr e s e a r c hp o i n ti nn e t w o r ki n f o r m a t i o nr e t r i e v a lf i e l d n u t c hi sa no p e ns o u r c ew e b s e a r c he n g i n e ,w h i c ht a k e se f f o r tt op r o v i d eu s e r s w l t ht h eb e s ts e a r c hr e s u l t s t h i sp a p e rp r o v i d e s ac h i n e s ew o r ds e g m e n t a t i o n c o m p o n e n tu n d e rn u t c hp l u g i nf r a m e w o r kt om e e tt h en e e d so f c h i i l e s ei 响咖a t i o n p r o c e s s i n g am o d u l ef o rc a l c u l a t i n gs i m i l a r i t i e sa m o n gp a g e si si m p l e m e n t e d t h i s m o d u l ea d o p t sv e c t o rs p a c em o d e lo ft h e m es i m i l a r i t ya n dm a k e si m p r o v e m e n t s0 n t h ea l g o r i t h mb ya d d i n gm e t a - d a t aa n dr a i s i n gt h ew e i g h to f 、o r d s c o n t a i n e di 1 1 m a p o r t a n tl a b e l s a tt h es a m et i m e ,t h e c r a w l i n gp a r to fn u t c hs o u r c ec o d ei s m o d i f i e db ya d d i n g ”t u n n e l i n gp r o c e s s i n g ”m e c h a n i s m t od e a lw i t ht h ei s s u ec a u s e d b ys e p a r a t l o no fp a g et h e m ea n dp a g ec o n t e n t t h es o u r c ec o d ei nr a n k i n gm o d u l e i s a l s om o d i f i e db ya d d i n gs c o r i n gm e t h o d a c c o r d i n gt os i m i l a r i t yo fp a g et h e m e so nt h e b a s i so fo r i g i n a ll i n k - b a s e d s i m i l a r i t ys c o r i n gt om a k ei tm o r ea d a p t e dt ot h e r e q u l r e m e n t so fv e r t i c a ls e a r c he n g i n e s f i n a l l yt h i sp a p e ri m p l e m e n t sav e n i c a l s e a r c he n g i n eo fp o r t l o g i s t i c si n f o r m a t i o ni no r d e rt oa c h i e v eq u i c ki r 怕n n a t i o n q u e r ya n ds h a r i n g t h ee x p e r i m e n t a lr e s u l t ss h o wt h a to u rm e t h o d si m p r o v em e a c c u r a c ya n de f f i c i e n c yo ft h e m ed i s c r i m i n a t i o na n dc a nr e d u c et h ei n t e 啭r e n c eo f 1 r r e l e v a n ti n f o r m a t i o n ,e n l a r g i n gt h es y s t e m sc a p a c i t yt oh a n d l et h e c o m p l e xi n t e m e t e n v i r o n m e n t t h e r e f o r e ,t h es y s t e mh a sh i g hp r a c t i c a la n dr e s e a | c hv a l u e k e y w o r d :n u t c h ,v e r t i c a ls e a r c h , v s m ,c h i n e s ew o r ds e g m e n t a t i o n ,i n d e x 觚d s e a r c h h 目录 图目录 图2 1 典型搜索引擎系统架构图9 图2 2 倒排索引结构图。1 0 图2 3 检索模块流程图11 图2 4 垂直搜索引擎结构图。1 2 图2 5l u c e n e 索引流程15 图2 6n u t c h 体系结构图16 图4 1 本系统功能框架图2 4 图4 2 本系统体系结构图2 5 图4 3 本系统用例图2 6 图4 4 本系统工作流程图2 8 图4 5 概念模型网络图:41 图4 6 主题相关度判别功能图4 2 图4 7 主题相关度计算流程图4 3 图4 8 “隧道现象 图示4 5 图4 9 实现隧道穿越的流程图4 6 v i 目录 图5 1 本系统运行步骤4 9 图5 2 本系统配置工具5 0 图5 3 实际抓取5 1 图5 4 检索页面。5 2 图5 5 结果显示页面5 2 v i i 目录 表目录 表1 1 评价指标比较2 表1 2 功能需求比较3 表5 1 主题相关度判断结果分析5 3 表5 2 与通用搜索引擎比较5 3 v i i i 南开大学学位论文使用授权书 根据南开大学关于研究生学位论文收藏和利用管理办法,我校的博士、硕士学位获 得者均须向南开大学提交本人的学位论文纸质本及相应电子版。 本人完全了解南开大学有关研究生学位论文收藏和利用的管理规定。南开大学拥有在 著作权法规定范围内的学位论文使用权,即:( 1 ) 学位获得者必须按规定提交学位论文( 包 括纸质印刷本及电子版) ,学校可以采用影印、缩印或其他复制手段保存研究生学位论文, 并编入南开大学博硕士学位论文全文数据库;( 2 ) 为教学和科研目的,学校可以将公开 的学位论文作为资料在图书馆等场所提供校内师生阅读,在校园网上提供论文目录检索、文 摘以及论文全文浏览、下载等免费信息服务;( 3 ) 根据教育部有关规定,南开大学向教育部 指定单位提交公开的学位论文;( 4 ) 学位论文作者授权学校向中国科技信息研究所和中国学 术期刊( 光盘) 电子出版社提交规定范围的学位论文及其电子版并收入相应学位论文数据库, 通过其相关网站对外进行信息服务。同时本人保留在其他媒体发表论文的权利。 非公开学位论文,保密期限内不向外提交和提供服务,解密后提交和服务同公开论文。 论文电子版提交至校图书馆网站:h t t p :2 0 2 1 1 3 2 0 1 6 1 :8 0 0 1 i n d e x h t m 。 本人承诺:本人的学位论文是在南开大学学习期间创作完成的作品,并己通过论文答辩; 提交的学位论文电子版与纸质本论文的内容一致,如因不同造成不良后果由本人自负。 本人同意遵守上述规定。本授权书签署一式两份,由研究生院和图书馆留存。 作者暨授权人签字: 2 0 年月日 南开大学研究生学位论文作者信息 论文题目 姓名学号答辩日期年月日 论文类别博士口学历硕士口硕士专业学位口高校教师口同等学力硕士口 院系所专 业 联系电话e m a i l 通信地址( 邮编) : 备注:是否批准为非公开论文 注:本授权书适用我校授予的所有博士、硕士的学位论文。由作者填写( 一式两份) 签字后交校图书 馆,非公开学位论文须附南开大学研究生申请非公开学位论文审批表。 南开大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行 研究工作所取得的成果。除文中已经注明引用的内容外;本学位论文 的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的 作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集 体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任 由本人承担。 学位论文作者签名: 年月 日 第一章绪论 第一章绪论 目前搜索引擎已经超过了电子邮件成为互联网上最重要的应用,它的出现 解决了互联网上信息查找的困难,方便了用户在数以亿计的网页中找到自己想 要的信息l lj 。而垂直搜索引擎( v e r t i c a ls e a r c he n g i n e ) ,是与通用搜索引擎截然不 同的引擎类型,它的出现是为某一特定领域、某一特定人群或某一特定需求提 供有一定价值的信息和相关服务,与通用搜索引擎的海量信息相比,垂直搜索 引擎则显得更加专注、具体和深入,使用户能够快速检索到自己想要的信息【2 】。 1 1 1 垂直搜索引擎产生背景 第一节引言 随着因特网的迅猛发展,网络信息资源成几何级数增长,想要快速、准确 地查找所需的信息越来越难,搜索引擎的出现整合了互联网上众多的网页资源, 并提供信息导航和信息查询服务,方便了用户查找所需要的信息。但是目前通 用搜索引擎在使用中也面临着许多问题【3 】: ( 1 ) 大规模的分布式数据源。目前大量的数据分布在数以亿计的服务器上, 检索起来非常困难,单个搜索引擎的索引数据库的覆盖率一般都低于3 0 ,很 难索引所有w e b 资源。 ( 2 ) 网络信息组织的无序性。i n t e m e t 用户面对的是海量、随机、无序的信 息。从如此庞杂的信息中取出对用户最有用的信息是搜索引擎面临的一项挑战, 现在的简单排序还无法达到要求,而信息有序化组织也是搜索引擎高效工作的 前提。 ( 3 ) 信息的有用性评价困难。一些站点在网页中大量重复使用某些关键字, 以提高其在搜索结果中的排名,而事实上却可能没有提供任何对用户有用的信 息,这些情况更加深了评价信息有用性的难度。 ( 4 ) 检索词表达的问题。信息检索界认为用户很难简单地用关键字来忠实表 达他所真正需要检索的内容,表达的困难将导致检索结果的不理想,而且如何 第1 页 第一章绪论 将结果表达成用户容易理解和使用的方式也是一个难题。 在这样的实际背景下垂直搜索引擎应运而生,它是针对某一行业或组织, 以构筑某行业或组织的网络信息资源库为目标来满足行业专业需求或者组织某 项业务需求,智能地在互联网上搜集符合某一专题需要的信息资源,是通用搜 索引擎的细化和延伸,它对网页库中的某类专业的信息进行整合,分字段抽取 出用户需要的数据,处理后以某种形式返回给用户。能够为包括学科信息门户、 专业信息机构、特定行业领域、公司信息中心、行业专家等等在内的信息用户 提供整套的网络信息资源开发方案。由此可见垂直搜索引擎是更有针对性的搜 索引擎,它只搜索特定主题的信息。由于覆盖的学科领域少,信息量相对较少, 这就大大降低了收集信息的难度,提高了信息的质量。目前垂直搜索引擎的应 用领域很多,比如企业信息搜索、产品搜索、房产搜索、人才搜索、地图搜索、 m p 3 搜索、图片搜索等等,几乎各行各业、各类信息都可以进一步细化成各种 类型的垂直搜索引擎1 4 】。 1 1 2 垂直搜索引擎与通用搜索引擎的比较 垂直搜索引擎与通用搜索引擎在实现原理上大致相当,本文从搜索引擎评 价指标、功能需求差异和技术实现上来对它们作一下比较。 1 1 2 1 评价指标比较 搜索引擎有两个主要的评价指标:查全率和查准率。查全率是检索出的相 关网页数和网页集中所有的相关网页数的比率。查准率是检索出的相关网页数 与检索出的网页总数的比率。表1 1 给出了垂直搜索引擎和通用搜索引擎在查准 率、查全率和结果描述三个通用的评价指标上的比较【5 】: 表1 1 评价指标比较 结果查伞率结果查准率结果描述 通用搜索引擎数量巨大较低标题、简述、链接 垂直搜索引擎数量较少可达8 0 以上相关性大的信息 1 1 2 2 功能需求比较 表1 2 给出了垂直搜索引擎和通用搜索引擎在功能需求上的不同之处【6 】: 第2 页 第一章绪论 表1 2 功能需求比较 通用搜索引擎垂直搜索引擎 信息采采集范围:整个互联网采集范围:与主题相关的网 集 采集深度:要求不高站 结构化数据库信息采集:要求不高采集深度:要求高 结构化数据库信息采集:要 求高 信息处 网页元数据提取:要求不高网页元数据提取:要求高 理 结构化信息提取:要求不高结构化信息提取:要求高 主题相关度判定:不需要主题相关度判定:需要 信息索索引方式:全文索引 索引方式:全文索引和元数 引和检检索方式:非结构化信息为主据索引相结合 索结果排序:p a g e r a n k 算法检索方式:结构化信息和非 结构化信息相结合 结果排序:需求多样化 1 1 2 3 技术实现比较 通过上表在垂直搜索引擎和通用搜索引擎功能需求上的比较,可以知道它 们在技术实现上也有一些不同之处【7 】: ( 1 ) 信息采集技术区别 一般通用搜索引擎采用广度优先搜索策略,面向整个互联网信息,采集的 范围广、数量大,没有特定的主题,很少采集结构化的数据库信息,因此对采 集深度要求不高。 垂直搜索引擎带有专业性或行业性的需求和目标,能够按需控制采集目标 和范围,所以只对局部来源的网页进行采集,通常采用深度优先搜索策略,采 集的网页数量适中,更新周期也更短,获取信息更及时,并且尽量采集与特定 主题相关的信息,因此需要有主题相关度判定功能,具体实现上有基于u r l 的 相关度判定和基于页面内容的相关度判定等方法。在某些应用中,垂直搜索引 擎还需要集成和采集关系数据库中的结构化信息。 ( 2 ) 网页解析技术区别 通用搜索引擎仅能对网页的标题和正文进行解析和提取,但不提供其时间、 第3 页 第一章绪论 来源、作者及其他元数据的解析和提取。 由于垂直搜索引擎服务的特殊性,往往要求按需提供时间、来源、作者及 其他元数据解析,包括对网页中特定内容的提取。比如在论坛搜索、生活服务、 订票服务、求职服务、行业供需、产品比较等特定垂直搜索服务中,要求对于 作者、主题、地区、机构名称、产品名称以及特定行业用语进行提取,才能进 一步提供更有价值的搜索服务。 ( 3 ) 索引和检索技术区别 通用搜索引擎可以对网页全文进行索引但是很少对网页元信息进行索引, 同时没有特别需要索引的关键词语。不能提供精确和完整的检索结果,只是给 出预估的数量和排在前面部分的结果信息,因为响应速度是通用搜索引擎所追 求的最重要因素。 由于垂直搜索引擎在信息的专业性和使用价值方面有更高的要求,因此能 够对网页元信息进行索引,并对与主题相关的词语建立索引,如商品价格、进 货时间等建立索引,同时需要提供多种结果排序方式,比如按内容相关度排序( 与 通用检索的p a g e r a n k 不同) 或按时间、来源排序。另外,一些垂直搜索引擎还要 按需支持结构化和非结构化数据联合检索,比如结合作者、内容、分类进行组 合检索等。 由此可以看出,垂直搜索引擎和通用搜索引擎的主要差别在于垂直搜索引 擎需要有元数据信息提取和索引、主题相关度判定和主题加权的结果排序等方 面的功能,本文也将重点放在这些功能模块的实现和改进上,其中元数据信息 提取和索引在n u t c h 平台上已经实现,因此主要重点解决相关度判定和结果排序 等方面的技术实现问题。 1 1 3 国内外研究现状 目前在国内外,关于垂直搜索引擎的研究成为一个新的热点,出现了许多 具有代表性的应用系统: ( 1 ) 科学搜索引擎s c i r u s t 8 1 s c i r u s 科学搜索引擎是一种专为搜索高度相关的科学信息而设计的搜索引 擎,获得2 0 0 1 年搜索引擎观察授予的“最佳专业搜索引擎”奖。s c i r u s 是 目前w e b 上最全面、综合性最强的科技文献门户网站之一。它只面向包含有科 第4 页 第+ 章绪论 学内容的网站,如大学和作者个人主页以及e l s e v i e r 自己的数据库。具有索引数 据量大、资源丰富、匹配准确的优点,同时对大量结构化的数据库信息建立了 索引,数据准确且具有权威性,但是无法对中文科学信息进行检索。 ( 2 ) b e r k e l e yl 拘f o c u sp r o j e c t 9 】 这个系统由一个印度裔的科学家s c h a r k r a b a r t i 带头从事,他是最早从事这 方面研究的人之一。该系统通过两个程序来指导爬行器:一个是分类器c l a s s i f i e r , 用来计算下载文本与预定义主题的相关度。另一个程序是净化器d i s t i l l e r ,用来 确定识别那些指向很多相关资源的中心页面。该系统的体系结构简洁、高效, 目前大多数垂直搜索引擎都采用该系统所建立的体系结构,但是该系统并不开 源,无法在某个领域进行二次开发。 ( 3 ) 通用搜索引擎提供的垂直搜索服务 目前通用的搜索引擎也提供了一些相关领域的垂直搜索服务,如g o o g l e 提 供的学术搜索、生活搜索、图片搜索、代码搜索等功能,使其在满足用户基本 信息搜索要求的同时也能够对用户的特定需要提供服务。采用g o o g l e 自己的 p a g e r a n k 技术,由于是从大量网页中提取出的信息,因此数据量大、资源丰富, 但是也导致出现一些与主题无关的页面,同时并不能涵盖所有的领域。 ( 4 ) 现代物流网 现代物流网( h t t p :s e a r c h m o d e m 5 6 c o r n ) 是国内的一个物流信息搜索引擎, 采用了向量空间模型算法进行主题判定,使用l u c e n e 索引和检索平台,提供了 基本的物流信息搜索功能。但是涉及的物流领域过于宽泛,同时没有分类词指 引,导致搜索结果出现许多不相关的信息,准确度不高;而且其索引的数据更 新缓慢,数据量小,不能很好的满足实际需求。 文献【9 首次提出了聚焦搜索的概念,文献【1 0 】 1 1 】首次提出了主题搜索和主 题爬虫的概念。目前在国内外关于该领域的命名主要有:垂直搜索( v e r t i c a l s e a r c h ) ,主题搜索( t o p i cs e a r c h ) ,聚焦搜索( f o c u s e ds e a r c h ) 。其实质基本相同,本 文采用“垂直搜索”的称谓。 文献 1 2 】提出了通过提取两篇文档的关键词构造关键词向量,用向量空间模 型来判断两篇文档是否相关,该方法现在被广泛的应用于w e b 网页的相关度判 定。 文献【1 3 提出了通过分析网页的超链接文本来推断其所链接的网页是否与 指定的主题相关,并采用该方法实现了一个w e b c r a w l e r 原型系统。 第5 页 第。章绪论 文献【1 4 】【1 5 】提出了网页社i 反( w e bc o m m u n i t y ) 对垂直搜索采集相关网页信 息的影响,通过研究大量专业门户网站发现相关主题的网页社区会被一些与主 题无关的网站分开,从而阻碍了主题信息的采集。文献【1 6 提出了采用“隧道技 术来处理该问题,并获得了比较好的效果。 第二节本文研究意义 当前物流行业发展迅猛,而国内各大港口更是起到了连接国内外物资进出 口的枢纽作用,但是各大港口的物流信息都集中在各自的门户网站中,形成一 个个信息孤岛,无法让用户集中深入的获取到各个主要港u 的物流信息。垂直 搜索引擎由于仅采集用户指定的、与某一特定主题相关的信息,构筑某一主题 或学科领域的w e b 信息资源库,并能在查询结果排序时给予主题相关度高的网 页更高的优先级,具有很高的实用价值和广阔的应用领域。目前在国内出现了 一些与物流信息相关的垂直搜索引擎,然而通过使用和研究目前国内的物流信 息搜索引擎,发现具有检索出的信息主题相关度不高、信息更新不及时、信息 量小等不足之处,并且没有专门针对国内港口物流信息的搜索引擎,本文就是 在这个实际需求下提出的。 本文基于天津港数字化口岸公共服务平台,构建港口物流信息垂直搜索引 擎,从而实现港口物流信息的快捷查询和共享。同时在实现该系统的过程中, 分析并研究了垂直搜索引擎的原理和相关技术,对主题相关性判别、检索结果 排序、隧道处理等问题在原有工作的基础上做了一些改进,实验结果表明这些 改进提高了主题判别的准确度和效率,使信息的定位和查找更加的精确,减少 了不相关信息的干扰,并提高了系统对于互联网复杂环境的处理能力,因此本 文实现的系统具有很高的实用价值和研究意义。 第三节本文主要工作内容 本文基于n u t c h 构建了一个港口物流信息垂直搜索引擎。n u t c h 是a p a c h e 软件基金会提供的一个开放源代码( o p e ns o u r c e ) 的w e b 搜索引擎,本文实现的系 统是在n u t c h 的基础上进行扩展和修改,基本思想是根据主题词,将爬虫抓取到 的网页在建索引之前进行主题判别分析,若属于本主题,则保留该网页为后面 第6 页 第。一章绪论 建立索引做准备;若不属于本主题则抛弃,避免占用更多空间。本文开展的研 究内容主要有: ( 1 ) n u t c h 工作原理的分析 n u t c h 的工作分为三个阶段:抓取、索引和检索。抓取阶段取得网页并把他 们处理成倒排索引,后面检索阶段的工作基于这些索引来进行。 ( 2 ) 中文分词插件的实现 中文分词是中文垂直搜索引擎中的一个关键技术,分词的好坏直接影响提 取文本的精确度。n u t c h 是针对英文开发的,因此要在此基础上修改内部代码, 以实现中文分词的功能。 ( 3 ) 主题相关度判别的实现 现在应用于主题相关度判别的技术有很多,主要有:元数据判别技术,扩 展元数据判别技术,页面间链接分析技术,页面语义信息分析技术。本系统在 充分利用n u t c h 提供的链接分析技术的基础上整合了页面语义信息的分析判别 技术,并增加了元数据的判别,在构造页面关键词向量时对重要标签所包含关 键词进行了加权处理,提高了主题相关度判别的准确率和效率。 ( 4 ) 隧道穿越的实现 由于商业竞争和其他的原因,各个门户网站之间很少会有超链接直接相连, 从而可能造成爬虫抓取不到相关的网页。本文提出了一种优先度递减和u i u 黑 名单结合的方式来处理该问题。 ( 5 ) 改进n u t c h 的结果排序算法 n u t c h 的排序是针对通用搜索引擎设计的,采用了类似p a g e r a n k 的结果评 分机制,只考虑了u r l 的重要程度而没有考虑页面信息的重要程度,本文通过 修改n u t c h 的排序源码将u r l 和页面的重要程度都引入到结果的排序中,从而 提高了结果显示的质量,增强了用户的检索体验。 现阶段以天津港、上海港、深圳港等主要港l j 物流信息作为信息采集的数 据源,今后可以扩展到所有的港口物流信息。 第四节论文组织结构 本文主要研究基于n u t c h 的港口物流信息垂直搜索引擎的设计与实现,全文 共分六章,第一章是绪论部分,主要综述了垂直搜索引擎发展概况和特点,阐 第7 页 第一章绪论 述了本文研究的目的、意义及本文要解决的问题、主要工作和论文的结构。第 二章介绍了垂直搜索引擎的工作原理,同时介绍了n u t c h 相关技术,包括n u t c h 组成部分、n u t c h 搜索引擎的特点及系统架构,同时介绍了在实现本文的工作中 用到的其他相关工具。第三章是自动分词及n u t c h 分词修改,主要内容是基于中 科院i c t c l a s 分词系统实现了一个n u t c h 中文分词插件。第四章是基于n u t c h 的垂直搜索引擎实现部分,主要包括系统结构、起始u r l 列表和主题词的产生、 主题相关性判定的实现、隧道穿越的实现以及排序算法的改进部分。第五章是 运行结果演示和测试结果,包括设置环境变量、抓取网站页面前的系统准备工 作、运行c r a w l 命令抓取网站内容和使用t o m c a t 进行搜索测试。第六章为本论 文的结束语。 第8 页 第二章垂直搜索引擎与n u t c h 介绍 第二章垂直搜索引擎与n u t c h l - 作原理 本章分别介绍了通用搜索引擎和垂直搜索引擎的工作原理。从页面采集、 建立索引、数据检索三个方面描述了通用搜索引擎技术原理;然后介绍了垂直 搜索引擎的技术特点及其与通用搜索引擎在结构和工作流程上的区别。同时由 于本系统是建立在n u t c h 平台上的,因此对n u t c h 和其他的相关技术做了介绍。 第一节通用搜索引擎的工作原理 典型的通用搜索引擎包括三个主要部分,相应的其主要处理流程有三步: 从互联网上采集网页信息;分析原始网页,包括抽取文本内容、过滤标点符号、 对内容分词等,为网页和分析得到的文本建立一个可供检索的索引库,设计良 好的索引库可以加快搜索速度,更准确的进行网页定位,从而减少计算开销; 提供检索接口,分析用户输入的查询式,在索引库中查找相关信息,最后通过 链接分析等算法对检索结果排序后显示给用户。图2 1 是一个典型的搜索引擎系 统架构图,搜索引擎的各部分都会相互交错、相互依赖【1 7 】。 二_ 垦二香 臣茧互一竺l 固 弓一芒攀当 数据;j 荦 i 一 图2 1 典型搜索引擎系统架构图 第9 页 商一3一 禽 riil 第二章垂直搜索引擎与n u t c h 介绍 ( 1 ) 页面采集模块 页面采集模块通常由管理子模块、网络爬虫、解析子模块、网页数据库等 部分组成。管理子模块负责向网络爬虫提供遍历策略,包括深度优先、广度优 先、最佳优先等遍历策略:网络爬虫采用管理子模块指定的遍历策略来访问、 下载网页;解析子模块负责对所采集到的网页进行语法解析、剔除语法标记, 将网页的页面信息送至网页数据库保存。网络爬虫从一个初始网页集出发遍历 互联网,自动采集网上信息。当爬虫进入某个超文本页面时,通过分析页面的 标记结构来搜索信息和获取指向其他超文本的u r l 链接,通过一定的算法选择 下一个要访问的站点,继而转向另一个站点继续采集信息。理论上,如果为爬 虫建立一个适当的初始网页集,它就可以遍历整个网络。 ( 2 ) 索引模块 索引模块的功能是将爬虫下载到本地的网页进行处理,对文本信息建立索 引,存入索引数据库中以备用户检索使用。互联网上大部分信息都是以h t m l 格式存在的,对于索引来说,只处理文本信息。因此需要把网页中文本内容提 取出来,过滤掉一些脚本标示符和一些无用的广告信息,同时记录文本的版面 格式信息。词的识别是搜索引擎中非常关键的一部分,具体通过词典文件对网 页内的词进行识别。 索引库的建立是数据索引中结构最复杂的一部分。一般需要建立两种标引: 文档标引和关键词标引。文档标引分配每个网页一个唯一的d o c l d 号,关键词 标引分配每个识别出的词一个唯一的w o r d l d 号,根据d o c l d 标引出在这个网页 中出现过多少过w o r d l d ,每个w o r d l d 出现的次数、位置、大小写格式等,形成 d o c l d 对应w o r d l d 的数据列表;关键词标引其实是对文档标引的逆标引,根据 w o r d l d 标引出这个词出现在那些网页( 用w o r d l d 表示) ,出现在每个网页的次 数、位置、大小写格式等,形成w o r d l d 对应d o c l d 的列表。如图2 2 所示: i 索弓i 项1l 索引项2l 索引项3l 索引项4l 索引项5 医自豳匡囱囱匡圈 r _ j l r j l - 1r j l r j l 1 l 文档3i 文档3l 文档2l 文档2 图2 2 倒排索引结构图 第l o 页 第二章垂直搜索引擎与n u t c h 介绍 ( 3 ) 检索模块 检索模块是搜索引擎和用户之间的接口,它首先分析用户给出的查询式, 搜索服务器把该查询式转化为w o r d i d ,然后访问索引数据库得到d o c l d 列表, 对d o c i d 列表扫描和w o r d l d 的匹配项,通过匹配算法获得检索结果,最后计算 网页和关键词的相关度,根据相关度对检索结果进行降序排序提交给用户。其 处理流程如图2 3 所示: 广 1 分析搜索关键词i 图2 3 检索模块流程图 第二节垂直搜索引擎的工作原理 垂直搜索引擎是以构筑某一主题或学科领域的w e b 信息资源库为目标,智 能地在互联网上采集符合这一主题或学科需要的信息资源,因此它在通用搜索 引擎的功能基础上加入了主题相关度分析的功能,主要包括页面主题相关度分 第1 1 页 第二章垂直搜索引擎与n u t c h 介绍 析和链接主题相关度分析,同时分析的具体数值也需要加权处理后体现在检索 结果排序上,从而可以尽量在互联网上只爬取与主题相关的网页,并在检索时 将与主题相关性高的网页优先显示。 2 2 1 垂直搜索引擎的工作流程 垂直搜索引擎与通用搜索引擎在总体结构上大致相同,不同点在于垂直搜 索引擎只需要抓取与其主题相关的页面,这样可以减少存储开销,避免无效信 息的干扰,因此需要有主题相关度判别的功能1 引。其系统结构如图2 4 所示: 图2 4 垂直搜索引擎结构图 系统管理员向网络爬虫提交初始的种子u r l 和行业相关的主题词集合,网 络爬虫从初始u r l 开始在互联网上抓取网页,然后对抓下来的网页进行信息抽 取,提取出正文文本信息和页面中的链接,由页面过滤模块分析页面是否与主 题符合,如符合则把提取出的链接提交到链接过滤模块进行链接分析,同时保 存页面,建立索引。若不符合,则丢弃该页面。 2 2 2 垂直搜索引擎信息采集策略 在垂直搜索引擎中,网络爬虫从网上采集回来的数据需要经过进一步处理, 第1 2 页 第二章垂直搜索引擎与n u t c h 介绍 主要工作是保留主题范围内的网页,丢弃范围之外的网页,然后再进行索引。 这就要求在进行网上信息采集时,必须采用主题搜索策略,相应的将网络爬虫 称为主题爬虫。目前主要有三种信息采集策略【1 9 】: ( 1 ) 人工预选策略 所谓人工预选,就是首先由人工预先浏览各个站点,从中选出与主题相关 的网站,然后派发出一个或几个爬虫专门负责对这类站点进行持续的访问,再 用其他的爬虫去遍历整个网络。或者只在选出的与主题相关的网站范围内采集 页面,而认为其他网站与主题无关,不予考虑。还可以先提供一组主题词集, 用这组特征集到搜索引擎中检索出对应的网页作为采集信息的范围。另外还可 辅以用户提交站点的方式,经管理员验证后加入待访问的u r l 列表中。该方式 控制信息采集更新的网站范围,保证信息来源的专业性和相关性。这是比较简 单、有效的控制方法,但是需要人工干预,采集信息的局限性强。网站包含的 一些非主题信息也都进行了采集索引,查询时这些结果就成为搜索噪音。 ( 2 ) 先采集后过滤策略 爬虫先依次将各个网站上的页面信息采集下来然后再进行过滤,删除与主 题不相关页面,保留相关页面。这种方法对w 曲一定范围内所有信息进行采集、 更新,适应性较强,但是需采集网站上所有页面,信息传输量大;对采集回来 的页面经判定如果与主题无关则被过滤掉,这样将抛弃大量与主题无关的页面。 ( 3 ) 最佳搜索策略 该策略是基于如下的假设:与某个主题相关的页面常常是相互链接的。它 的特点是在w e b 一定范围内,针对主题信息,通过对网页的相关性的预测来控 制信息的采集,仅仅采集索引与主题相关的信息。最佳搜索策略能有效地保证 定向采集精度,较好地实现程序的自动搜索,降低网络传输开销,缩短采集时 间、减少存储,是垂直搜索引擎的发展方向和当前研究的热点。 第三节n u t e h 相关技术 因为本文实现的系统是对开源搜索引擎n u t c h 进行改进完成的,只有在深入 了解其工作原理的基础上才能做相应的改进工作,因此,本节有必要先分析 n u t c h 的工作机制,理解其运行流程,从而可以在对应的位置加入主题相关度判 别等功能,以使其成为一个垂直搜索引擎。本系统使用n u t c h 目前最稳定的0 9 第1 3 页 第二章垂直搜索引擎与n u t c h 介绍 版进行开发。 2 3 1n u t c h 简介 n u t c h l 2 0 1 是用j a v a 语言实现的开源搜索引擎,提供了开发人员运行自己的搜 索引擎所需的全部工具。n u t c h 能够每个月抓取几十亿网页、为这些网页维护一 个索引、对索引文件进行每天上千次的搜索、提供高质量的搜索结果并以最小 的成本运作。它使用l u c e n e 作为索引和检索的模块,n u t c h 和l u c e n e 都是同一个 作者d o u gc u r i n g 完成的。同时n u t c h t e 常灵活,可以被定制并集成到其他应用程 序中;使用n u t c h 提供的插件机制,可以方便的添加非英文信息处理、特定文档 格式的解析等功能,使其成为一个搜索不同信息载体的搜索平台。现在所有主 要的商业搜索引擎都采用私有的排序算法,不会解释为什么一个网页会排在一 个特定的位置,而且有的搜索引擎依照网站所付的费用,而不是根据它们本身 的价值进行排序。与它们不同,n u t c h 没有什么需要隐瞒,也没有动机去扭曲搜 索的结果。n u t c h 将尽自己最大的努力为用户提供最好的搜索结果,从而更值得 用户信赖。 2 3 2l u c e n e 简介 l u c e n e 2 q 是a p a c h e 软件基金会j a l ( a n a 项目组的子项目,它不是一个完整的全 文索引系统,而是一个用j a v a 写的全文索引引擎工具包,提供了多个a p i 函数和 灵活的数据存储结构,可以方便嵌入到各种应用中实现针对应用的全文索引和 检索。l u c e n e 的整体结构具有鲜明的面向对象特征。首先是定义了一个与平台无 关的索引文件格式,其次通过抽象将系统的核心组成部分设计为抽象类,具体 的平台实现部分设计为抽象类的实现,此外与具体平台相关的部分比如文件存 储也封装为类,经过层层的面向对象式的处理,最终达成了一个低耦合高效率, 容易二次开发的检索引擎系统。 l u c e n e 由基础结构封装、索引核心、对外接h - - 大部分组成,其中直接操 作索引文件的索引核心又是系统的重点。l u c e n e 应用了最基本的一条程序设计 准则:引入额外的抽象层以降低藕合性。 l u c e n e 索引过程分为三个主要操作阶段:将数据转换成文本、分析文本、 并将分析过的文本保存到索引库中。其流程如图2 5 所示: 第1 4 页 第二章垂直搜索引擎与n u t c h 介绍 丫 图2 5l u c e n e 索引流程 首先l u c e n e 使用各种解析器对各种不同类型的文档进行解析,解析器输出 的是文本内容,接着l u c e n e 的分词器( a n a l y z e r ) 从文本内容中提取出索引项以及 相关信息,比如索引项的出现频率。然后l u c e n e 的分词器把这些信息写到索引 文件中。l u c e n e 的索引( i n d e x ) 由若干段( s e g m e n t ) 组成,每一段由若干的文档 ( d o c u m e n t ) 组成,每一个文档由若干的域( f i e l d ) 组成,每一个域由若干的项( t e r m ) 组成。项是最小的索引概念单位,它直接代表了一个字符串以及其在文件中的 位置、出现次数等信息。域是一个关联的元组,由一个域名和一个域值组成, 域名是一个字符串,域值是一个项,比如将“标题”和实际标题的项组成的域。 文档是提取了某个文件中的所有信息之后的结果,这些组成了段,或者称为一 个子索引。子索引可以组合为索引,也可以合并为一个新的包含了所有合并项 内部元素的子索引。可以看出,l u c e n e 的索引结构在概念上即为传统的倒排索 引结构。 l u c e n e 和数据库检索最大的区别在于l u c e n e 让头1 0 0 条记录满足9 0 以上 用户的需要。数据库检索结果仅仅是匹配,不考虑这些数据是否为用户所想所 需。 第1 5 页 第二章垂直搜索引擎与n u t c h 介绍 2 3 3n u t c h 架构 n u t c h 作为一个搜索引擎,其基本组成也同其他搜索引擎样。简单的说, 包括爬虫,索引和搜索三部分。其体系结构如图2 6 所示: l 胜入原始u _ 一5 更新待爬取u i 也 w e b d b 2 生成要抓取的列表 4 解析出的数据 图2 6n u t c h 体系结构图 ( l u c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论