平码五不中公式规律
  • / 18
  • 下载费用:30 金币  

搜索建议的安全性修剪.pdf

关 键 ?#21097;?/dt>
搜索 建议 安全性 修剪
  专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
摘要
申请专利号:

CN201580033919.3

申请日:

2015.06.30

公开号:

CN106663106A

公开日:

2017.05.10

当前法律状态:

实审

?#34892;?#24615;:

审中

法?#19978;?#24773;: 实质审查的生效IPC(主分类):G06F 17/30申请日:20150630|||公开
IPC分类号: G06F17/30; G09C1/00 主分类号: G06F17/30
申请人: 微软技术许可有限责任公司
发明人: P·法格希希?#33258;?#20234;; P·J·鲍姆加特纳; C·佩特库尔斯卡; A·内兹; C·A·海斯
地址: 美国华盛顿州
优?#28909;ǎ?/td> 2014.07.01 US 14/321,794
专利代理机构: 北京市金杜律师事务所 11256 代理人: 王茂华
PDF完整版下载: PDF下载
法律状态
申请(专利)号:

CN201580033919.3

授权公告号:

|||

法律状态公告日:

2017.06.06|||2017.05.10

法律状态类型:

实质审查的生效|||公开

摘要

以考虑到访问控制信息的方式生成搜索建议。查询可以在发起查询的执行之前从搜索引擎的用户被接收。对用户可访问的数据可以基于与用户和数据相关联的访问信息被确定。随后,可以基于对用户可访问的数据动态地生成查询建议。

权利要求书

1.一种方法,包括:
采用至少一个处理器,所述至少一个处理器被配置为执行存储在存储器中的计算机可
执行指令以执行以下动作:
在发起查询的执行之前,接收由搜索引擎的用户指定的所述查询;
基于与所述用户和对所述用户可访问的数据相关联的访问信息来确定所述数据;以及
基于对所述用户可访问的所述数据来动态地生成一个或多个查询建议。
2.根据权利要求1所述的方法,生成一个或多个查询建议包括:
基于对所述用户可访问的所述数据来生成相关查询的集?#24076;?#20197;及
选择所述相关查询的集合的至少一个子集。
3.根据权利要求2所述的方法,还包括基于使用频率来选择所述相关查询的集合的至
少一个子集。
4.根据权利要求2所述的方法,还包括生成所述相关查询的集?#20064;?#25324;:
标识与由所述用户指定的所述查询匹配的模板;
检测至少一个未指定的模板?#38382;?#20197;及
通过使用对所述用户可访问的数据设置针对所述至少一个未指定的模板?#38382;?#30340;值来
构造一个或多个查询。
5.根据权利要求1所述的方法,还包括接收自然语言查询。
6.一种系统,包括:
被耦合到存储器的处理器,所述处理器被配置为执行存储在所述存储器中的以下计算
机可执行组件:
第一组件,所述第一组件被配置为在向搜索引擎提交查询以供执行之前,从所述搜索
引擎的用户接收所述查询;
第二组件,所述第二组件被配置为基于与所述用户和对所述用户可访问的数据相关联
的可访问性信息来获取所述数据;以及
第三组件,所述第三组件被配置为基于所述查询和由所述用户可访问的所述数据来动
态地生成一个或多个查询建议。
7.根据权利要求6所述的系统,所述查询是自然语言问题。
8.根据权利要求7所述的系统,还包括第四组件,所述第四组件被配置为将所述查询与
预定模板匹配。
9.根据权利要求8所述的系统,还包括第五组件,所述第五组件被配置为相对于所述模
板标识由所述查询未指定的?#38382;?br />
10.根据权利要求9所述的系统,还包括第六组件,所述第六组件被配置为通过使用对
所述用户可访问的所述数据设置所述未指定的?#38382;?#30340;值来生成相关查询的集合。

说明书

搜索建议的安全性修剪

背景技术

使用搜索引擎来最大化在大量数据中定位相关信息的可能性。为了在制定查询的
过程中帮助用户,大多数搜索引擎包括查询建议功能。更具体地,在发起查询的执行之前,
一个或多个查询基于指定的查询被建议。通常,查询建议在在查询被输入时被确定并?#20197;?br />搜索框中被提供以自动完成查询。当前的查询建议系统向用户呈现预定数目的查询制定,
并且强迫用户决定哪一个(如果有的话)最佳匹配它们的搜索意图。选择查询建议之一导致
查询的评估和对应于选择的查询制定的搜索结果的呈现,就像用户手动键入该查询到搜索
框中一样。

发明内容

下面提出简化的概述,以便提供对所公开的主题的一些方面的基本理解。该概述
不是广泛的概括。其不旨在标识重要/关键元素或者描述所要求保护的主题的范围。其唯一
目的是以简化的?#38382;?#25552;出一些构思,作为稍后提出的更详?#35813;?#36848;的前序。

简要地说,本公开涉及针对搜索建议的安全性修剪。在发起查询的执行之前,响应
于搜索引擎用户的查询,一个或多个建议可以被生成并且被返回。此外,建议可以被修剪或
者限制为一个或多个数据库上的数据,该查询被指定在该数据库上并且用户被授权访问该
数据库。此外,可以使用对用户可访问的数据动态地生成查询建议。

为了实现前述和相关目的,本文中结合以下描述和附图来描述所要求保护的主题
的某些说明性方面。这些方面指示可以实践主题的各种方式,所有方式旨在落入所要求保
护的主题的范围内。当结合附图考虑时,从下面的详?#35813;?#36848;中,其他优点和新颖特征将变得
显而易见。

附图说明

图1是搜索建议系统的框图。

图2是代表性处理组件的框图。

图3是代表性访问组件的框图。

图4是代表性建议组件的框图。

图5是查询建议的方法的流程图。

图6是生成查询建议的方法的流程图。

图7是生成相关查询的方法的流程图。

图8是示出针对本公开的多个方面的适当操作环境的示意性框图。

具体实施方式

后端数据库上的安全性能?#29615;?#27490;对数据库的未授权访问。例如,如果用户尝试通
过查询执行来访问数据库中的数据,则在用户未被授权访问数据库或者数据库中的特定数
据的情况下,没有结果将被返回。然而,可能的是用户在查询制定期间通过查询建议可以有
效地提取数据,或者以其他方式知道数据(用户缺少对于该数据的访问权限)的存在。作为
示例,假设员工未被授权具有对存储在数据库上的公司的客户访问。员工可以写查询,例如
“向……售出的产品的总数是多少”并暂停。建议可以被生成以完成暴露客户的至少一个子
集的查询,由此避开后端数据库安全性。

下面的?#38468;?#24635;地涉及搜索建议的安全性修剪。为了支持查询制定,在发起查询的
执行之前,响应于由搜索引擎的用户指定的搜索查询,一个或多个建议可以被生成并且被
提供。此外,建议可以被修剪或者限制为用户被授权访问的数据以保留安全性。与基于用户
访问权限过滤多个静态查询建议相对,还可以使用对用户可访问的数据来动态地生成查询
建议。更具体地,在接收到来自用户的查询时,可以基于与用户和数据相关联的访问信息来
关于什么数据对用户可访问来进行确定。随后,可以基于对用户可访问的数据来动态地生
成一个或多个查询建议。

本公开的各种方面现在更详细地参考附图进行描述,其中贯穿全文相同标记通常
指代相同或者对应元素。然而,应当理解,附图和与其相关的详?#35813;?#36848;不旨在将所要求保护
的主题限制为所公开的特定?#38382;健?#30456;反,意图是覆盖落入所要求保护的主题的精神和范围
内的所有修改、等同物和替代物。

首先参考图1,示出搜索建议系统100。搜索建议系统100与一个或多个数据库140
对接,并且包括查询界面组件110、处理组件120、访问组件130和建议组件150。查询界面组
件110被配置为从搜索引擎的用户接收查询,例如通过文本框和返回建议。根据一个实施
例,查询界面组件110可以是被配置为接受一个或多个关键字的关键字查询界面。根据另一
实施例,查询界面组件110可以是被配置为接受与关键字相对的用户问题的自然语言界面。
作为示例,自然语言搜索可以是“什么状态具有最低收入税?#20445;?#32780;相同搜索可以使用诸如“收
入税状态最低”的关键字被指定。为了清楚和简要,继续的描述关注于自然语言查询。然而,
所要求保护的主题不限于此。

处理组件120接收、检索、或者以其他方式获得或者获取来自查询界面组件110的
查询,并且处理查询以确定其含义以及针对建议的机会。将注意力简要地转到图2,代表性
处理组件120被更详细地描述。处理组件120包括解析器组件210、分析组件220和?#38382;?#26631;识
组件230。解析器组件210被配置为编解析查询串,标识词语,并且生成查询的表示(例如,解
析树、分层结构……),以用于根据已知的或者新颖的解析器技术的进一步处理。

分析组件220被配置为进一步处理由解析器组件210产生的查询的表示以确定查
询的含义。根据一个方面,分析组件可以采用模板来确定含义。多个模板可以被采用,其中
模板包括表示一种类别的自然语言问题或者查询的词语或者特殊符号的串。分析组件220
可以尝试将查询匹配到一个或多个预定模板,例如,其中查询的值与由模板捕获的值相同
或者相似。备选地,可以采用各种人工智能和/或统计分析来确定查询的含义。

?#38382;?#26631;识组件230被配置为标识查询的未指定的一个或多个?#38382;?#24182;且提供针对
建议的机会。例如,如果采用基于模板的分析,则可以在查询的?#38382;?#21644;匹配模板的?#38382;?#20043;间
进行比?#24076;?#20197;确定未指定的一个或多个?#38382;?#25110;者换句话说,模板槽或者间隙。此外,可以考
虑通过一个或多个数据库通过参照与数据库相关联的例如标识数据库的底层结构的元数
据而可用的数据。作为示例,考虑查询或者部分查询“谁为……赢得?#31169;?#29260;”。基于一个或多
个匹配模板的分析,可以确定在词语“为”之后存在未指定的?#38382;?#27133;或者间隙,并且基于参
数本身和可用数据,该?#38382;?#21487;以是运动、国家或者洲。如果数据库不包括针对运动的数据,
则?#38382;?#21487;以与国家和洲相关联。

返回图1,访问组件130被配置为实现关于存储在一个或多个数据库140中的数据
的访问控制。诸如安全性上下文的访问信息可以关于数据以及用户被使用,并且被采用以
实现访问控制。简要地转向图3,更详细地示出代表性访问组件130。用户访问组件310被配
置为获取关于搜索引擎用户的访问信息。这样的访问信息可以从访问控制数据库或者类似
存储库被检索,并且包括安全性凭证或者权限。例如,可以要求用户登录和被?#29616;ぁ?#38543;后,可
以使用用户的身份来查找访问信息,或者换句话说,用户的安全性上下文。数据访问组件
320被配置为获取关于数据的访问信息。例如,数据库可以包括关于有关在各种等级的粒度
(例如按照文件、行、列、或者单独的数据)处的数据的权限的规则。数据访问组件320被配置
为从一个或多个数据源获取这样的访问信息。比较组件330被配置为相对于关于数据指定
的权限来比较用户的权限,并?#20918;?#35782;用户被授权访问的数据。

图1的建议组件150被配置为接收或者检索关于如由访问组件130确定的用户被允
许访问的数据的信息,并且基于输入查询和用户被允许访问的数据动态地生成查询建议。
随后,这些查询建议可以通过查询界面组件110被提供到用户。与生成查询建议相关联的动
态性和与改变的输入查询相关联的动态性不同。更具体地,基于给定的输入查询动态地生
成建议。如果输入查询改变,例如当用户继续键入时,则因为查询不同,建议也可以改变。这
些建议可以被动态地生成,而不是从先前储存的静态建议查找以满足不同查询。

参考图4,进一步详细示出代表性建议组件150。如所示,建议组件150包括被配置
为生成与输入查询相关的查询的集合的查询生成器组件410。例如,查询的集合可以包括完
成输入查询、片段或者部分查询的查询。此外,查询生成器组件410被配置为基于输入查询
和用户被允许访问的数据生成查询的集合。此外,查询的集合可以被动态地生成。例如,匹
配输入查询的一个或多个模板可以被用于生成相关查询。模板的未指定的?#38382;?#21487;以被分配
用户被授权访问的数据。换句话说,由输入查询在模板中留下的槽或者间隙可以使用对用
户可访问的数据来填充。

再考虑其中用户输入查询或者问题“谁为……赢得?#31169;?#29260;”的示例。基于该查询和
来自底层数据库的元数据,可以生成填充词语“为”之后的槽的查询。槽将不被填充不在底
层数据库中的信息。例如,即使对于在数据库中的数据,也可以对数据进行筛选,以确保其
基于一个或多个模板有意义。这里,可以确定运动、国家和洲是适当的。因此,存在三个模
板:一个针对体育,一个针对国家,并且一个针对洲。现在,查询生成器组件410至少可以发
起与数据库的交互以从数据库检索针对运动、国家和洲的数据以填充模板中的这三个槽,
并且根据三个模板建立相关查询的集合。此外,模板仅使用用户被允许访问的数据被填充。
因此,如果用户不具有对体育的访问,则该模板将不被用于创建相关查询。此外,如果用户
不被允许访问北美的国家,则查询将仅使用诸如德国和西班牙的北美以外的国家来创建。
换句话说,基于用户被允许访问的数据的部分生成相关查询。

建议组件150还包括选择组件420。选择组件420被配置为选择或者标识呈现为建
议或者建议的查询的相关查询的至少一个子集。在一个实例中,选择组件420可以被配置为
选择N个查询,其中“N”是正整数,或者换句话说删减相关查询的集合。例如,选择组件420可
以标识可能的相关查询中的仅五个查询以供建议。此外,选择可以被配置为标识最高数目
的查询,其中最高查询比其他查询更可能被选择。因此,任?#38382;?#30446;的因素可以被考虑,除其
他事物外,包括使用频率和用户上下文信息。例如,在基于数据的使用频率向数据分配得分
的元数据可用的情况下,那些得分可以用作选择相关查询的子集的基础。关于奖牌查询,冰
壶运动?#28982;?#26679;滑冰更不受欢迎。因此,与这两个运动相关联的使用频?#23454;?#20998;可以?#20174;?#35813;事
实,并且被用于相对于冰壶选择花样滑冰运动。此外,包括偏好和搜索历史的用户上下文信
息可以被用于使得能够选择为特定用户定制的查询。此外,选择组件420可以实现多样性策
略,其中使用建议实现可配置量的多样性。例如,三个建议可以涉及体育并且三个建议可以
关于国家,而不是选择建议体育的六个查询。

排序组件430也由建议组件150提供。排序组件430被配置为标识搜索建议的顺序,
或者换句话说对搜索建议划分优先级。因此,排序组件430可以从选择组件接收相关查询的
子集,并且基于由用户选择的可能性对查询进?#20449;?#24207;。为了做出这样的确定,排序组件430
可以基于用户的频率或者用户上下文(诸如搜索偏好和历史)来计算得分。在由选择组件
420关于选择多个查询来计算这些得分的情况下,该信息可以被重新用于排序。备选地,排
序组件430可以计算这样的得分。基于获取或者计算的得分,排序组件430可以将搜索查询
从最可能由用户选择到最不可能由用户选择地进?#20449;?#24207;,反之亦然。

此外,应当理解,与基于用户的频率和用户上下文的诸如删减的选择相关联的功
能的至少一部分可以结合相关查询生成来执行,以将查询生成集中到相关查询,并且减少
动态地生成的查询的总数。例如,如果数据库记录与数据相关联的使用频率信息以及访问
信息,则可以设置阈值,该阈值排除不经常使用(例如,低于阈值)的数据在相关查询生成中
被采用。

已经关于若干组件之间的交互描述了上述系统、架构、环境?#21462;?#24212;当理解,这样的
系统和组件可以包括其中指定的那些组件或者子组件、指定的组件或者子组件中的一些
和/或另外的组件。子组件还可以被实现为通信地耦合到其他组件,而不是被包括在父组件
内。此外,一个或多个组件和/或子组件可以被组合为单个组件以提供聚合功能。系统、组件
和/或子组件之间的通信可以根据推送和/或拉取模型?#35789;?#29616;。为简要起见,组件还可以与
本文中未具体描述但是本领域技术人?#24065;?#30693;的一个或多个其它组件交互。

此外,以上公开的系统和以下方法的各种部分可以包括或者采用人工智能、机器
学习或者基于知识或者规则的组件、子组件,过程,装置,方法或者机制(例如,支持向量机、
神经网络、专家系统、贝?#31471;?#20449;念网络、模糊逻辑、数据融合引擎、分类器……)。这样的组件
尤其可以使由其执行的某些机制或者过程自动化,以使系统和方法的多个部分更自适应以
及高效和智能。作为示例而非限制,分析器组件220可以采用这样的机制,以确定查询或者
问题的含义。

鉴于上述示例性系统,可以根据所公开的主题?#35789;?#29616;的方法将与参考图5-7的流
程图被更好地理解。虽然为了简化说明的目的,将方法示出和描述为一系列框,但是应当理
解和明白,所要求保护的主题不限于框的顺序,因为根据本文中所描绘和描述的内容,一些
框可以以不同的顺序发生和/或与其它框同时发生。此外,并非所有示出的框都被要求实现
在下文中描述的方法。

参考图5,示出查询建议的方法500。在标记510,从搜索引擎用户接收、检索或者以
其它方式获得或者获取查询。在发起查询的执行或者评估之前,可以通过查询界面从用户
接收包括查询片段或者部分查询的查询。例如,用户可以通过键入或者语音输入在搜索框
中指定查询。根据一个方面,查询可以是自然语言查询。然而,也可以为关键字搜索提供支
持。在标记520,基于与用户和数据相关联的访问信息来确定对用户可访问的数据。访问信
息可以与用户身份相关联。在验证用户的身份时,身份可以被用于查找定义用户权限、特
权、或者关于访问数据的安全性等级的值或者值的集合。数据本身也可以包括定义需要什
么权限或者安全性等级来访问包括特定文档或者其部分(例如,数据元素、行、列、组……)
的值或者值的集合。在附图标记530,基于对用户可访问的数据来动态地生成一个或多个查
询建议。在一个实例中,查询建议可以推荐可以如何完成查询。在附图标记540,一个或多个
查询建议可以通过查询界面被返回到用户。例如,一个或多个建议可以以在搜索框下面的
下拉?#35828;?#26679;式被呈现。在选择查询建议时,可以发起执行或者评估查询的搜索。在查询改变
时,例如在继续的用户指定时,该方法可以在510重新开始。根据一个方面,可以要求预定的
暂停以触发建议,以不执行关于建议的动态生成的连续的或者不必要的计算。

作为示例,考虑通过查询界面文本框指定的自然语言查询“谁为……赢得?#31169;?br />牌”。此外,假设基于用户和数据的安全性级别,用户不具有对针对北美的国家的奖牌的访
问。查询建议的方法500可以产生并且返回包括北美以外的国家和洲的查询建议,诸如“谁
为?#20998;?#36194;得?#31169;?#29260;?#20445;?#35841;为非洲赢得?#31169;?#29260;?#20445;?#35841;为吉尔吉斯?#22266;?#36194;得?#31169;?#29260;”和“谁为阿
尔巴尼亚赢得?#31169;?#29260;”。

图6是描绘生成查询建议的方法600的流程图。在附图标记610,基于可访问的数据
生成相关查询的集合。更具体地,使用基于用户的访问权限和数据的所要求的权限对用户
可访问的数据创建与用户输入查询相关的查询。在示例查询“谁为……赢得?#31169;?#29260;”中,相
关查询可以包括查询,具体地包括包含国家和洲(这样的数据存在于数据库中)的查询。相
关查询的另一集合可以是运动,但是假设数据库不具有关于运动的数据,则这样的相关查
询将被排除。此外,考虑对数据库数据的用户访问。假设用户仅具有访问北美以外的国家和
洲的权限,则相关查询的集合被进一步修剪。在附图标记620,相关查询的集合的至少一个
子集被选择为建议的查询或者查询建议。在一个实例中,选择被用于将相关查询的集合删
减为预定数目的查询以供建议。这样的删减操作可以采用其他信息和因素,除其他事物外,
包括使用频?#21097;?#29992;户上下文(例如,搜索偏好、搜索历史……)和多样性。此外,作为选择或者
另一动作的一部分,选择的搜索建议可以通过给出查询的用户选择的可能性和其他信息被
排序或划分优先级。例如,可以采用关于删减计算或者获得的值,诸如使用频率。可以生成
或者计算不关于删减使用而是用于排序的另外的值。例如,可以使用用户上下文来以为用
户定制的方式来对查询进?#20449;?#24207;。

图7示出生成相关查询的方法700。在附图标记710,标识与输入查询匹配的模板。
可以通过将输入查询与预定的模板的集合进行匹配来标识模板。模板是表示一种类别的查
询的词语或者特殊符号的串。模板可以包括一个或多个?#38382;?#21644;值。在标记720,检测不具有
由输入查询指定的值的模板?#38382;?#25442;句话说,标识未指定的模板?#38382;?#38388;隙或者槽。在“谁
为……赢得?#31169;?#29260;”的示例中,未指定的?#38382;?#21487;以在词语“为”之后被检测到。在标记730,从
在其上指定输入查询的数据库获取对特定用户可访问的数据。在附图标记740,通过使用获
取的数据来设置或者分配未指定的?#38382;?#30340;值来构造一个或多个查询。例如,值“?#20998;蕖薄ⅰ?#38750;
洲”和“阿尔巴尼亚”可以从数据库被获取,并且被用于构造以下相关查询:“谁为?#20998;?#36194;得
?#31169;?#29260;?#20445;?#35841;为非洲赢得?#31169;?#29260;”和“谁为阿尔巴尼亚赢得?#31169;?#29260;”。

常规地,搜索引擎已经提供了自动完成功能。然而,建议是基于人们在过去已经输
入的内容。根据一个方面,其他用户是否在过去已经输入查询并非与查询建议特别相关。相
关的是关于一个或多个底层数据库知道什么。换句话说,主题搜索建议不涉及对?#25105;?#25968;据
源而是对特定数据源的搜索。还相关的是关于访问数据的用户权限或者特权。

此外,查询不需要被保存到永久存储装置,并且随后基于用户权限被检索和过滤。
相反,查询建议可以基于对特定用户可访问的数据被动态地生成。这至少对于资源使用(即
存储)是有利的。即使对于小的数据库,潜在地可以提交无限数目的查询。如果所有查询都
可以被保存,则它们将占用大量的存储空间。通过动态地生成查询建议,可以避免该问题。

本公开支持各种产品和过程,该产品和过程执行或者被配置为执行关于搜索建议
的安全性修剪的各种动作。之后是示例性方法、系统和计算机可读存储介质。

一种方法包括采用至少一个处理器,至少一个处理器被配置为执行存储在存储器
中的计算机可执行指令以执行以下动作:在发起查询的执行之前,接收由搜索引擎的用户
指定的查询,基于与用户和对用户可访问的数据相关联的访问信息来确定数据,以及基于
对用户可访问的数据动态地生成一个或多个查询建议。生成一个或多个查询建议包括:基
于对用户可访问的数据生成相关查询的集?#24076;?#20197;及选择相关查询的集合的至少一个子集。
还可以基于使用频率来执行选择相关查询的集合的至少一个子集。生成相关查询的集?#20064;?br />括标识与由用户指定的查询匹配的模板,检测至少一个未指定的模板?#38382;?#20197;及通过使用
对用户可访问的数据设置针对至少一个未指定的模板?#38382;?#30340;值来构造一个或多个查询。该
方法还包括接收自然语言查询,基于用户上下文对一个或多个查询建议进?#20449;?#24207;,并?#20197;?br />显示设备上呈现一个或多个查询建议。

一种系统包括被耦合到存储器的处理器,处理器被配置为执行存储在存储器中的
以下计算机可执行组件:第一组件,其被配置为在向搜索引擎提交查询以供执行之前,从搜
索引擎的用户接收查询;第二组件,其被配置为基于与用户和对用户可访问的数据相关联
的可访问性信息来获取数据;以及第三组件,其被配置为基于查询和由用户可访问的数据
动态地生成一个或多个查询建议。在一个实例中,查询是自然语言问题。系统还可以包括第
四组件,其被配置为确定查询的含义,其在一个实例中被配置为将查询与预定模板匹配。系
统还包括第五组件,其被配置为相对于模板标识由查询未指定的?#38382;?#31995;统还包括第六组
件,其被配置为通过使用对用户可访问的数据设置未指定的?#38382;?#30340;值来生成相关查询的集
合。第七组件被配置为选择相关查询的集合的子集作为一个或多个查询建议。系统还包括
第八组件,其被配置为基于上下文信息将相关查询的集合的子集进?#20449;?#24207;,其?#24615;?#19968;个实
例中,第八组件被配置为基于使用对用户可访问的数据设置的?#38382;?#30340;值的使用频率对相关
查询的集合的子集进?#20449;?#24207;。

一种具有存储在其上的指令的计算机可读存储介?#21097;?#25351;令使得至少一个处理器能
够在执行指令时执行方法,该方法包括在发起查询的执行之前,接收由搜索引擎的用户指
定的查询,基于与用户和对用户可访问的数据相关联的访问信息来确定数据,以及基于对
用户可访问的数据动态地生成一个或多个查询建议。该方法还包括接收自然语言查询。此
外,该方法包括标识与由用户指定的查询匹配的模板,检测至少一个由用户未指定的模板
?#38382;?#20197;及通过使用对用户可访问的数据分配针对至少一个未指定的模板?#38382;?#30340;值来构造
一个或多个查询。此外,该方法包括选择一个或多个查询的至少一个子集作为一个或多个
查询建议。

词语“示例性?#34987;?#32773;其各?#20013;问?#22312;本文中被用于意指用作示例、实例或者说明。本
文中描述为“示例性”的任何方面或者设计不一定被解释为比其它方面或者设计优选或者
有利。此外,示例仅出于清楚和理解的目的被提供,并?#20063;?#24847;味着以任何方式限制或者约束
所要求保护的主题或者本公开的相关部分。应当理解,不同范围的大量另外的或者备选的
示例可以被呈现,但是出于简要的目的已经被省略。

如在本文中使用的,术语“组件”和“系统”以及其各?#20013;问?例如,组件、系统、子系
统……)旨在指代计算机相关的实体、或者是硬件、硬件和软件的组合、软件或者执行中的
软件。例如,组件可以但不限于是在处理器上运行的进程、处理器、对象、实例、可执行文件、
执行线程、程序和/或计算机。通过说明的方式,在计算机上运行的应用和计算机都可以是
组件。一个或多个组件可以驻留在执行进程和/或线程内,并且组件可以位于一个计算机上
和/或分布在两个或更多个计算机之间。

如在本描述和所附权利要求书中使用的,连词“或者”旨在意指包含性“或者”而不
是排他性“或者?#20445;?#38500;非另有指定或者从上下文是清楚的。换句话说,“X?#34987;?#32773;“Y”旨在意指任
何包含性排列的“X”和“Y”。例如,如果“‘A’采用‘X’”、“‘A’采用‘Y’?#34987;?#32773;“‘A’采用‘X’和‘Y’
两者?#20445;?#21017;“‘A’采用‘X’或者‘Y’”在任何前述实例之下是满足的。

此外,就术语“包含”、“含有”、“具有”、“有?#34987;?#32773;其?#38382;?#19978;的变体都在详?#35813;?#36848;或
者权利要求中使用的范围内,这样的术语旨在是以类似于术语“包括”的方式为包含性的,
就像“包括”在权利要求中被用作过渡词时被解释的。

为了提供针对要求保护的主题的上下文,图8以及以下?#33268;?#26088;在提供对其中主题
的各种方面可以被实现的?#23454;被?#22659;的简要、总体描述。然而,?#23454;被?#22659;仅是示例,并?#20063;?#26088;
在暗示关于用途或者功能的范围的任何限制。

虽然以上公开的系统和方法可以在一个或多个计算机上运行的程序的计算机可
执行指令的总体上下文中进行描述,本领域技术人员将认识到多个方面也可以结合其它程
序模块等?#35789;?#29616;。通常,除其他事物外,程序模块包括执行特定任务和/或实现特定抽象数
据类型的例程、程序、组件、数据结构。此外,本领域技术人员将理解的是,以上系统和方法
可以使用各种计算机系统配置被实现,该计算机系统配置包括单处理器、多处理器或者多
核处理器计算机系统、小型计算设备、大型计算机以及个人计算机、手持式计算设备(例如,
个人数?#31181;?#29702;(PDA)、电话、手表……)、基于微处理器的或者可编程的消费或者工业电子设
备?#21462;?#22810;个方面也可以在其中由通过通信网络链接的远程处理设备执行任务的分布式计算
环?#25345;?#23454;践。然而,所要求保护的主题的一些方面(如果不是全部方面)可以在独立计算机
上实践。在分布式计算环?#25345;校?#31243;序模块可以位于本地和远程存储器存储设备中的一个或
者两者中。

参考图8,示出了示例通用计算机或者计算设备802(例如,台式计算机、笔记本计
算机、平板计算机、服务器、手持式设备、可编程消费或者工业电子设备、机顶?#23567;?#28216;戏系统、
计算节点……)。计算机802包括一个或多个处理器820、存储器830、系统总线840、大容量存
储装置850和一个或多个接口组件870。系统总线840至少通信地耦合以上系统组件。然而,
要理解,计算机802以其最简单的?#38382;?#21487;以包括耦合到存储器830的一个或多个处理器820,
处理器820执行存储在存储器830中的各种计算机可执行动作、指令和/或组件。

(多个)处理器820可以使用被设计为执行本文中描述的功能的通用处理器、数字
信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其它可编程逻辑设
备、分立的门或者晶体管逻辑、分立的硬件组件或者其?#25105;?#32452;合?#35789;?#29616;。通用处理器可以是
微处理器,但在备选方案中,处理器可以是任?#26410;?#29702;器、控制器、微控制器或者状态机。(多
个)处理器820还可以被实现为计算设备的组合(例如DSP与微处理器的组合)、多个微处理
器、多核处理器、与DSP内?#31169;?#21512;的一个或多个微处理器或者任何其它这样的配置。

计算机802可以包括各种计算机可读介质或者以其他方式与各种计算机可读介质
交互,以支持计算机802的控制以实现所要求保护的主题的一个或多个方面。计算机可读介
质可以是可以由计算机802访问的任何可用介?#21097;?#24182;且包括?#36164;?#24615;和?#19988;资?#24615;介质以及可
移除和非可移除介质。计算机可读介质可以包括计算机存储介质和通信介质。

计算机存储介质包括以任何方法或者技术实现的?#36164;?#24615;和?#19988;资?#24615;、可移除和非
可移除介?#21097;?#20197;用于诸如计算机可读指令、数据结构、程序模块或者其他数据的信息的存
储。计算机存储介质包括存储器设备(例如,随机访问存储器(RAM)、只读存储器(ROM)、电可
擦除可编程只读存储器(EEPROM)……)、磁存储设备(例如,硬盘、软盘、盒式磁带、磁
带……)、光学盘(例如,光盘(CD)、数字多功能盘(DVD)……),和固态设备(例如,固态驱动
器(SSD)、闪存驱动器(例如,卡、棒、键驱动器……)……),或者可以被用于存储(与发送相
对)由计算机802可访问的所希望的信息的任何其他类似介质。因此,计算机存储介质不包
括经调制的数据信号。

通信介质通常包含计算机可读指令、数据结构、程序模块、或者在诸如载波或者其
它传输机制的经调制的数据信号中的其他数据,并且包括任何信息传递介质。术语“经调制
的数据信号?#24065;?#25351;使其特征中的一个或多个以将信息编码在信号中的这样的方式设置或者
改变的信号。作为示例而非限制,通信介质包括有线介质(诸如有线网络或者直接有线连
接)以及无线介质(诸如声学、RF、红外和其它无线介质)。任何上述各项的组合也应被包括
在计算机可读介质的范围内。

存储器830和大容量存储装置850是计算机可读存储介质的示例。取决于计算装置
的准确配置和类型,存储器830可以是?#36164;?#24615;(例如,RAM)、?#19988;资?#24615;(例如,ROM、闪存……)
或者是两者的?#25345;?#32452;合。作为示例,包括诸如在启动期间在计算机802内的元件之间传递信
息的基本例程的基本输入/输出系统(BIOS)可以被存储在?#19988;资?#24615;存储器中,而?#36164;?#24615;存
储器可以用作外部高速缓冲存储器,除其他事物外,以支持由(多个)处理器820进行的处
理。

大容量存储装置850包括可移除/非可移除、?#36164;?#24615;/?#19988;资?#24615;计算机存储介质以
相对于存储器830用于大量数据的存储。例如,大容量存储装置850包括但不限于一个或多
个设备,诸如?#25490;?#39537;动器或者光学盘驱动器、软盘驱动器、闪存、固态驱动器或者?#19988;?#26834;。

存储器830和大容量存储装置850可以包括或者在其中已经存储了操作系统860、
一个或多个应用862、一个或多个程序模块864、和数据866。操作系统860用于控制和分配计
算机802的资源。应用862包括系统和应用软件中的一个或两者,并且可以通过存储在存储
器830和/或大容量存储装置850中的查询模块864和数据866利用由操作系统860进行的资
源管理来执行一个或多个动作。因此,应用862可以将通用计算机802转变为根据由此提供
的逻辑的专用机器。

所要求保护的主题的全部或者部分可以使用标准编程和/或工程技术?#35789;?#29616;以产
生软件、固件、硬件或者其任何组合以控制计算机?#35789;?#29616;所公开的功能。通过示例而非限
制,搜索建议系统100或者其部分可以是应用862或者组成应用862的一部分,并且包括存储
在存储器和/或大容量存储装置850中的一个或多个模块864和数据866,模块864和数据866
的功能在由一个或多个处理器820执行时可以被实现。

根据一个具体实施例,(多个)处理器820可以对应于片上系统(SOC)或者类似架
构,包括或者换句话说集成单个集成电路基板上的硬件和软件两者。这里,(多个)处理器
820可以包括,除其他事物外,至少类似于(多个)处理器820和存储器830的一个或多个处理
器以及存储器。常规的处理器包括最小量的硬件和软件并且广泛地?#35272;?#20110;外部硬件和软
件。相反,处理器的SOC实现方式更强大,因为其在其中?#24230;?#20351;能最少或不?#35272;?#20110;外部硬件
和软件的特定功能的硬件和软件。例如,搜索建议系统100和/或相关联的功能可以被?#24230;?br />在SOC架构中的硬件内。

计算机802还包括一个或多个接口组件870,其通信地耦合到系统总线840并且支
持与计算机802的交互。作为示例,接口组件870可以是端口(例如串行、并行、PCMCIA、USB、
火线……)或者接口卡(例如,声音、视频……)?#21462;?#22312;一个示例实现方式中,接口组件870可
以被实施为用户输入/输出接口,以使得用户能够例如通过一个或多个输入设备(例如,诸
如鼠标的指点设备、轨迹球、触?#30465;?#35302;摸垫、键盘、麦克风、操纵杆、游?#36820;妗?#21355;星碟、扫描仪、
相机、其它计算机……),通过一个或多个?#36136;?#25110;者语音输入,将命令和信息输入到计算机
802。在另一示例实现方式中,接口组件870可以被实施为输出外围接口以将输出提供到,除
其他事物外,显示器(例如,LCD、LED、等离子……)、扬声器、打印机和/或其它计算机。此外,
接口组件870可以被实施为网络接口,以使能诸如通过有线或者无线通信链路的与其他计
算设备(未示出)的通信。

上文已描述的内容包括所要求保护的主题的多个方面的示例。当然,出于描述所
要求保护的主题的目的,不可能描述组件或者方法的每一种可想到的组?#24076;?#20294;是本领域普
通技术人员可以认识到,所公开的主题的许多进一步的组合和排列是可能的。因此,所公开
的主题旨在涵盖落入所附权利要求的精神和范围内的所有这样的改变、修改和变型。

关于本文
本文标题:搜索建议的安全性修剪.pdf
链接地址:http://www.pqiex.tw/p-6091695.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

[email protected] 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备17046363号-1 
 


收起
展开
平码五不中公式规律 最新黑龙江时时 一分快3大小单双走执图 重庆时时彩APP安卓系统 必赢客pk10计划软件免费版 奔驰宝马手机娱乐网站 关东煮店人情故事2中文 ag电子游戏动物狂欢多人版 帮别人打王者赚钱的软件 黑龙江时时开奖纪录 手机今日头条赚钱是真的吗