CN1227611C - 判断一组查询关键字或词在网页中位置相关性的方法 - Google Patents
判断一组查询关键字或词在网页中位置相关性的方法 Download PDFInfo
- Publication number
- CN1227611C CN1227611C CN 01109132 CN01109132A CN1227611C CN 1227611 C CN1227611 C CN 1227611C CN 01109132 CN01109132 CN 01109132 CN 01109132 A CN01109132 A CN 01109132A CN 1227611 C CN1227611 C CN 1227611C
- Authority
- CN
- China
- Prior art keywords
- word
- webpage
- speech
- adjacent
- position correlation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
一种判断一组查询关键字或词在网页中位置相关性的方法,其特征在于:搜索引擎系统为每个关键字或词计算出其在网页中的前向相邻字/词和后向相邻字/词;依据上述信息判断在用户查询项中相邻的字/词是否在网页中也相邻;如果完全相邻,则将网页的权值适当提高,根据权值输出查询结果。该方法具有较低的时间、空间复杂度,易于处理少数高频字/词所引起的大索引问题,并具有较高的查询准确率。
Description
本发明涉及信息检索技术领域,特别是中英文Web搜索引擎系统的信息检索技术。
为了提高搜索引擎的服务质量,通常搜索引擎系统在输出结果时都要考虑查询项所包含的关键字(词)在被检索网页中的位置相关性。例如,如果判断出这些关键字(词)在网页中是连在一起的,即网页中包含与查询项关键字(词)排列顺序相同的信息,则在查询结果输出时把这样的网页放在前面;有的搜索引擎系统则更干脆地只输出完全匹配用户查询项的网页。为了判断这些关键字(词)在网页中的位置是否连在一起,通常有两种办法:
1、完全字符串匹配;
2、网页分析时记录下各个关键字(词)在网页中出现的位置,然后根据位置信息判断位置相关性。
第一种方法简单,但需要保存整个网页内容。这不但会浪费太多的存储空间,且效率太低,由于WWW上存放了超过10亿个网页,若对这近10亿个网页都进行查询项字符串匹配,则查询速度会慢得让用户无法忍受。而目前公开了查询项位置相关性分析技术的搜索引擎系统是美国的Google系统(参见S.Brin和L.Page所发表的论文:The Anatomy of a Large-Scale Hypertextual Web Search Engine,In proceedings of 7th World Wide Web Conference,1998)。Google维护了世界上最大的Web信息数据库,目前也是世界上最知名的搜索引擎之一。Google为了判断查询项中各个关键字(词)之间的位置相关性采用了第二种方法。
Google系统由网页搜集器、索引器以及检索器3部分组成。搜集器负责搜集网页并对之进行分析处理。在分析一个网页时,需要记录有哪些关键字(词)在文章中出现,这些字(词)在网页中出现了多少次,以及每次出现时该字(词)在文章中的位置。这样就得到了如图1所示的前向索引表。索引器根据前向索引表又可以生成倒排索引表,如图2所示。当用户提交一个查询项时,Google的检索器首先把该查询项分解为若干个关键字或词(除非该查询项本身就是一个关键词),并且根据倒排索引表找出包含了所有这些关键字或词的网页:然后计算这些网页的权值,并根据这些权值进行排序输出。在计算权值时,也要根据倒排索引表中记录的各个关键字(词)在网页中的位置来计算其位置相关性,相关性越高,附加权值也就越高,相应的网页排在前面的可能性也就越大。
而Google所采用的第二种方法,也存在空间复杂度和时间复杂度太高的缺点。首先,在该方法下,需要记录每个关键字在网页中出现的每个位置,空间复杂度很高;其次,检索器在依据这些关键字在网页中的位置判断查询项中各个关键字(词)的位置是否挨在一起时,需要进行大量的比较操作,时间复杂度也很高,会影响系统性能。事实上,Google为了降低空间复杂度和时间复杂度,它对记录的位置信息进行了限制,即它只考虑了每篇网页的前4K个关键字(词)的位置信息。即使是这样处理后,它的空间复杂度和时间复杂度仍然很高,且带来另外的缺点,即无法判断网页中第4K个关键字(词)之后出现的关键字(词)的位置相关性,这将影响检索质量。我们所要解决的问题就是在对判断位置相关性的准确率影响不大的基础上,存储尽可能少的信息以降低空间复杂度,同时这些信息又能够有利于在极短的时间内对位置相关性做出判断,即具有较低的时间复杂度。
为了避免Google系统为判断位置相关性所导致的较大的时间复杂度和空间复杂度,我们设计了另外一种判断一组查询关键字(词)在网页中位置相关性的方法。
本发明的内容与技术方案如下:
在搜索引擎系统分析网页时,首先要提取关键词和关键字。在我们的方法中,不再记录这些高频字(词)在网页中每次出现的位置,代替地,我们为每个关键字(词)只确定出其前面一个相邻字(或词)和后面一个相邻字(或词)。当用户提交查询请求时,检索器可以根据搜集网页时记录的位置信息判断在用户查询词中相邻的字(词)在网页中是否也相邻。如果相邻,则将网页的权值适当提高。这样在查询结果中,保持用户查询词中相邻关系的网页将会排在前面。
确定一个网页中某关键字(词)的前向相邻字(词)和后向相邻字(词)的主要依据是频率。虽然位于一个关键字或词之前且与该关键字(词)相邻的关键字词很多,但通常有一个与该关键字(词)相邻次数最多,我们把它作为关键字(词)的前向相邻字(词)。类似地,我们可以计算出一个关键字(词)的后向相邻字(词)。
具体地确定某关键字(词)的前向相邻字(词)和后向相邻字(词)的步骤是:搜集器首先从头至尾地扫描网页,对出现的句子做词语切分处理,得到一组在网页中出现的关键字/词,对每一个进行编号;记录每个字/词在网页中首次出现的次序,并且记录相邻的字/词之间的位置相邻信息,即前向相邻字(词)以及后向相邻字(词)的编号;搜集器的扫描过程结束时,对每个关键字/词,根据记录下的其前/后向相邻字/词以及它们各自出现了多少次,以出现次数最多的前/后向相邻字/词作为其最终的前/后向相邻字/词。搜集器以最终的前/后向相邻字/词的信息来构造带位置相关性信息的前向索引表(图3)。索引器根据带位置相关性信息的前向索引表生成带位置相关性信息的倒排索引表(图4)。在今后检索时,检索器就通过索引器生成的带位置相关性信息的倒排索引表中某关键字(词)的前/后向相邻字/词信息判断所查询关键字(词)在网页中的位置相关性。
说明书附图说明:
图1、Google搜索引擎系统的前向索引表
图2、Google搜索引擎系统的倒排索引表
在图1和图2中docid是网页标识符;wordid是关键字(词)的标识符;hit是wordid对应的关键字(词)在docid对应的网页中的位置(占2个字节);nbits是wordid对应的关键字(词)在docid对应的网页中出现的次数(即用来表明有多少个hit);ndocs是包含了wordid对应的关键字(词)的网页数。
图3、带位置相关性的前向索引表
图4、带位置相关性的倒排索引表
在图3和图4中,docid代表相应的网页编号,wordid代表某个关键字(词)在词典中的编号,my_no表示一个关键字(词)(其在词典中的编号为wordid)在网页中的编号:prev_no表示该关键字(词)前向相邻字(词)在网页中的编号,next_no表示该关键字(词)后向相邻字(词)在网页中的编号。
图5应用本方法的通用Web搜索引擎系统结构图
图中第(1)个模块表示网页的搜集器,第(2)个模块表示原始数据库,第(3)个模块表示索引器,第(4)个模块表示索引数据库,第(5)个模块表示检索器,第(6)个模块表示用户接口。
图6、带位置相关性的前向索引表示例
下面结合实施例进行进一步地说明。
假设下面一段文字是某个网页的内容。
“天网”搜索引擎新课题组成员
领域负责人:李晓明
项目负责人:李晓明
王建勇
项目开发人员:
单松巍
谢正茂
赵江华
闫宏飞
陈 华
罗 昶
郭 琳
龚笔宏
搜集器(图5中的第1个模块)的切词处理后得到一个关键字(词)序列{天网、搜索引擎、新、课题、组、成员、领域、负责、人、李、晓、明、项目、负责、人、李、晓、明、王、建、勇、项目、开发、人、员、单、松、巍、谢、正、茂、赵、江、华、闫、宏、飞、陈、华、罗、昶、郭、琳、龚、笔、宏},其中不同的关键字(词)及其编号序列为{天网(1)、搜索引擎(2)、新(3)、课题(4)、组(5)、成员(6)、领域(7)、负责(8)、人(9)、李(10)、晓(11)、明(12)、项目(13)、王(14)、建(15)、勇(16)、开发(17)、员(18)、单(19)、松(20)、巍(21)、谢(22)、正(23)、茂(24)、赵(25)、江(26)、华(27)、闫(28)、宏(29)、飞(30)、陈(31)、罗(32)、昶(33)、郭(34)、琳(35)、龚(36)、笔(37)}。进而搜集器可以依据上述信息构造出该网页的前向索引表(图6),并将之存于图5中的第2个模块,即原始数据库中。有了如图6所示的前向索引表后,索引器(图5的第3个模块)可以很简单地生成倒排索引表,并存放于图5的第4模块,即索引数据库中。当用户提交一个查询请求后,用户接口(图5的第6个模块)截获该请求,并转发给检索器(图5中的第5模块),由它根据位置相关性信息判断该查询项所分解的若干个关键字(词)在网页中的位置是否相邻,继而根据位置相关程度来影响该网页在输出结果中的排序。
下面举几个例子来说明检索器是如何判断位置相关性的。若用户查“陈华”,由于“陈”字的后向相邻字的编号为27可以判断“陈“与“华”是相邻的(“华”的编号为27);当查“龚笔宏”时,可知“笔”字的前向相邻字编号为36(即“龚”的编号),后向相邻字的编号为29(即“宏”的编号),可以推断出“龚”“笔”“宏”3个字是完全位置相关的。
本发明的优点与积极效果在于:
同现有的判断位置相关性的方法相比,我们所提出的判断一组查询关键字或词在网页中位置相关性的方法具有如下优点与积极效果:
1.有较低的空间复杂度,能够节省存储空间。在该方法下,针对某个网页的每个被提取的关键字(词),只需记录3个与位置相关性有关的信息。而在Google的方法中,它需要记录一个关键字(词)在网页中所有出现的位置。通常来讲被选出的关键字(词)在网页中可能出现的频率很高,有的甚至出现上百次或上千次,而为记录一个关键字(词)的每一次出现的位置需要大于13bits的存储(Google用了16bits),可见Google的方法所需的空间开销要远大于本方法。
2.具有较低的时间复杂度,能够提高查询响应速度。在本方法中,可以根据网页中出现的每个关键字(词)的前向相邻字(词)和后向相邻字(词)非常快捷地判断两个查询关键字(词)是否相邻。而在Google的方法下,需要取出相应的两个查询关键字(词)在网页中的所有位置信息,再根据这些位置信息判断位置相关性,需要大量的比较操作,会影响查询速度。
3.易于处理少数高频字(词)所引起的大索引问题。不管是中文还是英文网页中都包含一些高频字(或词),如“的”、“中”等,这些高频字(词)在网页中出现的几率非常大。据统计,每300万个网页中有多于200万个网页包含了“的”字。换句话讲,在图2中“的”字对应的索引项的数目大于200万(即其ndocs>200万),一旦用户查询一个这样的关键字(词),所消耗的时间将会感到无法忍受。一种解决办法是把这些少量的关键字(词)配置为忽略字(词):这样做有其合理的一方面,因为用户很少单独查询这类高频字(词)。但简单地这样处理,则会引起新的问题。比如,如果用户查“金大中”,由于“中”字被忽略,搜索引擎会把所有出现“金大”的网页返回,而且会造成其它的人名如“金大洋”排在输出结果的前面,使查询的准确度大大降低。然而我们可以利用位置相关性很好地解决这一问题:即虽然我们忽略了“中”字,但我们可以根据“大”字的后向相邻字(词)Qafter来判断出“大”字后面是“中”字,进而提高网页权值,使该网页位置提前,提高查询准确度。而对于Google的方法若把“中”字等高频字配置为忽略字,则由于没有“中”字的位置信息,将无法判断“金大中”的完全位置相关性,其查询准确度将会降低。
4.准确率较高。本方法是依据统计规律分析得出的,能够把绝大多数的查询字(词)的位置相关性表示出来。而Google为了节省空间,只记录了一个网页中前4096个关键字(词)的位置信息,因而当用户查询的关键字(词)落在网页的前4096个关键字(词)之后时,将无法准确的判断位置相关性。
为了测试我们的方法的效果,我们把部分验证报告(取自2000年12月18日北京大学“天网”搜索引擎的测试结果)列于表1中。可以看出,查“金大中”时,共检索出106607篇文章,其中前1777篇文章为位置完全相关的文章;查“莫斯科郊外的晚上”,共查出66篇文章,其中前57篇为位置完全相关的文章;查“曙光1000”,共返回248篇文章,其中前32篇为位置完全相关的文章;而查“五道口”,共查出4075篇文章,其中只有前758篇是位置完全相关的文章。我们这里举的查询项例子分别为人名、歌曲名、产品名以及地名,用户总是希望这些查询项在网页中是连在一起出现的,否则将毫无意义。利用我们的方法能够把位置完全相关的文章找出来,并放于输出结果的最前面,提高了查询结果输出的合理性。
表1、位置相关性的部分测试结果
查询项 | 返回总的文章数 | 返回位置完全相关文章数 |
金大中 | 106607 | 1777 |
莫斯科郊外的晚上 | 66 | 57 |
曙光1000 | 248 | 32 |
五道口 | 4075 | 758 |
Claims (1)
1.一种判断一组查询关键字或词在网页中位置相关性的方法,应用该方法的相应的搜索引擎系统主要包括网页搜集器、索引器以及检索器3个部分,其特征在于:
在抓取到一个网页后,搜集器首先从头至尾地扫描网页,对出现的句子做词语切分处理,得到一组在网页中出现的关键字/词,记录每个字/词在网页中首次出现的次序,并且记录相邻的字/词之间的位置相邻信息;
搜集器的扫描过程结束时,对每个关键字/词计算出其前/后向相邻字/词以及它们各自出现的次数,并把出现频率最多的前/后向相邻字/词作为其最终的前/后向相邻字/词,然后以最终的前/后向相邻字/词的信息来构造带位置相关性信息的前向索引表;
索引器根据带位置相关性信息的前向索引表生成带位置相关性信息的倒排索引表;当用户提交一个查询项时,检索器首先把该查询项分解为多个关键字或词,然后根据索引器生成的带位置相关性信息的倒排索引表找出包含了所有这些关键字/词的网页,计算这些网页的权值;并且根据带位置相关性信息的倒排索引表中的位置相关性信息判断这些查询字/词在这些网页中是否位置完全相邻,若相邻则把相应网页的权值提高,最后把查询结果排序输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 01109132 CN1227611C (zh) | 2001-03-09 | 2001-03-09 | 判断一组查询关键字或词在网页中位置相关性的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 01109132 CN1227611C (zh) | 2001-03-09 | 2001-03-09 | 判断一组查询关键字或词在网页中位置相关性的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1306258A CN1306258A (zh) | 2001-08-01 |
CN1227611C true CN1227611C (zh) | 2005-11-16 |
Family
ID=4657739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 01109132 Expired - Fee Related CN1227611C (zh) | 2001-03-09 | 2001-03-09 | 判断一组查询关键字或词在网页中位置相关性的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1227611C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100458797C (zh) * | 2007-06-20 | 2009-02-04 | 精实万维软件(北京)有限公司 | 一种对网络广告进行排序的方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7409406B2 (en) * | 2003-09-08 | 2008-08-05 | International Business Machines Corporation | Uniform search system and method for selectively sharing distributed access-controlled documents |
US7555705B2 (en) * | 2003-09-10 | 2009-06-30 | Microsoft Corporation | Annotation management in a pen-based computing system |
US7752200B2 (en) * | 2004-08-09 | 2010-07-06 | Amazon Technologies, Inc. | Method and system for identifying keywords for use in placing keyword-targeted advertisements |
WO2008098467A1 (fr) * | 2007-02-15 | 2008-08-21 | Erzhong Liu | Procédé et système pratiques de traitement et d'extraction de texte électrique |
CN103793418A (zh) * | 2012-10-31 | 2014-05-14 | 珠海富讯网络科技有限公司 | 一种针对证券行业的实时垂直搜索引擎的搜索方法 |
CN104778262B (zh) * | 2015-04-21 | 2018-07-24 | 无锡天脉聚源传媒科技有限公司 | 一种搜索方法及装置 |
CN106095779A (zh) * | 2016-05-26 | 2016-11-09 | 达而观信息科技(上海)有限公司 | 一种基于关键词位置的检索方法及装置 |
CN110334269B (zh) * | 2019-07-11 | 2021-05-07 | 中国船舶工业综合技术经济研究院 | 一种信息检索方法及系统 |
-
2001
- 2001-03-09 CN CN 01109132 patent/CN1227611C/zh not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100458797C (zh) * | 2007-06-20 | 2009-02-04 | 精实万维软件(北京)有限公司 | 一种对网络广告进行排序的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1306258A (zh) | 2001-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10671676B2 (en) | Multiple index based information retrieval system | |
US9990421B2 (en) | Phrase-based searching in an information retrieval system | |
US9817886B2 (en) | Information retrieval system for archiving multiple document versions | |
CN101246499B (zh) | 网络信息搜索方法及系统 | |
CA2813644C (en) | Phrase-based searching in an information retrieval system | |
CA2513850C (en) | Phrase identification in an information retrieval system | |
CA2513853C (en) | Phrase-based indexing in an information retrieval system | |
CN1389811A (zh) | 搜索引擎的智能化搜索方法 | |
US20060020571A1 (en) | Phrase-based generation of document descriptions | |
CN1335574A (zh) | 智能语义搜索方法 | |
CN1227611C (zh) | 判断一组查询关键字或词在网页中位置相关性的方法 | |
CN101876979B (zh) | 查询扩展方法及查询扩展系统 | |
CN101079064A (zh) | 一种网页排序方法及装置 | |
CN1818908A (zh) | 一种在搜索引擎中应用搜索者反馈信息的方法 | |
CN102955812A (zh) | 一种构建索引库的方法、装置及查询方法和装置 | |
CN103064846A (zh) | 检索装置和检索方法 | |
CN111782699A (zh) | 一种基于用户历史瓦片浏览记录的兴趣点智能搜索方法 | |
CN110245275A (zh) | 一种大规模相似新闻标题快速归一化方法 | |
Lo et al. | The numeric indexing for music data | |
CN1940920A (zh) | 索引短语的方法 | |
Gupta | A keyword searching algorithm for search engines | |
Ikeda et al. | TRMeister: a DBMS with high-performance full-text search functions | |
Beigbeder | Web Document Models for Web Information Retrieval | |
CN1369839A (zh) | 文件关联性判定系统与方法 | |
Junxiu | The Research of Non-back Multi-words Matching Algorithm Based on Aggregate Address Inverted Index |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20051116 Termination date: 20140309 |