[发明专利]一种识别搜索需求的方法和装置有效
申请号: | 201110279434.6 | 申请日: | 2011-09-20 |
公开(公告)号: | CN103020052B | 公开(公告)日: | 2016-11-30 |
发明(设计)人: | 施少杰;刘建柱;薛阳阳 | 申请(专利权)人: | 北京百度网讯科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京鸿德海业知识产权代理事务所(普通合伙) 11412 | 代理人: | 袁媛 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 识别 搜索 需求 方法 装置 | ||
【技术领域】
本发明涉及计算机技术领域,特别涉及一种识别搜索需求的方法和装置。
【背景技术】
在搜索技术中,搜索引擎为了能够向用户返回准确的搜索结果,需要对用户搜索请求(query)进行需求识别,从而能够根据识别出的需求返回相应数据资源的搜索结果,或者根据识别出的需求对搜索结果进行相应形式的展现。
用户表达的某一类query通常符合某种模式,在现有的搜索需求识别技术中,通常将具有相同需求的query归纳起来形成一种或多种模板的形式,预先建立模板与搜索需求的对应关系。接收到用户query后,首先将用户query与词典进行匹配,根据词典的匹配结果确定出用户query中各词语的属性,利用确定的各词语的属性与模板逐一进行匹配,将匹配的模板对应的搜索需求识别为用户query的搜索需求。
然而,在现有的搜索需求中,在匹配过程中需要逐一与数据库中的词典和各模板进行匹配,而通常数据库中的词典和模板的数量很大,这就会造成识别用户query的搜索需求的效率很低,每天海量的搜索会对搜索引擎的性能带来很大的计算压力。
【发明内容】
有鉴于此,本发明提供了一种识别搜索需求的方法和装置,以便于提高识别搜索需求的效率,降低搜索对搜索引擎的性能所带来的压力。
具体技术方案如下:
一种识别搜索需求的方法,在数据库中分别以特里Trie树的形式存储词典和需求识别模板,分别得到词典Trie树和模板Trie树;所述方法包括:
接收到用户搜索请求query后,结合所述词典Trie树和模板Trie树对所述用户query进行匹配,确定匹配到的模板所对应的需求类型。
其中,所述词典Trie树中根节点指示初始状态,叶节点和部分中间节点指示匹配到的词语属性,节点与节点之间的转移条件为字符;
所述模板Trie树中根节点指示初始状态,叶节点指示模板匹配成功,节点和节点之间的转移条件包括:具体词语、词语属性、通配符或函数。
具体地,在数据库中以Trie树的形式存储词典得到词典Trie树包括:
A1、在数据库中建立词典Trie树的根节点,该根节点指示初始状态;
A2、从所述词典中获取一个尚未添加到词典Trie树中的词语,读取当前获取的词语中的第一个字符,将词典Trie树的根节点作为当前添加位置;
A3、判断当前读取到的字符是否已经存在于从当前添加位置开始的转移条件,如果是,执行步骤A4;否则,执行步骤A6;
A4、在词典Trie树中,将当前读取到的字符所存在的转移条件对应的下一级节点作为当前添加位置;
A5、判断当前读取到的词语是否存在下一个字符,如果是,读取当前获取的词语的下一个字符,转至步骤A3;否则,执行步骤A9;
A6、将当前读取到的字符添加为从当前添加位置开始的一个转移条件;
A7、判断当前获取的词语中是否存在下一个字符,如果是,执行步骤A8;否则,将当前获取的词语的属性添加到步骤A6所添加转移条件对应的下一级节点中,执行步骤A9;
A8、将步骤A6所添加转移条件对应的下一级节点作为当前添加位置,读取当前获取的词语中的下一个字符,转至步骤A3;
A9、结束当前获取的词语的添加过程,如果所述词典中存在尚未添加到词典Trie树中的词语,则转至步骤A2;否则,得到词典Trie树。
具体地,在数据库中以Trie树的形式存储模板得到模板Trie树包括:
B1、在数据库中建立模板Trie树的根节点,该根节点指示初始状态;
B2、获取一个尚未添加到模板Trie树中的模板,读取当前获取的模板中第一个模板槽的内容,将模板Trie树的根节点作为当前添加位置;
B3、判断当前读取到的模板槽的内容是否已经存在于当前添加位置开始的转移条件,如果是,执行步骤B4;否则执行步骤B7;
B4、在模板Trie树中,将当前读取到的模板槽的内容所在的转移条件对应的下一级节点作为当前添加位置;
B5、判断当前读取的模板槽是否存在下一个模板槽,如果是,读取下一个模板槽的内容,转至步骤B3;否则,执行步骤B6;
B6、在当前添加位置中添加模板匹配成功的指示,执行步骤B8;
B7、将当前读取的模板槽的内容添加为从当前添加位置开始的一个转移条件,将该转移条件对应的下一级节点作为当前添加位置,转至步骤B5;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京百度网讯科技有限公司,未经北京百度网讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110279434.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种盐碱地用肥料的粉碎细化设备
- 下一篇:一种谷物脱皮机