使用结果反馈的搜索系统的制作方法

文档序号:16990259发布日期:2019-03-02 00:54阅读:293来源:国知局
使用结果反馈的搜索系统的制作方法

本国际申请要求于2016年6月22日提交的、标题为“searchsystememployingresultfeedback”、序列号为15/189,558的美国专利申请的优先权,其全部内容通过引用整体并入本文中。

本公开的实施例总体涉及数据处理,并且更具体地但并非限制性地涉及使用搜索结果反馈的搜索系统。



背景技术:

一般web搜索网站(例如google和yahoo!公司提供的网站)以及更具体专注于特定类型的物品、文档等的其他类型的搜索引擎等在解释用户搜索查询方面变得更加复杂,以提供与用户预期更密切的搜索结果。然而,不管搜索引擎的有效性、或者用户制作搜索查询的专业水平如何,用户对至少一些搜索结果不感兴趣或兴趣不大的几率仍然相当高。鉴于通常在设备显示器上提供的显示空间的量通常有限,尤其是在智能电话、平板设备等中使用的显示空间,搜索结果中存在的不想要的列表项往往使用户看来更需要的其他列表项不容易被看到,这些更需要的列表项被挤到显示器上不太显著的区域,或者全部被挤到了搜索结果的后续页面上。

附图说明

各个所附附图仅示出了本公开示例实施例,并且不可以被认为限制其范围。

图1是包括使用搜索结果反馈的示例搜索系统的示例通信系统的框图。

图2是包含图1的示例搜索系统的至少一部分的示例联网系统的框图。

图3是使用搜索结果反馈来修改响应于搜索查询而呈现的搜索结果的示例方法的流程图。

图4是使用搜索结果反馈来向列表项实体提供反馈的示例方法的流程图。

图5a描绘了响应于搜索查询呈现搜索结果的示例搜索设备。

图5b描绘了在提供搜索结果反馈时的图5a的示例搜索设备。

图5c描绘了呈现图5b的搜索结果反馈之后的搜索结果的图5a的示例搜索设备。

图6是示出了根据一些示例实施例的可以安装在机器上的软件架构的示例的框图。

图7示出了根据示例实施例的具有计算机系统的形式的机器的示图表示,在所述计算机系统中,可以执行一组指令以使所述机器执行本文讨论的方法中的任意一个或多个方法。

本文提供的标题仅为方便起见,而不一定影响所使用的术语的范围或含义。

具体实施方式

在下文的描述中,为了解释的目的,阐述了很多细节以提供对本主题的各种实施例的理解。然而,对本领域技术人员将显而易见的是,本主题的示例实施例可以在没有这些具体细节的情况下实施。

图1是示例通信系统100的框图,该示例通信系统100包括与搜索设备120和列表项设备140通信地耦合的搜索系统102。在其他示例实施例中,可以存在搜索系统102、搜索设备120和/或列表项设备140的多个实例,但是图1中仅描绘了这些组件中的每一个之一以聚焦并简化以下讨论。通常,列表项设备140用于提供可通过搜索系统102搜索到的物品(例如,实体物品、服务、文档、照片、歌曲、网页等)的一个或多个列表项,同时搜索设备120用于向搜索系统102提供一个或多个搜索查询以找到所需的列表项。作为响应,搜索102可以向从搜索设备120接收的每个搜索查询提供零个或多个搜索结果。在一些示例中,单个设备可以至少有时用作搜索设备120和列表项设备140两者。搜索设备120和列表项设备140的示例可以包括但不限于台式计算机、膝上型计算机、平板计算机、智能电话、电视机顶盒、电视流设备和游戏系统。

如图1中所示,搜索设备120包括搜索系统接口122,而列表项设备140包括搜索系统接口142。搜索系统接口122、142的示例可以包括通信接口,诸如用于以下的接口:广域网(wan)(例如,互联网)、无线wan(wwan)、局域网(lan)、无线lan(wlan)、虚拟专用网络(vpn)、蜂窝电话数据网络(例如,3g或4g网络)、另一种类型的网络或者两个或更多个这样的网络的组合。可以使用例如web浏览器、专用程序应用(例如,“app”)等来使用这样的接口。搜索设备120和列表项设备140中的每一个可以包括各种其他组件,诸如下面结合图2、6和7更全面地讨论的那些组件。

搜索系统102可以包括一个或多个模块,诸如搜索引擎104、列表项数据库106、搜索结果修改器108、偏好数据库110和列表项反馈处理器112。在其他示例中,搜索系统102可以包括比图2中所示的模块更少的模块,可以组合一个或多个这样的模块,和/或可以包括未在此具体描述的附加模块。在一个示例中,搜索系统102可以是可由一个或多个通信网络访问的服务器或其部分,例如上面提到的那些。在其他的示例实施例中,搜索系统102、搜索设备120和/或列表项设备140可以组合成单个计算设备或系统。在其他示例中,模块104至112中的一个或多个可以与搜索设备120和/或列表项设备140一起代替搜索系统102使用,或者作为搜索系统102的补充来使用。

列表项数据库106可以包括多个列表项,每个列表项表示特定物品,例如文档、网页、对象、服务或其他感兴趣的物品。在一些示例实施例中,每个列表项可以与一个或多个关键词、标签、参数或描述物品的其他词语相关联,或者以某种其他方式与物品相关。这些词语可以指示,例如,与物品一起标识的主题或类别、物品的标题或名称、与物品相关的实体(例如,供应商、分销商、贡献者、作者、创建者等)和/或与物品相关联的一些特征(例如,大小、颜色、价格、功能等)。可以使用由搜索系统102或另一系统提供的输入表格或其他输入方法,经由一个或多个列表项设备140来创建或生成列表项数据库106的列表项以及每个列表项内的任何或所有信息。

可以根据任何格式来组织列表项数据库106的列表项,例如,关系数据库格式、对象数据库格式、知识库格式、数据仓库格式等。列表项数据库106还可以包括控制或执行列表项数据库106的列表项的存储、删除、修改和/或访问的数据库管理系统(未在图1中明确示出)。

搜索引擎104可以从搜索设备120接收搜索查询,并且基于搜索查询在列表项数据库106中搜索列表项。在一个示例中,搜索查询可以包括一个或多个词语,诸如单词、短语、或者字母数字字符和其他专用字符的其他集合。在一些示例实施例中,搜索引擎104可以生成或计算表示搜索查询的词语与和列表项数据库106中的多个列表中的每个列表项相关联的词语之间的相关水平的分数或其他值。可以根据任何数量的规则、成规、算法、等式等来确定该值。例如,与列表项相关联的值可以取决于搜索查询的每个词语与该列表项的词语的相关程度。

基于所生成的值,搜索引擎104可以提供零个或多个搜索结果,用于经由搜索设备120呈现。在各种示例实施例中,搜索引擎104可以在搜索结果中呈现多个列表项,根据它们所关联的相关值进行排列或排序。例如,具有最高值的列表项可以比具有相对较低值的列表项在搜索结果中以更显著或更容易被看到的方式来呈现。在一些实施方式中,可以仅在搜索结果中提供具有满足或超过某个阈值的值的列表项,用于经由搜索设备120呈现。

搜索结果修改器108可以从搜索设备120接收关于搜索结果的反馈。例如,搜索设备102的用户可以从呈现的搜索结果中选择要排除、省略或移除,或者降级到呈现的搜索结果内较不显著的位置的一个或多个列表项。响应于反馈,搜索结果修改器108可以改变搜索结果,或者经由搜索设备120改变搜索结果的呈现,以移除、排除或降级被用户选中的列表项。下面讨论的图5a、5b和5c只提供了被排除的列表项的一个示例。在其他示例中,搜索结果修改器108可以在搜索结果中移除、免除或降级与用户选择的列表项类似的其他列表项。

搜索结果修改器108还可以在偏好数据库110中记录所接收的反馈的一个或多个方面,以修改来自同一用户或与原始搜索查询相关联的其他实体的后续搜索查询。在一个示例中,搜索结果修改器108可以存储用户已在搜索结果中排除或降级的特定列表项的指示。在其他示例实施例中,搜索结果修改器108可以将所记录的每一个排除或降级的列表项与对应于所记录的列表项的搜索查询的指示相关联。在一些示例中,搜索结果修改器108可以记录排除或降级的列表项的其他信息,作为排除或降级的列表项的补充或代替,例如,在没有对排除或降级的列表项进行选择的在前选择的情况下,对要被降级或排除的列表项的特定特征加以指示的用户偏好,然后,使用该信息来自动降级或排除与所选择的特定列表特征相关的列表项。

响应于搜索引擎104生成的后续搜索结果,搜索结果修改器108然后可以访问偏好数据库110以确定当前生成的搜索结果的任何列表项是否已经记录在偏好数据库110中。如果在偏好数据库110中记录了这些列表项中的任何一个,则在搜索引擎通过搜索设备120呈现搜索结果之前,搜索结果修改器108可以从当前搜索结果中移除这些列表项,或者将这些列表项在当前搜索结果内降级。在另一示例实施例中,搜索结果修改器108可以将对应于当前搜索结果的搜索查询与偏好数据库110中指示的先前搜索查询进行比较,以识别与该先前搜索查询相关联的一个或多个排除或降级的列表项。然后,搜索结果修改器108可以在经由搜索设备120呈现当前搜索结果之前,从要呈现的搜索结果中排除所识别的列表项,或者在要呈现的搜索结果中将所识别的列表项降级。

在一些示例实施例中,搜索结果修改器108可以识别搜索引擎104生成的搜索结果的其他列表项,该其他列表项与响应于先前的搜索查询而在偏好数据库110中识别的排除或降级的列表项、或者与用户通过搜索设备120在当前搜索结果中选择的排除或降级的列表项密切相关。例如,搜索结果修改器108可以排除或降级以某种方式与对应于先前排除或降级的列表项(如偏好数据库110中所示)的物品相似的物品的列表项。

与列表项数据库106一样,可以根据任何格式(例如,关系数据库格式、对象数据库格式、知识库格式、数据仓库格式等)来组织偏好数据库110。偏好数据库110还可以包括控制或执行偏好数据库11o的列表项的存储、删除、修改和/或访问的数据库管理系统(未在图1中明确示出)。

列表项反馈处理器112还可以接收用户通过搜索设备120选择的、用于在搜索结果中排除或降级的一个或多个列表项的指示,其可能与用户经由搜索设备120提供的关于该列表项被降级或排除的原因的信息一起接收。响应于该信息,列表项反馈处理器112可以将所提供的信息与排除或降级的列表项记录在一起。另外,列表项反馈处理器112可以促进与列表项设备140相关联的一个或多个实体访问被选中的列表项和记录的信息。该实体可将这种信息视为有用的反馈。例如,该实体可以使用用户提供的这种信息以及其他用户提供的信息来修改列表项数据库106中被降级或排除的列表项,以使该列表项对用户更具吸引力,或者从列表项数据库106移除该列表项。在一些示例中,用户提供的信息可以是文本或图形性质的,或者以某种其他格式来表示。

参考图2,示出了高级的基于客户端-服务器的网络架构200的示例实施例。具有基于网络的市场或支付系统的示例形式的联网系统202经由网络204(例如互联网或广域网(wan))向一个或多个客户端设备210提供服务器侧功能。图2示出了例如在客户端设备210上执行的web客户端212(例如浏览器,比如由华盛顿州雷德蒙德的公司开发的internet浏览器)、应用214和编程客户端216。

客户端设备210可以包括但不限于:移动电话、台式计算机、膝上型计算机、便携式数字助理(pda)、智能电话、平板计算机、超级本、上网本、笔记本计算机、多处理器系统、基于微处理器或可编程的消费电子产品、游戏机、机顶盒或用户可以用来访问联网系统202并且可以用作图1的搜索设备120和/或列表项设备140的任何其他通信设备。在一些示例实施例中,客户端设备210可以包括显示模块(未示出)以显示信息(例如,以用户界面的形式)。在另一些示例实施例中,客户端设备210可以包括触摸屏、加速度计、陀螺仪、相机、麦克风、全球定位系统(gps)设备等中的一个或多个。客户端设备210可以是用于在联网系统202内执行涉及数字物品的交易的用户设备。在一个示例实施例中,联网系统202是基于网络的市场,其响应于对产品列表的请求,发布包括在基于网络的市场上可用的产品的物品列表在内的公告,并且管理这些市场交易的支付。一个或多个用户206可以是人、机器或与客户端设备210交互的其它装置。在示例实施例中,用户206不是网络架构200的一部分,但可以经由客户端设备210或另一装置与网络架构200进行交互。例如,网络204的一个或多个部分可以是自组织(adhoc)网络、内联网、外联网、虚拟专用网(vpn)、局域网(lan)、无线lan(wlan)、广域网(wan)、无线wan(wwan)、城域网(man)、互联网的一部分、公共电话交换网(pstn)的一部分、蜂窝电话网、无线网络、wifi网络、wimax网络、另一类型的网络或两个或更多个这样的网络的组合。

客户端设备210中的每一个可以包括一个或多个应用(也称作“app”),例如但不限于web浏览器、消息传送应用、电子邮件(email)应用、电子商务网站应用(也称作市场应用)等。在一些示例实施例中,如果电子商务网站应用被包括在客户端设备210中的给定一个中,则该应用被配置为本地提供用户接口和至少一些功能,它们被配置为根据需要与联网系统202通信,以获得本地不可获得的数据和/或处理能力(例如,访问可供销售的物品的数据库、认证用户、验证支付方法等)。相反,如果电子商务站点应用未被包括在客户端设备210中,则客户端设备210可以使用其web浏览器来访问联网系统202上容纳的电子商务站点(或其变型)。

一个或多个用户206可以是人、机器或与客户端设备210交互的其他装置。在示例实施例中,用户206不是网络架构200的一部分,但可以经由客户端设备210或其它装置与网络架构200进行交互。例如,用户向客户端设备210提供输入(例如,触摸屏输入或字母数字输入),并且该输入经由网络204被传送到联网系统202。在这种情况下,联网系统202响应于从用户接收输入,经由网络204将信息传送到客户端设备210以呈现给用户。以这种方式,用户可以使用客户端设备210与联网系统202交互。

应用程序接口(api)服务器220和web服务器222耦合到一个或多个应用服务器240,并分别向该一个或多个应用服务器240提供编程和web接口。应用服务器240可以容纳一个或多个发布系统242、支付系统244和搜索系统250,其中的每一个可以包括一个或多个模块或应用,并且其中的每一个可以被实现为硬件、软件、固件或其任何组合。相应地,应用服务器240被示为耦合到一个或多个数据库服务器224,所述数据库服务器促进对一个或多个信息存储库或数据库226的访问。在示例实施例中,数据库226是存储要公告到发布系统242的信息(例如,发布或列表项)的存储设备。根据示例实施例,数据库226还可以存储数字物品信息。

另外,在第三方服务器230上执行的第三方应用232被示为具有经由api服务器220提供的编程接口对联网系统202的编程访问。例如,第三方应用232利用从联网系统202获取的信息,支持第三方所拥有的网站上的一个或多个特征或功能。例如,第三方网站提供由联网系统202的相关应用支持的一个或多个促销、市场或支付功能。

发布系统242可以向访问联网系统202的用户206提供多个发布功能和服务。支付系统244同样可以提供多个功能以执行或促进支付和交易。虽然发布系统242和支付系统244在图2中都被示为形成联网系统202的一部分,但是应当理解,在备选示例实施例中,每个系统242和244可以形成与联网系统202分离且不同的支付服务的一部分。在一些示例实施例中,支付系统244可以形成发布系统242的一部分。

搜索系统250可以用作图1的搜索系统102。更具体地,搜索系统250可以用作通过联网系统202出售待售物品的搜索系统。在一些示例实施例中,搜索系统250可以与发布系统242(例如,访问物品列表项)和支付系统244进行通信。在备选的示例实施例中,搜索系统250可以是发布系统242的一部分。

此外,虽然图2示出的基于客户端-服务器的网络架构200使用了客户端-服务器架构,但是本发明主题当然不限于此种架构,并且可以同样良好地应用于例如分布式或对等架构系统。各种发布系统242、支付系统244和搜索系统250也可以被实现为独立软件程序,其不一定具有联网能力。

web客户端212可以经由web服务器222所支持的web接口来访问各个发布系统242和支付系统244。类似地,编程客户端216通过api服务器220所提供的编程接口访问由发布系统242和支付系统244提供的各种服务和功能。例如,编程客户端216可以是销售商应用(例如,由加利福尼亚州圣何塞的公司开发的turbolister应用),其用于使销售商能够以离线方式编写和管理联网系统202上的列表,并且执行编程客户端216与联网系统202之间的批处理模式通信。

附加地,在第三方服务器230上执行的第三方应用232被示出为经由api服务器220提供的编程接口对联网系统202进行编程访问。例如,第三方应用232可以利用从联网系统202取回的信息来支持由第三方托管的网站上的一个或多个特征或功能。例如,第三方网站可以提供由联网系统202的相关应用支持的一个或多个促销、市场或支付功能。

图3是使用搜索结果反馈来修改响应于搜索查询呈现的搜索结果的示例方法300的流程图。虽然结合图1的搜索系统102和/或图2的搜索系统250描述了方法300的执行以及本文中讨论的其他方法,但是可以使用本文未具体描述的其他系统或设备来执行其他示例中的方法300。而且,虽然下面讨论的方法的操作以特定顺序呈现,但是其他操作顺序(包括操作的并发或同时执行)也是可能的。

在方法300中,搜索引擎(例如,图1的搜索引擎104)可以接收对应于第一用户的第一搜索查询(操作302)。搜索引擎可以基于第一搜索查询生成第一搜索结果(操作304)。然后,搜索引擎可以提供第一搜索结果,用于呈现给第一用户(操作306)。在一个示例中,第一搜索结果包括来自列表项数据库(例如,图1的列表项数据库106)的零个或多个列表项。然后,搜索引擎可以提供第一搜索结果,用于呈现给第一用户(操作306)。搜索结果修改器(例如,图1的搜索结果修改器108)可以接收对第一搜索结果中的至少一个排除或降级的列表项的指示(操作308)。在一些示例中,搜索结果修改器可以通过排除或将所指示的列表项降级来修改第一搜索结果,并且提供修改后的第一搜索结果,用于呈现给第一用户。

继续方法300,搜索结果修改器可以基于所接收的指示将排除的列表项与第一用户相关联(操作310)。在一些示例中,该关联可以记录在偏好数据库(例如,图1的偏好数据库110)中。搜索引擎可以接收对应于第一用户的第二搜索查询(操作312)。基于第二搜索查询,搜索引擎可以生成第二搜索结果(操作314)。搜索结果修改器可以将第二搜索结果与和第一用户相关联的至少一个排除或降级的列表项进行比较(操作316)。如果第二搜索结果中的一个或多个与至少一个排除或降级的列表项相同(操作316),则搜索结果修改器可以从第二搜索结果中移除该至少一个排除或降级的列表项(操作318)。搜索结果修改器可以提供修改后的第二搜索结果,用于呈现给第一用户(操作320)。在一些示例实施例中,搜索结果修改器可以基于一个或多个列表项相似于(操作316)和第一用户相关联的至少一个排除或降级的列表项来从第二搜索结果中移除或降级该一个或多个列表项,并且然后从第二搜索结果中移除或降级该相似的列表项(操作318)。在各种示例中,搜索结果修改器也可以修改与后续搜索查询相关联的搜索结果。

图4是使用搜索结果反馈来向列表项实体提供反馈的示例方法400的流程图。在方法400中,操作402至406(例如,接收对应于第一用户的第一搜索查询,生成第一搜索结果,以及提供第一搜索结果以呈现给第一用户)可以对应于图3的操作302至306,如上所述。搜索结果修改器(例如,图1的搜索结果修改器108)可以以类似于图1的操作408的方式来接收对第一搜索结果中的至少一个排除或降级的列表项的指示(操作408)。另外,列表反馈处理器(例如,图1的列表项反馈处理器112)可以从第一搜索结果接收或访问列表项不被考虑或降级的原因(操作408)。在一些示例实施例中,可以由第一用户明确地或隐含地提供这样的原因。作为响应,列表项反馈处理器可以向与排除或降级的列表项对应的列表项来源提供排除或将该至少一个列表项降级的原因,或者促进对该原因的访问(操作410)。在一个示例中,列表项来源可以是例如用列表项设备(例如,图1的列表项设备140)将列表项置于列表项数据库中的用户或其他实体(例如,公司实体,比如公司或另一组织)。

图5a描绘了响应于搜索查询502呈现搜索结果506(例如,列表项1、列表项2等)的示例搜索设备120。在该特定示例实施例中,搜索设备120可以是智能电话或平板计算机。然而,在其他示例实施例中,其他类型的通信设备或计算设备可以用作搜索设备120。如图所示,搜索结果506通过诸如触摸屏的显示组件被呈现给搜索设备120的用户。此外,搜索结果506和搜索设备120的用户界面的其他方面可以通过在客户端设备120上执行的web浏览器、在客户端设备120上执行的编程应用或通过其他手段来提供,其中web浏览器经由web服务器(例如,图2的web服务器222)与搜索系统102通信,编程应用通过api服务器(例如,图2的api服务器220)与搜索系统102通信。

在图5a的示例中,搜索查询502可以是文本查询,其包括要与列表项数据库(例如,图1的列表项数据库106)中的列表项进行匹配或比较的一个或多个分隔的词语或单词。在一些示例实施例中,可以使用搜索设备120的触摸屏(例如,经由显示的虚拟小键盘)输入搜索查询502,或者,可以从下拉菜单中的一组先前输入的搜索查询502(未在图5a中明确示出)中选择搜索查询502,等等。在其他示例中,可以使用在搜索设备120处呈现给用户的用户界面中提供的特征、值范围等的选择来组成搜索查询。此外,可以通过触摸触摸屏上的“提交”虚拟按钮504来发起基于搜索查询502的搜索。

响应于搜索发起,可以显示搜索结果506。搜索结果506中的每个列表项可以对应于特定物品,诸如用于销售或购买的物品、文档、web统一资源定位符(url)和/或可以在列表项数据库(例如,图1的列表项数据库)中列出并被用户搜索到的任何其他可识别物品。每个列表项可以包括对应物品的标题、名称、url或其他标识符。在一些示例中,搜索结果506中的列表项可以按照与搜索查询502的相关性的特定顺序来呈现,其中,首先列出与搜索查询502更密切匹配的列表项。另外,在将在搜索设备120上呈现的列表项多于单个触摸屏上可以呈现的列表项的情况下,搜索设备120的用户可以通过滚动列表项来访问当前未显示的列表,例如,通过在触摸屏上施加滚动手势。

搜索结果506还可以提供关于搜索结果506中的每个列表项的相应的更详细信息(例如,信息1、信息2等)。该详细信息可能指定了其对应的列表项的各种特征。例如,如果物品是呈现的用于出售的商品,则详细信息可以包括用户可能感兴趣的特征,例如价格、大小、颜色、品牌和/或与该物品相关联的其他参数。相反,如果物品是文档,则详细信息可以包括作者、发布日期、关键词、文档内容的总体主题等。在物品是网页的另一示例中,详细信息可以包括该页面的域或url、页面上呈现的样本文本、页面的创建者、页面的创建日期和/或最新修改日期等。与搜索结果506的列表相关联的诸多其他类型的物品也是可能的。

同样在图5a中,搜索结果选择符/指示符508通过粗体外观来指示与正在显示的最近搜索查询502相关联的搜索结果506。然而,如果用户有兴趣查看该用户先前已排除或降级的列表项,则用户可以触摸排除结果选择符/指示符510。在一个示例中,所显示的结果可以包括用户已经排除或降级的列表项(如在偏好数据库110中记录的),可以仅包括用户已经从当前搜索查询502的搜索结果206中排除或降级的列表项,可以包括用户已经从当前搜索查询502和类似的先前搜索查询的搜索结果506中排除或降级的列表项,或者与用户相关联的排除或降级的列表项的一些其他集合。在一些示例中,在排除的结果中呈现的每个列表项可以包括选择符(图5b中未示出),当用户选择该选择符时,使得排除或降级的列表项恢复到其先前在搜索结果506内的位置。

图5b描绘了在提供搜索结果反馈时的图5a的示例搜索设备120。在该特定示例实施例中,用户正在选择列表项3,以便在搜索结果506中排除它,或者将其降级到搜索结果506内的较不显著的位置,例如,通过在触摸屏上将该特定列表项滑动到一侧。在其他示例实施例中,可以使用指示排除或将列表项降级的其他方式,诸如双击、触摸并保持等。

响应于来自用户的选择,搜索设备120可以显示一个或多个选项,以便用户结合对排除或降级的列表项的选择来进行选择。在该示例中,搜索设备120可以显示排除选择符512、降级选择符514和反馈选择符516。当被触摸时,排除选择符512可以使得排除搜索结果506中的被选中的列表项,从而被选中的列表项不出现在搜索结果506的任何部分中。备选地,触摸降级选择符514可以使被选中的列表项在搜索结果506内降级,例如,通过将被选中的列表项移动到搜索结果506的底部或末尾。

在示例实施例中,响应于分别选择排除选择符512或降级选择符514,除了被选中的列表项之外,搜索结果506中的其他列表可以从搜索结果506中不被考虑或在搜索结果506内降级。在一个示例中,可以基于一个或多个特征或参数来选择将排除或降级的其他列表项,该其他列表项与被选中的列表项在这些特征或参数上具有共同点。此外,这些特征可以、或可以不在与搜索结果506中的每个列表项一起显示的详细信息中列出。这些特征可以包括但不限于:被选中的列表项所表示的物品的销售商、制造商、大小或颜色;被选中的列表项所表示的文档或其他已发行作品的作者、出版商或主题;与被选中的列表项所表示的网页相关联的网站、域名或创建者;和/或负责提供被选中的列表项的列表项实体。许多其他特征可以是用于基于被选中的列表项来确定搜索结果506的其他列表项的基础。在一些示例实施例中,用户可以选择用于排除或降级其他列表项的具体的一个或多个特征,例如,通过对话框或经由搜索设备120呈现给用户的其他界面元素。

在搜索结果506中的其他列表项将被降级的一些示例中,每个其他列表项被降级的程度或数量可以与其他列表与被选中的列表项相关度或相关量正相关。例如,与被选中的列表项共享大量特征的密切相关的列表项可以被降级到搜索结果506内的较低级别,或者可以完全从搜索结果506中排除,而与被选中的列表项共享较少数量特征的非密切相关的列表项可以没那样强烈地被降级。

如图5b所示,可以从当前搜索结果506中移除搜索结果506中被选中的列表项、以及搜索结果506中可能以某种方式与被选中的列表项相关的其他列表项。另外,响应于与当前搜索查询502相同或者与当前搜索查询502相似的后续搜索查询502,可以使得从相关联的搜索结果506中排除或降级相同的列表项。在一个示例实施例中,可以存储当前搜索结果506的被选中的列表项(例如,在图1的偏好数据库110中)。此后,响应于后续搜索查询502,可以将对应于该搜索查询502的搜索结果506与所存储的先前搜索结果506的被选中的列表项进行比较。在将搜索结果506呈现给用户之前,可以排除或降级对应于后续搜索查询502的搜索结果506中的、与存储的被选中的列表项匹配的列表项。

在另一示例中,还可以存储与当前搜索结果506的被选中的列表项相关联的搜索查询502(例如,在图1的偏好数据库110中),并且与存储的被选中的列表项相关。此后,响应于与所存储的搜索查询502匹配或密切匹配的后续搜索查询502,然后可以将与所存储的搜索查询502相关联的存储的被选中的列表项与后续搜索查询502的搜索结果506进行比较,其中,在将搜索结果506呈现给用户之前,排除或将搜索结果506中的匹配列表项降级。

在其他示例实施例中,可以存储与搜索结果506的排除或降级有关的其他用户偏好。例如,用户可以提供指示搜索结果506中该用户不感兴趣的各种类型的列表项的偏好信息。这种偏好信息可以包括但不限于:价格、大小、颜色、品牌和/或与物品相关联的其他参数;作者、出版日期、关键词和/或文档的一般主题;和网页的域或url、样本文本、创建者、创建日期和/或最新修改日期等。

在一些示例实施例中,响应于对排除选择符512和/或降级选择符514的选择,搜索设备120可以向用户提供对话框或其他界面元素(图5b中未描绘)。界面元素可以呈现多个可能的特征选择,可以基于这些特征来选择要排除或降级的其他列表项,例如,如上所述的特征。在一些示例中,用户可以选择多于一个特征,因此可能指示要排除或降级的其他列表项与要排除或降级的被选中的列表项共享所选择的每一个特征。此外,不选择任何特征可以指示,除了要排除或降级的被选中的列表项之外,不排除或降级搜索结果506中的其他列表项。

在一些示例中,界面元素中呈现的特征可以取决于被选中的列表项所表示的物品的类型。例如,如果物品类型是衣物,则呈现的特征可以包括衣服的类型、衣服的制造商或销售者、衣服的大小、衣服的颜色、衣服的款式等。如果物品类型是文档,则呈现的特征可以包括文档的作者、文档的发布者、文档内容的主题等。替代地,如果物品类型是网页,则呈现的特征可以包括网页的创建者、呈现网页的网站等。

继续图5b,反馈选择符516在被选择时可以使搜索设备120显示另一个对话框或其他界面元素(图5b中未示出),其有助于输入文本、图形或从用户输入的其他信息,用于在一定程度上描述排除或降级被选中的列表项的原因。在一个示例中,界面元素可以提供用于原因文本输入的文本框;用户可选择的多个单选按钮,每个单选按钮与特定原因(例如,错误的大小、错误的颜色、太昂贵、错误的主题内容和/或其他)相关联。然后可以将记录的原因随后呈现给列表项实体(例如,与被选中的列表项相关联的物品的销售商),还可能一起呈现其他用户输入的、与列表项实体提供的相同列表项或其他列表项有关的其他原因。

界面元素还可以为用户提供关于是否可以将身份信息和/或标识用户的其他信息与原因一起存储的选择。这些信息可以被记录并随后提供给列表项实体,以允许列表项实体联系用户以获得列表项为什么被排除或降级的更多信息,或者联系用户以指出因为用户降级或排除,该列表项已改变或修改。

图5c描绘了呈现了图5b的搜索结果反馈之后的搜索结果的图5a的示例搜索设备120。在该示例中,根据用户的期望,列表项3被排除或降级,被选中的列表项被完全从搜索结果506中排除或者被降级到搜索结果506的底部,因此不在搜索结果506的当前视图上呈现。因此,后续列表项(例如,先前在搜索结果506上列出的列表项4和列表项5,以及先前未在搜索设备120上呈现给用户的列表项6)呈现在搜索结果506内的更显著的位置。然后,用户可以自由地选择搜索结果506的另一个列表项以用于排除或降级,以及按照上述方式提供关于排除或降级的反馈。

作为本文公开的至少一些示例实施例的结果,接收从搜索查询生成的搜索结果的用户可以通过排除或降级被选中的列表项以及以某种方式与被选中的列表项相关的可能列表项来修订该搜索结果以及对应于后续搜索查询的后续结果。因此,最终呈现给用户的搜索结果(现在和将来)可以响应于搜索查询而更符合用户预期的搜索结果的类型。此外,列表项的提供者可以受益于用户提供的反馈以及列表项的排除或降级,因此可能有助于对当前列表进行修改,以及生成可能更容易被用户接受的未来列表项。

某些示例实施例在本文中被描述为包括逻辑或多个组件、模块或机构。模块可以构成软件模块(例如,机器可读介质上体现的代码)或硬件模块。“硬件模块”是能够执行某些操作的有形单元,并且可以按照某种物理方式配置或布置。在各种示例实施例中,一个或多个计算机系统(例如独立的计算机系统、客户端计算机系统或服务器计算机系统)或者计算机系统的一个或多个硬件模块(例如处理器或处理器组)可由元件(例如应用或应用部分)配置为操作为执行本文描述的特定操作的硬件模块。

在一些示例实施例中,硬件模块可以按照机械方式、电子方式或其任意适当组合来实现。例如,硬件模块可以包括永久地被配置为执行特定操作的专用电路或逻辑。例如,硬件模块可以是专用处理器,如现场可编程门阵列(fpga)或专用集成电路(asic)。硬件模块还可以包括由软件临时配置为执行特定操作的可编程逻辑或电路。例如,硬件模块可以包括由通用处理器或其他可编程处理器执行的软件。一旦由这样的软件配置,硬件模块就变成特定的机器(或机器的特定组件),其被专门定制用于执行所配置的功能,而不再是通用处理器。应理解:以机械方式、以专用和永久配置的电路或以临时配置的电路(例如由软件配置)实现硬件模块的决定可出于成本和时间的考虑。

因此,短语“硬件模块”应理解为涵盖有形实体,是在物理上构造、永久配置(例如硬线连接)或临时配置(例如编程)为以特定方式操作或执行本文描述的特定操作的实体。如本文所使用的,“硬件实现的模块”指硬件模块。考虑临时配置(例如编程)硬件模块的示例实施例,无需在任一时刻配置或实例化硬件模块中的每一个。例如,在硬件模块包括被软件配置成为专用处理器的通用处理器的情况下,通用处理器可以在不同时间被配置为分别不同的专用处理器(例如包括不同的硬件模块)。因此,软件将特定的一个或多个处理器例如配置为在一个时刻构成特定硬件模块并在另一时刻构成不同的硬件模块。

硬件模块可以向其他硬件模块提供信息并从其他硬件模块接收信息。因此,所描述的硬件模块可以被看作通信地耦合。如果同时存在多个硬件模块,则可以通过两个或更多个硬件模块之间的信号传输(例如通过适当的电路和总线)实现通信。在多个硬件模块在不同时间配置或实例化的示例实施例中,可以例如通过存储并获取多个硬件模块可访问的存储器结构中的信息来实现这样的硬件模块之间的通信。例如,一个硬件模块可以执行操作并在与其通信耦合的存储设备中存储该操作的输出。另一硬件模块接着可以稍后访问存储器设备,以取回并处理所存储的输出。硬件模块还可以发起与输入或输出设备的通信,并且能够对资源(例如信息的集合)进行操作。

此处描述的示例方法的各种操作可以至少部分地由临时配置(例如通过软件)或永久配置为执行相关操作的一个或多个处理器执行。无论是临时还是永久配置,这样的处理器可以构成操作以执行本文描述的一个或多个操作或功能的处理器实现的模块。如本文所使用的,“处理器实现的模块”指使用一个或更多个处理器实现的硬件模块。

类似地,本文描述的方法可以至少部分地由处理器实现,其中特定的一个或多个处理器是硬件的示例。例如,方法的至少一些操作可由一个或多个处理器或处理器实现的模块执行。此外,一个或多个处理器还可操作以支持在“云计算”环境中或作为“软件即服务”(saas)执行有关操作。例如,操作中的至少一些可由计算机(作为包括处理器的机器的示例)组执行,这些操作可经由网络(例如互联网)并经由一个或多个适当接口(例如应用程序接口(api))来访问。

某些操作的执行可以分布在处理器中,并不只驻留在单个机器内,而是部署在多个机器中。在一些示例实施例中,处理器或处理器实现的模块可以位于单个地理位置(例如,在家庭环境、办公环境或服务器群中)。在其他示例实施例中,处理器或处理器实现的模块可以分布在多个地理位置中。

机器和软件架构

在一些示例实施例中,结合图1至图4和图5a至图5c描述的模块、方法、应用等可以在机器和关联的软件架构的上下文中实现。以下部分描述了适用于与所公开的示例实施例一起使用的代表性软件架构和机器(例如,硬件)架构。

软件架构与硬件架构一起使用,以创建针对特定目的定制的设备和机器。例如,与特定软件架构耦合的特定硬件架构将创建移动设备,诸如移动电话、平板设备等。稍微不同的硬件和软件架构可能会产生用于“物联网”的智能设备,而另一种组合产生用于云计算架构内的服务器计算机。本文并没有介绍这样的软件和硬件架构的所有组合,因为本领域技术人员可以容易地理解在不同于本文所包含的公开内容的不同上下文中如何实现本发明的主题。

软件架构

图6是示出代表性软件架构602的框图600,该代表性软件架构602可以结合本文所描述的各种硬件架构一起使用。图6仅是软件架构的非限制性示例,应该理解,可以实施许多其他架构以促进实现本文中所描述的功能。软件架构602可以在诸如图7的机器700的硬件上执行,所述机器700包括处理器710、存储器730和i/o组件750。代表性的硬件层604被示出,并且可以表示例如图15的机器700。代表性的硬件层604包括具有关联的可执行指令608的一个或多个处理单元606。可执行指令608表示软件架构602的可执行指令,包括与图1的搜索系统102相关联的模块和其他组件的实现,以及图3和4的方法300和400。硬件层604还包括存储器和/或存储模块610,所述存储器和/或存储模块610也具有可执行指令608。硬件层604还可以包括由612表示的其它硬件,其表示硬件层604的任何其他硬件,例如作为机器700的一部分示出的其他硬件。

在图6的示例架构中,软件架构602可被概念化为层的堆栈,其中每层提供特定的功能。例如,软件602可以包括诸如操作系统614、库616、框架/中间件618、应用620和表示层644等层。在操作上,应用620和/或层内的其它组件可以通过软件堆栈来调用应用编程接口(api)调用624,并且响应于api调用624接收被示出为消息626的响应、返回值等等。所示出的层在本质上具有代表性,并不是所有的软件架构都具有所有层。例如,一些移动或专用操作系统可能不提供框架/中间件层618,而其他系统可以提供这样的层。其它软件架构可以包括附加层或不同层。

操作系统614可以管理硬件资源并提供公共服务。操作系统614可以包括例如内核628、服务630和驱动632。内核628可以用作硬件和其他软件层之间的抽象层。例如,内核628可以负责存储器管理、处理器管理(例如调度)、组件管理、联网、安全设置等。服务630可以为其它软件层提供其他公共服务。驱动632可以负责控制底层硬件或与底层硬件接口连接。例如,取决于硬件配置,驱动632可以包括显示器驱动、相机驱动、、闪存驱动、串行通信驱动(例如通用串行总线(usb)驱动),、音频驱动、电源管理驱动等等。

库616可以提供可由应用620和/或其它组件和/或层利用的公共基础设施。库616通常提供允许其它软件模块以与底层操作系统614功能(例如,内核628、服务630和/或驱动632)直接接口连接相比更容易的方式来执行任务的功能。库616可以包括可以提供诸如存储器分配功能、串操纵功能、数学功能等功能的系统634库(例如,c标准库)。另外,库616可以包括api库636,例如媒体库(例如,用于支持各种媒体格式(诸如mpeg4、h.264、mp3、aac、amr、jpg、png)的呈现和操纵的库)、图形库(例如,可以用于在显示器上渲染图形内容中的2d和3d的opengl框架)、数据库(例如,可以提供各种关系数据库功能的sqlite)、web库(例如,可以提供网络浏览功能的webkit)等。库616还可以包括各种各样的其它库638,以提供到应用620和其它软件组件/模块的许多其他api。

框架618(有时也称为中间件)可以提供可以由应用620和/或其它软件组件/模块利用的更高级别的公共基础设施。例如,框架618可以提供各种图形用户界面(gui)功能、高级资源管理、高级位置服务等。框架618可以提供可以由应用620和/或其它软件组件/模块利用的广泛范围的其它api,其中一些可以特定于特定操作系统或平台。

应用620包括内置应用640和/或第三方应用642。代表性的内置应用640的示例可以包括但不限于联系人应用、浏览器应用、书籍阅读器应用、位置应用、媒体应用、消息传递应用和/或游戏应用。第三方应用642可以包括任何内置应用以及各种其他应用。在具体示例中,第三方应用642(例如,由与特定平台的供应商不同的实体使用androidtm或iostm软件开发工具包(sdk)而开发的应用)可以是在移动操作系统(诸如iostm、androidtmphone或其他移动操作系统)上运行的移动软件。在该示例中,第三方应用642可以调用由诸如操作系统614之类的移动操作系统提供的api调用624,以有助于实现本文描述的功能。

应用620可以利用内置操作系统功能(例如,内核628、服务630和/或驱动器632)、库(例如,系统634、api636和其他库638)和框架/中间件618来创建用户接口以与系统的用户交互。备选地或附加地,在一些系统中,与用户的交互可以通过表示层(诸如表示层644)发生。在这些系统中,应用/模块“逻辑”可以与和用户交互的应用/模块的各方面分离。

一些软件架构利用虚拟机。在图6的示例中,这由虚拟机648示出。虚拟机创建软件环境,在该软件环境中应用/模块可以像在硬件机器(诸如图7的机器)上执行一样执行。虚拟机由主操作系统(图15中的操作系统614)托管,并且通常(尽管并不总是)具有管理虚拟机的操作以及与主操作系统(即,操作系统614)连接的接口的虚拟机监控器646。软件架构在虚拟机内执行,例如操作系统650、库652、框架/中间件654、应用656和/或表示层658。在虚拟机648内执行的这些软件架构的层可以与先前描述的层相同,或者可以不同。

示例机器架构和机器可读介质

图7是示出了根据一些示例实施例的能够从机器可读介质(例如,机器可读存储介质)中读取指令并执行本文所讨论的方法中的任何一个或多个的机器700的组件的框图。具体地,图7示出了计算机系统的示例形式的机器700的示意图,其中可以执行指令716(例如,软件、程序、应用、小应用、app或其他可执行代码)以使机器700执行本文讨论的任何一种或多种方法。例如,指令可以使机器执行图3和图4的流程图。附加地或替代地,指令可以实现图1的搜索系统102的各种模块等等。指令将通用的未编程的机器转换成被编程为以所描述的方式执行所描述和示出的功能的特定机器。在备选示例实施例中,机器700作为独立设备操作或可以耦合(例如,联网)到其他机器。在联网部署中,机器700可以在服务器-客户端网络环境中以服务器机器或客户端机器的能力操作,或者作为对等(或分布式)网络环境中的对等机器操作。机器700可以包括但不限于服务器计算机、客户端计算机、个人计算机(pc)或能够顺序地或以其他方式执行指定要由机器700采取的动作的指令716的任何机器。此外,尽管仅示出了单个机器700,但是术语“机器”也将被认为包括机器700的集合,其单独地或联合地执行指令716以执行本文讨论的方法中的任何一个或多个。

机器700可以包括可被配置为经由总线702彼此通信的处理器710、存储器730和i/o组件750。在示例实施例中,处理器710(例如,中央处理单元(cpu)、精简指令集计算(risc)处理器、复杂指令集计算(cisc)处理器、图形处理单元(gpu)、数字信号处理器(dsp)、专用集成电路(asic)、射频集成电路(rfic)、另一处理器或其任何适当组合)可以包括例如可以执行指令716的处理器712和处理器714。术语“处理器”旨在包括可以包括可同时执行指令的两个或更多个独立处理器(有时称为“核”)的多核处理器。尽管图7示出了多个处理器,但是机器700可以包括具有单个核的单个处理器、具有多个核的单个处理器(例如,多核处理)、具有单个核的多个处理器、具有多个核的多个处理器或其任意组合。

存储器/存储设备730可以包括存储器732(比如主存储器或其它存储器存储设备)、以及存储单元736,存储器732和存储单元736都可以由处理器710例如经由总线702进行访问。存储单元736和存储器732存储体现本文所述的任何一种或多种方法或功能的指令716。在机器700执行指令716期间,指令716还可以完全地或部分地驻留在存储器732内、存储单元736内、处理器710中的至少一个内(例如,处理器的高速缓存存储器内)、或其任何合适的组合内。因此,存储器732、存储单元736和处理器710的存储器是机器可读介质的示例。

如本文所使用,“机器可读介质”是指能够暂时或永久地存储指令和数据的设备,并且可以包括但不限于随机存取存储器(ram)、只读存储器(rom)、缓冲存储器、闪速存储器、光学介质、磁性介质、高速缓冲存储器、其它类型的存储器(例如,电可擦除可编程只读存储器(eeprom))和/或其任何合适的组合。术语“机器可读介质”应被视为包括能够存储指令716的单个介质或多个介质(例如集中式或分布式数据库、或相关联的缓存和服务器)。术语“机器可读介质”还应被认为包括能够存储或执行由机器(例如机器700)执行的指令(例如,指令716)的任何介质或多个介质的组合,使得指令在被机器700的一个或多个处理器(例如,处理器710)执行时使机器700执行本文所描述的方法中的任何一个或多个。因此,“机器可读介质”指单个存储装置或设备、以及包括多个存储装置或设备的“基于云”的存储系统或存储网络。术语“机器可读介质”包括机器可读存储介质和诸如信号的传输介质。

i/o组件750可以包括用于接收输入、提供输出、产生输出、发送信息、交换信息、捕捉测量等的各种各样的组件。包括在特定机器中的特定i/o组件750将取决于机器的类型。例如,诸如移动电话的便携式机器将可能包括触摸输入设备或其他这样的输入机构,而无头服务器机器将可能不包括这样的触摸输入设备。应当理解,i/o组件750可以包括图7中未示出的许多其他组件。根据功能来对i/o组件750进行分组,以仅用于简化以下讨论,并且分组不以任何方式进行限制。在各种示例实施例中,i/o组件750包括输出组件752和输入组件754。输出组件752可以包括视觉组件(例如,显示器,诸如等离子体显示面板(pdp)、发光二极管(led)显示器、液晶显示器(lcd)、投影仪或阴极射线管(crt))、声学组件(例如扬声器)、触觉组件(例如振动马达、电阻机构)、其他信号发生器等。输入组件754可以包括字母数字输入组件(例如,键盘、配置为接收字母数字输入的触摸屏、光-光学键盘或其他字母数字输入组件)、基于点的输入组件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或其他定点仪器)、触觉输入组件(例如,物理按钮、提供触摸或触摸手势的位置和/或力的触摸屏或其他触觉输入组件)、音频输入组件(例如,麦克风)等。

在另一些示例实施例中,i/o组件750可以包括生物测定组件756、运动组件758、环境组件760或位置组件762等各种其他组件。例如,生物测定组件756可包括用于检测表达(例如,手表达、面部表情、语音表达、身体姿势或眼睛跟踪)、测量生物信号(例如,血压、心率、体温、汗水或脑波)、识别人(例如,语音识别、视网膜识别、面部识别、指纹识别或基于脑电图的识别)等的组件。运动组件758可包括加速度传感器组件(例如,加速度计)、重力传感器组件、旋转传感器组件(例如,陀螺仪)等。环境组件760可以包括例如照明传感器组件(例如,光度计)、温度传感器组件(例如,检测环境温度的一个或多个温度计)、湿度传感器组件、压力传感器组件(例如气压计)、声学传感器组件(例如,检测背景噪声的一个或多个麦克风)、接近传感器组件(例如,检测附近物体的红外传感器)、气体传感器(例如,为了安全而检测危险气体的浓度或测量大气中污染物的气体检测传感器)或可以提供与周围物理环境相对应的指示、测量或信号的其他组件。位置组件762可以包括位置传感器组件(例如,全球定位系统(gps)接收机组件)、高度传感器组件(例如,高度计或检测气压的气压计(根据气压可以导出高度))、取向传感器组件(例如,磁力计)等。

可以使用各种各样的技术来实现通信。i/o组件750可以包括通信组件764,通信组件764可操作以分别经由耦接782和耦接772将机器700耦合到网络780或设备770。例如,通信组件764可以包括网络接口组件或与网络780接口连接的其他合适设备。在另一些示例中,通信组件764可以包括有线通信组件、无线通信组件、蜂窝通信组件、近场通信(nfc)组件、组件(例如低能耗)、组件、以及经由其他模态提供通信的其他通信组件。设备770可以是另一机器或各种外围设备中的任一种(例如,经由通用串行总线(usb)耦合的外围设备)。

此外,通信组件764可以检测标识符或包括可操作以检测标识符的组件。例如,通信组件764可以包括射频识别(rfid)标签读取器组件、nfc智能标签检测组件、光学读取器组件(例如,用于检测一维条形码(如通用产品代码(upc)条形码)、多维条形码(如快速响应(qr)码)、aztec码、数据矩阵(datamatrix)、数据字(dataglyph)、maxicode、pdf417、超级码、uccrss-2d条形码、以及其他光学代码)的光学传感器)、或声学检测组件(例如,识别带标签的音频信号的麦克风)。此外,可以经由通信组件764来导出各种信息,例如经由互联网协议(ip)地理位置的位置、经由信号三角测量的位置、经由检测可以指示特定位置的nfc信标信号的位置等等。

传输介质

在各种示例实施例中,网络780的一个或多个部分可以是自组织网络、内联网、外联网、虚拟专用网(vpn)、局域网(lan)、无线lan(wlan)、广域网(wan)、无线wan(wwan)、城域网(man)、互联网,互联网的一部分、公共交换电话网络(pstn)的一部分、普通老式电话服务(pots)网络、蜂窝电话网络、无线网络、网络、另一类型的网络、或两个或更多个这样的网络的组合。例如,网络780或网络780的一部分可以包括无线或蜂窝网络,并且耦接782可以是码分多址(cdma)连接、全球移动通信系统(gsm)连接或其他类型的蜂窝或无线耦合。在该示例中,耦接782可以实现各种类型的数据传输技术中的任何一种,例如单载波无线电传输技术(1xrtt)、演进数据优化(evdo)技术、通用分组无线电服务(gprs)技术、gsm演进增强数据速率(edge)技术、包括3g的第三代合作伙伴计划(3gpp)、第四代无线(4g)网络、通用移动电信系统(umts)、高速分组接入(hspa)、全球微波接入互操作性(wimax)、长期演进(lte)标准、由各种标准设置组织定义的其他标准、其他远程协议或其他数据传输技术。

可以经由网络接口设备(例如,包括在通信组件764中的网络接口组件)并利用多个公知的传输协议(例如,超文本传输协议(http))中的任何一个来使用传输介质通过网络780发送或接收指令716。类似地,可以使用传输介质经由耦接772(例如,对等耦接)向设备770发送或从其接收指令716。术语“传输介质”应被认为包括能够存储、编码或承载用于被机器700执行的指令716的任意无形介质,并且包括用于促进该软件的通信的数字或模拟通信信号或其他无形介质。传输介质是机器可读介质的实施例。

下面的编号示例是实施例。

1、一种搜索系统,包括:

列表项数据库,包括多个列表项;

搜索引擎,被配置为响应于第一搜索查询生成第一搜索结果,所述第一搜索结果包括所述多个列表项中的一个或多个;

搜索结果修改器,被配置为接收对所述第一搜索结果的第一列表项的选择,对所述第一列表项的所述选择指示对所述第一列表项缺乏兴趣;以及

偏好数据库,被配置为响应于所述第一列表项的所述选择而存储所述第一列表项的标识符;

所述搜索引擎被配置为响应于所述第一搜索查询之后的第二搜索查询生成第二搜索结果,所述第二搜索结果包括所述第一列表项;以及

所述搜索结果修改器被配置为基于存储在所述偏好数据库中的所述第一列表项的标识符来修改所述第二搜索结果,以较不显著地显示所述第二搜索结果中的所述第一列表项,并提供修改后的第二搜索结果以供显示。

2、如示例1所述的搜索系统,所述搜索结果修改器被配置为通过将所述第二搜索结果中的所述第一列表项降级到所述第二搜索结果内较不显著的位置来修改所述第二搜索结果,以较不显著地显示所述第一列表项。

3、如示例1所述的搜索系统,所述搜索结果修改器被配置为通过从所述第二搜索结果中移除所述第一列表项来修改所述第二搜索结果,以较不显著地显示所述第一列表项。

4、如示例1所述的搜索系统,所述搜索结果修改器被配置为基于对所述第一列表项的所述选择来修改所述第一搜索结果,以较不显著地显示所述第一搜索结果中的所述第一列表项,并且提供修改后的第一搜索结果以供显示。

5、如示例1所述的搜索系统,所述搜索结果修改器被配置为较不显著地显示所述多个列表项中的第二列表项,所述显示基于与所述第一列表项的特征对应的所述第二列表项的特征。

6、如示例5所述的搜索系统,所述搜索结果修改器被配置为:按照与所述第二列表项的特征和所述第一列表项的特征的对应关系有关的量,较不显著地显示所述第二列表项。

7、如示例5或示例6所述的搜索系统,搜索结果修改器被配置为接收对特征的选择。

8、如示例5至7中任一项所述的搜索系统,所述特征包括价格、大小、颜色、品牌、作者、关键词、域、通用资源定位符、创建者、创建日期、修改日期或出版日期中的至少一个。

9、如示例1至8中任一项所述的搜索系统,所述偏好数据库被配置为将所述第一搜索查询与所述第一列表项的标识符相关联地存储,并且所述搜索结果修改器被配置为基于对应于所述第一搜索查询的所述第二搜索查询并且基于所述第一列表项的标识符与所述第一搜索查询的相关联存储,较不显著地显示所述第二搜索结果的第二列表项。

10、如示例1至9中任一项所述的搜索系统,所述偏好数据库还包括指示列表项特征的至少一个偏好指示符,并且所述搜索结果修改器被配置为基于所述第二搜索结果中不同于所述第一列表项的第二列表项具有所述列表特征,较不显著地显示所述第二列表项。

11、如示例1至10中任一项所述的搜索系统,还包括:

列表项反馈处理器,被配置为接收与所述第一列表项对应的反馈信息,并且将所述反馈信息提供给创建所述第一列表项的实体,所述反馈信息包括选择所述第一列表项的原因。

12、如示例1至11中任一项所述的搜索系统,所述多个列表项包括用于多个待售物品中的每一个的列表项。

13、如示例1至12中任一项所述的搜索系统,所述多个列表项包括用于多个待售物品中的每一个的列表项。

14、如示例1至13中任一项所述的搜索系统,所述多个列表项包括用于多个网页中的每一个的列表项。

15、一种方法,包括:

响应于第一搜索查询生成第一搜索结果,所述第一搜索结果包括多个列表项中的一个或多个;

接收对所述第一搜索结果的第一列表项的选择,对所述第一列表项的所述选择指示对所述第一列表项缺乏兴趣;

响应于接收到对所述第一列表项的所述选择而存储所述第一列表项的标识符;

响应于所述第一搜索查询之后的第二搜索查询生成第二搜索结果,所述第二搜索结果包括所述第一列表项;

使用机器的至少一个硬件处理器,基于所存储的所述第一列表项的标识符修改所述第二搜索结果,以较不显著地显示所述第二搜索结果中的所述第一列表项;以及

提供修改后的第二搜索结果以供显示。

16、如示例15所述的方法,修改所述第二搜索结果包括将所述第二搜索结果中的所述第一列表项降级到所述第二搜索结果内较不显著的位置或者从所述第二搜索结果中移除所述第一列表项。

17、如示例16所述的方法,还包括:

接收与所述第一列表项对应的反馈信息,所述反馈信息包括选择所述第一列表项的原因;以及

将所述反馈信息提供给创建所述第一列表项的实体。

18、一种系统,包括:

列表项数据库,包括多个列表项;

至少一个硬件处理器;以及

存储有指令的存储器,所述指令当由所述至少一个硬件处理器执行时,使得所述系统执行包括以下各项的操作:

响应于第一搜索查询生成第一搜索结果,所述第一搜索结果包括所述多个列表项中的一个或多个;

接收对所述第一搜索结果的第一列表项的选择,对所述第一列表项的所述选择指示对所述第一列表项缺乏兴趣;

响应于接收到对所述第一列表项的所述选择而存储所述第一列表项的标识符;

响应于所述第一搜索查询之后的第二搜索查询生成第二搜索结果,所述第二搜索结果包括所述第一列表项;

基于所存储的所述第一列表项的标识符修改所述第二搜索结果,以较不显著地显示所述第二搜索结果中的所述第一列表项;以及

提供修改后的第二搜索结果以供显示。

19、如示例18所述的系统,所述操作还包括:

基于对所述第一列表项的选择,修改所述第一搜索结果以较不显著地显示所述第一搜索结果中的所述第一列表项;以及

提供修改后的第一搜索结果以供显示。

20、如示例18所述的系统,所述操作还包括:

较不显著地显示所述多个列表项中的第二列表项,所述显示基于与所述第一列表项的特征对应的所述第二列表项的特征。

21、一种承载机器可读指令的机器可读介质,所述机器可读指令当由机器的至少一个处理器执行时,使所述机器执行如示例15至17中任一项所述的方法或使所述机器被配置为如示例1至14或18至20中任一项所述的系统。

语言

在整个说明书中,复数实例可以实现如单个实例所描述的组件、操作或结构。虽然一个或多个方法的各个操作被示意和描述为分离的操作,但是各个操作中的一个或多个可以同时执行,并且无需按所示顺序执行操作。结构和功能作为分离的组件呈现

示例配置可以实现为组合结构或组件。类似地,被示为单个组件的结构和功能可以被实现为分离的组件。这些和其他变型、修改、添加和改进落入本主题的范围内。

尽管已经参考具体示例实施例描述了本发明主题的概述,但是在不脱离本公开的示例实施例的更宽范围的情况下,可以对这些实施例进行各种修改和改变。本发明主题的这些示例实施例在本文中可以单独地或共同地由术语“发明”提及,以仅仅为了方便,并且不旨在自动地将本申请的范围限制为任何单个公开或发明构思(如果事实上公开了一个以上)。

充分详细地描述了本文示出的示例实施例以使本领域技术人员能够实践所公开的教导。可以利用其他实施例并根据这些实施例导出其他实施例,从而可以在不脱离本公开的范围的情况下做出结构和逻辑上的替换和改变。因此,该“具体实施方式”不应当看做是限制意义,并且各种实施例的范围仅通过所附权利要求以及权利要求的等同物的全部范围来限定。

可以为本文描述的资源、操作或结构提供复数实例作为单一实例。另外,各种资源、操作、模块、引擎和数据存储之间的边界在某种程度上是任何的,并且在具体说明性配置的上下文中示出了特定操作。设想了功能的其他分配,并且这些分配可以落入本公开的各种实施例的范围内。一般来说,在示例配置中作为分离资源呈现的结构和功能可以被实现为组合的结构或资源。类似地,作为单个资源呈现的结构和功能可以被实现为分离的资源。这些和其他变型、修改、添加和改进落入由所附权利要求表示的本公开的实施例的范围内。因此,说明书和附图应当被看做说明性的而不是限制意义的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1