开题报告-社会图书检索系统的设计与实现.doc_第1页
开题报告-社会图书检索系统的设计与实现.doc_第2页
开题报告-社会图书检索系统的设计与实现.doc_第3页
开题报告-社会图书检索系统的设计与实现.doc_第4页
开题报告-社会图书检索系统的设计与实现.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

北京科技大学本科生毕业设计(论文)选题报告目 录1 文献综述11.1本课题国外研究进展21.1.1搜索引擎国外研究进展21.2本课题国内研究进展31.2.1搜索引擎国内研究进展32 课题背景及开展研究的意义52.1课题背景52.1.1图书搜索引擎出现的背景52.1.2 本课题建立的背景52.2开展研究的意义53 研究内容、预期目标及研究方法63.1研究内容63.1.1 目标数据的下载与清洗63.1.2 图书信息数据库的设计、建立和更新73.1.3 图书搜索引擎的实现73.2预期目标83.3研究方法83.3.1 开发平台83.3.2 E-R模型和MySQL数据库83.3.3 标准Trie树和AC算法83.3.4 Lucene.NET技术93.3.5 ASP.NET与搜索界面94 进度安排10参 考 文 献11- 13 -1 文献综述搜索引擎经过最近几十年的快速发展,已经改变了人们的记忆方式,有研究表明,人们会忘记自己能在网络上找到的信息而记住自己认为无法在网络找到的信息。研究也发现人们更容易记住在互联网的何处能找到这些信息,而不是记住这些信息内容本身。从某种意义上讲,由于有了搜索引擎,我们才可以把一些记忆任务交给机器来完成1。目前,网上综合性的传统搜索引擎发展日益成熟,能够较好地满足广大用户的检索需求。但网络技术发展与网络信息增长迅速,网络信息的用户也越来越多,相比之下,综合搜索引擎在索引数据库建设、信息收集等方面存在很多不足,导致了信息查准率低、有用信息含量低等问题。尤其在满足用户的专业检索需求时这些问题更为突出,这样难以满足专业人士的检索需求。因此,应开发搜索质量更准确、相关性更复杂的搜索引擎,以追求在某一学科或某一行业领域有最佳的检索效率及效果,各种垂直搜索引擎随之产生。垂直搜索引擎的应运而生,成为搜索引擎发展史上的一块里程碑。未来,图书搜索引擎将成为我国网民整体阅读文化的重要引导方式之一。随着互联网提供的服务越来越多,以及网民的不断成长,通用搜索引擎已经无法满足网民的全部需求,在图书领域这样的情况更是明显。改变这种状况的根本办法,就是推出专业图书搜索引擎2。据了解,在中国互联网市场上,百度和谷歌都拥有自己的图书搜索。其中,百度的图书搜索以搜索图书目录为主,然后网民可以链接到网上书店购买纸质书。谷歌图书搜索可以搜索到一些电子书的部分章节,但一经推出便面临多起版权纠纷问题3。本课题意图研究和开发一套基于本地图书数据库搜索的图书的搜索引擎,用户可以通过键入关键字来搜索图书,得到图书的基本信息,网络信息,和书评、读书笔记等一系列的有关于图书的信息。通过在豆瓣网上下载图书的网页,清洗数据,信息整理入库,建立索引库,设计搜索算法,实现用户界面,完成一个简单的图书的搜索引擎,方便用户使用。1.1本课题国外研究进展1.1.1搜索引擎国外研究进展目前,国际上的搜索引擎主要分成以下几类4:(1)基于目录的搜索引擎:基于目录的搜索引擎将收集到的信息分配到不同的类别中,典型的基于目录的搜索引擎有Yahoo,但这类搜索引擎有两大问题:分类是按分类者或分类软件的分析而定,不一定与用户的意见一致;如果你查找的信息没有对应的分类项,则无法进行搜索。(2)基于机器人的搜索引擎:基于机器人的搜集引擎从一组已知的文档出发,通过这些文档的超文本链接确定新的检索点,然后用索引机器人周游这些新的检索点,标引这些检索点上的新文档,将这些新文档加入到索引数据库。以后搜索引擎可以用这个索引数据库去回答用户的提问,搜索方法有深度优先和广度优先两种。广度优先算法先标引新服务器上的新文档,然后标引已知服务器上的新文档,即找到尽量多的服务器,它保证一个服务器上至少有一篇文档加入索引数据库。它能降低服务器被访问的频度,缺点是不能深入文档。深度优先的算法能较好地发掘文档结构,如相互参照的链接结构,而且相对比较稳定,缺点是有可能进入无限循环。数据检索方法有基于全文和基于标题两类。基于机器人的搜索引擎常的缺点是不安全及产生大量的网络负载和服务器负载,常用的基于机器人的搜索引擎有ALTAVISTA等。(3)基于关键字检索的搜索引擎:从一组已知的关键字出发,检索WWW上的包含此关键字的文档并传送这些文档,并且从文档中的超文本链接找到更多的文档,在提交给客户前,搜索引擎会对所有检索到的文档进行排序,新一代的基于关键字的搜索引擎会根据访问用户的相关信息给用户提供个性化的服务,这也正是我们所希望达到的目标。(4)元搜索引擎:元搜索引擎将用户的查找要求递交给其他搜索引擎,它的注意力放在改进用户界面及用不同的方法过滤它从其他搜索引擎接收到的相关文档,包括消除重复信息。元搜索引擎设计简单,但网络的负载太大,典型的元搜索引擎有METACRAWLER等。(5)分布式搜索引擎:分布式搜索引擎按区域、主题或其它标准创建分布式索引服务器,索引服务器之间相互可以交换中间信息,且相互可以被重新定向,如果一个检索服务器没有满足查询请求的信息,它可以将查询请求发送到具有相应信息的检索服务器,由于分布式搜索引擎将索引数据库划分到几个分布的数据库中,每个数据库变得小一些,但所有搜索引擎覆盖的范围变大,且很少有信息重复,而作为分布式系统特征之一的可扩充性也是分布式搜索引擎的优点之一,然而分布式搜索引擎需要多个索引数据库协同工作,实现较困难,目前尚没有真正的、实用的分布式搜索引擎。1.2本课题国内研究进展1.2.1搜索引擎国内研究进展3B大战也提醒着我们在国内搜索引擎界也再不是像之前那样,在平静中孕育着一个僵局,无论是国外来的谷歌、必应,还是国内的后起之秀搜狗、搜搜及有道,大概都没有想过要挑战百度,又或者是心有余而力不足,还可能是小富即安,有人吃肉有人喝汤的日子也过的相安无事。百度搜索:业界公认的搜索引擎老大,在国内,百度搜索引擎深得民心,“百度一下”成为时髦用语。前面的几年似乎有些艰难,各处都看不到有更好的起色,直到互联网开放共享的2011年,百度第一时间推出了开放平台,成千上万的程序开发者入住开放平台。最近的百度世界大会,百度直接开放核心云,给开发者发放了更多的福利,提供包括百度个人云存储(PCS)、LBS云、移动云测试中心(MTC)、百度应用引擎(BAE)、多屏幕Screen X技术、百度移动云的应用生成服务(Site App)及百度移动浏览内核在内的“七种武器”,这意味着百度完成了从搜索引擎到平台提供商的过渡。搜狗搜索:自2004年上线以来,搜狗现在已经摸索出了一条“搜狐门户加搜狗搜索引擎加搜狗浏览器加搜狗输入法”的综合道路。在网络推广方面,综合性推广是比较占有优势的,因为搜狐门户网的资源比较充足。同时搜狗搜索也开放了API数据接口,同样是开放平台以招徕开发者入住,以更多的应用产品来吸引更多的用户。腾讯搜搜:腾讯基本上走的还是传统搜索引擎的路线,而与百度相比,腾讯搜搜的优势在客户端上,每一个QQ客户端都可以轻松的集成搜搜,并能随时完成网页与客户端的粘结,使用户更为方便。有道搜索:“开放共享”的当代互联网精神下,有道仍然坚持“不做平台做搜索”。有道的综合性网络推广也做的有声有色,也是在走产品-搜索-门户结合的路线。中搜,第三代搜索。中搜比百度稍微晚几年回归通用搜索引擎领域,主打第三代搜索引擎技术,据称第三代搜索引擎技术经历了桌面搜索、二代网页搜索、垂直搜索、行业搜索之后,首次定义CIVIA标准,可以将用户搜索的结果全面、准确、智能的推送,并且兼有互动的功能。360综合搜索:目前主要的产品几乎与其他几个搜索雷同,包括新闻、网页、视频、图片、MP3、地图、问答、购物等搜索,其中360自己的产品为新闻、网页、视频及问答,图片数据来自即刻搜索与谷歌,视频数据来自360影视、谷歌与搜库,地图数据来自谷歌,MP3数据则来则谷歌、百度及搜狗,购物数据来自淘宝及凡客诚品。即刻搜索:即人民搜索,2011年6月底,运营已满一年的人民搜索正式启用新域名jike。即刻搜索除了为用户提供常见的新闻、网页、视频、图片等搜索,其特色项目在于曝光台和食品安全,其运营理念是搭建以搜索为核心的互联网生态体系,为互联网的发展而努力。2 课题背景及开展研究的意义2.1课题背景2.1.1图书搜索引擎出现的背景搜索引擎的出现似乎让我们随心所欲的查找到自己想要的东西比如我们要用通用的搜索引擎搜索一本关于计算机网络方面的书籍,我们输入关键字会得到很多条结果,观察这些结果我们会发现大多数结果并不是我们要找的图书,有的是课程,有的是辅导,多数与书籍没有关系。通过例子我们可以发现,我们要搜索图书的时候,搜索结果会有大量的不需要的信息,怎么样才能准确的找到我们想要的书呢?图书搜索引擎的出现很好地解决了这个问题。由此可见图书搜索引擎为我们打开了一道寻找图书资源的大门5 。2.1.2 本课题建立的背景随着人们对图书的需求越来越高,所需获取的图书信息的种类也越来越多,而不仅仅局限于图书的内容。同时,由于人们的生活节奏越来越快,越来越无暇去图书馆一本一本去翻阅图书找到自己需求的资料和信息。这时候我们需要有一个便捷的图书搜索引擎,除了能够提供图书的基本信息,还能够提供阅读过图书的读者为我们带来的评论和读书笔记的信息,并且可以基于图书的内容简介键入关键词进行搜索,得到图书的相关信息。基于以上现状,本课题意图研究和开发出一套可以实现根据关键词搜索豆瓣图书的相关信息的简易的搜索引擎。2.2开展研究的意义 图书检索系统是针对读者的需求,全面满足采集图书信息,图书信息管理,图书信息检索,图书信息分析为一体的系统:建立在下载豆瓣图书的网页数据的基础上,建立本地图书数据库进行存储所有图书信息,并通过建立索引库的方式,让用户便利的搜索图书,得到有关图书的信息。3 研究内容、预期目标及研究方法3.1研究内容本课题意图研究和开发出一套可以实现根据关键词搜索豆瓣图书的相关信息的简易的搜索引擎。利用此系统,可以让用户在界面上输入一个或多个关键词,搜索出和关键词相关的图书的信息。整个工具完成流程如下:先从豆瓣把所有相关的网页下载到本地,进行数据清洗,提炼需要的数据,进行格式的统一存储在数据库里;然后建立索引库,设计查询算法,实现用户界面,完成整个搜索过程。3.1.1 目标数据的下载与清洗这是本课题实现的基础。数据准备是搜索引擎的基础,没有数据搜索无从提及。6本课题使用的数据来自于豆瓣图书,即下的所有网页数据。有两个方法可以采用,第一种是使用豆瓣本身的sitemap找到所有的URL,写一个下载器对网页进行下载;第二种是通过对开源爬虫Heritrix的参数进行修改,直接爬取下的所有网页。无论是哪种方法,都必须解决的问题就是豆瓣的反爬虫机制,防止下载的网页全部是404 Forbidden 这样的无效数据。豆瓣图书的网页信息,由于豆瓣开发人员的批次不同,导致网页的格式标准不同,数据的内容属性都很复杂,因为会给清洗工作带来很多影响。豆瓣图书信息包括:图书基本信息、图书评价信息(用户打分)、书评和读书笔记。对于不同类别的信息,通过正则方法清洗的过程中,不断进行检查和修改正则表达式,把冗余和不需要的信息去掉,对需要的信息进行提取 8 。由于网页上直接提取出来的数据格式并不统一,还需要把提取出来的有效信息进行格式的统一。只有格式统一的数据,才能够方便的与数据库交互,增、删、改、查的数据库相应操作得到的数据才能够可靠 9 。据不完全统计,豆瓣大约有300多万本图书,其中每本热门图书有20以上的评论和20以上的读书笔记。所以数据量非常大,数据的下载工作非常耗时,所以在课题的开展中,需要考虑对所有的图书数据一边下载一边清洗。3.1.2 图书信息数据库的设计、建立和更新这是本课题核心目标之一。由于豆瓣图书是我数据结构十分复杂,层次多,节点多,这就意味着数据的属性多,数据的内容复杂,对数据库的设计要注意多方面的影响:(1)需求分析好后,找实体,不要有所遗落;(2)分析实体里所要涉及到的属性;(3)分析属性的类型,长度;(4)实体间的关系,要满足需求和现实;(5)写出关系模式;(6)优化关系模式;(7)建数据库;(8)数据库安全性设置10 。对于豆瓣图书数据库结构的设计,有以下思路:把数据分为books和reviews两部分,其中books中存放的是图书基本信息,图书的网络信息,图书的作者信息,reviews里面存放图书的评价信息,评论信息,笔记信息,以及一系列和读者有关的信息 11 。豆瓣上图书的信息与日俱增,时时更新。当有了新的数据,可以重新运行一次程序,将更新的书籍信息解析清洗后更新入总库,并可以参与后续的搜索任务。3.1.3 图书搜索引擎的实现一个完整的搜索引擎的开发,包含网络爬虫,文档的清洗和索引,自然语言处理,中文分词,搜索算法,搜索用户界面的实现。而最核心的部分就是搜索的算法和搜索用户界面的实现 12 。对于已经建立好的数据库,准备先建立一个索引库,然后通过一定的算法遍历已经建立好的索引库,本次课题是通过开源程序Lucene.NET来从索引库中查询出和关键词相关的结果。整个查询过程,首先要做的是分析查询串的文本,确定需要查询的字符串,接下来确定哪些目标数据在结果集中,如果查询多个词,就要使用布尔逻辑确定文档集的范围,然后为结果集中的条目打分,计算条目和查询词的相关度,按照相关度排名得到结果 13 。为了方便用户的使用,还要完成搜索用户界面的实现。界面的实现主要分为搜索页面的设计,搜索接口的实现,实现关键字的高亮显示,实现分类统计视图,可选的相关搜索词的实现,AJAX自动完成的实现几个步骤 14 。除此之外,还可以集成一些拼写检查、黑明单等辅助功能。3.2预期目标开发出一套可以实现根据关键词搜索豆瓣图书的相关信息的简易的搜索引擎。利用该搜索引擎,用户可以使用可视化界面,方便快捷地在已有的数据库中根据关键词,得到与关键词相关度较高的图书的信息以及与图书相关的评论和笔记的信息。除此之外,用户还可以利用本系统对本地下载完毕的豆瓣图书数据库进行更新,自动根据豆瓣的数据进行网页下载、图书网页数据的清洗,以及整理存储在数据库里。用户还可以随时方便快捷地更新数据库中错误的、过期的或者不完整的数据。此工具旨在通过建立一个本地图书数据库和图书搜索引擎,既可以让用户在读书前通过了解图书信息,以及网友的书评信息选择图书,也可以让用户在读书后通过其他人的笔记分享读书心得。3.3研究方法3.3.1 开发平台本课题使用C#语言,在Visual Studio 2010开发平台上进行开发设计。3.3.2 E-R模型和MySQL数据库学习关系型数据库的设计方法,利用E-R模型设计合理的数据库结构,来存储解析清洗后的图书信息,以方便统一地管理和分析。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL的SQL语言是用于访问数据库的最常用标准化语言 15 。3.3.3 标准Trie树和AC算法学习标准Trie树和有限状态机相关知识,了解标准Trie树结构的特点,结合AC算法,通过修改开源程序完成中文分词功能。3.3.4 Lucene.NET技术Lucene.NET技术是Java版本移植过来的可以用来索引几百万篇以下的文档,使用布尔模型来确定哪些文档匹配查询词,使用向量空间模型(VSM)来对这些文档进行评分 16 。通过修改Lucene.NET的源代码实现对百万图书信息的检索,用户可以看到搜索结果中和查询词最相关的前面几条图书数据,把搜索结果看成是一个优先队列,相关度分值高的结果排在前面 17 。3.3.5 ASP.NET与搜索界面搜索用户界面一般和网站的用户界面集成在一起,使用同样的技术开发,方便部署和维护。在ASP.NET页面调用搜索程序,然后把页面发布到IIS服务器中 18 。通过搜索页面设计,实现搜索接口,最终实现ASP.NET显示Lucene.NET返回根据关键词搜索的图书条目 19 。4 进度安排1-5周:选择毕设题目,完成项目任务书,明确设计目标和要求,查阅资料,完成选题报告与页面设计;6-11周:学习相关技术,进行项目配置与开发、部署,完成中期报告;12-14周:调试程序,进行功能测试;15-16周:进行工作总结,撰写论文,准备答辩。本人签名:年 月 日参 考 文 献1 罗刚. 使用C#开发搜索引擎 M. 北京: 清华大学出版社, 2012.2.2 叶大恩. 网络信息下的图书馆管理系统J. 中国科教创新导刊, 2009, (23).3 胡华梁, 何进, 钟元生. 网络信息下的图书馆管理系统J. 计算机与现代化, 2005, (8).4 W.Bruce Croft, Donald Metzler, Trevor Strohman. 搜索引擎: 信息检索实践 M. 刘挺, 秦兵, 张宇, 车万翔译. 北京: 机械工业出版社,2010.2.5 孙立宏, 汪鑫圭. 图书搜索引擎资源及其利用探析 D. 青岛: 青岛科技大学数理学院, 2008.6 袁津生, 程超然. 基于文本聚类搜索引擎的查询扩展算法 J. 计算机工程与应用, 2012.7 张贝克, 焦迪楠, 马昕, 李晶晶. .Net平台下知识网络系统及其搜索引擎的设计与实现 J. 微型机与应用, 2011.8 沃森内格尔. C#入门经典M. 第3版. 北京:清华大学出版社,2006.9 Andrew Troelsen. Pro C#2008 and the NET 3.5 Platform Four

温馨提示

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

评论

0/150

提交评论