搜索方法和搜索装置.pdf

上传人:000****221 文档编号:177935 上传时间:2018-01-31 格式:PDF 页数:16 大小:1.88MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410466232.6

申请日:

2014.09.12

公开号:

CN104252533A

公开日:

2014.12.31

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):G06F 17/30申请日:20140912|||公开

IPC分类号:

G06F17/30

主分类号:

G06F17/30

申请人:

百度在线网络技术(北京)有限公司

发明人:

徐文智; 刘占一; 吴华; 王海峰

地址:

100085 北京市海淀区上地十街10号百度大厦三层

优先权:

专利代理机构:

北京清亦华知识产权代理事务所(普通合伙) 11201

代理人:

宋合成

PDF下载: PDF下载
内容摘要

本发明公开了一种搜索方法,包括:S1、搜索引擎获取搜索语句;S2、搜索引擎将搜索语句转化为结构化查询词;以及S3、搜索引擎根据结构化查询词进行查询以获取搜索结果。本发明实施例的搜索方法,实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率,对于用户来说,得到了更为精确的搜索结果,提升了用户体验。本发明还公开了一种搜索装置。

权利要求书

1.  一种搜索方法,其特征在于,包括以下步骤:
S1、搜索引擎获取搜索语句;
S2、所述搜索引擎将所述搜索语句转化为结构化查询词;以及
S3、所述搜索引擎根据所述结构化查询词进行查询以获取搜索结果。

2.
  如权利要求1所述的搜索方法,其特征在于,所述步骤S2具体包括:
S21、对所述搜索语句进行分词以生成多个词;
S22、对所述搜索语句进行词法分析以获取所述搜索语句中每个词对应的词性标注标签;
S23、对所述搜索语句进行句法分析以获取所述搜索语句中各个词之间的依存关系标签;以及
S24、根据所述词性标注标签和所述依存关系标签生成所述结构化查询词。

3.
  如权利要求2所述的搜索方法,其特征在于,所述步骤S24具体包括:
分别对所述词性标注标签所对应的词和所述依存关系标签所对应的词进行语义分析,以生成所述搜索语句中各个词之间的语义关系;
根据所述语义关系生成所述结构化查询词。

4.
  如权利要求1所述的搜索方法,其特征在于,所述步骤S3具体包括:
根据所述结构化查询词进行查询结构化数据库以获取所述搜索结果。

5.
  如权利要求4所述的搜索方法,其特征在于,所述结构化数据库为三元组数据库或结构化查询语言SQL数据库。

6.
  一种搜索装置,其特征在于,包括:
获取模块,用于获取搜索语句;
转化模块,用于将所述搜索语句转化为结构化查询词;以及
查询模块,用于根据所述结构化查询词进行查询以获取搜索结果。

7.
  如权利要求6所述的搜索装置,其特征在于,所述转化模块包括:
分词单元,用于对所述搜索语句进行分词以生成多个词;
第一获取单元,用于对所述搜索语句进行词法分析以获取所述搜索语句中每个词对应的词性标注标签;
第二获取单元,用于对所述搜索语句进行句法分析以获取所述搜索语句中各个词之间的依存关系标签;
生成单元,用于根据所述词性标注标签和所述依存关系标签生成所述结构化查询词。

8.
  如权利要求7所述的搜索装置,其特征在于,所述生成单元具体用于:
分别对所述词性标注标签所对应的词和所述依存关系标签所对应的词进行语义分析,以生成所述搜索语句中各个词之间的语义关系;
根据所述语义关系生成所述结构化查询词。

9.
  如权利要求6所述的搜索装置,其特征在于,所述查询模块具体用于:
根据所述结构化查询词进行查询结构化数据库以获取所述搜索结果。

10.
  如权利要求9所述的搜索装置,其特征在于,所述结构化数据库为三元组数据库或结构化查询语言SQL数据库。

说明书

搜索方法和搜索装置
技术领域
本发明涉及互联网技术领域,尤其涉及一种搜索方法和搜索装置。
背景技术
目前,互联网上的搜索引擎主要通过提供和用户Query(查询词)相关的网页信息来满足获取信息的需求。如果用户的Query是一个特定信息的请求,如“谢霆锋是谁的儿子”,那么用户期望得到该Query对应的答案“谢贤”,而不是相关的网页。
相关技术中,有一些搜索引擎已经实现了上述功能,但是这些搜索引擎只能为简单Query提供答案,而无法处理复杂Query,这里提到的复杂Query包括:(1)表达相似但语义不同的Query,如“谢霆锋是谁的儿子?”,“谢霆锋的儿子是谁”,“谁是谢霆锋的儿子”等;(2)内容复杂的Query,如“刘德华和那些女演员演过电影?”、“演过还珠格格的女演员演过的电视剧”等。这样,当用户输入的Query较为复杂时,搜索引擎就无法为用户提供其期望的答案,导致准确率降低,用户体验变差。
发明内容
本发明的目的旨在至少在一定程度上解决上述的技术问题之一。
为此,本发明的一个目的在于提出一种搜索方法。该方法实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率。
本发明的另一个目的在于提出一种搜索装置。
为了实现上述目的,本发明一方面实施例的搜索方法,包括:S1、搜索引擎获取搜索语句;S2、所述搜索引擎将所述搜索语句转化为结构化查询词;以及S3、所述搜索引擎根据所述结构化查询词进行查询以获取搜索结果。
本发明实施例的搜索方法,通过将搜索语句转化为结构化查询词,并根据结构化查询词在结构化数据库中进行查询以获取对应的搜索结果,实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率,对于用户来说,得到了更为精确的搜索结果,提升了用户体验。
为了实现上述目的,本发明另一方面实施例的搜索装置,包括:获取模块,用于获取 搜索语句;转化模块,用于将所述搜索语句转化为结构化查询词;以及查询模块,用于根据所述结构化查询词进行查询以获取搜索结果。
本发明实施例的搜索装置,通过获取模块获取搜索语句,转化模块将搜索语句转化为结构化查询词,查询模块根据结构化查询词在结构化数据库中进行查询以获取对应的搜索结果,实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率,对于用户来说,得到了更为精确的搜索结果,提升了用户体验。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
图1是根据本发明一个实施例的搜索方法的流程图;
图2是根据本发明另一个实施例的搜索方法的流程图;
图3是根据本发明一个实施例的依存关系标签的示意图;
图4是根据本发明一个实施例的搜索语句中各个词之间的语义关系的示意图;
图5是根据本发明一个实施例的结构化查询词以二叉树的形式进行表示的示意图;
图6是根据本发明一个实施例的语义分析过程的示意图;
图7是根据本发明一个实施例的搜索装置的结构示意图;以及
图8是根据本发明另一个实施例的搜索装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述根据本发明实施例的搜索方法和搜索装置。
本发明提出了一种搜索方法,包括:搜索引擎获取搜索语句;搜索引擎将搜索语句转化为结构化查询词;以及搜索引擎根据结构化查询词进行查询以获取搜索结果。
图1是根据本发明一个实施例的搜索方法的流程图。如图1所示,该搜索方法可以包括:
S101,搜索引擎获取搜索语句。
其中,在本发明的实施例中,搜索语句可以是各种语言的字符(如文字、拼音、符号和/或数字等)中的一种或者它们的组合。
例如,搜索引擎可获取用户在浏览器提供的输入框中输入的搜索语句。
S102,搜索引擎将搜索语句转化为结构化查询词。
具体地,搜索引擎可对搜索语句进行解析,将解析之后的搜索语句进行排序或重组等操作以生成结构化查询词。具体的实现方式可参照后续实施例。其中,在本发明的实施例中,结构化查询词可理解是可以直接用来查询结构化数据(例如知识库)的逻辑表达式,类似于SQL语言(Structured Query Language,结构化查询语言)、SPARQL(Simple Protocol and RDF Query Language,为RDF开发的一种查询语言和数据获取协议)语言等。这种逻辑表达式具有很强的结构化特点,所以计算机可以直接解析该表达式来查询结构化数据从而获得答案。
S103,搜索引擎根据结构化查询词进行查询以获取搜索结果。
具体而言,在本发明的实施例中,可根据结构化查询词进行查询结构化数据库以获取搜索结果。其中,在本发明的实施例中,结构化数据库可为三元组数据库或SQL数据库等。
其中,在本发明的实施例中,当结构化数据库为三元组数据库时,可根据结构化查询词直接在三元组数据库中进行查询以查询出对应的搜索结果;当结构化数据库为SQL数据库时,可先将结构化查询词转化为与其对应的SQL查询语句,之后可根据该SQL查询语句在SQL数据库进行查询以得到对应的搜索结果。
本发明实施例的搜索方法,通过将搜索语句转化为结构化查询词,并根据结构化查询词在结构化数据库中进行查询以获取对应的搜索结果,实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率,对于用户来说,得到了更为精确的搜索结果,提升了用户体验。
图2是根据本发明的另一个实施例的搜索方法的流程图。如图2所示,该搜索方法可以包括:
S201,搜索引擎获取搜索语句。
其中,在本发明的实施例中,搜索语句可以是各种语言的字符(如文字、拼音、符号和/或数字等)中的一种或者它们的组合。
例如,搜索引擎可获取用户在浏览器提供的输入框中输入的搜索语句。
S202,搜索引擎对搜索语句进行分词以生成多个词。
例如,以搜索语句为“刘德华和哪些女演员演过电影”为例,可通过现有的分词技术对该搜索语句进行分词,可得到多个词,即“刘德华”、“和”、“哪些”“女”“演员”、“演 过”、“电影”。应当理解,现有的分词技术可包括字符串匹配的分词技术等。
S203,搜索引擎对搜索语句进行词法分析以获取搜索语句中每个词对应的词性标注标签。
其中,应当理解,词性标注是指根据句子中的上下文信息给句中的每个词确定一个最为合适的词性标记。可通过字符对每个词性进行标记,即如下面表1所示为词性标注语料库中的一部分:

a形容词d副词b区别词c连词f方位词m数次n名词nr人名ns地名nt机构nz其他专名p介词q量词r代词s处所词t时间词u助词v动词w标点

表1
例如,以搜索语句为“刘德华和哪些女演员演过电影”为例,可对该搜索语句进行词法分析,分析出搜索语句中每个词(“刘德华”、“和”、“哪些”“女”“演员”、“演过”、“电影”)所对应的词性,之后可根据词性在词性标注语料库进行查询以获取每个词(“刘德华”、“和”、“哪些”“女”“演员”、“演过”、“电影”)对应的词性标注标签,如:依次为“nr”、“c”、“r”、“b”、“n”、“v”、“u”、“n”,同时还可对搜索语句中的每个词进行NE(Named Entity,命名实体)识别处理以获取搜索语句中的命名实体“刘德华”。
S204,搜索引擎对搜索语句进行句法分析以获取搜索语句中各个词之间的依存关系标签。
其中,应当理解,依存关系是指各个词之间在句法上的搭配关系。可通过字符对各个词之间的依存关系进行标记以成为依存关系标签,如下面表2所示为依存关系标签库中的一部分:
SBV主谓关系VOB动宾关系ATT定中关系ADV状中关系CMP动补结构DEI“得”字结构DE“的”字结构DI“地”字结构MT语态结构QUN数量关系COO并列关系CNJ关联结构APP同位关系POB介宾关系SIM比拟关系LAD前附加关系HED核心关系CSB从句主语FOB前置宾语

表2
需要说明的是,句法分析结果可包括多种形式,在本发明的实施例中,以依存句法分析为例,以说明句法分析结果的作用。句法分析的目标是分析搜索语句的句法结构,将一个词汇化的序列转化为树状的依存结构。例如,如图3所示,以搜索语句为“刘德华和哪 些女演员演过电影”为例,在依存句法结果中,各个词之间的依存关系使用“依存弧”来表示,依存弧上的标签表示具体的预存类型,如SBV表示“演员”和“演”两个词是“主谓关系”,VOB表示“演”和“电影”两个词是“动宾关系”等。
S205,搜索引擎根据词性标注标签和依存关系标签生成结构化查询词。
具体而言,在本发明的实施例中,可分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,以生成搜索语句中各个词之间的语义关系。之后,可根据语义关系生成结构化查询词。也就是说,可先分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,得到搜索语句中每个词的语义标签,之后可根据每个词的语义标签生成各个词之间的语义关系。其中,语义标签可通过字符对词的语义来进行表示,如:S表示“实体”、P表示“属性”、O表示“属性值”,C表示S的“类别”,语义关系的形式可包括SP、PS、CP、PC、OP、PO、PC、CP、OC、CO、SC、CS。
举例而言,以搜索语句为“刘德华和哪些女演员演过电影”为例,可分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,将连词或代词等不重要的词去掉,得到“刘德华”、“演过”、“电影”、“女”“演员”之间的语义关系分别为:“OP”、“PC”、“SP”、“OC”,如图4所示。之后,可根据这些语义关系可得到结构化查询词,基于这些语义关系可用表达式来表示结构化查询词,即具有结构化的查询表达式,可用二叉树的形式进行表示,如图5所示,这样搜索语句“刘德华和哪些女演员演过电影”对应的查询表达式可为“<<O=女,C={演员?}>&<S={<O=刘德华,P=演,C={电影?}},P={演员},O=?>>”。
需要说明的是,在本发明的实施例中,比如语义关系PS和SP是同一类表达式,其顺序是由词在原搜索语句中的顺序决定的,如PS表达式中,P在原搜索语句中是在S的前面的。其他表达式类似。其中,由于树的结构是两个词之间的关系,因此可将OPC类这种类似的表达式进行拆解,如可拆解成OP、OC两个表达式。
还需要说明的是,本发明的语义分析主要是通过自左向右、自底向上的语义分析过程,预测出搜索语句中的词与词之间的语义关系。首先,从初始状态开始,根据当前状态(包括已经分析完成的分析结果和剩下的待分析部分)预测下一个最优状态,最终形成完整的语义分析结果。该语义分析方法的特点是:(1)可以融合各种特征;(2)分析速度快。下面可详细说明语义分析的实现过程。
首先,可先定义一个具有12个语义关系的语义关系集合relationSet={SP PS CP PC OP PO PC CP OC CO SC CS},并定义了在分析过程可能会使用到的状态动作集合:由于分析的过程是在两个数据结构上进行,分别是队列(queue)和栈(stack)中进行。同时使用一个数组(relation)记录所有词之间的标签。为了便于进行描述,可先进行下列定义:root表示树的根节点;w1,w2,…,wn表示一个query,由词语w1,w2,…,wn组成;relation中 的元素为r:(wi,wj),表示两个词之间的语义标签为r,r∈relationSet。令初始状态为:stack={},queue={root,w1,w2,…,wn},relation={};接受状态为:stack={},queue={root},relation={r1:(w1,w2),…,r2:(wn-1,wn)}。定义动作1:right-reduce-r:
栈中的元素出栈,与队列头部的元素得到一个语义关系标签,队列头部的元素不变“动作前:stack={root,w1},queue={w2,…,wn},relation={…}”,“动作后:stack={root},queue={w2,…,wn},relation={r:(w1,w2),…}”;动作2:left-reduce-r:队列头部的元素出队列,与栈头部的元素得到一个语义关系标签,队列头部的元素换成栈头部的元素“动作前:stack={root,w1},queue={w2,…,wn},relation={…}”,“动作后:stack={root},queue={w1,…,wn},relation={r:(w1,w2),…}”;动作3:shift:将queue头部的元素压入栈stack“动作前:stack={root},queue={w1,w2,…,wn},relation={…}”,“动作后:stack={root,w1},queue={w2,…,wn},relation={…}”。最后,可根据当前状态提取特征,使用分类的方法决策出应该采取的动作,根据上述对各个动作的定义,进行解码,最终形成一颗树。其中,具体的解码过程可通过如下表3中的代码进行表示:

表3
举例而言,如图6所示,以搜索语句为“演过还珠格格的女演员演电视剧”为例,首先可先得到对应的多个词“演过”、“还珠格格”、“的”、“女”、“演员”、“演”、“电视剧”,之后可初始化stack queue以及relation,然后可判断当前状态(右上部分为待分析序列,左下部分为分析完成的部分结构)是否为终止状态,若不是,则从抽取stack queue中抽取特征(如词性标注标签、命名实体、依存关系标签、语义关系等),之后,可根据分类方法对这些特征进行分类以决策出下一步将要采取的动作,最后,可根据预先的动作定义对 下一步将要采取的动作进行执行(即改变状态),直至当前状态变为终止状态为止,从而得到了词之间的语义关系。
S206,搜索引擎根据结构化查询词进行查询以获取搜索结果。
具体而言,在本发明的实施例中,可根据结构化查询词进行查询结构化数据库以获取搜索结果。其中,在本发明的实施例中,结构化数据库可为三元组数据库或结构化查询语言SQL数据库等。
其中,在本发明的实施例中,当结构化数据库为三元组数据库时,可根据结构化查询词直接在三元组数据库中进行查询以查询出对应的搜索结果,例如,对于SP查询,<S=刘德华,P=年龄,O=?>,可直接在三元组数据库中查询匹配的S和P,即可以得到O:172CM;当结构化数据库为SQL数据库时,可先将结构化查询词转化为与其对应的SQL查询语句,之后可根据该SQL查询语句在SQL数据库进行查询以得到对应的搜索结果,例如,对于SP查询,可以转换为SQL查询语句如下:<S=刘德华,P=年龄,O=?>,Select年龄from明星where name=刘德华,这样通过该SQL语句即可在SQL数据库查找到对应的结果。
可选的,在本发明的实施例中,S203和S204可不区分先后顺序被执行。
本发明实施例的搜索方法,可对搜索语句进行词法分析以获取搜索语句中每个词对应的词性标注标签,并对搜索语句进行句法分析以获取搜索语句中各个词之间的依存关系标签,以及根据词性标注标签和依存关系标签生成结构化查询词,通过充分融合了句法信息、语法信息等多种信息,使得搜索语句的分析结果更加的准确。
为了实现上述实施例,本发明还提出了一种搜索装置,包括:获取模块,用于获取搜索语句;转化模块,用于将搜索语句转化为结构化查询词;以及查询模块,用于根据结构化查询词进行查询以获取搜索结果。
图7是根据本发明一个实施例的搜索装置的结构示意图。如图7所示,该搜索装置可以包括:获取模块10、转化模块20和查询模块30。
具体地,获取模块10可用于获取搜索语句。其中,在本发明的实施例中,搜索语句可以是各种语言的字符(如文字、拼音、符号和/或数字等)中的一种或者它们的组合。例如,获取模块10可获取用户在浏览器提供的输入框中输入的搜索语句。
转化模块20可用于将搜索语句转化为结构化查询词。更具体地,转化模块20可对搜索语句进行解析,将解析之后的搜索语句进行排序或重组等操作以生成结构化查询词。具体的实现方式可参照后续实施例。其中,在本发明的实施例中,结构化查询词可理解是可以直接用来查询结构化数据(例如知识库)的逻辑表达式,类似于SQL语言、SPARQL语言等。这种逻辑表达式具有很强的结构化特点,所以计算机可以直接解析该表达式来查询结 构化数据从而获得答案。
查询模块30可用于根据结构化查询词进行查询以获取搜索结果。具体而言,在本发明的实施例中,查询模块30可具体用于根据结构化查询词进行查询结构化数据库以获取搜索结果。其中,在本发明的实施例中,结构化数据库可为三元组数据库或结构化查询语言SQL数据库。
其中,在本发明的实施例中,当结构化数据库为三元组数据库时,查询模块30可根据结构化查询词直接在三元组数据库中进行查询以查询出对应的搜索结果;当结构化数据库为SQL数据库时,查询模块30可先将结构化查询词转化为与其对应的SQL查询语句,之后可根据该SQL查询语句在SQL数据库进行查询以得到对应的搜索结果。
进一步的,在本发明的一个实施例中,如图8所示,该转化模块20可包括分词单元21、第一获取单元22、第二获取单元23和生成单元24。具体地,分词单元21可用于对搜索语句进行分词以生成多个词。例如,以搜索语句为“刘德华和哪些女演员演过电影”为例,分词单元21可通过现有的分词技术对该搜索语句进行分词,可得到多个词,即“刘德华”、“和”、“哪些”“女”“演员”、“演过”、“电影”。应当理解,现有的分词技术可包括字符串匹配的分词技术等。
第一获取单元22可用于对搜索语句进行词法分析以获取搜索语句中每个词对应的词性标注标签。其中,应当理解,词性标注是指根据句子中的上下文信息给句中的每个词确定一个最为合适的词性标记。可通过字符对每个词性进行标记,即如上面表1所示为词性标注语料库中的一部分。
例如,以搜索语句为“刘德华和哪些女演员演过电影”为例,第一获取单元22可对该搜索语句进行词法分析,分析出搜索语句中每个词(“刘德华”、“和”、“哪些”“女”“演员”、“演过”、“电影”)所对应的词性,之后可根据词性在词性标注语料库进行查询以获取每个词(“刘德华”、“和”、“哪些”“女”“演员”、“演过”、“电影”)对应的词性标注标签,如:依次为“nr”、“c”、“r”、“b”、“n”、“v”、“u”、“n”,同时还可对搜索语句中的每个词进行NE(Named Entity,命名实体)识别处理以获取搜索语句中的命名实体“刘德华”。
第二获取单元23可用于对搜索语句进行句法分析以获取搜索语句中各个词之间的依存关系标签。其中,应当理解,依存关系是指各个词之间在句法上的搭配关系。可通过字符对各个词之间的依存关系进行标记以成为依存关系标签,如上面表2所示为依存关系标签库中的一部分。
需要说明的是,句法分析结果可包括多种形式,在本发明的实施例中,以依存句法分析为例,以说明句法分析结果的作用。句法分析的目标是分析搜索语句的句法结构,将一个词汇化的序列转化为树状的依存结构。例如,如图3所示,以搜索语句为“刘德华和哪 些女演员演过电影”为例,在依存句法结果中,各个词之间的依存关系使用“依存弧”来表示,依存弧上的标签表示具体的预存类型,如SBV表示“演员”和“演”两个词是“主谓关系”,VOB表示“演”和“电影”两个词是“动宾关系”等。
生成单元24可用于根据词性标注标签和依存关系标签生成结构化查询词。具体而言,在本发明的实施例中,生成单元24可先分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,以生成搜索语句中各个词之间的语义关系;之后,根据语义关系生成结构化查询词。也就是说,生成单元24可先分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,得到搜索语句中每个词的语义标签,之后可根据每个词的语义标签生成各个词之间的语义关系。其中,语义标签可通过字符对词的语义来进行表示,如:S表示“实体”、P表示“属性”、O表示“属性值”,C表示S的“类别”,语义关系的形式可包括SP、PS、CP、PC、OP、PO、PC、CP、OC、CO、SC、CS。
举例而言,以搜索语句为“刘德华和哪些女演员演过电影”为例,生成单元24可分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,将连词或代词等不重要的词去掉,得到“刘德华”、“演过”、“电影”、“女”“演员”之间的语义关系分别为:“OP”、“PC”、“SP”、“OC”,如图4所示。之后,可根据这些语义关系可得到结构化查询词,基于这些语义关系可用表达式来表示结构化查询词,即具有结构化的查询表达式,可用二叉树的形式进行表示,如图5所示,这样搜索语句“刘德华和哪些女演员演过电影”对应的查询表达式可为“<<O=女,C={演员?}>&<S={<O=刘德华,P=演,C={电影?}},P={演员},O=?>>”。
由此,根据上述实施例通过充分融合了句法信息、语法信息等多种信息,使得搜索语句的分析结果更加的准确。
本发明实施例的搜索装置,通过获取模块获取搜索语句,转化模块将搜索语句转化为结构化查询词,查询模块根据结构化查询词在结构化数据库中进行查询以获取对应的搜索结果,实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率,对于用户来说,得到了更为精确的搜索结果,提升了用户体验。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分, 并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示 例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

搜索方法和搜索装置.pdf_第1页
第1页 / 共16页
搜索方法和搜索装置.pdf_第2页
第2页 / 共16页
搜索方法和搜索装置.pdf_第3页
第3页 / 共16页
点击查看更多>>
资源描述

《搜索方法和搜索装置.pdf》由会员分享,可在线阅读,更多相关《搜索方法和搜索装置.pdf(16页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN104252533A43申请公布日20141231CN104252533A21申请号201410466232622申请日20140912G06F17/3020060171申请人百度在线网络技术(北京)有限公司地址100085北京市海淀区上地十街10号百度大厦三层72发明人徐文智刘占一吴华王海峰74专利代理机构北京清亦华知识产权代理事务所普通合伙11201代理人宋合成54发明名称搜索方法和搜索装置57摘要本发明公开了一种搜索方法,包括S1、搜索引擎获取搜索语句;S2、搜索引擎将搜索语句转化为结构化查询词;以及S3、搜索引擎根据结构化查询词进行查询以获取搜索结果。本发明实施例的搜。

2、索方法,实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率,对于用户来说,得到了更为精确的搜索结果,提升了用户体验。本发明还公开了一种搜索装置。51INTCL权利要求书1页说明书10页附图4页19中华人民共和国国家知识产权局12发明专利申请权利要求书1页说明书10页附图4页10申请公布号CN104252533ACN104252533A1/1页21一种搜索方法,其特征在于,包括以下步骤S1、搜索引擎获取搜索语句;S2、所述搜索引擎将所述搜索语句转化为结构化查询词;以及S3、所述搜索引擎根据所述结构化查询词进行查询以获取搜。

3、索结果。2如权利要求1所述的搜索方法,其特征在于,所述步骤S2具体包括S21、对所述搜索语句进行分词以生成多个词;S22、对所述搜索语句进行词法分析以获取所述搜索语句中每个词对应的词性标注标签;S23、对所述搜索语句进行句法分析以获取所述搜索语句中各个词之间的依存关系标签;以及S24、根据所述词性标注标签和所述依存关系标签生成所述结构化查询词。3如权利要求2所述的搜索方法,其特征在于,所述步骤S24具体包括分别对所述词性标注标签所对应的词和所述依存关系标签所对应的词进行语义分析,以生成所述搜索语句中各个词之间的语义关系;根据所述语义关系生成所述结构化查询词。4如权利要求1所述的搜索方法,其特征。

4、在于,所述步骤S3具体包括根据所述结构化查询词进行查询结构化数据库以获取所述搜索结果。5如权利要求4所述的搜索方法,其特征在于,所述结构化数据库为三元组数据库或结构化查询语言SQL数据库。6一种搜索装置,其特征在于,包括获取模块,用于获取搜索语句;转化模块,用于将所述搜索语句转化为结构化查询词;以及查询模块,用于根据所述结构化查询词进行查询以获取搜索结果。7如权利要求6所述的搜索装置,其特征在于,所述转化模块包括分词单元,用于对所述搜索语句进行分词以生成多个词;第一获取单元,用于对所述搜索语句进行词法分析以获取所述搜索语句中每个词对应的词性标注标签;第二获取单元,用于对所述搜索语句进行句法分析。

5、以获取所述搜索语句中各个词之间的依存关系标签;生成单元,用于根据所述词性标注标签和所述依存关系标签生成所述结构化查询词。8如权利要求7所述的搜索装置,其特征在于,所述生成单元具体用于分别对所述词性标注标签所对应的词和所述依存关系标签所对应的词进行语义分析,以生成所述搜索语句中各个词之间的语义关系;根据所述语义关系生成所述结构化查询词。9如权利要求6所述的搜索装置,其特征在于,所述查询模块具体用于根据所述结构化查询词进行查询结构化数据库以获取所述搜索结果。10如权利要求9所述的搜索装置,其特征在于,所述结构化数据库为三元组数据库或结构化查询语言SQL数据库。权利要求书CN104252533A1/。

6、10页3搜索方法和搜索装置技术领域0001本发明涉及互联网技术领域,尤其涉及一种搜索方法和搜索装置。背景技术0002目前,互联网上的搜索引擎主要通过提供和用户QUERY查询词相关的网页信息来满足获取信息的需求。如果用户的QUERY是一个特定信息的请求,如“谢霆锋是谁的儿子”,那么用户期望得到该QUERY对应的答案“谢贤”,而不是相关的网页。0003相关技术中,有一些搜索引擎已经实现了上述功能,但是这些搜索引擎只能为简单QUERY提供答案,而无法处理复杂QUERY,这里提到的复杂QUERY包括1表达相似但语义不同的QUERY,如“谢霆锋是谁的儿子”,“谢霆锋的儿子是谁”,“谁是谢霆锋的儿子”等;。

7、2内容复杂的QUERY,如“刘德华和那些女演员演过电影”、“演过还珠格格的女演员演过的电视剧”等。这样,当用户输入的QUERY较为复杂时,搜索引擎就无法为用户提供其期望的答案,导致准确率降低,用户体验变差。发明内容0004本发明的目的旨在至少在一定程度上解决上述的技术问题之一。0005为此,本发明的一个目的在于提出一种搜索方法。该方法实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率。0006本发明的另一个目的在于提出一种搜索装置。0007为了实现上述目的,本发明一方面实施例的搜索方法,包括S1、搜索引擎获取搜索语句;。

8、S2、所述搜索引擎将所述搜索语句转化为结构化查询词;以及S3、所述搜索引擎根据所述结构化查询词进行查询以获取搜索结果。0008本发明实施例的搜索方法,通过将搜索语句转化为结构化查询词,并根据结构化查询词在结构化数据库中进行查询以获取对应的搜索结果,实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率,对于用户来说,得到了更为精确的搜索结果,提升了用户体验。0009为了实现上述目的,本发明另一方面实施例的搜索装置,包括获取模块,用于获取搜索语句;转化模块,用于将所述搜索语句转化为结构化查询词;以及查询模块,用于根据所述结构。

9、化查询词进行查询以获取搜索结果。0010本发明实施例的搜索装置,通过获取模块获取搜索语句,转化模块将搜索语句转化为结构化查询词,查询模块根据结构化查询词在结构化数据库中进行查询以获取对应的搜索结果,实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率,对于用户来说,得到了更为精确的搜索结果,提升了用户体验。0011本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变说明书CN104252533A2/10页4得明显,或通过本发明的实践了解到。附图说明0012本发明上述的和/或附加的方面和优点从下面结合附图。

10、对实施例的描述中将变得明显和容易理解,其中,0013图1是根据本发明一个实施例的搜索方法的流程图;0014图2是根据本发明另一个实施例的搜索方法的流程图;0015图3是根据本发明一个实施例的依存关系标签的示意图;0016图4是根据本发明一个实施例的搜索语句中各个词之间的语义关系的示意图;0017图5是根据本发明一个实施例的结构化查询词以二叉树的形式进行表示的示意图;0018图6是根据本发明一个实施例的语义分析过程的示意图;0019图7是根据本发明一个实施例的搜索装置的结构示意图;以及0020图8是根据本发明另一个实施例的搜索装置的结构示意图。具体实施方式0021下面详细描述本发明的实施例,所述。

11、实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。0022下面参考附图描述根据本发明实施例的搜索方法和搜索装置。0023本发明提出了一种搜索方法,包括搜索引擎获取搜索语句;搜索引擎将搜索语句转化为结构化查询词;以及搜索引擎根据结构化查询词进行查询以获取搜索结果。0024图1是根据本发明一个实施例的搜索方法的流程图。如图1所示,该搜索方法可以包括0025S101,搜索引擎获取搜索语句。0026其中,在本发明的实施例中,搜索语句可以是各种语言的字符如文字、拼音。

12、、符号和/或数字等中的一种或者它们的组合。0027例如,搜索引擎可获取用户在浏览器提供的输入框中输入的搜索语句。0028S102,搜索引擎将搜索语句转化为结构化查询词。0029具体地,搜索引擎可对搜索语句进行解析,将解析之后的搜索语句进行排序或重组等操作以生成结构化查询词。具体的实现方式可参照后续实施例。其中,在本发明的实施例中,结构化查询词可理解是可以直接用来查询结构化数据例如知识库的逻辑表达式,类似于SQL语言STRUCTUREDQUERYLANGUAGE,结构化查询语言、SPARQLSIMPLEPROTOCOLANDRDFQUERYLANGUAGE,为RDF开发的一种查询语言和数据获取协。

13、议语言等。这种逻辑表达式具有很强的结构化特点,所以计算机可以直接解析该表达式来查询结构化数据从而获得答案。0030S103,搜索引擎根据结构化查询词进行查询以获取搜索结果。0031具体而言,在本发明的实施例中,可根据结构化查询词进行查询结构化数据库以获取搜索结果。其中,在本发明的实施例中,结构化数据库可为三元组数据库或SQL数据库说明书CN104252533A3/10页5等。0032其中,在本发明的实施例中,当结构化数据库为三元组数据库时,可根据结构化查询词直接在三元组数据库中进行查询以查询出对应的搜索结果;当结构化数据库为SQL数据库时,可先将结构化查询词转化为与其对应的SQL查询语句,之后。

14、可根据该SQL查询语句在SQL数据库进行查询以得到对应的搜索结果。0033本发明实施例的搜索方法,通过将搜索语句转化为结构化查询词,并根据结构化查询词在结构化数据库中进行查询以获取对应的搜索结果,实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率,对于用户来说,得到了更为精确的搜索结果,提升了用户体验。0034图2是根据本发明的另一个实施例的搜索方法的流程图。如图2所示,该搜索方法可以包括0035S201,搜索引擎获取搜索语句。0036其中,在本发明的实施例中,搜索语句可以是各种语言的字符如文字、拼音、符号和/或数字等。

15、中的一种或者它们的组合。0037例如,搜索引擎可获取用户在浏览器提供的输入框中输入的搜索语句。0038S202,搜索引擎对搜索语句进行分词以生成多个词。0039例如,以搜索语句为“刘德华和哪些女演员演过电影”为例,可通过现有的分词技术对该搜索语句进行分词,可得到多个词,即“刘德华”、“和”、“哪些”“女”“演员”、“演过”、“电影”。应当理解,现有的分词技术可包括字符串匹配的分词技术等。0040S203,搜索引擎对搜索语句进行词法分析以获取搜索语句中每个词对应的词性标注标签。0041其中,应当理解,词性标注是指根据句子中的上下文信息给句中的每个词确定一个最为合适的词性标记。可通过字符对每个词性。

16、进行标记,即如下面表1所示为词性标注语料库中的一部分0042A形容词D副词B区别词C连词F方位词M数次N名词NR人名NS地名NT机构NZ其他专名P介词Q量词R代词S处所词T时间词U助词V动词W标点0043表10044例如,以搜索语句为“刘德华和哪些女演员演过电影”为例,可对该搜索语句进行词法分析,分析出搜索语句中每个词“刘德华”、“和”、“哪些”“女”“演员”、“演过”、“电影”所对应的词性,之后可根据词性在词性标注语料库进行查询以获取每个词“刘德华”、“和”、“哪些”“女”“演员”、“演过”、“电影”对应的词性标注标签,如依次为“NR”、“C”、“R”、“B”、“N”、“V”、“U”、“N”。

17、,同时还可对搜索语句中的每个词进行NENAMEDENTITY,命名说明书CN104252533A4/10页6实体识别处理以获取搜索语句中的命名实体“刘德华”。0045S204,搜索引擎对搜索语句进行句法分析以获取搜索语句中各个词之间的依存关系标签。0046其中,应当理解,依存关系是指各个词之间在句法上的搭配关系。可通过字符对各个词之间的依存关系进行标记以成为依存关系标签,如下面表2所示为依存关系标签库中的一部分0047SBV主谓关系VOB动宾关系ATT定中关系ADV状中关系CMP动补结构DEI“得”字结构DE“的”字结构DI“地”字结构MT语态结构QUN数量关系COO并列关系CNJ关联结构AP。

18、P同位关系POB介宾关系SIM比拟关系LAD前附加关系HED核心关系CSB从句主语FOB前置宾语0048表20049需要说明的是,句法分析结果可包括多种形式,在本发明的实施例中,以依存句法分析为例,以说明句法分析结果的作用。句法分析的目标是分析搜索语句的句法结构,将一个词汇化的序列转化为树状的依存结构。例如,如图3所示,以搜索语句为“刘德华和哪些女演员演过电影”为例,在依存句法结果中,各个词之间的依存关系使用“依存弧”来表示,依存弧上的标签表示具体的预存类型,如SBV表示“演员”和“演”两个词是“主谓关系”,VOB表示“演”和“电影”两个词是“动宾关系”等。0050S205,搜索引擎根据词性标。

19、注标签和依存关系标签生成结构化查询词。0051具体而言,在本发明的实施例中,可分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,以生成搜索语句中各个词之间的语义关系。之后,可根据语义关系生成结构化查询词。也就是说,可先分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,得到搜索语句中每个词的语义标签,之后可根据每个词的语义标签生成各个词之间的语义关系。其中,语义标签可通过字符对词的语义来进行表示,如S表示“实体”、P表示“属性”、O表示“属性值”,C表示S的“类别”,语义关系的形式可包括SP、PS、CP、PC、OP、PO、PC、CP、OC、CO、SC、CS。005。

20、2举例而言,以搜索语句为“刘德华和哪些女演员演过电影”为例,可分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,将连词或代词等不重要的词去掉,得到“刘德华”、“演过”、“电影”、“女”“演员”之间的语义关系分别为“OP”、“PC”、“SP”、“OC”,如图4所示。之后,可根据这些语义关系可得到结构化查询词,基于这些语义关系可用表达式来表示结构化查询词,即具有结构化的查询表达式,可用二叉树的形式进行表示,如图5所示,这样搜索语句“刘德华和哪些女演员演过电影”对应的查询表达式可为“”。0053需要说明的是,在本发明的实施例中,比如语义关系PS和SP是同一类表达式,其说明书CN104。

21、252533A5/10页7顺序是由词在原搜索语句中的顺序决定的,如PS表达式中,P在原搜索语句中是在S的前面的。其他表达式类似。其中,由于树的结构是两个词之间的关系,因此可将OPC类这种类似的表达式进行拆解,如可拆解成OP、OC两个表达式。0054还需要说明的是,本发明的语义分析主要是通过自左向右、自底向上的语义分析过程,预测出搜索语句中的词与词之间的语义关系。首先,从初始状态开始,根据当前状态包括已经分析完成的分析结果和剩下的待分析部分预测下一个最优状态,最终形成完整的语义分析结果。该语义分析方法的特点是1可以融合各种特征;2分析速度快。下面可详细说明语义分析的实现过程。0055首先,可先定。

22、义一个具有12个语义关系的语义关系集合RELATIONSETSPPSCPPCOPPOPCCPOCCOSCCS,并定义了在分析过程可能会使用到的状态动作集合由于分析的过程是在两个数据结构上进行,分别是队列QUEUE和栈STACK中进行。同时使用一个数组RELATION记录所有词之间的标签。为了便于进行描述,可先进行下列定义ROOT表示树的根节点;W1,W2,WN表示一个QUERY,由词语W1,W2,,WN组成;RELATION中的元素为RWI,WJ,表示两个词之间的语义标签为R,RRELATIONSET。令初始状态为STACK,QUEUEROOT,W1,W2,WN,RELATION;接受状态为S。

23、TACK,QUEUEROOT,RELATIONR1W1,W2,R2WN1,WN。定义动作1RIGHTREDUCER0056栈中的元素出栈,与队列头部的元素得到一个语义关系标签,队列头部的元素不变“动作前STACKROOT,W1,QUEUEW2,WN,RELATION”,“动作后STACKROOT,QUEUEW2,WN,RELATIONRW1,W2,”;动作2LEFTREDUCER队列头部的元素出队列,与栈头部的元素得到一个语义关系标签,队列头部的元素换成栈头部的元素“动作前STACKROOT,W1,QUEUEW2,WN,RELATION”,“动作后STACKROOT,QUEUEW1,WN,RE。

24、LATIONRW1,W2,”;动作3SHIFT将QUEUE头部的元素压入栈STACK“动作前STACKROOT,QUEUEW1,W2,WN,RELATION”,“动作后STACKROOT,W1,QUEUEW2,WN,RELATION”。最后,可根据当前状态提取特征,使用分类的方法决策出应该采取的动作,根据上述对各个动作的定义,进行解码,最终形成一颗树。其中,具体的解码过程可通过如下表3中的代码进行表示0057说明书CN104252533A6/10页80058表30059举例而言,如图6所示,以搜索语句为“演过还珠格格的女演员演电视剧”为例,首先可先得到对应的多个词“演过”、“还珠格格”、“的”。

25、、“女”、“演员”、“演”、“电视剧”,之后可初始化STACKQUEUE以及RELATION,然后可判断当前状态右上部分为待分析序列,左下部分为分析完成的部分结构是否为终止状态,若不是,则从抽取STACKQUEUE中抽取特征如词性标注标签、命名实体、依存关系标签、语义关系等,之后,可根据分类方法对这些特征进行分类以决策出下一步将要采取的动作,最后,可根据预先的动作定义对下一步将要采取的动作进行执行即改变状态,直至当前状态变为终止状态为止,从而得到了词之间的语义关系。0060S206,搜索引擎根据结构化查询词进行查询以获取搜索结果。0061具体而言,在本发明的实施例中,可根据结构化查询词进行查询。

26、结构化数据库以获取搜索结果。其中,在本发明的实施例中,结构化数据库可为三元组数据库或结构化查询语言SQL数据库等。0062其中,在本发明的实施例中,当结构化数据库为三元组数据库时,可根据结构化查询词直接在三元组数据库中进行查询以查询出对应的搜索结果,例如,对于SP查询,可直接在三元组数据库中查询匹配的S和P,即可以得到O172CM;当结构化数据库为SQL数据库时,可先将结构化查询词转化为与其对应的SQL查询语句,之后可根据该SQL查询语句在SQL数据库进行查询以得到对应的搜索结果,例如,对于SP查询,可以转换为SQL查询语句如下,SELECT年龄FROM明星WHERENAME刘德华,这样通过该。

27、SQL语句即可在SQL数据库查找到对应的结果。0063可选的,在本发明的实施例中,S203和S204可不区分先后顺序被执行。0064本发明实施例的搜索方法,可对搜索语句进行词法分析以获取搜索语句中每个词对应的词性标注标签,并对搜索语句进行句法分析以获取搜索语句中各个词之间的依存关系标签,以及根据词性标注标签和依存关系标签生成结构化查询词,通过充分融合了句法说明书CN104252533A7/10页9信息、语法信息等多种信息,使得搜索语句的分析结果更加的准确。0065为了实现上述实施例,本发明还提出了一种搜索装置,包括获取模块,用于获取搜索语句;转化模块,用于将搜索语句转化为结构化查询词;以及查询。

28、模块,用于根据结构化查询词进行查询以获取搜索结果。0066图7是根据本发明一个实施例的搜索装置的结构示意图。如图7所示,该搜索装置可以包括获取模块10、转化模块20和查询模块30。0067具体地,获取模块10可用于获取搜索语句。其中,在本发明的实施例中,搜索语句可以是各种语言的字符如文字、拼音、符号和/或数字等中的一种或者它们的组合。例如,获取模块10可获取用户在浏览器提供的输入框中输入的搜索语句。0068转化模块20可用于将搜索语句转化为结构化查询词。更具体地,转化模块20可对搜索语句进行解析,将解析之后的搜索语句进行排序或重组等操作以生成结构化查询词。具体的实现方式可参照后续实施例。其中,。

29、在本发明的实施例中,结构化查询词可理解是可以直接用来查询结构化数据例如知识库的逻辑表达式,类似于SQL语言、SPARQL语言等。这种逻辑表达式具有很强的结构化特点,所以计算机可以直接解析该表达式来查询结构化数据从而获得答案。0069查询模块30可用于根据结构化查询词进行查询以获取搜索结果。具体而言,在本发明的实施例中,查询模块30可具体用于根据结构化查询词进行查询结构化数据库以获取搜索结果。其中,在本发明的实施例中,结构化数据库可为三元组数据库或结构化查询语言SQL数据库。0070其中,在本发明的实施例中,当结构化数据库为三元组数据库时,查询模块30可根据结构化查询词直接在三元组数据库中进行查。

30、询以查询出对应的搜索结果;当结构化数据库为SQL数据库时,查询模块30可先将结构化查询词转化为与其对应的SQL查询语句,之后可根据该SQL查询语句在SQL数据库进行查询以得到对应的搜索结果。0071进一步的,在本发明的一个实施例中,如图8所示,该转化模块20可包括分词单元21、第一获取单元22、第二获取单元23和生成单元24。具体地,分词单元21可用于对搜索语句进行分词以生成多个词。例如,以搜索语句为“刘德华和哪些女演员演过电影”为例,分词单元21可通过现有的分词技术对该搜索语句进行分词,可得到多个词,即“刘德华”、“和”、“哪些”“女”“演员”、“演过”、“电影”。应当理解,现有的分词技术可。

31、包括字符串匹配的分词技术等。0072第一获取单元22可用于对搜索语句进行词法分析以获取搜索语句中每个词对应的词性标注标签。其中,应当理解,词性标注是指根据句子中的上下文信息给句中的每个词确定一个最为合适的词性标记。可通过字符对每个词性进行标记,即如上面表1所示为词性标注语料库中的一部分。0073例如,以搜索语句为“刘德华和哪些女演员演过电影”为例,第一获取单元22可对该搜索语句进行词法分析,分析出搜索语句中每个词“刘德华”、“和”、“哪些”“女”“演员”、“演过”、“电影”所对应的词性,之后可根据词性在词性标注语料库进行查询以获取每个词“刘德华”、“和”、“哪些”“女”“演员”、“演过”、“电。

32、影”对应的词性标注标签,如依次为“NR”、“C”、“R”、“B”、“N”、“V”、“U”、“N”,同时还可对搜索语句中的每个词进行NENAMEDENTITY,命名实体识别处理以获取搜索语句中的命名实体“刘德华”。说明书CN104252533A8/10页100074第二获取单元23可用于对搜索语句进行句法分析以获取搜索语句中各个词之间的依存关系标签。其中,应当理解,依存关系是指各个词之间在句法上的搭配关系。可通过字符对各个词之间的依存关系进行标记以成为依存关系标签,如上面表2所示为依存关系标签库中的一部分。0075需要说明的是,句法分析结果可包括多种形式,在本发明的实施例中,以依存句法分析为例,。

33、以说明句法分析结果的作用。句法分析的目标是分析搜索语句的句法结构,将一个词汇化的序列转化为树状的依存结构。例如,如图3所示,以搜索语句为“刘德华和哪些女演员演过电影”为例,在依存句法结果中,各个词之间的依存关系使用“依存弧”来表示,依存弧上的标签表示具体的预存类型,如SBV表示“演员”和“演”两个词是“主谓关系”,VOB表示“演”和“电影”两个词是“动宾关系”等。0076生成单元24可用于根据词性标注标签和依存关系标签生成结构化查询词。具体而言,在本发明的实施例中,生成单元24可先分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,以生成搜索语句中各个词之间的语义关系;之后,根据。

34、语义关系生成结构化查询词。也就是说,生成单元24可先分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,得到搜索语句中每个词的语义标签,之后可根据每个词的语义标签生成各个词之间的语义关系。其中,语义标签可通过字符对词的语义来进行表示,如S表示“实体”、P表示“属性”、O表示“属性值”,C表示S的“类别”,语义关系的形式可包括SP、PS、CP、PC、OP、PO、PC、CP、OC、CO、SC、CS。0077举例而言,以搜索语句为“刘德华和哪些女演员演过电影”为例,生成单元24可分别对词性标注标签所对应的词和依存关系标签所对应的词进行语义分析,将连词或代词等不重要的词去掉,得到“刘德华。

35、”、“演过”、“电影”、“女”“演员”之间的语义关系分别为“OP”、“PC”、“SP”、“OC”,如图4所示。之后,可根据这些语义关系可得到结构化查询词,基于这些语义关系可用表达式来表示结构化查询词,即具有结构化的查询表达式,可用二叉树的形式进行表示,如图5所示,这样搜索语句“刘德华和哪些女演员演过电影”对应的查询表达式可为“”。0078由此,根据上述实施例通过充分融合了句法信息、语法信息等多种信息,使得搜索语句的分析结果更加的准确。0079本发明实施例的搜索装置,通过获取模块获取搜索语句,转化模块将搜索语句转化为结构化查询词,查询模块根据结构化查询词在结构化数据库中进行查询以获取对应的搜索结。

36、果,实现了不管搜索语句的复杂程度均可将其转化为结构化查询词,并结合数据库信息进行知识推理以自动产生搜索语句对应的答案,提高了准确率,对于用户来说,得到了更为精确的搜索结果,提升了用户体验。0080在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。0081流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑。

37、功能或过程的步骤的可执行指令的代码的模块、片段或部说明书CN104252533A109/10页11分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。0082在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统使用,或结合这些指令执行系统、。

38、装置或设备而使用。就本说明书而言,“计算机可读介质“可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例非穷尽性列表包括以下具有一个或多个布线的电连接部电子装置,便携式计算机盘盒磁装置,随机存取存储器RAM,只读存储器ROM,可擦除可编辑只读存储器EPROM或闪速存储器,光纤装置,以及便携式光盘只读存储器CDROM。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述。

39、程序,然后将其存储在计算机存储器中。0083应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列PGA,现场可编程门阵列FPGA等。0084本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可。

40、读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。0085此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。0086上述提到的存储介质可以是只读存储器,磁盘或光盘等。0087在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特。

41、征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。0088尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例说明书CN104252533A1110/10页12性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。说明书CN104252533A121/4页13图1图2说明书附图CN104252533A132/4页14图3图4说明书附图CN104252533A143/4页15图5图6说明书附图CN104252533A154/4页16图7图8说明书附图CN104252533A16。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1