摘 要:搜索引擎是一种互联网数据信息检索工具,它可以从复杂无序的信息中检索出用户需要的有用信息,将杂乱的信息变得有序、清晰。但由于网络上有着大量信息,搜索到的信息难免不够全面与精准,可能存在过多垃圾信息。为了很好地解决以上问题,一种新型的搜索服务模式――垂直搜索引擎系统应运而生。该系统可为用户提供最专业、及时的信息,并加强了搜索结果的精准性和全面性。
关键词:网络资源信息;垂直搜索引擎;系统设计;系统实现
中***分类号:TP319
文献标识码:A 文章编号:1672-7800(2015)005-0080-02
作者简介:徐婕(1975-),女,湖北武汉人,博士,湖北大学计算机与信息工程学院副教授,研究方向为计算机网络、嵌入式系统。
0 引言
随着互联网的发展,网络上的资源信息也呈爆炸式增长,调查报告显示,我国网络上已有300多万个网站,网页总数将近200亿。搜索引擎是互联网上一种检索数据信息最有用的工具,在网络资源不断发展的今天,它成为网民上网不可缺少的工具。用户在网页上输入想要搜索的信息关键字,搜索引擎便会从杂乱无序的网络资源中迅速有效地找出用户需要的信息,简单整理之后迅速呈现给用户,非常方便、有效。
1 垂直搜索引擎定义
网络上的搜索引擎一般分为两种,一种是通用式搜索引擎,像一般用到的百度、谷歌等都属于这类。这类搜索引擎会检索网络上的所有网站来寻找用户需要的有用信息,搜索范围极广,涉及各种行业;另一种是垂直式搜索引擎,这类搜索引擎可以看作通用搜索引擎的延伸,其针对性很强且非常专业,主要针对某种需求、某个领域或某类人群,为其提供最可靠、精准的需求信息。垂直式搜索引擎与通用式搜索引擎不同,垂直式搜索引擎具有浓重的行业色彩,对于搜索到的信息能够进行深入全面的挖掘,不会收录无用信息。专注、深入、精确是垂直搜索引擎的3大特点[1]。
2 垂直搜索引擎优点
随着互联网上信息的飞速增加,通用搜索引擎逐渐暴露出其搜索不够精准的缺点,用户渴求更有效率、更方便的搜索工具。垂直搜索引擎能很好地解决用户的不同检索需求,它只注重用户检索需求的特定信息,选择性地进行信息收集并对其进行整理。该搜索引擎所涉及专业领域较少,信息量不是很大,能够对信息进行及时更新,并能有效地避免一词多义的情况,不会让用户对词语产生误解。垂直搜索引擎具有非常强的专业性与目标性,对于需要搜索的目标内容有非常明确的定位,解决了通用搜索引擎对目标信息检索不全面的问题。
3 垂直搜索引擎功能设计和实现
3.1 主题词库相关技术设计和实现
(1)设计主题种子库。种子库的实现运用了人工筛选方式,假如要制作“娱乐”这个主题,到娱乐网站下寻找有关内容作为种子即可。URL的种子有两种存储方式,一种是运用数据库进行存储,另一种是运用文件进行存储。从种子的安全方面考虑,运用数据库对种子进行存储比使用文件存储更为安全有效。在实际设计时,主题词库中可以有多个种子,但每个种子只能对应一个主题,用来限制机器人在网络中爬行的距离范围,以提高引擎的搜索效率与精准率[2]。
(2)设计主题词库。主题词库在进行设计时,通常会被分为很多个层次。设计时,在低层次中,会使用较小颗粒的词汇,而在高层次中,则会使用较大颗粒的词汇。低层次的词库主要负责挖掘网页最底层与最细化的信息,高层次的词库会在上层覆盖大范围的网页。在网页上爬行时,第一步是根据词库对网页上的所有中文词汇进行切词,第二步是使用专门的算法来评价主题和网页的关联性,以此判断需不需要将网页建立成一个索引。主题词库里的词汇都是该主题下最新鲜与最具热点的,应用该主题词库,搜索的准确性会提高很多。
(3)主题与网页的相关度算法。在执行垂直搜索任务时,不仅可以依据超级链接来实现相关度的判断,还可以依据内容对页面进行相关度的定量判断。然后将测评结果不符合要求,即没有达到指定值的页面排除掉,只采用测评结果合格的页面,以保证搜索页面的精准程度。
(4)实现主题词库。主题词库大多运用分层结构。在主题词库中,所有主题词都储存在两张哈希表中,一张哈希表中存放词库里的全部主题词,另一张哈希表中存放主题词上级与下级的联系。主题词库一般用文件储存,文件的扩展性非常好,并且读取内容速度快,具有数据结构化、方便操作等特点。
3.2 中文分词设计与实现
在搜索内容时,引擎会把网页中的相关信息放入内存之中,对这些信息分词,并根据结果使用有关的相关度算法判断该网页是不是主题网页,需不需要建成一个索引。对于垂直搜索引擎而言,引擎搜索是否准确,主要看对于中文分词能否进行很好的操作。中文分词有很多种方法,如理解分词方法、匹配字符串方法、统计分词方法等。不过使用最多的是最大匹配分词方法[3]。
在使用最大匹配分词方法时,需要运用一个字典。进行分词时,需要将字典里的词汇与文本里的词汇进行对比,若对比成功,则可对文本中的词汇进行切分处理,反之则不能进行切分。该方法的目的是使用长词汇与文本中的词汇进行对比,对完整的字符串从头到尾进行扫描。通过尽可能长地进行比对,以确保词汇准确性。
3.3 网络机器人设计和实现
(1)设计网络机器人的协作关系。网络机器人在执行网页爬行任务时一般使用多线程方法。人们常把单独执行网络爬行任务的机器人称为爬行器,爬行器通常靠爬行控制器来启动使用,控制器还负责给爬行器分配任务、初始化爬行信息等。爬行器的并发需要控制器的配合,控制器可以控制爬行器在规定范围内执行爬行任务,避免重复爬行。爬行器会对网页解析出来的内容进行提取,提取出有关的URL,过滤掉无用信息,并完成主题网页相关度的有关计算。
(2)设计可以使用多线程***的爬行器。一个系统给处理器分配的最小单元称为线程。为了有效提高机器人在网页中的爬行效率,可以使用多线程技术。系统为爬行器设置了有关的控制爬行的线程,多线程技术的运用,可以最大化地缩短***时间,并且有效提高网页爬行效率。工作人员还能够利用该线程监测爬行的即时状态。因此,用于控制爬行的线程是网络机器人在爬行任务中不可或缺的一个部分。
4 结语
如今,随着互联网技术的飞速发展与网络上信息的不断增长,用户对信息的检索次数也呈上升趋势,而且对于搜索引擎的专业性要求也越来越高。传统的通用式搜索引擎已逐渐无法满足用户的多样化需求,因此诞生了新型的垂直式搜索引擎,可弥补通用式搜索引擎的缺陷。垂直搜索引擎在网络中执行搜索任务时使用什么样的访问策略也已成为一个研究热点。使用垂直式搜索引擎,可以在网络上搜索到用户需要的最精准的信息,用户无需再多花时间对搜索到的信息进行仔细分析,从而大大节省了用户时间,提高了搜索信息的准确性,因此该引擎的使用将会越来越广泛。
参考文献:
[1] 文必龙,唐苏龙,张浩.主题搜索引擎征模型技术的研究[J].计算机技术与发展,2013,23(4):87-90.
[2] 史宝明,贺元香,吴崇正.主题搜索引擎中爬虫搜索策略的研究[J].计算机工程与应用,2014,50(2):116-119.
[3] 郭彦秋.浅析百度与谷歌两搜索引擎的比较与分析[J].才智,2012(6):177-180.
[4] 张敏.基于本体的垂直搜索引擎的研究[J].软件导刊,2010,9(2):13-15.
转载请注明出处学文网 » 垂直搜索引擎系统研究与实现