结构化数据的搜索方法和实现该搜索方法的搜索引擎系统的制作方法

文档序号:6352990阅读:540来源:国知局
专利名称:结构化数据的搜索方法和实现该搜索方法的搜索引擎系统的制作方法
技术领域
本发明涉及搜索引擎技术,尤其涉及一种结构化数据的搜索方法和实现该搜索方 法的搜索引擎系统。
背景技术
互联网的飞速发展为人们提供了一个全新的信息存储、加工、传递和使用的载体, 网络信息也迅速成为了人们获取知识和信息的主要渠道之一。而如此规模的信息资源在将 人类占有的几乎所有知识纳入其中的同时,也给资源的使用者带来了如何充分开发和利用 的问题。搜索引擎正是在这一需求下应运而生,它协助网络用户在互联网上查找信息。具 体地,搜索引擎根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进 行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户。目前的搜索引擎在互联网上搜集信息时主要是通过网页之间的静态链接关系来 收集数据。然而,互联网上大部分内容信息是存储在网络数据库中的,也就是说,目前搜索 引难以通过网页抓取的方式获取其全部的信息内容,所以,当前的搜索引擎也不能索引到 或不能在返回的搜索结果中显示这些内容,因此对用户来说这部分内容是隐藏的。但是,这 部分隐藏的内容对于用户又是非常重要的,例如股票数据、人民币汇率、天气预报、电视节 目表等,可以看出,这些隐藏的内容大部分都是结构化的数据。所以,如何使搜索引擎能够 搜索到互联网上的各种信息,即包括结构化的和非结构化的信息,是搜索引擎技术发展所 面临的主要问题。此外,现有的通用搜索引擎在确定网页和搜索需求的相关性时,主要是通过对网 页进行分析,得到网页的权威性,再结合网页的一些因子综合进行排序。这种排序或许能够 满足一般用户的需求,然而对于一些特殊需求的用户可能就没有办法满足了。例如招聘搜 索、机票搜索、软件搜索、商品搜索等,由于这类用户需要的结果比较明确或者具有唯一性, 所以通用搜索引擎返回的大堆结果对于这类用户而言可能就显得并不相关或并不全面。当 然,用户可以通过相关领域的垂直搜索引擎来获得较为准确和全面的搜索结果,但是,用户 的搜索需求往往是多样化的,如果每个搜索都需要通过相应的垂直搜索引擎,显然无法给 用户带来良好的使用体验。有鉴于此,有必要对现有的搜索引擎予以改进,以解决上述问题。

发明内容
本发明的目的在于提供一种结构化数据的搜索方法,其能够通过分析用户的搜索 条件来确切地获取用户最想要的信息,并给用户一个能够满足其需求的最适合的方式展 现,从而使用户得到良好的使用体验。本发明的目的还在于提供一种实现上述搜索方法的搜索引擎系统。为实现上述发明目的之一,本发明的一种结构化数据的搜索方法,所述结构化数 据包括与若干属性标签对应的属性值,其包括如下步骤
接收来自于客户端的查询词表达式;根据所述查询词表达式确定相应的语义模板,所述语义模板包括属性标签;根据所述语义模板分析所述查询词表达式,以确定所要搜索的结构化数据;搜索并获取所要搜索的结构化数据。作为本发明进一步改进,所述查询词表达式分析步骤包括分析出和语义模板中属 性标签对应的属性值,从而确定包含有所述属性值的数据为所要搜索的数据。作为本发明进一步改进,所述查询词表达式分析步骤还包括根据语义模板分析出 所要搜索的属性标签;该方法还包括从所述获取的数据中抽取与所述所要搜索的属性标签 对应的属性值,并将所述属性值返回给客户端。作为本发明进一步改进,所述查询词表达式分析步骤包括根据语义模板确定和 语义模板中的属性标签对应的词项,并给所述词项标注相应的属性标签。作为本发明进一步改进,该方法还包括在查询词表达式分析的步骤后还包括对 查询词表达式进行优化的步骤。作为本发明进一步改进,所述查询词表达式优化的步骤包括区间筛选操作、和/ 或语义扩展操作、和/或分词操作。作为本发明进一步改进,该方法还包括根据数据的相关度权值来对搜索获取的数 据进行排序。作为本发明进一步改进,所述数据的相关度权值根据数据文本的基础知识的相关 性来确定。作为本发明进一步改进,所述数据的相关度权值根据数据的特定特征的重要性来 确定。作为本发明进一步改进,该方法还包括对排序后的数据进行打散操作。作为本发明进一步改进,该方法还包括根据所述查询词表达式搜索获取与查询词 相关的网页文档,并将所述网页文档和所述搜索获取的结构化数据合成后返回给客户端。作为本发明进一步改进,所述网页文档是通过访问互联网链接结构而预先搜集到 的。作为本发明进一步改进,该方法还包括生成用户查询日志,并根据用户查询日志 获得所述语义模板。为实现上述另一发明目的,本发明的一种搜索引擎系统,其包括结构化数据存储库,用于存储结构化数据,所述结构化数据包括与若干属性标签 对应的属性值;该存储库内还存储有语义模板,所述语义模板包括有属性标签;需求分析模块,用于接收来自于客户端的查询词表达式,根据所述查询词表达式 确定相应的语义模板,并根据所述语义模板分析该查询词表达式,以确定所要搜索的结构 化数据;搜索组件,用于搜索结构化数据存储库以获取所要搜索的结构化数据。作为本发明进一步改进,所述需求分析模块对查询词表达式的分析包括分析出 和语义模板中的属性标签对应的属性值,从而确定包含有所述属性值的数据为所要搜索的 数据。作为本发明进一步改进,所述需求分析模块对查询词表达式的分析还包括根据语义模板分析出所要搜索的属性标签;所述搜索组件还用于从所述获取的数据中抽取与所述 所要搜索的属性标签对应的属性值,并将所述属性值返回给客户端。作为本发明进一步改进,所述需求分析模块对查询词表达式的分析包括根据语 义模板确定和语义模板中的属性标签对应的词项,并给所述词项标注相应的属性标签。作为本发明进一步改进,所述需求分析模块还用于对查询词表达式进行优化。作为本发明进一步改进,所述需求分析模块对查询词表达式的优化包括区间筛选 操作、和/或语义扩展操作、和/或分词操作。作为本发明进一步改进,所述搜索组件还用于根据数据的相关度权值来对搜索获 取的数据进行排序。作为本发明进一步改进,所述数据的相关度权值根据数据文本的基础知识的相关 性来确定。作为本发明进一步改进,所述数据的相关度权值根据数据的特定特征的重要性来 确定。作为本发明进一步改进,所述搜索组件还用于对排序后的数据进行打散操作。作为本发明进一步改进,该系统还包括网页存储库,用于存储通过访问互联网链 接结构而抓取的网页文档;所述搜索组件还用于搜索网页存储库以获取与所述查询词表达 式相关的网页文档。作为本发明进一步改进,该系统还包括合成模块,用于将获取的网页文档和结构 化数据合成后返回给客户端。作为本发明进一步改进,该系统还包括用户界面,用于记录用户查询日志,所述语 义模板根据用户查询日志而获得。作为本发明进一步改进,所述结构化数据通过预定的数据交互协议从特定领域网
站获取。与现有技术相比,本发明的有益效果是本发明的搜索引擎系统通过语义模板来 分析用户的搜索表达式,以确切地了解用户最想要的需求,并给用户一个能够满足其需求 的最适合的方式展现,从而使用户得到良好的使用体验,提高搜索效率,节约网络流量。


图1是本发明的搜索引擎系统搜索结构化数据的一具体实施方式
的工作原理框 图;图2是本发明的搜索引擎系统搜索通用网页的一具体实施方式
的工作原理框图;图3是本发明的搜索引擎系统搜索结构化数据和通用网页的一具体实施方式
的 工作原理框图;图4是本发明的搜索引擎系统的结构化数据存储库中摘要式数据的一具体实施 方式;图5是本发明的搜索引擎系统展现搜索结果的一具体实施方式
;图6是图1所示的搜索引擎系统的结构化数据引入的工作流程图;图7是图3所示的搜索引擎系统执行搜索的工作流程图;图8是图3所示的搜索引擎系统对查询表达式进行分析的一具体实施方式
中的工作流程图;图9是图3所示的搜索引擎系统对查询表达式进行分析的另一具体实施方式
中的 工作流程图;图10是图3所示的搜索引擎系统对搜索结果进行排序和展现的工作流程图。
具体实施例方式以下将结合附图所示的各实施方式对本发明进行详细描述。但这些实施方式并不 限制本发明,本领域的普通技术人员根据这些实施方式所轻易做出的结构、方法、或功能上 的变换均包含在本发明的保护范围内。图1所示的是本发明的搜索引擎系统100在一具体实施方式
中搜集和检索结构化 数据的工作原理框图。本实施方式中,网站站长将结构化数据以规范的形式主动提交给搜 索引擎系统100,从而搜索引擎系统可响应客户端40的浏览器41请求而提供结构化数据搜 索的服务。其中,搜索引擎系统100可以包括一个或多个用来存储和管理结构化数据、并响 应搜索请求的网络服务器实体。客户端40可以包括一个或多个用户终端设备,如个人计算 机、笔记本电脑、无线电话、个人数字处理(PDA)、或其它计算机装置和通信装置。这些服务器和终端设备在架构上都包含一些基本组件,如总线、处理装置、存储装 置、一个或多个输入/输出装置、和通信接口等。总线可以包括一个或多个导线,用来实现 服务器或终端设备各组件之间的通信。处理装置包括各类型的用来执行指令、处理进程或 线程的处理器或微处理器。存储装置可以包括存储动态信息的随机访问存储器(RAM)等动 态存储器,和存储静态信息的只读存储器(ROM)等静态存储器,以及包括磁或光学记录介 质与相应驱动的大容量存储器。输入装置供用户输入信息到服务器或终端设备,如键盘、鼠 标、手写笔、声音识别装置、或生物测定装置等。输出装置包括用来输出信息的显示器、打印 机、扬声器等。通信接口用来使服务器或终端设备与其它系统或装置进行通信。通信接口 之间可通过有线连接、无线连接、或光连接连接到网络中,使搜索引擎系统100、客户端40 间能够通过网络实现相互间的通信。网络可以包括局域网(LAN)、广域网(WAN)、电话网络 如公共交换电话网(PSTN)、企业内部的互联网、因特网、或上述这些网络的结合等。服务器 和终端设备上均包含有用来管理系统资源、控制其它程序运行的操作系统软件,以及用来 实现特定功能模块的应用软件。如图1所示,搜索引擎系统100整体上可分为离线部分和在线部分。在离线部分, 系统会事先搜集一批结构化数据,并以某种方式存放在系统中,系统包括结构化数据推送 平台15、对引入的结构化数据进行分析的分析器16、记录用户查询信息的用户查询日志数 据库、对用户查询日志进行分析的日志分析器18、和结构化数据存储库20。结构化数据的 提供者可以为任何人,在本实施方式中,数据的提供者为一些行业网站的站长,站长通过结 构化数据推送平台15将结构化数据包推送给搜索引擎系统100。这儿结构化数据平台15 是指站长和搜索引擎系统100之间可通过一份预定的数据交互协议来进行结构化数据的 交互。本实施方式中,该协议为sitemap (站点地图)协议。具体地,站长会按照sitemap 协议的规范将要提交的结构化数据拼装成一份xml (Extensible Markup Language,可扩展 置标语言)格式的文件,放到自己的服务器硬盘上,然后将存放地址提交给搜索引擎系统 100。
?Mill \(、i..sioii “ [. 0" (、ii(、()(l iiiji-,η f. η" >
<111:1 跃 t>:
<uri>
<λ-;·>ΜΠμ: '.joiis. /ii^opliL、‘ ·耻!j:j.ii!:20], 9i)0j..m。:"4 丨 irj^0H300i9.HH!2oiirUi)(s0. h 旧</ .> <i-…;-so:/0Ki ΓΚ/:, .,」>
<·.):..:。?,、: -.5 >π;;ιs< '--.i ·-·ν.·;.· I i -· > <! = ;· ^ O; ^ κ . 'K. - ι . ·, !:. >
_Γ )ΛΤΑL城市销售代表(温州/宁波)」J></1i11 e> (’ \pira t ioiidci^o > 2 010- 07-2 5 < / e χ ρ i. r a t i οτι d a t. e >
<deSdipt:ion><a [CDATA[岗位职责分别负责东芝宏碁产品温州及周边和宁波及周边g域销售,包括该品 牌数码港,4一6级指标销售。 岗位要求
1,本科以上,一年以上IT或快销销售经验,有渠道和区域销售经验者优先考虑; 2,本科以上,一年以上IT或快销销售经验,有渠道和区域销售经验者优先考虑]]X/description〉 <tyPe> 社会招聘 </type> <ci t.y〉宁波</ci tv>
<empioyer><! [CDATA[杭州神州数码有限公司]]X/emp〗oyer>
<_.i 1X ! [Ci)ATA [] J X/etiiai 1 >
<jobr[rKK;lasls><! [CDATA[销售业务]]></jd)_Hrsu
<jobsecondclass><! [CDATA[渠道/分销专员]:[></jobsecosidc〗.ass>
<e ch ι c a t i on > 本禾斗 < ! e d u t a t. ion>
<e χ ρ e r i ο η c e > 1 - 3 < / e χ ρ e ι· ι. e n c e >
<startdate>2010 05 13</startda.te>
<enddate>2010-07-25</eoddate> 〈salary〉1000-50000 元/月〈/salary〉
CindmtryX丨[CDATA[计算机硬件及网络设备,计算机软件,IT服务(系统/数据/维护)/多颍域经营s通讯 (设备/运营/增值服务)]]></i.nduStry>
<e!i!r.>lov<·" .I ype>"α it</eiiipIoyertype> <£ ) π ” 卩联招聘</sotu.ce>
<s Jiii ι · I ι iikX ! LCDATA [ht.tp://www. zliaopin. com/] ] X/'soiircel ink>;'i/.:</Mr]>以上为某一招聘网站按照sitemap协议规范提交的xml文件格式的样例。可以 看出,文件除了包括所要提交的结构化数据之外,通常还会包含url (Universal Resource Locator,统一资源定位符)链接地址、页面最后修改时间、页面抓取更新周期、以及相对于 其它页面的优先权等信息。搜索引擎系统100会根据站长提交的文件地址以及文件中包含 的抓取更新周期抓取该文件。抓取更新周期可以为一天、一个小时、或者是每天的指定时间 (如每天的400、1200、1900三个时间点)。在抓取时,会比较本次修改时间和上次修改 时间,如果时间一样就会跳过,如果时间不一样,分析器16就会分析这次数据和上次数据 的不同,并将更新后的数据存入结构化数据存储库20中。分析器16用于对获取的结构化数据进行处理,然后将处理后的数据存入结构化 数据存储库20中。分析器16对结构化数据的处理包括摘要式处理,如果提交的数据本身 属于摘要式结构数据(如图4所示),可作为搜索返回的摘要直接显示,则可以将这种数据直接存储到摘要库中,同时会在网页库中进行备份。分析器16对结构化数据的处理包括将 不同格式的数据统一成同一格式。如提交的日期数据格式为1970/05Λ6,分析器16将其 统一为月-日-年的格式,即05-26-1970。分析器16对结构化数据的处理还包括对数据 进行分词操作并建立索引库。本领域普通技术人员所熟知的是,通过分词操作可将文本拆 分成包含多个词项的集合。分词方法可以是基于字符串匹配的分词方法,或者是基于统计 的分词方法。以基于字符串匹配的分词方法为例,分析器16可按一定的策略将待分词的文 本与预置的词典中的词项进行匹配,若在词典中找到某个字符串,则匹配成功,即将文本中 的该词项分离出来。参考之前的xml文件样例,文件中title是“城市销售代表(温州/宁 波)”,则分析器16首先会滤去该条文本中的标点符号,然后通过分词操作获得“城市”、“销 售”、“代表”、“温州”、“宁波”等词项的集合。当然,对于同一文本,依据不同的分词策略或词 典被切分获得的词项可能会不同,如“销售代表”也可以不被进一步切分。为便于搜索,分 析器16会为数据建立倒排索引,即建立索引词项到网页的映射,形成包含索引词表和倒排 表的倒排索引文件,然后将该倒排索引文件存储到结构化数据存储库20中的索引库中。分析器16还用于确定数据的相关度权值。分析器16可以根据数据文本的基础知 识的相关性来确定相关度权值。例如,两条商品的结构化数据的索引词项分别包括“手机” 和“手机配件”,而用户在搜索“手机”时这两条数据都会被召回,但根据文本的基础知识理 解,“手机”的数据比“手机配件”的数据更相关,应该是在返回的结果列表中“手机”的数 据比“手机配件”的数据更靠前。因此,在确定数据的相关度权值时,会对“手机配件”的数 据作一定的降权处理,以确保相关的搜索结果尽量靠前。分析器16还可以根据数据的特定 特征的重要性来确定相关度权值。例如,对于明星的数据,可以根据明星的知名度来确定相 关度权值;对于商品的数据,可以根据商品的热销程度或不同类别下的网站权威度来确定 相关度权值;对于软件的数据,可以根据软件的知名度、网站权威度、下载速度、最近下载量 等来确定相关度权值。对于不同行业的结构化数据,其特定特征不同,而对于这些特征的赋 权,可以通过机器学习的方式而不断优化。结构化数据存储库20中网页库除被用于存储网页和摘要式数据之外,还被用于 定期地全量更新索引库,以优化索引结构、淘汰已经失效的数据。如每天凌晨1点,系统会 触发全量更新,对网页库中的数据进行分析,并更新索引库。结构化数据存储库20中还包 括语义模板。该语义模板是日志分析器18通过分析用户查询日志数据库17后获得的具有 一定结构的查询词表达式模板。通常,一个语义模板代表一类相同或近似结构的查询词表 达式。配合参照图4所示的明星结构化数据示例。其中第一行为属性标签,如“姓名”、“性 别”、“生日”等,接下来每一行代表一条结构化数据中与各属性标签对应的属性值。语义模 板中包括有属性标签,例如,查询词表达式为“刘德华身高”,则对应的语义模板为“ [D 姓 名][D 身高]”,其中包括“姓名”和“身高”两个属性标签。关于如何根据语义模板来进行 搜索,后文将结合工作流程做详细描述。搜索引擎系统100的在线部分主要包括搜索组件11和用户界面13。其中用户界 面13通过客户端40的浏览器软件41展现,用于供用户输入查询词表达式,并按特定展现 方式显示搜索结果列表;此外,在搜索结束后,还用于记录用户的查询信息,如查询词表达 式、搜索时间等,并将其存入用户查询日志数据库17中。搜索组件11用于响应客户端30的 搜索请求,将搜索结果返回给客户端40。搜索组件11包括搜索模块111和排序模块112。搜索模块111可以接收用户的查询请求,该查询请求中包含有查询词表达式。搜索模块111 根据将查询词表达式与语义模板匹配,以确定相应的语义模板,并据此分析查询词表达式, 找到相应的索引词以及每个索引词对应的倒排表,从而获得相关的数据集合。排序模块112 根据预先确定的数据相关度权值页序排列搜索到的数据,而后获得搜索结果列表。后文将 会对结构化数据的搜索过程做详细描述。图2从概念上演示了搜索引擎系统100执行通用搜索的功能组件框图。所谓通用 搜索,即检索通过互联网链接结构抓取的网页文档。搜索引擎系统100整体上同样可分为 离线部分和在线部分。在离线部分,系统会事先搜集一批网页,并以某种方式存放在系统 中,系统包括网页抓取器191、索引器192、和网页存储库30。网页抓取器191是根据一定的策略通过网页之间的超链接关系来一个个抓取网 页的程序。具体的,网页抓取器191从初始的URL库中获得输入,解析URL中标明的网络服 务器地址,然后建立连接、发送请求、和接收数据,将获得的网页数据储存到网页存储库30 的网页库中并建立本地文档集合,然后从其中提取链接以进行下一步的抓取动作,如此循 环往复直到所有的URL抓取完为止。网页抓取器191所依据的抓取策略包括广度优先策略 和深度优先策略。索引器192用于对本地文档集合进行分析并建立索引。例如通过分词从 文档的全文中抽取词项,然后过滤除去高频词或低频词,以及对词项进行同义词转换以获 得索引词集合,最后将网页到索引词的映射转化为索引词到网页的映射,形成包含索引词 表和倒排表的倒排文件并存储在网页存储库30的索引库中。本实施方式中,搜索引擎系统100的在线部分同样包括搜索组件11用户界面13。 与图1所示的实施方式类似,用户界面13用于供用户输入查询词表达式,并按特定展现方 式显示搜索结果列表。搜索组件11同样包括搜索模块111和排列模块112。搜索模块111 可以接收用户的查询请求,该查询请求中包含有查询词表达式。搜索模块111生成查询词 表,然后与网页存储库30中的索引词表进行匹配,找到相应的索引词以及每个索引词对应 的倒排表,从而获得与查询词相关的网页文档集合。排序模块112根据预先确定的每个文 档与查询词之间的相关度将搜索到的网页文档顺序排列,然后将列表返回给客户端。图3是本发明的搜索引擎系统100对结构化数据和普通网页文档进行综合搜索的 一具体实施方式
的工作原理框图。本实施方式中,系统100包括若干结构化数据存储库,如 招聘数据存储库21、明星数据存储库22、和软件数据存储库23。关于每一存储库中的结构 化数据的引入,与图1所示的实施方式相同,后文也会结合图6所示的工作流程做进一步描 述。系统100还包括用于存储通过访问互联网链接结构抓取的网页文档的网页存储库30。 关于网页存储库30中的网页文档的抓取,与图2所示的实施方式相同,此处不再予以赘述。 搜索引擎系统100的在线检索部分10包括搜索组件11、需求分析模块12、用户界面13、和 合成模块14。其中搜索组件11同样包括搜索模块和排序模块,其对结构化数据存储库21、 22,23的搜索与图1所示的实施方式相同,对网页存储库30的搜索与图2所示的实施方式 相同。需求分析模块12主要用于判断查询请求中是否包含结构化数据的查询需求,并当存 在该需求时还用于对查询词表达式进行相应处理,后文将会进行详细的描述。用户界面13 的功能与上述实施方式中相同,合成模块14用于将结构化数据的检索结果和网页文档的 检索结果合成后后通过用户界面13展现给用户。图5揭示一种具体的形式。其中用户界 面13包括查询词表达式输入框131、查询确认键132、搜索结果列表133、以及包含在搜索结果列表中的结构化数据结果中间页134。后文将会对合成显示做详细的描述。图6是本发明的搜索引擎系统中结构化数据引入的一具体实施方式
的工作流程 图。如前所述,搜索引擎系统100可以通过预定的数据交互协议获取由行业网站提交的结 构化数据(步骤511)。然后对获取的数据进行处理(步骤512),包括摘要式处理、筛选式 处理、分词和索引型处理。处理后的数据会存入摘要库,并备份到网页库,索引文件存入索 引库;系统100还可以定期利用网页库中的数据对索引库进行全量更新(步骤51 ,以优 化索引结构。系统100还可以根据数据文本的基础知识的相关性、和数据的特定特征的重 要性来确定数据相关度的权值(步骤514)。此外,系统100还能够通过分析用户查询日志 来确定代表同一类查询词表达式的语义模板。图7为本发明的搜索引擎系统执行网页文档和结构化数据综合搜索的概要的工 作流程图。系统100通过用户界面13接收到包含查询词表达式的查询请求(步骤521)。 需求识别模块12判断该查询请求中是否包含潜在的结构化数据的查询需求(步骤522),即 分析查询词表达式中是否包含一些特定行业数据存储库的特征短语。具体地,需求分析模 块12可以先对查询词表达式进行分词以获得若干词项的集合,然后与数据库匹配词典匹 配,以确定该词项的集合中是否包含相关数据存储库的特征短语。例如,对于招聘数据存储 库21,招聘动词、职位名、或公司名可以作为相应的特征短语;对于明星数据存储库22,明 星的姓名或星座可以作为相应的特征短语;而对于软件数据存储库23,软件名、版本信息、 下载动词等可以作为相应的特征短语。如果能够匹配特征短语,则表明有需要对相应结构 化数据存储库进行搜索;反之,则无。如果需要进行结构化数据的查询,则搜索组件11同时 搜索相应的结构化数据存储库20和网页存储库30,并将搜索到的结构化数据集合和网页 文档集合分别排序;如果不需要进行结构化数据的查询,则搜索组件搜索网页存储库30以 获得相关的网页文档集合,并进行排序(步骤52 。合成模块14将排序后的网页文档和结 构化数据合成搜索结果列表,通过用户界面13在客户端40展现(步骤524)。当然,如果不 需要执行结构化数据的搜索,合成模块14直接将网页文档列表作为搜索结果列表返回给 客户端40。在其它实施方式中,可能搜索到的结构化数据是唯一的,则直接将该数据与网页 文档列表合成后返回给客户端40。图8所示的是搜索引擎系统执行网页文档和结构化数据综合搜索的过程中,对已 确定的相应结构化数据库进行搜索的一具体实施方式
中的工作流程图。首先,需求分析模 块12会判断是否有与查询表达式相匹配的语义模板(步骤531)。如果有,则输出所匹配 的模板信息;如果无,则推出结构化数据的搜索。当语义模板确定后,需求分析模块接下来 对查询词表达式进行分析(步骤532),该分析步骤包括根据查询词表达式分词后的各词项 所在的词序确定相关语义模板中对应的属性标签,并进行标注。例如,“最近北京司机招聘” 对应的语义模板为“[D 时间][D 地点][D 职位][D 招聘词];其中,“最近”对应的属性 标签为[D 时间],“北京”对应的属性标签为[D 地点],“司机”对应的属性标签为[D 职 位]。由于有些词项尚不能符合搜索的要求,或为了获得尽可能全的搜索结果,需求分析模 块还会对查询词表达式进行优化(步骤53 。该优化的步骤包括区间筛选操作,如上述的 “近期”可以先将其转换为“近一个月”,然后确定最近一个月的日期区间。查询词表达式优 化的步骤还包括语义扩展操作。如查询词中包括“百度”,则会进一步扩展成英文“baidu”; 又如查询词中包括“招行”,则还会将该词扩展为“招商银行”。查询词表达式优化的步骤还包括更细化的分词操作,如将“高级工程师”进一步切分为“高级”和“工程师”。上述优化 操作前及优化操作后所确定的词项,均会传递给搜索组件11来进行检索。搜索组件11所 得到的查询词项为与相关属性标签对应的属性值,而所要搜索的数据即包含这些属性值的 数据,从而根据这些属性值可筛选出相关的数据集合(步骤534)。图9所示的是对已确定的相应结构化数据库进行搜索的另一具体实施方式
中的 工作流程图。有些查询请求的结果比较明确,在这种情况下,用户最想获得的最终的答案, 而不是包含查询词的一堆网页。例如,查询表达式是“刘德华身高”,其实用户就想知道刘 德华身高的数据,而现有的搜索引擎往往返回的搜索结果是包含“刘德华”和“身高”这两 个词项的网页,而网页中可能并不包含,刘德华身高的数据,而且即使包含,用户也需要点 击浏览后才能得到其想要的答案。本实施方式可有效地解决上述问题。首先,需求分析模 块12确定相关的语义模板(步骤Ml)。如“刘德华身高”对应语义模板为“ [D 姓名][D 身高]”。然后,根据该语义模板分析查询词表达式(步骤,即分析出所要搜索的属性 标签。如[D 姓名]=刘德华,该属性标签已有对应的属性值,因此所要搜索的属性标签为 [D 身高],而提交给搜索组件11进行搜索的索引词项为“刘德华”。搜索组件11根据“刘 德华”查询倒排表获得相关的数据集合(步骤讨幻,该集合包括如图4所示的摘要性数据, 也包括与这条数据关联的url链接。本实施方式中,该数据集合仅包含一条数据,当然在其 它实施方式中,数据集合可能包含若干条数据。如查询“白羊座的男明星”,则会获得多个 男明星的数据。还是以“刘德华身高”为例,如图4所示的摘要性数据信息,其中关于“刘德 华”的数据包括刘德华的身高、生日、星座等,但用户最想知道的还是“身高”的信息,所以搜 索组件11会将对应所要搜索的属性标签的属性值提取出来(步骤M4),并返回结果。如将 刘德华数据中[D 身高]对应的属性值174cm提取出来,然后通过合成模块14返回给客户 端40,从而展现给用户最想要结果。图10是搜索引擎系统对搜索结果进行排序和展现的一具体实施方式
的工作流程 图。在获得结果数据集合后,搜索组件11会根据各数据相关度的权值来进行相应的排序 (步骤。如前所述,该权值可以根据数据文本的基础知识的相关性来确定,或根据数据 的特定特征的重要性来确定。由于获得的结果数据可能来源于不同的网站,如搜索到的招 聘数据来源于不同的招聘网站,在相关度计算时,有可能会出现来源于某一家网站的数据 相关度较高,如此会导致搜索结果列表的前几页都有可能是同一家网站的数据,显然,这样 无法使用户全面了解所有相关的数据,而且对于其它网站来讲也不公平。为此,在排序后, 搜索组件11还会根据一定的策略对排序后的结果执行打散操作(步骤阳2),即在搜索结果 的每一页,均显示来源不同的数据。具体地,可以将结果划分为几段,在每一段结果中可以 适当改变数据的顺序,从而确保每一页都有来源不同的数据结果。本实施方式中,由于需要和网页文档的搜索结果合成显示,在结构化数据集合经 排序、打散操作后,合成模块14可以将首页结果列表中最靠前的几条数据(如5条)合为 一个中间结果(步骤阳3),并与网页文档的搜索结果合成后展现(步骤554)。关于该中间 结果在整个搜索结果中的位置,可以根据结构化数据的排序算法确定,也可以根据网页文 档的排序算法来确定,当然也可以根据除此之外的其它算法来确定。此外,中间结果在被点 击后会展现成中间页,该中间页会显示更多的结构化数据结果,如20条。该中间页还提供 结构化数据的进一步查询。
本发明的搜索引擎系统通过预定的数据交互协议获取结构化数据,方便了结构化 数据的抓取和更新,并提高了搜索引器系统的资源覆盖面。此外,用户在使用通用搜索引擎 时,系统能够识别潜在的结构化数据搜索的需求,并对结构化数据和普通网页文档进行综 合搜索,从而为用户提供全面、准确的搜索结果。本发明的搜索引擎系统通过语义模板来分析用户的搜索表达式,以确切地了解用 户最想要的需求,并给用户一个能够满足其需求的最适合的方式展现,从而使用户得到良 好的使用体验。应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一 个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说 明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以 理解的其他实施方式。上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说 明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式 或变更均应包含在本发明的保护范围之内。
权利要求
1.一种结构化数据的搜索方法,所述结构化数据包括与若干属性标签对应的属性值, 其特征在于,该方法包括如下步骤接收来自于客户端的查询词表达式;根据所述查询词表达式确定相应的语义模板,所述语义模板包括属性标签;根据所述语义模板分析所述查询词表达式,以确定所要搜索的结构化数据;搜索并获取所要搜索的结构化数据。
2.根据权利要求1所述的搜索方法,其特征在于,所述查询词表达式分析步骤包括分 析出和语义模板中属性标签对应的属性值,从而确定包含有所述属性值的数据为所要搜索 的数据。
3.根据权利要求1或2所述的搜索方法,其特征在于,所述查询词表达式分析步骤还包 括根据语义模板分析出所要搜索的属性标签;该方法还包括从所述获取的数据中抽取与所 述所要搜索的属性标签对应的属性值,并将所述属性值返回给客户端。
4.根据权利要求1所述的搜索方法,其特征在于,所述查询词表达式分析步骤包括 根据语义模板确定和语义模板中的属性标签对应的词项,并给所述词项标注相应的属性标 签。
5.根据权利要求1或4所述的搜索方法,其特征在于,该方法还包括在查询词表达式 分析的步骤后还包括对查询词表达式进行优化的步骤。
6.根据权利要求5所述的搜索方法,其特征在于,所述查询词表达式优化的步骤包括 区间筛选操作、和/或语义扩展操作、和/或分词操作。
7.根据权利要求1所述的搜索方法,其特征在于,该方法还包括根据数据的相关度权 值来对搜索获取的数据进行排序。
8.根据权利要求7所述的搜索方法,其特征在于,所述数据的相关度权值根据数据文 本的基础知识的相关性来确定。
9.根据权利要求7所述的搜索方法,其特征在于,所述数据的相关度权值根据数据的 特定特征的重要性来确定。
10.根据权利要求7所述的搜索方法,其特征在于,该方法还包括对排序后的数据进行 打散操作。
11.根据权利要求1所述的搜索方法,其特征在于,该方法还包括根据所述查询词表达 式搜索获取与查询词相关的网页文档,并将所述网页文档和所述搜索获取的结构化数据合 成后返回给客户端。
12.根据权利要求11所述的搜索方法,其特征在于,所述网页文档是通过访问互联网 链接结构而预先搜集到的。
13.根据权利要求1所述的搜索方法,其特征在于,该方法还包括生成用户查询日志, 并根据用户查询日志获得所述语义模板。
14.一种搜索引擎系统,其特征在于,该搜索引擎系统包括结构化数据存储库,用于存储结构化数据,所述结构化数据包括与若干属性标签对应 的属性值;该存储库内还存储有语义模板,所述语义模板包括有属性标签;需求分析模块,用于接收来自于客户端的查询词表达式,根据所述查询词表达式确定 相应的语义模板,并根据所述语义模板分析该查询词表达式,以确定所要搜索的结构化数据;搜索组件,用于搜索结构化数据存储库以获取所要搜索的结构化数据。
15.根据权利要求14所述的搜索引擎系统,其特征在于,所述需求分析模块对查询词 表达式的分析包括分析出和语义模板中的属性标签对应的属性值,从而确定包含有所述 属性值的数据为所要搜索的数据。
16.根据权利要求14或15的搜索引擎系统,其特征在于,所述需求分析模块对查询词 表达式的分析还包括根据语义模板分析出所要搜索的属性标签;所述搜索组件还用于从所 述获取的数据中抽取与所述所要搜索的属性标签对应的属性值,并将所述属性值返回给客 户端。
17.根据权利要求14所述的搜索引擎系统,其特征在于,所述需求分析模块对查询词 表达式的分析包括根据语义模板确定和语义模板中的属性标签对应的词项,并给所述词 项标注相应的属性标签。
18.根据权利要求14或17所述的搜索引擎系统,其特征在于,所述需求分析模块还用 于对查询词表达式进行优化。
19.根据权利要求18所述的搜索引擎系统,其特征在于,所述需求分析模块对查询词 表达式的优化包括区间筛选操作、和/或语义扩展操作、和/或分词操作。
20.根据权利要求14所述的搜索引擎系统,其特征在于,所述搜索组件还用于根据数 据的相关度权值来对搜索获取的数据进行排序。
21.根据权利要求20所述的搜索引擎系统,其特征在于,所述数据的相关度权值根据 数据文本的基础知识的相关性来确定。
22.根据权利要求20所述的搜索引擎系统,其特征在于,所述数据的相关度权值根据 数据的特定特征的重要性来确定。
23.根据权利要求20所述的搜索引擎系统,其特征在于,所述搜索组件还用于对排序 后的数据进行打散操作。
24.根据权利要求14所述的搜索引擎系统,其特征在于,该系统还包括网页存储库,用 于存储通过访问互联网链接结构而抓取的网页文档;所述搜索组件还用于搜索网页存储库 以获取与所述查询词表达式相关的网页文档。
25.根据权利要求M所述的搜索引擎系统,其特征在于,该系统还包括合成模块,用于 将获取的网页文档和结构化数据合成后返回给客户端。
26.根据权利要求14所述的搜索引擎系统,其特征在于,该系统还包括用户界面,用于 记录用户查询日志,所述语义模板根据用户查询日志而获得。
27.根据权利要求14所述的搜索引擎系统,其特征在于,所述结构化数据通过预定的 数据交互协议从特定领域网站获取。
全文摘要
本发明提供一种搜索引擎系统,其包括结构化数据存储库、需求分析模块、和搜索组件。其中结构化数据存储库用于存储结构化数据,结构化数据包括与若干属性标签对应的属性值;该存储库内还存储有语义模板,语义模板包括有属性标签。需求分析模块,用于接收来自于客户端的查询词表达式,根据查询词表达式确定相应的语。搜索组件用于搜索结构化数据存储库以获取所要搜索的结构化数据。本发明的搜索引擎系统通过语义模板来分析用户的搜索表达式,以确切地了解用户最想要的需求,并给用户一个能够满足其需求的最适合的方式展现,从而使用户得到良好的使用体验,提高搜索效率,节约网络流量。
文档编号G06F17/30GK102073725SQ201110004810
公开日2011年5月25日 申请日期2011年1月11日 优先权日2011年1月11日
发明者赵剑波 申请人:百度在线网络技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1