首页> 中国专利> 可重复查询的识别和发布

可重复查询的识别和发布

摘要

识别和发布预计未来将发布的搜索查询的方法、系统和装置,包括编码在计算机存储介质上的计算机程序。可以获得由多个用户设备发布的搜索查询集合。对于每个查询实例,可以获得上下文数据。第一查询及其上下文数据可以输入到模型中,该模型输出查询在未来发布的可能性。可以使用用于训练查询的上下文数据和用于训练查询的对应标签来训练模型。学习模型输出第一查询在未来发布的可能性,如果该可能性满足可重复性阈值,则该查询被存储为可重复查询。随后,在选择用户可选界面组件后发布存储的可重复查询,并且搜索引擎提供该查询的搜索结果。

著录项

  • 公开/公告号CN114846463A

    专利类型发明专利

  • 公开/公告日2022-08-02

    原文格式PDF

  • 申请/专利权人 谷歌有限责任公司;

    申请/专利号CN201980103230.1

  • 申请日2019-11-06

  • 分类号G06F16/9535(2006.01);G06F16/9536(2006.01);

  • 代理机构北京市柳沈律师事务所 11105;

  • 代理人金玉洁

  • 地址 美国加利福尼亚州

  • 入库时间 2023-06-19 16:12:48

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-08-19

    实质审查的生效 IPC(主分类):G06F16/9535 专利申请号:2019801032301 申请日:20191106

    实质审查的生效

  • 2022-08-02

    公开

    国际专利申请公布

说明书

背景技术

本说明书涉及可重复搜索查询(在本说明书中也称为“可重复查询”)(即,先前已经发布并且预计未来将由一个或更多个用户设备发布的搜索查询)的识别和发布。

用户设备的用户向搜索引擎(或另一搜索应用)提交搜索查询以寻找关于不同主题的信息,并且作为响应,该搜索引擎(或该另一搜索应用)提供可响应那些主题的搜索结果。在一些情况下,用户可能定期提交先前由该用户或其他用户提交的相同搜索查询。例如,用户可能定期发布搜索查询,诸如“名言”。在该示例中,每次该搜索查询被搜索引擎接收到时,搜索引擎搜索并识别响应该查询的搜索结果集合。在一些情况下,对于此类重复查询,搜索引擎的处理导致识别和提供相同的搜索结果集合。

发明内容

一般而言,本说明书中描述的主题的一个创新方面可以体现在方法中,该方法可以包括以下操作:获得已经由多个用户设备发布的搜索查询集合;为搜索查询集合中的每个查询的每个实例确定上下文数据,该上下文数据表示发布该查询的上下文以及与响应于该查询而提供的搜索结果页面的用户交互;向学习模型并为搜索查询集合中的第一查询输入为发布第一查询的每个实例确定的上下文数据,其中学习模型(1)输出未来将发布搜索查询的可能性以及(2)使用为训练查询集合确定的上下文数据和该训练查询集合的对应标签集合进行训练,其中每个标签指示训练查询是否已被发布阈值次数;从学习模型并基于输入的上下文数据来获得未来将发布第一查询的可能性;基于未来将发布第一查询的可能性满足重复性阈值,将第一查询识别为可重复查询;将第一查询与已被识别为可重复查询的其它搜索查询一起存储;在用户设备上提供用户可选界面组件,该用户可选界面组件在由用户设备选择后并且在没有接收到查询的组件的用户输入的情况下,导致从可重复查询中发布查询;从用户设备接收对用户可选界面组件的第一选择,该第一选择请求从可重复查询中发布特定查询;以及由搜索引擎并响应于从用户设备接收到第一选择来提供包括特定查询的搜索结果的第一搜索结果页面。该方面的另外的实施例包括被配置为执行方法的动作的对应系统、设备、装置和计算机程序。计算机程序(例如,指令)可以被编码在计算机存储设备上。这些和其它实施例可以各自可选地包括以下特征中的一个或更多个。

在一些实施方式中,将第一查询与已被识别为可重复查询的其它搜索查询一起存储可以包括由搜索引擎将第一查询与响应于第一查询的搜索结果一起存储。

在一些实施方式中,搜索引擎可以将所存储的搜索结果中的一个或更多个包括在第一搜索结果页面中。

在一些实施方式中,搜索查询集合中的每个查询的每个实例的上下文数据可以包括以下一项或更多项:编写该查询的语言;发布该查询的地理位置;发布该查询的用户设备感兴趣的地理位置;特定用户设备已经发布该查询的次数;发布该查询阈值次数的唯一用户设备的数量;该查询的嵌入,其表示该查询与其它查询之间的语义关系;关于该查询是否针对特定网络位置或网站的确定;用户设备对在搜索结果页面上为该查询提供的一个或更多个搜索结果的选择;用户设备查看在搜索结果页面上为该查询提供的一个或更多个搜索结果的时间;以及对在为该查询提供的搜索结果页面上的导航界面元素的选择。

在一些实施方式中,用户可选界面组件可以是包括在用户设备上的特定位置处的可选快捷方式链接,其中用户设备对可选快捷方式链接的选择使与该快捷方式链接相关联的特定查询被发布到搜索引擎。

在一些实施方式中,用户可选界面组件可以是下拉菜单,该下拉菜单列出可重复查询的子集并且用户可以从该下拉菜单选择特定查询,其中对特定查询的选择使特定查询的发布被发布到搜索引擎。

在一些实施方式中,可重复查询的子集可以包括基于搜索历史预计由用户设备重复的查询,该搜索历史包括先前由用户设备发布的查询。

在一些实施方式中,方法可以包括以下操作:响应于将第一查询识别为可重复查询,基于用户设备的搜索历史来确定预计用户设备未来将发布第一查询;以及响应于确定预计用户设备未来将发布第一查询,在给用户设备的通知中并且在没有从用户设备接收到执行第一查询的任何请求的情况下提供第一查询的搜索结果集合。

在一些实施方式中,方法可以包括以下操作:从用户设备接收对用户可选界面组件的第二选择,该第二选择请求发布特定查询;以及由搜索引擎并响应于从用户设备接收到第二选择来提供包括特定查询的搜索结果的第二搜索结果页面,其中该搜索结果页面不同于第一搜索结果页面。

在一些实施方式中,在以下情况下,第二搜索结果页面可以不同于第一搜索结果页面:第二结果页面的搜索结果与第一搜索结果页面的搜索结果不同地被排序;第二结果页面的搜索结果不同于第一搜索结果页面的搜索结果;或者第二结果页面包括没有在被包括在第一结果页面上的动态内容。

可以实施本说明书中描述的主题的特定实施例以实现以下优点中的一个或更多个。例如,本说明书中描述的创新可以节省用于响应发布的搜索查询而提供搜索结果的计算资源。传统上,当用户编写搜索查询并将其提交给搜索引擎时,搜索引擎搜索并识别响应于搜索查询的搜索结果。相比之下,本说明书中描述的创新可以减少搜索和识别所识别的针对某些搜索查询的搜索结果所需的计算资源。例如,本说明书中描述的创新可以将搜索查询集合识别为可重复查询,并存储这些查询的作为响应的搜索结果。随后,当用户设备发布可重复查询之一时,搜索引擎可以绕过搜索引擎的处理并为重复查询提供先前存储的作为响应的搜索结果。

本说明书中描述的创新还可以节省手动发布搜索查询通常需要的时间和资源。传统上,用户手动将每个搜索查询键入搜索引擎提供的界面(例如,搜索引擎网站上提供的文本框),然后选择导致搜索查询被发布到搜索引擎的界面组件(例如,“前往”或“搜索”按钮)。相比之下,本说明书中描述的创新提供用户可选界面组件(例如,包括可重复查询的下拉菜单、直接向搜索引擎发布特定可重复查询的设备主屏幕快速启动图标),该用户可选界面组件允许选择已经形成的搜索查询,这导致向搜索引擎发布所选择的用户查询。在一些实施方式中,甚至不需要用户选择,并且预计用户将来发布的搜索查询的搜索结果在通知中提供给用户设备。结果,可以节省输入和处理用户键入的搜索查询所需的用户资源和搜索引擎网站(或其它应用)上的界面特征的处理。

本说明书中描述的创新还可以通过当用户的设备在本地(例如,家庭或工作)无线网络上时在后台获取频繁重复的查询的搜索结果来节省网络资源。相关地,当确定用户设备处于不可靠的网络中时(例如,蜂窝LTE服务较差的远程位置,当用户设备在特定时间间隔内未连接到网络达到阈值时间量时),重复查询的搜索结果可以在用户设备上存储更长时间,因此,当用户的设备离线或仅间歇性地连接到网络时,该搜索结果有可能对用户可用。

本说明书中描述的创新还可以通过使用户能够发布某些可重复查询而无需输入此类查询的任何部分(即,作为查询的部分的任何文本)来提高搜索引擎的易用性。相关地,本说明书中描述的创新可以通过响应于用户定期发布(或预计由用户发布)的搜索查询而提供更新的或不同的搜索结果(或其它动态内容)来改善和/或提高用户参与度。

本说明书中描述的主题的一个或更多个实施例的细节在附图和以下描述中阐述。主题的其它特征、方面和优点将由描述、附图和权利要求变得明显。

附图说明

图1是示例环境的框图,在该示例环境中搜索引擎响应于用户设备发布的搜索查询来提供搜索结果。

图2是示出图1的搜索引擎在识别可重复查询并实现可重复查询的发布时的结构和操作的框图。

图3是用于识别和发布可重复查询的示例过程的流程图。

图4是示例计算机系统的框图。

各个附图中相同的数字和名称表示相同的元件。

具体实施方式

本说明书涉及可重复搜索查询的识别和发布。如下面总结以及贯穿本说明书更详细描述的,搜索引擎可以包括可重复查询管理器,该可重复查询管理器识别可重复查询集合并使用户设备能够快速选择和发布这些查询中的一个或更多个。

为了实现这一点,搜索引擎的可重复查询管理器首先例如从搜索引擎的查询日志中获得已经由不同用户设备发布的搜索查询集合。对于该搜索查询集合中的每个查询的每个实例,可重复查询管理器确定表示发布查询的上下文以及与响应于该查询而提供的搜索结果页面的用户交互的上下文数据。此类上下文数据的示例可以包括编写查询的语言、发布查询的地理位置、发布查询的用户设备感兴趣的地理位置、一般地或通过特定用户设备已经发布了查询的次数、已经发布了查询阈值次数的唯一用户设备的数量、表示该查询与其它查询之间的语义关系的查询嵌入、关于查询是否指向特定的网络位置或网站的确定、用户设备对在搜索结果页面上为该查询提供的一个或更多个结果的选择、用户设备查看在搜索结果页面上为该查询提供的一个或更多个结果的时间、以及对在为该查询提供的搜索结果页面上的导航界面元素(例如,后退按钮、下一页按钮等)的选择。

为了确定来自查询集合的第一查询是否是可重复查询,可重复查询管理器首先将该查询和用于该查询的每个实例的对应的上下文数据输入到学习模型中。学习模型输出未来将发布查询的可能性。使用为训练查询集合确定的上下文数据以及用于该训练查询集合的对应的标签集合来训练学习模型,该对应的标签集合中的每个标签指示训练查询是否已被发布阈值次数。每个标签指示查询是否被观察到重复或以其它方式可重复。基于输入到学习模型中的数据,学习模型输出未来将发布第一查询的可能性。

然后,可重复查询管理器将学习模型输出的可能性与可重复性阈值进行比较。如果该可能性满足(例如,达到或超过)可重复性阈值,则可重复查询管理器将该查询识别为可重复;否则,它将该查询识别为非可重复。如果第一查询被识别为可重复,则可重复性查询管理器将第一查询与已被识别为可重复查询的其它搜索查询一起存储。

当用户访问由搜索引擎提供的界面(例如,搜索引擎网站的登陆网页)时,可重复查询管理器提供用户可选界面组件,该用户可选界面组件在由用户设备选择后并且在没有接收到查询的组件的用户输入的情况下,导致来自可重复查询的一查询的发布。如在本说明书中所使用的,查询的组件是用户设备的用户在制作搜索查询时例如使用键盘输入的文本。例如,对于查询“John Doe Sighting”,查询的组件可以是字母“J”、单词“John Doe”或整个查询。

在一些实施方式中,用户可选界面组件可以是列出先前识别出的可重复查询的子集的下拉菜单。用户设备对在此类下拉菜单中列出的任何可重复查询的选择导致用户设备向搜索引擎发布该查询。在一些实施方式中,用户可选界面组件还可以是包括在特定用户设备位置(例如,用户设备的主屏幕)处的快捷方式链接。用户设备对快捷方式链接的选择导致启动应用(例如,网络浏览器)并向搜索引擎发布与该快捷方式链接相关联的可重复搜索查询。

搜索引擎从用户设备接收对用户可选界面组件的选择,该选择请求从可重复查询中发布特定查询。响应于接收到用户设备的选择,搜索引擎提供搜索结果页面,该搜索结果页面包括所发布的查询的搜索结果。

下面参照图1-4更详细地描述这些特征和附加特征。

除了贯穿本说明书的描述之外,可以向用户提供控件,该控件允许用户就在此描述的系统、程序或特征是否以及何时可以实现用户信息(例如,关于用户的社交网络、社交行为或活动、职业、用户的偏好或用户的当前位置的信息)的收集以及是否从服务器向用户发送内容或通信作出选择。此外,在存储或使用某些数据之前,可以以一种或更多种方式对其进行处理,从而删除个人身份信息。例如,可以处理用户的身份,从而无法针对该用户确定个人身份信息,或者可以在获得位置信息(诸如到城市、邮政编码或州级别)的情况下概括用户的地理位置,从而无法确定用户的特定位置。因此,用户能控制收集关于用户的什么信息、如何使用该信息以及向用户提供什么信息。

图1是示例环境100的框图,在该示例环境100中搜索引擎响应于用户设备发布的搜索查询来提供搜索结果。

诸如局域网(LAN)、广域网(WAN)、互联网或其组合的计算机网络102连接发布者网站104、用户设备106和搜索引擎108。环境100可以包括许多发布者网站104和用户设备106。

网站104包括与域名相关联并由一个或更多个服务器托管的一个或更多个资源。示例网站是可以以超文本标记语言(HTML)格式化的网页集合,其可以包含文本、图像、多媒体内容和编程元素,诸如脚本。每个网站104一般由内容发布者维护,该内容发布者是控制、管理和/或拥有网站104的实体。

资源是可以由发布者104通过网络102提供并与资源地址相关联的任何数据。资源包括HTML页面、文字处理文档和可移植文档格式(PDF)文档、图像、视频和提要源,仅举几例。资源可以包括内容,诸如单词、短语、图片等,并且可以包括嵌入信息(诸如元信息和超链接)和/或嵌入指令(诸如脚本)。

用户设备106是能够通过网络102请求和接收资源的电子设备。示例用户设备106包括个人计算机、移动通信设备以及可通过网络102发送和接收数据的其它设备。用户设备106通常包括用户应用(诸如网络浏览器)以促进通过网络102发送和接收数据。网络浏览器可以使用户能够显示通常位于万维网或局域网上的网站的网页上的文本、图像、视频、音乐和其它信息并与之交互。

为了促进对这些资源的搜索,搜索引擎108一般通过爬行发布者网站104和为由发布者网站104提供的资源编索引来识别资源。资源的索引和可选地缓存的副本被存储在索引110中。

用户设备106向搜索引擎108提交搜索查询。搜索查询以搜索请求的形式提交,其包括该搜索请求和可选地唯一标识符,该唯一标识符标识提交请求的用户设备106。唯一标识符可以是来自存储在用户设备处的cookie的数据,或者如果用户在搜索引擎108上维护帐户,则唯一标识符可以是用户帐户标识符,或者唯一标识符可以是标识用户设备106或使用用户设备106的用户的另一些标识符。

响应于搜索请求,搜索引擎108可以使用索引110来标识与查询相关的资源。搜索引擎108以搜索结果的形式来标识资源,并在搜索结果页面资源中将搜索结果返回给用户设备106。搜索结果是由搜索引擎110生成的数据,其标识满足特定搜索查询的资源并包括该资源的资源定位符。示例搜索结果可以包括网页标题、从网页提取的文本片段和网页的URL。

搜索结果可以基于与由搜索结果标识的资源相关的得分(诸如信息检索(“IR”)得分)、以及可选地每个资源相对于其它资源(例如,权威得分)的单独排名来进行排名。搜索结果可以根据这些得分进行排序,并根据顺序被提供给用户设备106。

用户设备106接收搜索结果页面并呈现页面以展现给用户。响应于用户在用户设备106处选择搜索结果,用户设备106请求由包括在所选择的搜索结果中的资源定位符标识的资源。托管资源的网站104的发布者从用户设备106接收对资源的请求并将资源提供给进行请求的用户设备106。

在一些实施方式中,从用户设备106提交的查询被存储在查询日志112中。查询的点击数据、搜索结果所引用的网页和/或用户与查询的其它交互(例如,查看搜索结果的时间、对特定搜索结果的选择、对搜索结果页面上的不同导航元素(诸如后退按钮或下一步按钮)的选择)被存储在点击日志114中。查询日志112和点击日志114定义搜索历史数据116,该搜索历史数据116包括来自与用户设备106的唯一标识符相关联的先前搜索请求并与之相关的数据。点击日志定义响应于由搜索引擎108提供的搜索结果而采取的行动。查询日志112和点击日志114可以用于将由用户设备提交的查询映射到在搜索结果中标识的网页和用户所采取的行动(即,该数据与来自搜索请求的标识符相关联,使得每个标识符的搜索历史可以被访问)。因此,点击日志114和查询日志112可以由搜索引擎用来确定用户设备提交的查询的序列、响应于查询而采取的行动以及提交查询的频率。

搜索引擎108还包括可重复查询管理器118,该可重复查询管理器118识别可重复查询,即先前已经发布并预计未来将由一个或更多个用户重复的搜索查询。参照图2和图3进一步描述可重复查询管理器118在识别可重复查询并使这些查询可供搜索引擎的用户发布的结构和操作。

图2是示出图1的搜索引擎在识别和实现可重复查询的发布时的结构和操作的框图200。

搜索引擎108的可重复查询管理器118使用先前已向搜索引擎108发布的搜索查询来识别可重复查询。搜索引擎108的可重复查询管理器118包括上下文分析器202、学习模型204和可重复查询缓存206。这些组件中的每个的操作总结如下,但参照图3更详细地描述。尽管可重复查询管理器118在图2中被示出为搜索引擎108的部分,但在一些实施方式中,可重复查询管理器118可以是例如与搜索引擎108分离的网络组件(其在单独的进程上运行指令)。在这样的实施方式中,重复查询管理器118通过网络与搜索引擎108通信。类似地,在一些实施方式中,可重复查询管理器118的组件可以是例如通过网络彼此通信和/或与搜索引擎108通信的单独网络组件。

上下文分析器202例如从查询日志112和点击日志114确定先前发布的搜索查询的上下文数据。学习模型204确定特定查询未来由用户设备106发布的可能性。学习模型204接收特定查询和该查询的上下文数据作为输入,并输出该查询未来由用户设备106发布的可能性。学习模型204可以是监督机器学习模型、规则引擎或其它适当的统计模型。在将学习模型204实现为监督机器学习模型的实施方式中,使用训练搜索查询集合及其上下文数据以及对应的标签集合对其进行训练,该对应的标签集合标识训练查询是否在未来重复。特别地,每个标签指示查询是否被观察到重复或以其它方式可重复。

取决于学习模型204的指明查询将在未来重复的可能性的输出,可重复查询管理器118可以通过将该可能性与可重复性阈值进行比较来将输入查询识别为可重复查询(如进一步参照图3所述)。如果可重复查询管理器118将查询识别为可重复查询,则可重复查询管理器118将该查询与被识别为可重复查询的其它查询一起存储在可重复查询缓存206中。

在一些实施方式中,可重复查询管理器118使存储在可重复查询缓存206中的可重复查询的子集在由搜索引擎108提供的用户界面上可用。这在图2所示的包括可重复查询选择器216的用户设备106-B中示出。可重复查询选择器216可以是列出可重复查询的子集的下拉菜单(或可以显示可选择的项目列表的另一适当的用户界面元素)。用户从下拉列表中选择任何查询、接着选择搜索按钮212导致该查询被发布到搜索引擎108。在一些实施方式中,从可重复查询选择器216中选择任何查询导致向搜索引擎自动发布搜索查询。换言之,在这样的实施方式中,用户设备106-B的用户不必单独选择搜索按钮212来发布搜索查询。在如此发布可重复查询时,用户设备不需要在搜索框214中输入任何查询文本。

在一些实施方式中,可重复查询管理器118可以在由搜索引擎108提供的用户界面上提供选项(诸如“保存为快捷方式”按钮216),以将一个或更多个可重复查询保存为用户设备的主屏幕上的快捷方式链接。在这样的实施方式中,用户设备106-B可以从可重复查询选择器216中选择特定查询,然后选择“保存为快捷方式”218按钮。这导致查询被保存在用户设备的主屏幕(或由用户设备的用户配置的另一设备位置)上,例如作为图标(重复查询图标210),如在用户设备106-A上所示。可选地或附加地,可重复查询管理器118可以在搜索结果页面上提供“保存为快捷方式”216按钮,其选择类似地导致在用户设备的主屏幕(或其它用户选择的设备位置)上生成重复查询图标。用户对重复查询图标210的后续选择导致启动应用(例如,网络浏览器),该应用启动搜索引擎108并发布可重复查询。

在一些实施方式中,可重复查询管理器118将可重复查询以及与这些查询对应的搜索结果存储在可重复查询缓存206中。在另外的实施方式中,与可重复查询对应的搜索结果被存储在索引110的缓存中。在任一实施方式中,搜索引擎108响应于可重复查询由用户设备106的用户发布来检索和提供所存储的搜索结果。

可重复查询管理器118的上述操作及其附加操作将参照图3进一步描述。

图3是用于识别和发布可重复查询的示例过程300的流程图。过程300的操作在下面被描述为由图1和图2中描述和绘出的系统的组件来执行。过程300的操作在下面仅出于说明的目的来描述。过程300的操作可以由任何适当的设备或系统(例如,任何适当的数据处理装置)来执行。过程300的操作也可以被实现为存储在(临时或非临时)计算机可读介质上的指令。指令的运行导致一个或更多个数据处理装置执行过程300的操作。如上面参照图2所述,可重复查询管理器118(或其任何组件)可以是但不必是搜索引擎108的部分。

可重复查询管理器118获得搜索查询集合(在302处)。在一些实施方式中,可重复查询管理器118从查询日志112获得先前已经由一个或更多个用户设备发布的搜索查询集合。

可重复查询管理器118确定搜索查询集合中的每个查询的每个实例的上下文数据(在304处)。在一些实施方式中,对于所获得的搜索查询集合中的每个查询的每个实例,上下文分析器202确定上下文数据,该上下文数据表示发布该查询的上下文和/或与响应于该查询而提供的搜索结果页面的用户交互。上下文数据可以存储在查询日志112和/或点击日志114中,并直接从查询日志112和/或点击日志114中获得。上下文数据也可以通过处理存储在查询日志112和/或点击日志114中的数据来获得。

以下段落提供上下文分析器202可以针对每个查询实例获得的上下文数据类型的示例。以下示例是说明性的,而不是可以确定的上下文数据的类型的排他性列表。

上下文数据的一个示例包括编写/输入查询的语言。如果查询日志112包括“查询语言”字段(或其它类似字段),则上下文分析器202可以获得存储在该字段中的语言值或标识符。可选地,上下文分析器202可以将查询的文本输入到识别所输入的查询文本的语言的语言标识符中。

上下文数据的另一示例包括发布查询的地理位置。例如,地理位置可以包括国家、城市、州或查询来源的其它适当位置标识符。查询日志112一般包括查询的这样的地理位置,其又可以由上下文分析器202获得。

上下文数据的另一示例包括发布了查询的用户设备106感兴趣的地理位置(例如,国家、城市、州或其它适当的位置标识符)。在一些实施方式中,可以使用用户设备的搜索历史或内容收视历史来确定该地理位置,该搜索历史或内容收视历史可以从例如查询日志112、点击日志114或从其它来源(诸如用户设备的用于搜索引擎108的简档)获得。

上下文数据的另一示例包括查询已经一般地和/或由一个或更多个用户设备发布的次数。通过解析查询日志112以对特定查询已被发布的次数、以及特定查询已被独特(即唯一)用户设备发布的次数进行计数,内容分析器202可以获得该信息。

上下文数据的另一示例包括多个唯一用户设备,这些唯一用户设备发布了查询阈值次数。在一些实施方式中,上下文分析器202解析查询日志112以对特定查询已由独特(即,唯一)用户设备发布的次数进行计数。然后,上下文分析器202将该计数与阈值(例如,两个、三个或另一值)进行比较以确定发布该查询的用户设备的数量是否这样做了阈值次数。

上下文数据的另一示例包括确定查询的嵌入,该嵌入表示该查询与其它查询之间的语义关系。可以例如使用用于自然语言处理(NLP)的基于神经网络的技术(其可以包括来自Transformer的双向编码器表示)来实现这种嵌入。

上下文数据的另一示例包括确定查询是否指向特定的网络位置或网站。在一些实施方式中,上下文分析器202可以将查询的文本与例如已知网站/网络位置的列表进行比较,并且如果找到匹配,则上下文分析器202确定特定查询指向所识别的网络位置或网站。在一些实施方式中,确定查询是否针对特定网络位置包括(1)确定站点链接是否出现在查询的搜索结果上,以及(2)确定例如用户交互的百分比,以获取搜索结果集合中的最高返回结果,其指示用户对该特定结果最感兴趣的可能性的。

上下文数据的另一示例包括用户设备在搜索结果页面上的交互。这样的交互被存储在点击日志114中,这样的交互例如可以包括用户设备106对在搜索结果页面上为查询提供的一个或更多个搜索结果的选择、用户设备对在搜索结果页面上为查询提供的一个或更多个结果的查看时间、对一个或更多个导航界面元素的选择或与一个或更多个导航界面元素(例如,导航到下一个结果集合的下一个按钮、返回到原始搜索页面的后退按钮、将文本输入到搜索框中以修改查询、和/或按下搜索按钮(或类似的界面组件)以发布另一个搜索)的交互、以及其它。

可重复查询管理器118将第一查询的上下文数据输入到学习模型204中(在306处)。在一些实施方式中,上下文分析器202将第一查询和该查询的每个实例的一个或更多个上下文数据项插入到学习模型中。如参照图2所述,学习模型可以是监督机器学习模型,其(1)输出未来将发布查询的可能性,以及(2)使用为训练查询集合确定的上下文数据和用于该训练查询集的对应的标签集合进行训练,在该情况下,每个标签指示训练查询是否已被发布阈值(两次、三次或任何其它选定值)次数。特别地,每个标签指示查询是否被观察到重复或以其它方式可重复。在一些实施方式中,训练查询仅包括在某个时间段(例如,28天、一个月等)内重复的查询。这样的技术避免使用仅在较长时间间隔后重复因此不是用户有可能在较短间隔内重复的查询的查询来训练模型。此外,在一些实施方式中,可以结合学习模型来使用附加模型(例如,监督机器学习模型、规则引擎或另一统计模型)来确定预计重复查询的特定时间。例如,可以使用已知的重复查询和发布此类查询的时间来训练该附加模型。因此,被学习模型识别为重复查询的查询可以输入到该附加模型,该附加模型又识别预计重复该查询的时间。例如,如果附加模型使用早上的时间的70%发布的搜索查询(例如,针对“天气”的搜索查询)进行训练,则附加模型可以预测该查询预计将在早上重复。

可重复查询管理器118从学习模型204获得未来将由用户设备发布第一查询的可能性(在308处)。在一些实施方式中,基于所输入的第一查询和对应的上下文数据,学习模型204输出未来将由用户设备发布第一查询的可能性。

可重复查询管理器获得该输出并使用它来确定第一查询是否是可重复查询(在310处)。在一些实施方式中,可重复查询管理器118通过将未来将发布第一查询的可能性与可重复性阈值进行比较来确定第一查询是否可重复。可重复性阈值可以是由搜索引擎108操作员指定的值,其旨在指示查询可重复性的高可能性。如果该可能性满足(例如,达到或超过)可重复性阈值,则可重复查询管理器118将第一查询识别为可重复查询。另一方面,如果可能性不满足可重复性阈值,则可重复查询管理器118不将第一查询识别为可重复查询。

如果第一查询被识别为可重复查询,则可重复查询管理器118将第一查询与已被识别为可重复查询的其它搜索查询一起存储(在312处)。在一些实现中,可重复查询管理器118将可重复查询存储在可重复查询缓存206中。在这样的实施方式中,可重复查询管理器118将第一查询与其它可重复查询一起存储在可重复查询缓存206中。

可重复查询管理器118在用户设备上提供用户可选界面组件或使用户可选界面组件被提供在用户可选界面组件上,该用户可选界面组件在被用户设备选择后并且在没有接收到查询的组件的用户输入的情况下,导致来自可重复查询的查询的发布(在314处)。在一些实施方式中,当用户导航到由搜索引擎(例如,搜索引擎的网站)提供的界面时,可重复查询管理器118在该界面上提供用户可选界面组件。该用户可选界面组件可以是下拉菜单或可列出可重复搜索查询集合(其存储在可重复查询缓存206中)并使用户能够选择所列出的搜索查询中的一个(或更多个)的另一可选界面组件。

可重复查询管理器118可以提供可重复查询的子集或使可重复查询的子集被提供以供在可选用户界面上查看,该可重复查询的子集可以被列出并在用户可选界面组件中可用。在不接收查询的组件(在本说明书中也简称为“搜索查询的组件”或“查询组件”)的情况下,包括在用户可选界面组件中的可重复搜索查询列表由可重复查询管理器118提供。换言之,由可重复查询管理器118提供的可重复搜索查询列表独立于用户输入的查询(或其任何部分)。

可重复查询管理器118可以以不同的方式选择可重复查询的子集(并提供这些可重复查询以在用户可选界面组件中显示)。例如,可重复查询管理器118可以选择在可重复查询缓存206中列出的N个查询的随机集合。作为另一示例,可重复查询管理器118可以从可重复查询缓存206中选择N个查询的集合,该集合由不同的用户设备最频繁地发布。作为另一示例,可重复查询管理器118可以从可重复查询缓存206中选择N个查询的集合,该集合由当前正在访问搜索引擎所提供的界面的特定用户设备最频繁地发布。作为另一示例,可重复查询管理器118可以基于用户设备的搜索历史和/或用户设备访问的内容的类型从可重复查询缓存206中选择N个可重复查询的集合。这可以包括由用户设备发布的搜索查询的内容、由用户设备选择的搜索结果和/或由用户设备访问的内容的类型与存储在可重复查询缓存206中的可重复查询之间的相关性(例如,使用基于规则的引擎、诸如机器学习算法的统计建模技术、决策树等)。然后,由这种相关性标识的前N个搜索查询可以由可重复查询管理器118提供以供展现在用户可选界面组件中。

附加地或可选地,用户可选界面组件也可以是包括在用户设备上的特定位置(例如,用户设备的主屏幕)处的可选快捷方式链接。如图1中所述,该可选快捷方式链接可以由可重复查询管理器118从搜索引擎提供的初始界面(例如,当第一次导航到搜索引擎的网站时到达的登陆网页)或从搜索结果页面生成。用户对可选快捷方式链接的选择使与该快捷方式链接相关联的特定可重复查询被发布到搜索引擎108。

可重复查询管理器118从用户设备接收对请求从可重复查询中发布特定查询的用户可选界面组件的选择(在316处)。在一些实施方式中,用户设备106的用户选择在用户可选界面组件(例如,下拉菜单)中列出的可重复查询之一。将用户设备对特定可重复查询的选择发送到搜索引擎108。在一些实施方式中,用户设备106的用户选择与特定可重复查询相关联的快捷方式链接。

响应于接收到来自用户设备106的选择,搜索引擎108提供包括特定查询的搜索结果的搜索结果页面(在318处)。在用户设备的选择后,搜索引擎108执行查询并提供包括响应于所选查询的搜索结果的搜索结果页面。

在一些实施方式中,可重复查询管理器118可以在每次用户设备发布特定可重复查询时提供相同的搜索结果集合。在这样的实施方式中,可重复查询管理器118可以将该搜索结果集合与可重复查询缓存206中(或可选地,索引110中)的可重复查询一起存储。

在一些实施方式中,可重复查询管理器118可以在每次用户设备发布特定可重复查询时提供不同的搜索结果页面。在这样的实施方式中,可重复查询管理器118维护用户设备每次发布特定可重复查询和对应的搜索结果页面以及提供在该结果页面上的搜索结果集合的记录(包括例如提供搜索结果的顺序)。如果用户设备第一次发布特定的可重复查询,则搜索引擎108提供包括搜索结果的第一集合的第一搜索结果页面。在该示例中,如果用户设备第二次发布特定的可重复查询,则可重复查询管理器118确定用户设备正在第二次发布该查询,并因此使搜索引擎提供与第一搜索结果页面不同的第二搜索结果页面,该第二搜索结果页面包括搜索结果的第二集合。例如,第二搜索结果页面可以不同于第一搜索结果页面在于,第二搜索结果页面上的搜索结果与第一搜索结果页面上的搜索结果不同地排序。换言之,搜索结果的第一集合和第二集合可以包括相同的搜索结果,但排序可以不同。作为另一示例,搜索结果的第二集合中的一个或更多个搜索结果可以不同于搜索结果的第一集合中的搜索结果。作为另一示例,第二搜索结果页面可以不同于第一搜索结果页面在于,第二搜索结果页面可以包括这样的动态内容,其要么不包括在第一搜索结果页面上要么不同于包括在第一搜索结果页面上的动态内容。在这样的实施方式中,搜索引擎108可以使连接到可重复查询的站点的索引优先,以期望用户将在每次查询被发布时想要用于这些查询的动态(例如,不同的或更新的)内容。通过使索引的内容优先,这里描述的技术具有节省索引所需的搜索引擎108资源的优点。

如上所述,可重复查询管理器118可以基于用户设备的搜索历史或内容访问历史将第一查询识别为可重复查询。在一些实施方式中,搜索引擎108可以在不接收用户设备对用户可选界面组件的任何选择或用户设备的其它请求的情况下向用户设备发送包括特定查询的搜索结果的通知,以发布该特定查询。例如,搜索引擎108可以向用户设备106发送通知(例如,作为设备通知或电子邮件),该通知标识特定查询(例如,在声明设备的用户可能对特定可重复查询的结果感兴趣的消息中)并包括该查询的搜索结果集合。在一些实施方式中,包括搜索结果的通知在预计用户发布查询时被发送到用户设备106。这可以部分地基于查询本身的内容来确定,查询本身的内容可以包括某个时间元素,该时间元素可用于确定传递结果的时间。例如,如果预计用户重复查询“本周末的音乐会”,则“周末”的存在可用于推断该查询的搜索结果应每周在一周内并在每个周末之前在通知中传递。可用于确定预计用户何时发布查询的附加因素还可以包括关于与通知中的搜索结果的用户交互的数据(例如,访问时间、访问日期、选择了哪个结果等)。

图4是可用于执行上述操作的示例计算机系统400的框图。系统400包括处理器410、存储器420、存储设备430和输入/输出设备440。组件410、420、430和440中的每个可以例如使用系统总线450互连。处理器410能够处理用于在系统400内运行的指令。在一些实施方式中,处理器410是单线程处理器。在另一实施方式中,处理器410是多线程处理器。处理器410能够处理存储在存储器420上或存储在存储设备430上的指令。

存储器420在系统400内存储信息。在一个实施方式中,存储器420是计算机可读介质。在一些实施方式中,存储器420是易失性存储器单元。在另一实施方式中,存储器420是非易失性存储器单元。

存储设备430能够为系统400提供大容量存储。在一些实施方式中,存储设备430是计算机可读介质。在各种不同的实施方式中,存储设备430可以包括例如硬盘设备、光盘设备、由多个计算设备通过网络共享的存储设备(例如,云存储设备)、或另一些大容量存储设备。

输入/输出设备440为系统400提供输入/输出操作。在一些实施方式中,输入/输出设备440可以包括网络接口设备中的一个或更多个,例如以太网卡、串行通信设备(例如,RS-232端口)和/或无线接口设备(例如,802.11卡)。在另一个实施方式中,输入/输出设备可以包括被配置为接收输入数据并将输出数据发送到其它输入/输出设备(例如,键盘、打印机和显示设备460)的驱动器设备。然而,也可以使用其它实施方式,诸如移动计算设备、移动通信设备、机顶盒电视机客户端设备等。

尽管已经在图5中描述了示例处理系统,但是在本说明书中描述的主题和功能操作的实施方式可以以其它类型的数字电子电路或者以计算机软件、固件或硬件(包括本说明书中公开的结构及其结构等同物)来实现或者以它们中的一种或更多种的组合来实现。

本说明书中描述的主题和操作的实施例可以以数字电子电路或以计算机软件、固件或硬件(包括本说明书中公开的结构及其结构等同物)来实现或者以它们中的一种或更多种的组合来实现。本说明书中描述的主题的实施例可以被实现为编码在计算机存储介质(或媒介)上以供数据处理装置运行或控制数据处理装置的操作的一个或更多个计算机程序(即计算机程序指令的一个或更多个模块)。可选地或附加地,程序指令可以被编码在人工生成的传播信号(例如,机器生成的电、光或电磁信号)上,该人工生成的传播信号被生成用于编码信息以供传输到合适的接收器装置以由数据执行处理装置运行。计算机存储介质可以是计算机可读存储设备、计算机可读存储基板、随机或串行存取存储器阵列或设备、或它们中的一个或更多个的组合,或者可以被包括在计算机可读存储设备、计算机可读存储基板、随机或串行存取存储器阵列或设备、或它们中的一个或更多个的组合中。此外,虽然计算机存储介质不是传播信号,但计算机存储介质可以是编码在人工生成的传播信号中的计算机程序指令的源或目的地。计算机存储介质也可以是一个或更多个单独的物理组件或介质(例如,多个CD、磁盘或其它存储设备),或者也可以被包括在一个或更多个单独的物理组件或介质(例如,多个CD、磁盘或其它存储设备)中。

本说明书中描述的操作可以被实现为由数据处理装置对存储在一个或更多个计算机可读存储设备上或从其它源接收的数据执行的操作。

术语“数据处理装置”涵盖用于处理数据的所有种类的装置、设备和机器,包括例如可编程处理器、计算机、片上系统、或前述内容的多个或组合。该装置可以包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建运行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时间环境、虚拟机或它们中的一个或更多个的组合的代码。该装置和运行环境可以实现各种不同的计算模型基础设施,诸如网络服务、分布式计算和网格计算基础设施。

计算机程序(也称为程序、软件、软件应用、脚本或代码)可以以任何形式的编程语言(包括编译或解释语言、声明性或过程性语言)来编写,并且它可以以任何形式(包括作为独立程序或作为模块、组件、子程序、对象或其它适合在计算环境中使用的单元)来部署。计算机程序可以但不必对应于文件系统中的文件。程序可以存储在包含其它程序或数据的文件的一部分(例如,存储在标记语言文档中的一个或更多个脚本)中、在专用于所讨论的程序的单个文件中、或在多个协调文件(例如,存储一个或更多个模块、子程序或部分代码的文件)中。可以部署计算机程序以在一个计算机上或在位于一个站点或分布在多个站点并通过通信网络互连的多个计算机上运行。

本说明书中描述的过程和逻辑流可以由运行一个或更多个计算机程序的一个或更多个可编程处理器执行,以通过对输入数据进行操作并生成输出来执行动作。过程和逻辑流也可以由专用逻辑电路执行,并且装置也可以被实现为专用逻辑电路,该专用逻辑电路例如为FPGA(现场可编程门阵列)或ASIC(专用集成电路)。

适合于运行计算机程序的处理器包括例如通用和专用微处理器两者。一般而言,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于根据指令执行动作的处理器以及用于存储指令和数据的一个或更多个存储器设备。一般而言,计算机还将包括用于存储数据的一个或更多个大容量存储设备(例如,磁盘、磁光盘或光盘),或可操作地耦合以从该一个或更多个大容量存储设备接收数据或向该一个或更多个大容量存储设备传输数据,或既包括该一个或更多个大容量存储设备又可操作地耦合以从该一个或更多个大容量存储设备接收数据或向该一个或更多个大容量存储设备传输数据。然而,计算机不必具有这样的设备。此外,计算机可以嵌入到另一设备(例如,移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏主机、全球定位系统(GPS)接收器或便携式存储设备(例如,通用串行总线(USB)闪存驱动器),仅举几例)中。适用于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路补充或合并在专用逻辑电路中。

为了提供与用户的交互,本说明书中描述的主题的实施例可以在具有用于向用户显示信息的显示设备(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器)以及用户可通过其向计算机提供输入的键盘和定点设备(例如,鼠标或轨迹球)的计算机上实现。也可以使用其它种类的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感器反馈,例如视觉反馈、听觉反馈或触觉反馈;可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从该设备接收文档来与用户交互;例如,通过响应于从网络浏览器接收到的请求而将网页发送到用户的客户端设备上的网络浏览器。

本说明书中描述的主题的实施例可以在计算系统中实现,该计算系统包括后端组件(例如,作为数据服务器),或包括中间件组件(例如,应用服务器),或包括前端组件(例如,具有用户可通过其与本说明书中描述的主题的实施方式进行交互的图形用户界面或网络浏览器的客户端计算机),或者一个或更多个这样的后端、中间件或前端组件的任何组合。系统的组件可以通过任何形式或介质的数字数据通信(例如,通信网络)来互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”)、网际网(例如,互联网)和对等网络(例如,自组织对等网络)。

计算系统可以包括客户端和服务器。客户端和服务器一般彼此远离并且通常通过通信网络进行交互。客户端和服务器的关系通过在各个计算机上运行并彼此具有客户端-服务器关系的计算机程序而产生。在一些实施例中,服务器将数据(例如,HTML页面)传输到客户端设备(例如,为了向与客户端设备交互的用户显示数据并从该用户接收用户输入)。在客户端设备处生成的数据(例如,用户交互的结果)可以在服务器处从客户端设备接收。

虽然本说明书包含许多具体的实施细节,但这些细节不应被解释为对任何发明的范围或可能要求保护的内容的限制,而是应被解释为对特定发明的特定实施例所特有的特征的描述。在本说明书中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各个特征也可以在多个实施例中分开实施或者以任何合适的子组合来实施。此外,尽管特征可能在某些组合中被描述为起作用,并且甚至最初如此要求保护,但在一些情况下,来自要求保护的组合的一个或更多个特征可以从该组合中删除,并且要求保护的组合可以针对子组合或子组合的变体。

类似地,虽然在附图中以特定顺序描绘了操作,但这不应被理解为要求以所示的特定顺序或以依次的顺序来执行这些操作,或是要求执行所有示出的操作以实现期望的结果。在一些情况下,多任务和并行处理可以是有利的。此外,上述实施例中各个系统组件的分离不应被理解为在所有实施例中都要求这样的分离,应理解,所描述的程序组件和系统一般可以一起集成在单个软件产品中或打包成多个软件产品。

因此,已经描述了主题的特定实施例。其它实施例在所附权利要求的范围内。在一些情况下,权利要求中阐述的动作可以以不同的顺序执行,并且仍能达到期望的结果。此外,附图中描绘的过程未必要求示出的特定顺序或依次的顺序来实现期望的结果。在某些实施方式中,多任务和并行处理可以是有利的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号