一种搜索方法和系统技术方案

技术编号:2918639 阅读:237 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种搜索方法,在建立或更新索引数据库时,执行以下步骤:A1,统计输入的网页正文中有效词条的各种组合的频次;A2,对频次大于设定阈值的复合词建立索引。本发明专利技术还公开了一种搜索系统。本发明专利技术利用统计学原理统计出网页中出现频度高的复合词,对这些复合词单独建立索引,减小搜索时对搜索词条的拆分粒度,从而减少搜索引擎的索引查询次数和求交集、求并集运算的次数,大大地提高搜索引擎的检索速度,达到快速响应用户的目的,提高用户体验。同时,由于通过概率统计有选择的对多元词条建立索引,提高了索引数据库的利用率和系统的检索准确率。

【技术实现步骤摘要】

本专利技术涉及计算机技术,特别涉及一种搜索方法和系统
技术介绍
随着因特网的迅猛发展,各种信息呈现爆炸式的增长,用户要在信息海洋里查找信息,就象大海捞针一样。每个上网用户面临信息过载的问题,无法准确找到所需要的信息。搜索引擎正是为了解决这个“迷航”问题而出现的技术。搜索引擎提供的导航服务已经成为互联网上非常重要的网络服务,成为和电子邮件并列的最重要的互联网应用。搜索引擎为用户提供信息“检索”服务,它使用蜘蛛程序把因特网上的所有信息归类以帮助用户在海量的互联网信息中搜寻其所需要的信息。搜索引擎的原理主要包括三步1)从互联网上抓取网页,2)建立索引数据库,3)在索引数据库中搜索排序。搜索引擎是当前竞争非常激烈的领域,其竞争的重要点除了内容的丰富以外,还有用户体验。目前,搜索的速度已经成为用户体验好坏的决定性因素之一。目前,搜索引擎处理用户请求,需要对用户的检索词进行拆分(分词),然后对拆分后的词语分别索引查询,得出每个词语的搜索结果。例如,用户搜索“北京体育馆”时,搜索引擎的动作为①把用户的搜索请求“北京体育馆”拆分为“北京”和“体育馆”两个词;②对“北京”进行索引查询,得到结果集合A;③对“体育馆”进行索引查询,得到结果集合B;④对A和B进行求交集运算,得到AB的交集X;⑤对AB进行求并运算,得到AB的并集合Y;⑥向用户输出搜索结果。搜索结果的排序顺序为集合X中的网页排在最前面,其次是Y中的不在X的元素,最后是A和B不在X集合中存在的元素。这样,当检索词为“中国人民银行”时,首先拆分词语为“中国”,“人民”,“银行”,然后进行三次索引查询,如果采用两两求交,两两求并规则,要进行三次求交集运算、三次求并集运算才能得到最终搜索结果。其缺点是对搜索词条的拆分粒度小、搜索引擎的索引查询次数和集合运算次数多,系统查询效率较低,搜索速度较低。现有的搜索引擎在建立索引的过程中对无意义的组合也建立了索引,造成空间浪费。如目前的二元索引就是不管词语的逻辑关系,直接对每个二元组合建立索引,有“我看见”,“看见你”,“你在”,“在那里”等。又由于上述缺点,不可能建立太多元的索引,最多建立到三元,因为空间膨胀太厉害,导致索引量不够。
技术实现思路
本专利技术的目的在于提供一种搜索方法和系统,利用词条相对频度抽取复合词单独建立索引,减小搜索词条的拆分粒度、减少集合运算次数。本专利技术的技术方案是一种搜索方法,在建立或更新索引数据库时,执行以下步骤A1,统计输入的网页正文中有效词条的各种组合的频次;A2,对频次大于设定阈值的复合词建立索引。具体的,所述有效词条是网页正文中至少去掉停用词后的词条。作为优选,步骤A1中,所述统计词条各种组合的频次的方法包括以下步骤A11,读取一个网页正文,去停用词后进行分词;A12,对分词得到的词条的各种组合进行词频统计;A13,输出频次大于设定阈值的组合词条,并保存到复合词表中。作为优选,步骤A11中,在分词前首先将网页正文转换为标准数据格式,然后至少进行过滤脚本标示符和广告信息的操作。作为优选,步骤A11中,对转换为标准数据格式的网页正文去停用词和虚词后进行分词。本专利技术中所述复合词为二元以上的组合词条。本专利技术一种搜索方法进一步包括步骤B1,在接收到检索词后,根据复合词表对输入的检索词进行分词;所述复合词表包括频次大于设定阈值的所有复合词。本专利技术还提供了一种搜索引擎的搜索系统,包括顺次相连的网页抓取模块、网页数据库、索引模块、索引数据库和搜索模块;所述索引模块包括文档预处理单元、分词单元和索引建立单元;所述索引建立模块还包括词频统计单元,用于对所述分词单元输出的词条的各种组合进行词频统计,并将频次大于设定阈值的组合词条输出到索引建立单元,由索引建立单元对所述组合词条建立索引。进一步的,所述索引数据库用于存储所述索引建立单元建立的索引;所述索引数据库中还存储有复合词表,所述复合词表中存储着所述词频统计单元输出的复合词。进一步的,所述搜索模块包括顺次相连的检索词分词单元、搜索单元和结果处理单元;所述检索词分词单元用于根据所述复合词表对输入的检索词进行分词,并将分词后词条输出到所述搜索单元;所述搜索单元用于将所述分词后词条作为关键词在索引数据库中进行索引查询,并将查询结果发送到所述处理单元;所述处理单元用于对所述查询结果进行求并集、求交集,排序后发送到操作窗口进行显示。本专利技术利用统计学原理统计出网页中出现频度高的复合词,对这些复合词单独建立索引,减小搜索时对搜索词条的拆分粒度,从而减少搜索引擎的索引查询次数和求交集、求并集运算的次数,大大地提高搜索引擎的检索速度,达到快速响应用户的目的,提高用户体验。同时,由于通过概率统计有选择的对多元词条建立索引,提高了索引数据库的利用率和系统的检索准确率。附图说明图1是本专利技术搜索系统的系统结构图。图2是本专利技术搜索方法在建立或更新索引数据库时的流程图。图3是本专利技术搜索方法在收到检索请求后的流程图。具体实施例方式下面根据附图和具体实施例对本专利技术作进一步阐述。如图1所示,搜索系统10包括顺次相连的网页抓取模块100、网页数据库200、索引模块300、索引数据库400和搜索模块500。其中,网页抓取模块100负责自动从互联网提取信息,并将提取到的信息保存在网页数据库200中。一般的做法是网页抓取模块100通过能够从互联网上自动收集网页的网络蜘蛛程序,自动访问互联网,并沿着任何网页中的所有URL(统一资源定位器)爬到其它网页,重复这过程,并把爬过的所有网页收集到网页数据库200中。搜索引擎的自动信息搜集功能分两种,一种是定期搜索,即每隔一段时间(比如28天),网页抓取模块100主动派出“蜘蛛”程序,对一定IP地址范围内的互联网站进行检索,一旦发现新的网站,“蜘蛛”程序会自动提取网站的信息和网址加入网页数据库200;另一种是提交网站搜索,即网站拥有者主动向搜索引擎提交网址,搜索引擎的网页抓取模块100会在一定时间内(2天到数月不等)定期对应网站派出“蜘蛛”程序,扫描网站并将有关信息存入网页数据库200。网页数据库200负责存储网页抓取模块100获得的全部网页,以备用户搜索使用。索引模块300负责对网页数据库200中存储的网页进行分析,提取相关网页信息(包括网页所在URL、编码类型、页面内容包含的关键词、关键词位置、生成时间、大小、与其它网页的链接关系等),根据一定的相关度算法进行大量复杂计算,得到每一个网页针对页面内容中及超链中每一个关键词的相关度(或重要性),然后用这些相关信息建立网页索引,并将建立好的索引存储到索引数据库400中。本实施例中,索引模块300包括文档预处理单元301、分词单元302、词频统计单元303和索引建立单元304。文档预处理单元301负责从网页数据库200中读取一个网页,将输入的网页中不同的数据格式转换为标准数据格式,如将HTML页面、电子邮件或者PDF文件转换为文本文件,同时需要过滤掉一些脚本标示符和一些无用的广告信息,然后输出到分词单元302。分词单元302负责对转换格式后的网页内容进行分词处理。为了提高系统效率,在分词前首先要把停用词和虚词等去掉(当然也可以在分词后去停用词和虚词等),只留下有效词条。本实施例中,分词单元302负责按照词典将转换本文档来自技高网
...

【技术保护点】
一种搜索方法,其特征在于,在建立或更新索引数据库时,执行以下步骤:A1,统计输入的网页正文中有效词条的各种组合的频次;A2,对频次大于设定阈值的复合词建立索引。

【技术特征摘要】

【专利技术属性】
技术研发人员:杨海松刘致远刘云峰
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1