用于分析用户的Web历史的系统和方法

文档序号:6567626阅读:278来源:国知局
专利名称:用于分析用户的Web历史的系统和方法
技术领域
本发明通常涉及搜索和浏览计算机网络系统的领域,特别是涉及 用于使用用户信息来定制用户的搜索和浏览环境的系统和方法。
背景技术
搜索引擎通常响应由用户提交的搜索查询提供来自互联网(或内 联网)可被快速扫描的索引文档源。随着经互联网可访问的文档的数 量增加,匹配特定查询的文档数量也可能增加。然而,从用户的观点 看,并非与该查询匹配的每一文档均同样重要。用户可能被搜索引擎 返回的庞大文档量淹没,除非基于与用户查询的相关度来排序文档。 排序文档的一种方法是PageRank(网页排名)算法,在S.Brin和L.page 的文章"The Anatomy of a Large-Scale Hypertextual Search Engine"(第 七次国际万维网会议录,布里斯班,澳大利亚)和美国专利号 No.6,285,999中有全面的描述,二者内容在此引入作为背景信息。
随时间流逝,用户将会完成某种搜索查询的历史,所检查结果, 所点击的广告以及反映用户偏好和兴趣的其他各种浏览活动。通常, 用户可能有兴趣检查用户的这种以前的活动。因此期望能够允许用户 使用以前的活动来增强用户的搜索和浏览体验。

发明内容
根据本发明的一些实施例,用于分析用户的历史活动的方法和系 统包括识别用户的历史活动的一部分以及由该部分来识别第一会话和 第二会话。对每一个会话,识别一个或多个分组。将第一会话中的所 识别的分组与第二会话中的所识别的分组相关联。


结合附图和本发明的下述详细描述,将更清楚地理解本发明的上 述方面以及另外的方面,其中,相同的参考数字表示几个附图中的相 应组件。
图1示例说明根据本发明的一些实施例的客户机-服务器网络环境。
图2描述根据本发明的一些实施例,用于接收和存储信息的过程。 图3描述根据本发明的一些实施例,用于接收订阅信息的过程。 图4描述根据本发明的一些实施例,用于接收历史或简档编辑信 息的过程。
图5描述根据本发明的一些实施例,数据结构中的用户记录。 图6描述根据本发明的一些实施例,用于处理历史搜索査询和将 信息与历史日志进行匹配的过程。
图7描述根据本发明的一些实施例,用于处理历史搜索查询的过程。
图8A描述根据本发明的一些实施例,呈现用户的先前历史的一种
方法的示例性屏幕截图。
图8B描述根据本发明的一些实施例,呈现用户的先前历史的另一
种方法的示例性屏幕截图。
图9描述根据本发明的一些实施例,用于处理搜索查询的过程。 图IO描述根据本发明的一些实施例,呈现用户的先前历史的一种
方法的示例性屏幕截图。
图11描述根据本发明的一些实施例,在某时间段上的用户的活动
的图形显示的示例性屏幕截图。
图12描述根据本发明的一些实施例,创建在某时间段上的用户的
活动的图形显示的过程。
图13描述根据本发明的一些实施例,识别喜好集的过程。 图14描述根据本发明的一些实施例,修改排名值的过程。 图15A描述用于根据本发明的一些实施例,将偏好位置的用户集
与另一位置集结合的过程。
图15B描述根据本发明的一些实施例,用于创建组合偏好位置集 的过程。
图16描述根据本发明的一些实施例,用于管理浏览信息的多个源 的过程。
图17示例说明根据本发明的一些实施例的客户机系统。 图18示例说明根据本发明的一些实施例的服务器系统。
具体实施例方式
允许用户可以搜索和/或浏览用户过去的搜索和/或浏览活动,以及 使用那些过去的活动来增强搜索结果集,以此来增强用户的计算环境。 一些实施例与用户信息数据库中的用户活动的收集和存储有关。在一
些实施例中,活动(activity)可以是各类别型用户活动的一个或多个, 包括但不限于把搜索查询提交给搜索引擎,从搜索引擎选择返回的 结果(如通过点击),从搜索引擎选择与这些结果一起返回的各种广 告,选择在搜索结果页上呈现的其他信息项,浏览各种网页或位置, 点进所浏览页面上的广告,查阅产品评论和经多种不同方式监视的其 他用户浏览活动,或与各种客户机应用有关的其他活动,诸如(但不 限于)即时消息传递、聊天室参与、电子邮件管理、文档创建和编辑, 或任何泛化的归档活动(诸如统称为"先前活动"的活动)。根据一 些实施例,使用所收集的历史来创建一个或多个导出的信息段。
随着用户历史信息的创建(以及当可用时还有导出信息),可以 用任意多种方式检査信息,并且还可以使用历史信息来修改用户的搜 索和/或浏览体验。根据一些实施例,使用用户的先前活动来识别相对 于某些位置的用户偏好(例如网站、网络上的文档等等)。使用这些
偏好来创建用于该用户的排序的偏好位置集。在一些实施例中,可以 共享用户的偏好位置和/或与一个或多个其他用户合并。在一些实施例
中,可以图示地显示在指定时间段期间的用户的先前活动。在一些实 施例中,使用用户的先前活动来修改从文档库返回的搜索结果集。在 一些实施例中,可以使用用户的先前活动来修改来自搜索引擎的结果。 例如,在搜索结果的顺序中,可以把用户先前已经访问过的结果向前 移。在一些实施例中,相对于用户的先前活动而应用的技术可以应用 于其他类型的活动。
图1示例说明根据本发明的一些实施例的系统100,以及表示将在 下面的详细论述中引用的各种功能组件。系统100可以包括一个或多
个客户机102。每一客户机102具有客户机助理104、客户机应用106 和客户机存储器108。客户机102可以是用来可启用(enable)上述活 动的多种设备中的任何一个(例如计算机、互联网信息站、个人数字 助理、蜂窝电话、游戏设备、台式计算机、膝上型计算机)。客户机 102连接到通信网络110。通信网络IIO将客户机102连接到搜索系统 112。搜索系统112包括连接到通信网络110的查询服务器114、用户 信息数据库116、其他数据库117和查询处理控制器118。
查询服务器114包括均互连的客户机通信模块120、查询接收、处 理和响应模块122、用户信息处理模块124、偏好位置模块126和历史 模块128。客户机通信模块120将查询服务器114连接到通信网络110 以及使得可从通信网络110接收通信以及将通信提供给通信网络110 界限,用于客户机102或其他目的地。査询接收、处理和响应模块122 主要负责接收搜索查询、处理它们,并且经客户机通信模块120将应 答返回给客户机102。偏好位置模块126帮助确定用于用户的偏好位置 集,在一些实施例中,可能基于把用户的偏好位置与用于一个或多个 用户或组的偏好位置组合。历史模块128帮助允许用户搜索和/或浏览 用户的先前活动,以及能提供搜索结果或仅浏览,或组合来自更通用 搜索的其他结果。在一些实施例中,历史模块128基于用户的历史来 调整搜索结果的顺序。用户信息处理模块124帮助访问、更新和修改 用户信息数据库116。用户信息数据库116将有关上述用户活动的各种 信息存储在用户记录和/或客户机记录中。另外,用户信息数据库116 可以基于用户的活动来存储有关用户的导出信息。其他数据库117包 括与查询服务器114中的各种模块互连的其他数据库,诸如消息数据
库(电子的或其他的等),以及用户创建的文档数据库(例如由字处 理程序、电子表格程序或其他各种应用创建的文档)。
在一些实施例中,更少和/或另外的模块、功能或数据库包括在搜 索引擎110中。作为搜索引擎110的一部分,图1中所示的模块表示 在示例性实施例中执行的功能。
查询处理控制器118连接到倒排文档索引130、文档数据库132和 查询高速缓存134。高速缓存134可以包括组件,诸如索引,其功能是 定位高速缓存中的缓存结果条目。倒排文档索引130和文档数据库132 有时被统称为文档数据库。在一些实施例中,"搜索文档数据库"是 指搜索倒排文档索引130以识别与特定搜索查询或词语(term)相匹配 的文档。
尽管图1描述离散的各块,但该图是作为本发明的一些实施例的 功能描述,而不是功能要素的结构描述。本领域的技术人员能够理解, 实际实现可让这些功能要素在各种组件之间组合或拆分。例如,用户 信息数据库116可以是查询服务器114的一部分。在一些实施例中, 用户信息数据库116可以使用一个或多个服务器实现,其主要功能是 存储和处理用户信息。类似地,文档数据库132可以实现在一个或多 个服务器上,其主要目的是存储各种文档。此外,图1中的一个或多 个框中可以实现在设计成提供所述功能的一个或多个服务器上。尽管 这里的描述涉及在客户机102中实现的某些特征和在查询系统112中 实现的某些特征,但本发明的实施例不限于这些特性。例如,在此描 述的作为査询系统112 —部分的特征也能在客户机中整体或部分地实 现,反过来也是如此。
图2示例说明可以用在本发明的一些实施例中的过程200,用于监 视和/或记录用户的各种活动。首先,可通过各种方法的任何一种监视 (202)用户的活动,诸如通过整体或部分设计的、在客户机102中本
地驻留的程序来侦听或确定用户的活动(例如客户机助理104)。这种
程序也可以是客户机应用106的一部分(例如浏览器、电子邮件程序、 即时消息传递程序)或可用作客户机应用106的插件(例如从各种在 线源提供)。监视也能结合在远离客户机102的设备上运行的应用来 实现。例如,相对于所提供的特定服务(诸如搜索引擎或基于其他Web 或服务器的应用),服务器端程序可以接收全部或部分用户的活动。 例如,服务器方的组件可以记录在痩客户机型设备上出现的活动。将 用户被监视的活动从监视组件(例如客户机助理104) (204)发送到 处理组件(例如搜索系统112) (206)。在一些实施例中,监视组件 和处理组件可以位于相同设备中。在这些情况下,发送和接收是可选 的。
确定源标识符(210)来识别所接收的用户活动的源,从而可以与 用户信息数据库(例如用户信息数据库116)中可能存储的适当标识符 相关联。标识符可以与用户和/或客户机应用关联。在一些实施例中, 客户机应用标识符(例如cookie值)与该信息一起发送来识别客户机 助理104的特定实例。在一些实施例中,可以经与登录服务有关的用 户标识符(ID)来识别用户。在一些实施例中,搜索引擎服务允许用 户将一个或多个标识符彼此关联(例如用户可以将客户机助理104的 一个或多个实例与用户标识符关联)。在这些实施例中,用户能使用 多个客户机助理104 (例如一个在家一个在办公室),需要或不需要登 录到注册服务。
然后确定用户信息的数据类型(218),数据类型表示所接收的用 户的事件活动的类型。例如,在一些实施例中,数据类型能是下述的 一个或多个,但不限于提交给搜索引擎的查询、提交给Web服务的 请求、由搜索引擎提供的来自结果页的搜索结果,或对这些搜索结果 的选择(例如经点击);广告显现(即,特定广告是否呈现给用户); 在以各种方式诸如在内容显示上呈现或与其关联的方式呈现的广告上 的点击(例如但不限于,搜索结果页、电子邮件消息显示、即时消息
显示,或可以呈现或关联广告的其他内容);特定用户已经与内容关 联的信息(例如用于一个或多个査询的注释和/或标记、Web页、Web 位置、链接、消息、文档或其他内容);产品评论;或可以被监视的 任何其他用户活动或事件(例如用户的浏览活动、即时消息传递活动、 聊天室活动、与各种应用诸如Word处理的交互等等)。
在一些实施例中,为用户提供以个人或集体的方式有选择订阅各 种数据类型中的每一种的机会。确定用于所识别数据类型的用户订阅 (subscription)信息(220)。如果用户不订阅在218确定的类型,则 处理可停止。例如,如果用户不订阅用于广告点进的数据类型(即用 户已经表示用户不想记录这类别型信息),那么如果在218确定了这 种数据类型,那么此时处理将停止。在一些实施例中,如果用户还未 表示订阅喜好,或如果无订阅信息存在,那么识别缺省的订阅值。在 一些实施例中,这种缺省订阅简档保持增加而不是减少的有关用户私 密性的量(例如不存储信息)。在一些实施例中,用户可以订阅和/或 不订阅来读取和/或写入特定数据类型。例如,用户可以订阅来读取(即 已经存在的信息可以由各种应用读取,诸如确定导出信息的那些), 但不订阅写入(即可以不记录新信息)。在这种情况下,先前信息将 由各种应用(例如简档确定、搜索排名、导出数据)访问,但将不记 录新事件。
可选地,根据本发明的一些实施例,系统的一个或多个部分可以 提供相对于用户活动的监视和/或记录的"打盹"功能。基于某些标准, 打盹功能使用户可禁用(disable)用户活动的处理和/或记录。作为替 换,打盹功还可一起禁止用户活动的监视。在一些实施例中,打盹功 能在可以在由系统提供的时间段、从提供给用户的列表中选择的时间 段或由用户手动输入的时间段(例如5分钟、2小时等等)内禁用用户 活动的处理(或监视)。在一些实施例中,用户可以设置在将来恢复 处理(或监视)的时间(例如下一日、下次启动应用例如浏览器时)。 在一些实施例中,可设置处理(例如监视)在用户的活动或非活动的时段后恢复。本领域的技术人员将容易想到其他可能性。打盹功能可
在客户机102、在客户机102、部分在客户机102以及部分在搜索系统 112中实现。
在一些实施例中,打盹功能集成到订阅条件中。例如,在打盹期 间,用于特定数据类型的打盹条件可以实现为订阅条件的切换。艮p, 在打盹期间,如果用户先前订阅了数据类型,则该用户可临时不订阅 该数据类型。在一些实施例中,用户可以打盹如上所述的任何或所有 订阅选项(即读取和/或写入任何数据类型)。因此,在一些实施例中,
用户选择打盹将导致在打盹时段中在220识别的订阅条件的改变。
在一些实施例中,可以使用过滤器来防止记录某些事件,尽管这 些事件是订阅数据类型(222)的一部分。例如,过滤器可以识别属于 特定主题或类别信息的事件(与数据类型无关),以及防止进一步处 理所述事件(如与成人内容有关的事件)。在一些实施例中,过滤器 标准可以由系统自动提供,或根据来自用户的输入确定,或是两者的
妙A $口 PI o
如果对所确定的数据类型启用了订阅,并且不过滤事件,则更新 数据结构(例如用户信息数据库116)或在适当时增加新信息(224)。
在一些实施例中,从存在于用户信息数据库116中的其他信息(例 如在206接收的数据),导出与用户有关并存储在用户信息数据库116 中的一些信息。导出的信息值可以依赖于来自一种或多种数据类型的 一个或多个事件。如果确定一个或多个导出的信息值依赖于在206所 接收的信息的数据类型的全部或部分或从中导出,使用新信息可再次 导出受影响的导出信息值(226)。例如,在一些实施例中,根据用户 提交给搜索引擎的搜索查询的检查,确定用户简档的一个或多个部分 (例如类别的简档或对用户有用的相关权重)。接收新査询导致再次 导出受影响的简档信息以把新接收的査询信息考虑在内。在一些实施
例中,接近实时地(例如接收后立即)导出这种导出信息。在一些实 施例中,定期地(例如每小时、每夜、或每周)导出导出信息。在一 些实施例中,什么时间导出信息依赖于特定导出值本身(例如较之其 他值更频繁地导出对新信息更敏感的值)。在一些实施例中,其他触 发器可能导致重新确定(例如用户启动的动作,系统删除旧事件或导 出信息)。
在一些实施例中,用户订阅信息的变化将影响导出信息。在一些 实施例中,从已订阅至未订阅的订阅条件的变化导致与该数据类型有 关的所有信息不可用。因此,在没有该信息的情况下,重新导出所有 导出信息。在一些实施例中,从己订阅到未订阅的订阅条件的变化防 止该数据类型的新信息影响所导出值(在未订阅期间),但不导致在 订阅变化前的信息不可用。因此,导出的信息值将保持其取值(保持 程度依赖过去的但现在仍然可用的值)。在一些实施例中,从未订阅 到已订阅的订阅条件的变化导致与该数据类型有关的所有信息再次可 用。因此,利用可用信息可重新导出所有导出信息。在一些实施例中, 从已订阅到未订阅的订阅条件的变化导致与该数据类型有关的所有信 息永久不可用。
图3描述用于实现这些实施例的示例性过程300。接收订阅信息,
表示用户订阅的修改(302)。确定特定数据类型(304),然后改变 用于该数据类型的订阅条件(305)。如上所述,订阅条件能影响该数 据类型的用户信息数据库116的读出和/或写入。确定以某种方式(直 接或间接)依赖于该数据类型的任何导出信息值(306)。然后,基于 更新信息,再次导出一个或多个这些受影响的导出信息值。在一些实 例中,订阅变化将导致从值的导出删除数据类型(即,在没有该数据 类型的情况下重新计算导出值),以及在一些实例中,订阅信息的变 化将允许一个或多个数据类型添加在导出中(即,利用该数据类型重 新计算导出值)。根据订阅信息,修改与该数据类型有关的可用性条 件(310)。在一些实施例中,将与用户已经订阅的数据类型有关的事
件维持在信息数据库116中。当用户未订阅该数据类型时,可用性条 件防止所选应用程序(诸如搜索某些数据的程序和确定所导出信息值 的程序)存取该数据类型。
在一些实施例中,用户能添加、修改或删除在数据类型之内或跨 各数据类型的一个或多个离散事件或信息段,或与用户有关的其他信 息。例如,用户可以从用户历史删除搜索查询。在另一例子中,用户 可以提供更新的简档信息(例如提供新的感兴趣领域、删除感兴趣领 域,或修改与特定感兴趣领域有关的重要性值)。在另一例子中,在 一些实施例中,用户可以提供或修改与特定项(例如查询、统一资源 定位符("URL")或站点、广告、电子邮件、产品评论等等)有关 的排名值。在一些实施例中,删除事件导致删除其他事件。例如,在 一些实施例中,删除查询导致删除与该查询有关的任何结果点击或广 告点击。在一些实施例中,用户可以删除相关事件的组(例如按主题、 相关查询集、相关结果点击集等等关联的事件)。然而,在确定一个 或多个导出值,可以全部或部分地使用受用户动作影响的事件和/或信 息(例如过去的查询和/或结果点击可以用来确定用户的简档或偏好位 置集)。在一些实施例中,事件和/或信息的修改或删除触发导出信息 的重新导出。
图4描述用于对更新用户信息(或者历史、简档信息或其他)起 作用的示例性过程400。当识别用户信息的编辑时(402),根据所接 收的信息,识别和修改任何直接受影响的事件和/或值(404)。识别任 何受影响的导出信息值(406)以及根据修改信息,再次导出该导出信 息值(408),在与上述类似的时间点(例如定期,接近实时或离线成 批),能重新导出受影响的导出信息。
图5描绘根据本发明的一些实施例的来自用户信息数据库116的 示例性用户记录500。在一些实施例中,用户信息数据库116包含图5 中所述的要素的子集或超集。用户信息数据库116包含将用户信息数
据库116中的某些信息与特定用户或用户标识符关联的用户标识符
502。在一些实施例中,用户标识符502与客户机应用的特定实例关联。 在一些实施例中,用户标识符与用户关联。能与用户关联的一些信息 包括基于事件的数据504、导出数据506和额外数据508。基于事件的 数据504包括一个或多个事件,分别具有与其相关联的数据类型。在 一些实施例中,基于事件的数据包括 一个或多个查询510、 一个或多 个结果点击512 (即用户所点击的存在于搜索结果集中的结果)、 一个 或多个广告点击514 (即用户所点击的呈现给用户的广告)、 一个或多 个浏览数据516(例如用户访问的位置,例如URL,用户浏览的图像), 以及一个或多个产品事件517 (例如搜索产品评论)。每一基于事件的 数据504包括与该事件有关的一个或多个要素。例如,在一些实施例 中,基于事件的数据504中的事件包括eventlD518和时间戳520的任 何一个或两者。在一些实施例中,eventlD518是与可以由搜索系统分 配的与特定事件有关的唯一标识符(例如64位二进制数)。时间戳518 是表示创建基于事件的数据504中的特定事件记录或发生特定事件的 日期和/或时间的值(例如64位二进制数)。
在一些实施例中, 一个或多个查询事件510、 一个或多个结果点击 512、 一个或多个广告点击514和一个或多个产品事件517包括查询部 分520,其包括与所记录事件有关的零个或多个查询词语。在一些实施 例中,所述查询部分表示与事件有关的查询串(例如何种查询产生用 户点进的结果)。在一些实施例中,查询部分520包括与结果点击或 广告点击有关的指针或标识符(例如eventID)。在一些实施例中,查 询部分520可以另外识别"相关查询"。例如,相关查询可以是与包 含拼写错误的初始查询有关的查询。在一些实例中,更期望将事件与 改正的查询相关联,而不是与包含拼写错误的查询相关联。在一些实 施例中,搜索系统112可以基于用户输入查询自动生成"相关查询"。
在一些实施例中, 一个或多个结果点击512、 一个或多个广告点击 514和一个或多个浏览数据516包括contentID 522,用于标识与特定事
件相关联的内容。例如,在一些实施例中,广告点击事件514中的 contentID 522表示特定广告的唯 一标识符以及在 一些实施例中, contentID 522识别与广告有关的着陆页面。对结果点击512, contentID 能表示已经由用户点击的URL。对浏览事件516, contentID 522能是 用来识别浏览事件的位置的内容标识符(例如URL、数据位置或其他 类似的标识符)。在一些实施例中,contentID 522可以是识别文档库 中文档的文档标识符。
在一些实施例中,基于事件的数据具有历史得分525。事件历史得 分525可以用各种不同的方法或方法组合来计算。例如,历史得分525 可以是根据自从记录该事件以来已经过去的时间长度定期修改的基于 时间的排名值。在一些实施例中,历史库的值随着从记录开始的时间 增加而减小。在一些实施例中,可以删除那些其基于时间的排名值低 于某个阈值的事件数据。能在各种时间点定期地确定和重新确定这些 值。在一些实例中,如上所述,删除一个或多个事件触发重新确定一 个或多个导出值。在一些实施例中,不是在批量或离线处理期间来确 定,而是响应请求来确定历史得分525。
在一些实施例中,浏览事件516表示与查询无关而是与一些其他 用户活动有关的特定浏览事件。该其他用户活动能在信息字段526中 识别。例如,在电子邮件会话期间呈现和点进广告(例如通过Google Gmail服务)将不一定具有与其有关的查询,但它仍然对跟踪用户的广 告点进活动有用。因此,在信息字段526中识别用户事件和相关活动。 在一些实施例中,信息字段526存储与事件有关的排名值。该排名值 能是系统生成、用户创建或用户修改(例如用于URL的PageRank,由 用户分配给该事件的值)。用户活动的其他例子包括但不限于即时消 息传递、字处理、聊天室参与、软件应用执行和互联网电话呼叫。
在一些实施例中,导出数据506包括一个或多个信息字段528,包 含从基于事件数据504导出的信息。例如在一些实施例中,信息字段
528表示由一个或多个用户査询事件510、结果点击事件512、广告点 击事件514和浏览事件516生成的用户简档。例如,通过检查各种事 件的一个或多个,可以创建用户简档,表示在各种主题类别中感兴趣 的级别(例如Open Directory Project主题的加权集(http:〃dmoz.org))。
在一些实施例中,导出数据506包括根据某个用户社区中一个或 多个用户整体或部分导出的数据。例如,可以导出用于该用户社区的
用户简档。
在一些实施例中,导出数据506包括与特定contentID 534有关的 一对或多对得分532。得分532表示分配给与contentID 534(例如网页) 有关的内容的导出得分。得分532可基于多种不同因素的一个或多个。 在一些实施例中,得分532结合在某个时间段内用户在该contentID点 击的次数(根据搜索查询和/或浏览活动,可以包括点进数)。在一些 实施例中,得分5 3 2包含用户查看该内容所用的估计时间(停留时间)。 在一些实施例中,得分532包含自用户上次浏览该内容以来的时间。 在一些实施例中,得分532可以基于用户活动来修改。在一些实施例 中,如果为用户呈现一系列搜索结果中的内容,但不能从结果页选择 该内容,则对得分532有负面影响。在一些实施例中,当用户访问与 内容类似的位置或页面或点击结果时,则对得分532有正面影响。通 过各种公知的技术(例如文本分类器、ODP分类、链接结构、URL、 编辑间隔等等),可确定相似性。在一些实施例中,将站点定义为逻 辑相关页面组,或物理相关页,诸如属于相同URL或相关各URL的 页面。在一些实施例中,得分532包含对其呈现该内容的用户的过去 查询数(例如将特定内容呈现给该用户的较高次数与较高得分532关 联)。在一些实施例中,得分532包含对其呈现相关内容的用户的过 去查询数(例如,根据用户查询结果,相关内容呈现给该用户的较高 次数与较高得分532关联)。在一些实施例中,导出数据506包括累 计得分。例如,相同查询可以多次由用户生成,以及在一些实施例中, 每一发生将具有不同的eventID。因此,在一些实施例中,对出现多次
的事件,保持总得分。通过各种不同的方法,计算总得分。能将多个 事件和总得分的参考值保持在导出数据506中。
在一些实施例中,额外数据508包括关于用户的更多信息,这些 信息不一定表示在基于事件的数据504或导出数据506中(例如在一 个或多个信息字段530)。例如,在一些实施例中,用户可以用可由用 户使用的关键字注释一个或多个URL、网页或搜索査询以提供有关 URL、网页或查询的某些信息。例如,用户可以添加表示特定URL有 用或属于用户感兴趣的某些信息的关键字。在一些实施例中,可以相 对于注释、单独或结合其他信息来运行用户搜索。信息字段530可以 识别其所属的注释和信息(例如事件标识符、内容标识符)。在一些 实施例中,用户可以表示用户感兴趣的某些主题,这些主题可以存储 在信息字段530 (例如简档部分)中。在一些实施例中,用户可以在信 息字段530中表示用于特定事件(例如查询、URL、站点、广告)的 用户修改的排名值。在一些实施例中,用户可以在信息字段530中表 示将对照来自另一用户的优选内容集应用的加权函数、用户社区或用 户感兴趣的特定主题。能使用这种加权函数来将用户优选内容集与来 自另一用户的优选内容集、用户社区或与用户感兴趣的特定主题有关 的内容集结合。在一些实施例中,与特定的基于事件的数据有关的信 息可以位于"其他"字段524中并与基于事件的数据504中的各个事 件一起存储。在一些实施例中,额外数据508包括一对或多对 querylD538和识别哪一结果与特定査询有关的结果540(例如与用户查 询有关的contentID)。在一些实施例中,结果540表示将哪些结果呈 现/显示给用户。
用户信息数据库116 (连同其他数据库117)能用来提供多个不同 的特征。例如,在一些实施例中,用户信息数据库116中的信息允许 用户对用户的先前历史执行搜索或浏览(例如查询、广告)。图6描 述根据本发明的一些实施例用于搜索用户历史的示例性过程600。接收 搜索查询(602),包含全部或部分相对于用户历史运行的一个或多个
搜索词语。在一些实施例中,历史包括先前提交的查询。在一些实施 例中,历史包括相对于先前查询访问的文档(例如结果点击数)。另 外,在一些实施例中,历史包括这二者的组合。在一些实施例中,历 史包括其他事件,如广告点击,以及在一些实施例中不必或不直接与 特定查询有关的通用浏览信息包括在用户搜索历史中。在一些实施例 中,允许用户相对于运行该搜索的历史选择各个部分(或其组合)。
根据运行该搜索所相对的历史的部分,识别用户和用户信息数据 库116中的用户信息。可以基于包括在搜索查询中的信息,诸如来自 注册服务的cookie标识符和/或用户标识符,识别用户。在一些实施例 中,通过检查与特定用户标识符502有关的用户信息数据库116的那 些事件504来识别用户信息。在一些实施例中,检查来自导出数据506 的信息和/或额外数据508。
然后,根据感兴趣的搜索查询和数据类型,搜索相关用户信息来 查找匹配事件和/或相关事件。可以修改搜索查询(例如通过扩展、修 改、添加或删除查询词语),以识别额外的匹配信息或相关信息。可 以在某些搜索词语上执行非常公知的词干操作(包括单数词的复数形 式)。可在搜索查询中校正(添加)明显拼错的词语。通过多种非常 公知的搜索技术的任何一种来识别匹配和/或相关事件。例如,可以将 事件处理为项的矢量,并且可基于在该项矢量和由查询创建的矢量之 间的矢量距离来确定相关性,由此产生查询得分。较高查询分对应于 相关性的一种度量(例如较高的查询分表示与该查询的较高相关度)。 根据各种标准,可以排序和/或分组相关项。在一些实施例中,返回多 个事件类型(例如查询和广告),能一同可选地分组(608)。例如, 在一些实施例中,搜索产生先前查询列表和用户先前己经访问过的广 告列表。在一些实施例中,与所识别广告不同地呈现所识别查询(例 如在结果窗的不同部分中)。在一些实施例中,还返回按搜索査询结 果访问的位置并根据产生该结果的査询来分组(例如结果点击)。本 领域的技术人员将易于意识到能相对于用户信息数据库116中的任一
或所有信息,有选择地运行搜索。
可以根据各种排名标准,排序所识别的事件和Z或信息。在一些实
施例中,根据重要性因素(例如PageRank值)对URL排名。在一些 实施例中,根据先前查询匹配与所提交的査询的接近程度和相关程度 (例如通过两个查询之间的编辑距离)来排序查询。在一些实施例中, 同时使用多种排名标准。例如,当返回并同时分组査询和结果点击时, 能根据前一查询的提交距今有多近来排名査询,以及能根据它们各自 的PageRanks来排名与各种查询有关的各个结果点击。可以为用户提 供各种不同的选项,用于搜索用户历史。本领域的技术人员将易于意 识到排名和事件类型的各种组合落在本发明的实施例的范围内。例如, 下面提供各种组合。最后将排序的响应提供给客户机(612)。
图7描述根据本发明的一些实施例的用于搜索先前历史的示例性 过程700。接收历史搜索查询(702),包含一个或多个搜索词语。在 一些实施例中,还发送信息,表示将运行何种历史搜索和/或将如何呈 现结果。在一些实施例中,信息指定该搜索将相对于何种数据类型(一 个或多个)运行(诸如过去的查询、过去的广告点击、过去的广告点 击与查询、过去的浏览)。在一些实施例中,该信息指出了合成或分 组的等级以应用于返回结果。例如,査询(以及相关点击结果)能基 于特定用户会话或跨多个会话来分组(即在搜索或浏览会话内,彼此 相关的查询分组在一起)。可以由多种已知的聚类技术(例如相关词、 时间关系、与某主题有关的査询)来识别来自用户先前査询的相关查 询。同样地,能根据各种标准来分组结果点击和/或浏览事件。
然后从所接收的查询(704)识别查询相关信息。在一些实施例中, 该相关信息表示査询所属的一个或多个主题(例如,诸如在Open Directory Project (http:〃dmoz.org/)中所找到的)。在一些实施例中, 使用该查询信息来帮助从用户信息数据库116中的用户信息搜索相关 信息。例如,在一些实施例中,搜索基于主题而不是基于实际査询词
语,以及在一些实施例中,能同时使用査询词语和主题。
根据一些实施例,将浏览会话定义为有界时间段,在该时间段内 用户执行一系列相关或不相关搜索和/或浏览活动。例如,能将浏览会 话定义为天,或可能定义为两个更长无活动时段之间的搜索或浏览活 动的时段。在许多实例中,在会话期间,时间上关联的用户活动也倾 向于主题相关(例如在午饭后的一定时间段中,用户搜索有关食物中 毒的信息)。在一些实施例中,能按其他标准定义浏览会话。在一些 实施例中,特定浏览会话期间的相关査询被标识为查询会话(706)。 在本说明书中此处和其他地方,应理解到,当识别査询时,可以识别 与那些查询有关的其他事件(例如结果选择、广告选择)。另外,通 过根据可以或可以不与查询关联的其他标准(例如用户检査哪些是与 体育相关的位置),通过关联,将各种事件分组为浏览会话的一部分。 在一些实施例中,从一个浏览会话中识别的查询会话可以与识别为相 关、来自一个或多个其他浏览会话的一个或多个查询会话组合,以形 成会话组。在一些实施例中,査询会话和会话组的识别离线地发生, 并且有关查询会话和会话组的信息存储在用户信息数据库116(例如导 出数据506)中。在一些实施例中,当用户对照用户历史信息来提交搜 索查询时,发生识别。在一些实施例中,能创建分组信息并临时保存 特定时长(如一天)。频繁的会话识别和处理使得包括最近提交的査 询和其他信息。在一些实施例中,在一些固定(例如用户首次使用该 服务)或定期(例如每月)的时间点,创建初始查询会话和会话组标 识,然后基于更近的浏览活动,进行增量式修改。在一些实施例中, 类别与查询会话或会话组有关,诸如一个或多个Open Directory Project 主题。
然后识别相关査询会话或会话组(708)。在一些实施例中,通过 将搜索查询应用于全部或部分在査询会话和/或会话组中包括的信息 集,来识别相关查询会话或会话组。包括在査询会话中的信息集包括
但不限于 一个或多个查询、査询类别、事件描述、事件(例如结果
选择、广告选择)、与事件相关联的文本(例如URL文本、文本片断
等等),以及与事件相关联的内容(例如位于URL上的内容、广告的
着陆页面)。如果该查询对照其运行的查询会话的任何部分与搜索查 询有关,那么搜索会话是用于呈现给用户的候选。在一些实施例中, 当识别特定査询会话时,根据结果,所识别的查询会话所属的整个会 话组变为用于呈现给用户的候选。用于呈现的候选根据各种排名标准
排序(710)。在一些实例中,在响应增中仅提供排名最高的N个候选, 其中,N是基于各种系统特征选择的整数。排名标准能基于任意多个 因素,诸如查询会话(或会话组)中的识别信息相关度或与历史搜索 查询匹配度。排名也能基于查询会话的时间/日期值(即根据会话的日 期/时间,排序查询会话和/或会话组)。在一些实施例中,通过包括在 会话组中的最近査询会话的日期/时间值来处理会话组。
在一些实施例中,排序查询会话和/或会话组内的信息(712)。在 一些实施例中,分组事件类型,并且特定事件类型内的排序基于各种 排名标准。在一个例子中,根据与历史搜索结果的相似度来分组和排 名查询会话中的查询,以及根据URL的PageRank来分组和排名查询 会话中的结果点击。在另一例子中,根据提交查询时间的远近来排名 查询会话中的查询,并且根据基于点击的内容与历史搜索査询的相关 和/或匹配程度的查询得分来排名查询会话中的结果点击。在另一例子 中,根据由其他用户或用户社区提供的排名,排名结果点击。在一些
实施例中,通过査询会话排序会话组内的信息,其中,査询会话的排 序可以基于任意多个标准。在一些实施例中,使用上述排序技术的任 何一个,在不参考单个査询会话的情况下,排序会话组内的事件信息。 本领域的普通技术人员将易于意识到在不背离本发明的方法的情况 下,排序该信息的其他方法。在排序后,将N个最高排名结果返回给 搜索请求者(714)。在一些实施例中,以多个更小页为单位,将结果 呈现给用户,每一页单位包含总候选的子集。所述的技术易于扩展到 不包括查询的分组(例如相关位置、相关广告)。
在一些实施例中,为用户提供查看与显示给用户的各种项(例如 查询、结果、广告)有关的信息的机会。例如,用户可以选择与作为 搜索请求的一部分返回的结果有关的链接或图标(相对于文档库和/或 相对于用户的历史运行)。选择链接或图标导致系统识别和返回与该 项有关的信息。例如, 一些实施例中,为用户提供与被选项类似的其 他项。在一些实施例中,用于查询的相关信息包括在该查询前提交的 三个査询和之后的三个。在一些实施例中,选择用于相关信息的结果 点击导致产生将显示的结果的其他查询(由用户和/或其他人提交)。
图8A和8B根据本发明的一些实施例,提供查询会话和会话组的 示例性屏幕截图。参考图8A,窗口 802包括三个查询会话804、 806 和808。如图8A所示,按日期(例如日期810)分组查询会话,尽管 其他分组也是可能的。在查询会话804内,为查询部812和结果部814。 查询部812包括在查询会话期间提交的一个或多个相关查询(如上确 定)。结果部814包括用户点进的零或多个结果。结果部814也可以 包括表示用户该天访问该结果的时间的访问时间816。在一些实施例 中,查询部812包括相关历史链接818,当由用户选择时,将产生待显 示的与查询会话S04有关的零或多个查询会话。相关查询会话可以来 自査询会话804的日期或可以来自其他日期。因此,为用户提供用于 可以包括来自不同日子的查询会话的相关查询集的查询/结果历史。图 8B示例说明示例性会话组显示,其中,可以例如通过选择相关历史链 接S18而产生其一部分。如图8B所示,窗口 820包括两个会话组S22 和824。在一些实施例中,会话组822和824通常不相关。在这些实施 例中,如果它们相关,它们将在相同会话组中(确定为相关)。会话 组822包括查询部826和结果部828。查询部826包括确定相关的査询 会话中的那些查询(如上所述)。由于结果部828中的结果可以包括 在多个不同日子检查的结果,结果部828包括访问日期830,表示最后 一次访问该结果的日期。在一些实施例中,包括用户已经访问该结果 的次数。在一些实施例中,该数量包括用户所做的任何浏览。在一些 实施例中,结果部包括不与该査询会话相关但基于位置的内容而确定
相关的位置。在一些实施例中,会话组包括其他相关信息。
在一些实施例中,用户可以浏览用户的历史。来自该历史的信息 可以用任意多种方式显示。例如,用户可以按日期、按主题或按频率 显示历史。在一些实施例中,如上所述显示查询会话和/或会话组。在 一些实施例中,如上所述,按会话和/或会话组来显示相关事件组。例 如,用户历史的基于主题的显示将显示与特定主题有关的查询会话和 会话组。应该注意,上述关于搜索的技术易于应用于浏览用户历史。 例如,请求按组显示用户历史与生成所有查询组匹配的搜索类似。
本发明的一些实施例能修改那些不同于主要是用户先前活动的搜 索的用户搜索体验。图9描述用于基于在用户信息数据库116中存储 的用户历史行为来调整搜索结果集的过程。首先,由相对于文档库运
行查询的搜索引擎(904)来接收搜索查询(902)。在接收结果后(906), 根据来自用户历史的信息,调整搜索结果(908)。在一些实施例中, 调整搜索结果的顺序。在一些实施例中,搜索结果集中的用户结果的 存在或不存在受用户信息数据库116中的用户历史影响(例如可以将 存在于用户历史中的结果添加到呈现给用户的结果集)。在一些实施 例中,根据历史得分525和/或任何用户修改的结果得分调整搜索结果 的顺序。在一些实施例中,结合搜索结果得分和历史得分以及基于组 合得分,重新排序搜索结果集。
在一些实施例中,向用户提供先前访问过的位置的表示(例如URL 结果),与是否记录搜索结果无关。表示的例子包括但不限于提供有 关或接近用户先前已经访问过的单个搜索结果的可视和/或文本指示 器。在一些实施例中,指示器包括最后一次访问的日期和/或时间。在 一些实施例中,指示器包括在某一时间段内(例如三个月)用户已经 访问该网站的次数。
在一些实施例中,在搜索结果之上的区域中,显示用户先前已经
访问过的M个最高排名的结果(例如三个)。在其他实施例中,在显 示器的其他预定区域或单独的窗口中,显示这些结果。在一些实施例
中,根据各种排名标准(例如历史得分、PageRank、最后一次访问时 间、访问次数),排序M个先前访问过的位置。在一些实施例中,M 个先前访问过的位置不包括在搜索结果集内(即,从该集合删除它们 并在它们自己的区域中显示)。在一些实施例中,不在搜索结果的当 前页上的M个先前访问过的位置显示在当前页的预定区域中。前述的 另外的实施例的一些中,可以与搜索结果一起,显示査询会话和/或会 话组,并相对于图7,如上所述排序。
在一些实施例中,在搜索结果集中,对过去已经呈现给用户并且 用户已经点击的搜索结果给予更高的评价。在一些实施例中,除或代 替特定搜索结果的过去呈现和点击外,还考虑用户的浏览事件。例如, 在一些实施例中,先前由用户访问过的位置将具有提高的得分,其中, 提高的幅度与用户已经访问该位置的次数有关。相反,在一些实施例 中,在搜索结果集中,降级对先前呈现给用户但未点击的搜索结果的 评价。
在一些实施例中,不重新排序搜索结果集,但使用历史得分,诸 如历史得分52,来确定是否利用可视指示(例如彩色、高亮)提供结 果。例如,用黄色标记具有高得分的结果,以及用黄色和粗体标记具 有超高历史得分的结果。
在一些实施例中,如果用户已经访问或点击来自相关网站或网页 的结果,在排序中,把该结果在搜索结果顺序中的位置升得更高。
在一些实施例中,过去査询也会影响搜索结果顺序中的文档的位 置。例如可考虑检索(或关联)指定结果的过程查询的数量(以及它 们多久前出现等等)。例如,可提高对与大量查询有关的结果的评价。
在一些实施例中,使用用户的历史来识别另外的搜索结果。例如, 不在当前检索集中但由类似査询所检索的用户历史中的结果可添加到 搜索结果集。在一些实施例中,在与初始识别的搜索结果集不同的不 同屏幕区中,放置另外的结果。
在一些实施例中,通过建议另外的査询,调整搜索结果。例如, 建议由用户先前提交的类似查询。能以许多方式计算査询相似性(例 如编辑距离、词干操作、先前拼错字的校正、语义映射、检索文档集 的相似性。)
在一些实施例中,在相同查询会话或会话组中,根据紧接着在所 述查询的前后提交的用户历史,建议査询。
在一些实施例中,跨各文档源库来应用上述技术。例如,当用户 发出Web搜索并且在过去已经对产品评论执行了类似搜索,则为用户 提供在产品评论库运行查询的选项。在一些实施例中,呈现来自产品 评价库的最顶部结果(例如三个)。
在一些实施例中,基于各种标准和/或使用在用户信息数据库116 中可用的信息,为用户提供过滤结果的能力。例如,用户能删除先前 未查看的呈现结果。在另一例子中,用户能请求查看自用户最后一次 执行该查询或访问该结果网站以来,内容已经改变的结果。
图IO是示例说明在窗口 1002中,从用户的历史找到的结果的示 例性屏幕截图。窗口 1002包括用户输入搜索查询(例如"普林斯顿") 的査询文本框1004和用户选择开始搜索的搜索按钮1006。在两个区域 中返回结果历史区1008和主结果区1010。示例性历史区包括历史结 果1012。历史结果1012包括与结果的位置的链接1014、频率指示器 1016和日期指示器1018,分别表示用户已经访问该位置的次数和最后 一次访问的日期。在主结果区1010中,通过附带日期指示器1020,示
例说明结果中的一个。在一些实施例中,如果适当的话,在主结果区 1010中,提供一个或多个频率指示器,诸如频率指示器1016。在一些
实施例中,与一个或多个结果一起,将"相关信息"链接1022包括在 历史区1008和/或主结果区1010中。当用户选择"相关信息"链接1022 时,系统通过为用户提供与结果有关的信息来响应。在一些实施例中, 相关信息包括但不限于下述的一个或多个生成结果的查询(来自用 户和/或其他人);用于该位置的用户访问信息以及过去由该用户访问 过的类似页。
在一些实施例中,可以表示用户先前访问过的广告。在一些实施 例中,用与结果选择类似的一个或多个方式,表示这些广告,如上所 述。在一些实施例中,允许用户搜索用户的过去广告选择,与先前的 搜索查询和/或结果选择无关。
根据本发明的一些实施例,可以向用户图示地提供用户的搜索历 史。图11提供一个示例性图形显示1100。显示画面IIOO包括以时间 1104为子单位(例如天)在某时间段1102 (例如月)内搜索活动的可 视指示器,以及可视指示器的键1106。在显示1100中,与时间的子单 位有关的颜色的强度(或灰度级)对应于该子单位内的搜索活动的量 (例如较高强度表示比较低强度更多的活动)。在一些实施例中,使 用多种不同的可视特色指示器,分别表示搜索活动的特色或互斥强度 级。例如, 一种可视特色指示器将对应于等于零至100个事件的搜索 活动的排名和/或事件的加权组合,以及另一可视特色指示器将对应于 等于101至1000事件的搜索活动的排名和/或事件的加权组合等等。在 一些实施例中,在条形图中,可视特色指示器能是矩形,其高度或宽 度与搜索活动的排名有关。在一些实施例中,可视特色指示器的大小 与搜索活动的排名有关。在一些实施例中,使用不同的颜色来表示多 种可视特色指示器的每一个。本领域的普通技术人员将意识到可视显 示用户搜索活动的量的其他方法,而不背离本发明的范围(例如使用 不同颜色而不是颜色强度)。在一些实施例中,用户可以选择将生成
图形显示的数据类型或事件(例如査询、广告、结果点击、访问过的 内容位置)
在一些实施例中,用户可以通过点击用于该时间子单位的可视特 色指示器,选择和扩展用于时间子单位的可视特色指示器。这种选择 导致时间的子单位的扩展视图。在一些实施例中,选择导致将被选子 单位用作时间显示的新单位以及将新时间单位的子单位用作显示的子 单位的另一图示表示。在一些实施例中,扩展视图是用于被选时间单 位的搜索活动的列表和/或分组。例如,当被选时间单位为天时,从显 示选择该天用作扩展导致用于该天的用户搜索活动的列表和/或分组。 搜索活动能以各种不同的方式显示。例如,在一些实施例中,根据类 型,显示搜索活动(例如查询、结果选择、广告选择、产品评论、所 浏览的网页)。在一些实施例中,显示能包括用户先前历史活动的各 种显示,如上所述。
图12描述根据本发明的一些实施例用于生成用户的历史的图形表 示的过程1200。接收用于图形显示的请求(1202)和识别用户的历史 (1204),对每一时间单位(例如月)识别用于每一时间的子单位(例 如天)的事件数(1206)以及创建事件时间段(1208)。最后,将时 间段显示提供给用户(1210)。
在一些实施例中,提供图形显示历史活动量的其他方法。在一些 实施例中,通过各种标准(例如,查询相似性、内容相似性,或事件 类型),过滤用来创建图形显示的事件。换句话说,图形显示能显示 用于任意多个活动的活动量。在一个例子中,在创建显示中,选择仅 与所输入的查询相匹配和/或与所输入的査询相似的那些查询。因此, 用户能输入特定査询,以及根据图形显示可视地确定在哪些天用户在 搜索与所输入査询相类似的查询。在一些实施例中,可视指示器可以 表示某天的査询与所输入查询的匹配程度(例如用颜色)。在另一例 子中,通过事件类型过滤事件。在一些实施例中,为用户提供选择可
以显示的各种项(查询、结果、查询会话、会话组、广告、产品评论、 浏览事件)中任何一个的能力;这些选择将使用被选项来创建图形显 示,以过滤历史数据。在一些实施例中,将加权函数应用于各种事件 类型来确定用于指定时间单位的活动量。因此,在这些实施例中,活 动量和事件之间不一定存在一一对应。例如,在一个实施例中,每一 结果点进分配加权值1.0,以及每一广告点进分配加权值0.5。根据修 改的加权,代表性的活动量是累计这些事件。在一些实施例中,能将 来自其他数据库117的信息添加到可用于图形显示的信息集。例如,一 些实施例中,用户能查看与特定主题有关的电子邮件和/或消息的量。 在一些实施例中,将多个图形显示提供给用户(例如基于过滤标准的 一个,以及基于总活动的一个)。在一些实施例中,多个图形显示可 以彼此图形地对齐。
在一些实施例中,用户信息数据库116用来将偏好位置集提供给 用户。根据用户的先前访问来识别偏好位置集,并根据各种标准排序。 在一些实施例中,用户的偏好位置集包括一个或多个广告。在一些实 施例中,用户具有仅包括偏好广告的集合。用这种方式,用户不需要 记住清楚地将内容位置(例如位置、广告)区分为偏好的或喜爱的, 因为系统将隐含地识别用户的偏好位置。在一些实施例中,为用户提 供各种方式来修改单个或组排名,用于识别偏好位置类型或影响选择 和排序。在一些实施例中,可以用各种方式,将用户的偏好位置集与 其他偏好位置集,诸如来自其他用户、用户组、相关的被选感兴趣主 题或其任意组合的集合结合。在一些实施例中,为用户提供用来与其 他人共享该用户的偏好位置集的各种选项。例如,用户能选择谁或哪 一组有权访问该用户的偏好位置集。在一些实施例中,用户可以防止 将某些位置共享为用户偏好位置的一部分。在一些实施例中,为用户 提供来自另一用户的共享用户的偏好位置的请求,必须清楚地知道要 共享的位置。
图13描述根据本发明的一些实施例,用于识别偏好位置集的示例
性过程1300。首先,接收用于偏好位置的请求(1302)。识别做出该
请求的用户,以及识别用户信息数据库116中的可用记录(1304)(例 如经用户标识符502)。依据该请求所感兴趣的偏好位置的类型,从用 户信息数据库116识别相关事件(1306)。例如,用户可能对下述感 兴趣来自用户由于任何原因已经访问过的任何位置的偏好位置集; 用户已经访问过的任何广告着陆页;用户已经点击过的任何广告等等。 本领域的普通技术人员可理解,在此所述的技术很容易应用于根据在 用户信息数据库116中存储的一个或多个数据类型和事件来创建偏好 事件集。然后,根据一个或多个排名值来排序所识别的事件(1308)。 在一些实施例中,使用一个或多个下述标准来排名事件在订阅时间 段内(例如三个月)访问的频率;最后一次访问该位置的日期;位置 的重要性值(例如PageRank);用户对该位置提供的排名值;该位置 和用户简档信息间的相似性得分。在一些实施例中,按一个或多个不 同分类来分组偏好位置(例如主题、访问日期、位置、注释)。
如前所述,根据一些实施例,为用户提供浏览与优选广告相关的 位置的能力。在一些实施例中,当用户点击广告的次数超出阈值数时 (例如2),那么将广告的着陆页包括在偏好位置的列表中。在一些实 施例中,与其他类型的偏好位置不同,将与广告有关的偏好位置的列 表提供给用户(例如在显示窗的单独部分中)。在一些实施例中,与 其他类型的偏好位置一起,排名和显示与广告有关的偏好位置的列表。
在一些实施例中,当排名在浏览事件516的信息字段526中存储 的偏好位置的列表中的位置时,使用用于位置的"停留时间"值。在 一些实施例中,停留时间仅仅是用来排名偏好位置的列表的因素之一。 可以将停留时间看作是用户的位置重要性的代表(即用户在某一位置 停留或浏览时间越长,用户更可能对该位置感兴趣)。在一些实施例 中,客户机助理104根据监视用户在特定位置停留多久的用户活动, 确定停留时间值。在一些实施例中,将浏览信息传送到搜索引擎110, 由其确定停留时间值。在一些实施例中,通过查看从在结果页上点击
URL时到从该结果页点击另一结果时的时间,确定停留时间。
在一些实施例中,全部或部分使用访问得分来排名偏好位置。在 一些实施例中,对页面的每一访问,创建即时访问得分。用于页面的 总访问得分是所有即时访问得分的总和。在一些实施例中,随着访问 日期变得更久远,即时访问得分值减小。在一些实施例中,将即时得 分设置为最大得分减去某个值,其中,该值的量随自访问以来的时间 长度的增加而增加。
在一些实施例中,当用户请求偏好位置时,确定用户的排名偏好 位置集。在一些实施例中,定期(例如每夜)确定和在用户信息数据
库116中维护该集合。在一些实施例中,在首次请求时间段(例如天) 时确定该集合并在该时间段中,维护在用户信息数据库116中。在一
些实施例中,基于在确定和初始存储该集合后所接收的用户信息,逐 步地更新所存储的集合。
在一些实施例中,用户可以修改用于偏好位置的一个或多个排名
值。在一些实施例中,排名值存储在信息字段526中,或信息字段528 或530中,并且与位置相关联。在一些实施例中,用户能增加或减小 排名值。因此,根据修改的排名值,相关位置将在排名列表中上升(或 下降)。在一些实施例中,修改是临时的(例如针对当前浏览会话)。 可以为用户提供各种方式来修改排名值。在一些实施例中,用户可以 编辑表示排名值的得分。当用户从偏好位置集选择位置(或使用其他 选择方式)时,用户可以覆盖、删除或改变提供给用户的得分输入框 中的得分。在一些实施例中,用户能强制用于位置的高或低排名值, 诸如上限或下限排名值。在一些实施例中,用户可以经常访问位置, 但不期望该位置出现在偏好位置的集合中(或至少在排名列表中不出 现得非常高),在这种情况下,用户能将相关排名值设置为低。在一 些实施例中,用户修改相对于排名值应用的加权因子。加权因子能存 储在信息字段526中,或存储在信息字段528或530中,并与位置相
关联。例如,用户选择0.5值,表示用于该位置的排名值应当在排名之 前乘以0.5。在这些实施例中,用户不直接影响位置排名值的确定,而 是影响最后排名顺序。用这种方式,在不求助于用户的期望修改的情 况下,能确定用于位置的排名值,直到最后排名这些位置为止。在一 些实施例中,为用户提供滑动条,用户可使用滑动条根据需要上下调 整加权因子。
图14描述根据本发明一些实施例的用来处理用于位置的用户修改 排名的示例性过程1400。首先,用户选择内容位置(例如URL、站点、 广告)(1402),以及使用上述的任何技术,修改排名值或加权因子 (1404)。更新用户信息数据库116 (1406)来反映来自1404的信息。 对偏好位置集的任何随后的请求,将考虑这种更新信息。在一些实施 例中,在接收新或修改的排名值后,重新确定偏好位置集。
如上所述,在一些实施例中,用户可以将一个或多个关键字与内 容位置(例如URL、广告)关联。这些关键字可以存储在例如用户信 息数据库166中。在一些实施例中,索引关键字使得可在注释上执行 搜索,根据相关联的关键字,将返回匹配和/或相关位置。在一些实施 例中,用户可以任意地将各种信息项关联在一起(例如通过提供与被 选信息项相关联的"标签")。例如,用户可以将标签应用于一个或 多个电子邮件消息。在一些实施例中,用户可以将标签应用于其他活 动或事件(例如位置)。因此,基于与标签有关的关键字的搜索(或 浏览)能返回用户已经与该标签关联的项。
在一些实施例中,可以将用户的偏好位置集与来自其他用户的一 个或多个偏好位置或用户组相组合。在一些实施例中,偏好位置集包 括一个或多个结果点击量、广告点击量、访问过的网页以及产品评论。 在一些实例中,将与用户结合的偏好位置集与用户组关联。例如,能 从社会网、新闻组、邮寄列表、工作组、学习组等等识别用户组。偏 好位置集可通过特定信息类别、诸如ODP类别(例如与"狗"类别有
关的偏好位置集)来识别或包括某些定位信息(例如与特定地理位置 有关的位置)。在一些实施例中,来自其他人的偏好位置集是根据上 述一个或多个技术所确定的位置。在一些实施例中,来自其他人的偏 好位置集是基于各种标准预先选择的位置。
在一些实施例中,将私密性模型应用于用户的信息。私密性模型
表示用户乐意共享用户的哪些信息或与谁共享以及在何种条件下共
享。例如,在系统对包括电子邮件消息的用户组生成偏好信息集的实
施例中,用户可能不希望共享电子邮件消息。然而,同一用户可能希 望共享用户访问过的位置。
图15A描述根据本发明一些实施例的用于将一个或多个偏好位置 集组合的示例性过程1500。首先,识别用户的偏好位置集(1502)以 及将与用户集合相结合的集合(1504)。也识别任何可用的加权因子 (1506)。在一些实施例中,用户可以选择加权因子来应用于所有或 每一待组合的集合。加权因子将影响如何使用其他集合的排名值来排 序该组合集合(1507)。例如用户可以指示,较之来自邮件列表的偏 好集合,将较高加权因子应用于来自用户紧密关联的集合。在一些实 施例中,相对于将结合到用户集合中的集合的排名值,乘用于集合的 加权因子。该组合集合由此反映由用户分配的加权。注意对组中的成 员,由于成员自己的偏好位置和将应用于其他偏好位置集的用户的加 权因子的选择,作为呈现给每一成员的组合偏好位置集可能大不相同。
在其他实施例中,其他偏好位置集中的位置可以不具有直接相关 的排名值。在这些实例中,排名值能从其他源获得(例如PageRank值), 或者集合中的每一位置能根据其在集合中的位置被分配缺省排名值
(列表中较高的位置被给予高于列表中较低的位置的缺省排名值)。 另外,可按任意方式将集合与用户的偏好位置集合交织。
最后,将集合提供给用户(1508)。使用上述的任何技术,能实
现组合列表的存储(即使根据没有组合列表)(例如将组合列表存储 在用户信息数据库116中)。
图15B描述用来创建用于用户社区的组合偏好位置集的过程。首 先,识别偏好位置集的每一个(1510)。可以通过首先确定为其创建 组合集合的用户社区中的每一用户来识别这些集合。在一些实施例中, 偏好位置集包括一个或多个结果点进率、广告点进率、访问过的网页
和产品评论。识别加权因子(1512)。加权因子表示将应用于每一集
合的权重。例如,用于特定用户的权重可以与该特定用户所关联的信
任度或重要性值关联。使用加权因子来组合集合(1524)(例如,按 与上述组合操作类似的方式)。在一些实施例中,能将一个或多个主 题相关偏好位置集与用户偏好位置集组合。例如,如果用户社区与特 定主题(例如golden retriever)有关,与该主题相关联的位置集能与用 户偏好位置集组合。在一些实施例中,典型相关位置也具有各自的加 权因子。在一些实施例中,当新用户被添加到社区时,重新确定用户 社区的偏好位置。
在一些实施例中,用户可基于任意多个标准(例如通过一个或多 个查询词语或其他信息)来搜索偏好位置集和/或组合偏好位置集。相 对于偏好位置集,应用搜索标准,以及使用上述的各种排名技术的一 个或多个来排名来自偏好位置集的相关位置,并返回给用户(包括但 不限于考虑用户修改排名或加权)。这为用户提供搜索用户的先前历 史以及覆盖多种不同排名技术的任何一个来改进用户搜索结果。在一 些实施例中,提供各种排名技术作为优选设定值中的可选项(例如选 择框指示按先前访问次数排名位置的选项)。在一些实施例中,在査 询输入页上,提供各种排名技术作为可选项。在一些实施例中,能同 时使用这两种技术。
在一些实施例中,可以将用户的偏好位置集(如上述标识的)与 用户的加书签位置集组合(即用户已使用浏览器的"书签"特征识别
这些位置)。能使用加权函数来组合这些集合。
尽管参考偏好位置和组合偏好位置来描述,但上述技术可以同样 地应用于其他类型的用户所信息或事件。例如,根据本发明的一些实 施例的被确定为属于用于用户的偏好信息集的项的集合包括电子邮 件、即时消息、软件应用、图像、联系人簿项或其他类型的用户活动 的一个或多个。响应识别用户的偏好位置集的命令,系统能返回包括 用户访问过的任何信息的偏好信息集。在一些实施例中,为用户提供 包括频繁存取的电子邮件、软件应用、査询和位置的偏好信息集。上 述任何一种技术,包括但不限于确定、排名、修改排名和组合偏好站 点能应用于这些其他类型的用户活动的一个或多个或与之组合。
在本发明的一些实施例中,用户可以将一个或多个客户机应用和/ 或客户机助理与中心用户账号关联。这允许用户累积来自不至一个机 器和/或不至一个类型浏览器的浏览和搜索信息。图16描述示例性过程 1600,使用户可关联多个客户机应用和/或客户机助理。在一些实施例 中,客户机标识符与客户机应用(例如浏览器)的特定安装相关联。 在一些实施例中,客户机标识符与客户机助理的特定安装(例如与浏 览器有关的工具条)相关联。下述论述适用于这两类实施例,尽管为 简化目的,该论述仅参考与客户机应用有关的客户机标识符。
首先,用户登录位于中心服务器上的服务(1602)。这种服务能 经多种方式来访问,诸如经客户机应用和/或客户机助理访问。检测与 客户机应用相关联的唯一标识符并发送到注册服务(1604)。在一些 实施例中,标识符存储在与客户机应用有关的cookie中。在接收后, 确定该标识符目前是否与用户标识符关联(1606),其中,用户标识 符与已经注册到该服务的用户关联。如果客户机标识符不与用户标识 符关联(1606-否),那么,确定是否为用户提供将客户机标识符与用 户标识符关联的选项(1608)。在一些实施例中,可以防止在某时间 段内用户把超出订阅数量的客户机标识符与任何用户标识符关联。在
一些实施例中,限制用户使得在任何指定时间,仅能关联订阅总的多 个客户机标识符。这种条件能防止个人尝试将大量客户机应用与单一 用户标识符关联。如果提供关联的条件不满足(1608-否),那么记录 用户保持登录时生成的浏览信息并与用户标识符关联(1610),但客 户机标识符不与用户标识符关联。
如果提供关联的条件满足(1608-是有),那么为用户提供将客户 机标识符与用户标识符关联的选项(1612)。如果用户选择不将客户 机标识符与用户标识符关联(1612-否),那么客户机标识符不与用户 标识符关联,但记录用户保持登录时生成的浏览信息并与用户标识符 关联(1610)。
如果用户的确决定将客户机标识符与用户标识符关联(1612-是), 那么将客户机标识符与用户标识符关联(1614)。可以存在某些条件, 在这些条件下,可以允许用户合并或迁移在与用户标识符关联前发生 的与客户机标识符有关的先前活动(1614)。如果满足条件,那么向 用户提供合并的机会(1616)。在一些实施例中,与客户机标识符有 关的用户活动在存储器中维持一定的时间段(例如3至7天)。在一 些实施例中,当客户机标识符新与用户标识符关联时,则满足条件并 且为用户提供合并先前活动的选项(1616)。
在一些实施例中,该服务跟踪用户合并的与目前关联用户标识符 的客户机标识符相关的浏览活动的最后次(1606-是),如果自最后一 次合并以来,订阅时间量流逝,那么满足条件。
如果用户选择不合并先前的活动(1616-否),那么记录用户保持 登录时生成的信息并与用户标识符关联(1610)。如果用户决定合并 (1616-是),那么与客户机标识符相关联的活动与目前与用户标识符 关联的活动合并(1618)。在一些实施例中,将信息复制到与用户标 识符相关联的记录中。在一些实施例中,提供链接,把所存储的与客
户机标识符相关联的信息链接至用户标识符。记录用户保持登录时生 成的信息并与用户标识符关联(1610)。
在一些实施例中, 一旦将客户机标识符与用户标识符关联,那么, 注意与客户机标识符有关的任何时间活动,其自动地与用户标识符关 联,与用户是否注册到服务无关。在一些实施例中,仅当用户注册到 该服务时,记录与客户机标识符有关的活动并与用户标识符关联。
在一些实施例中,为用户提供在客户机标识符和用户标识符间删 除关联的能力。在一些实施例中,当用户使客户机标识符与用户标识 符不相关联时,保存与客户机标识符有关的先前相关浏览信息,而在 其他实施例中,删除先前相关浏览信息。在一些实施例中,如前所述, 删除浏览活动触发重新确定导出值。
参考图17,客户机系统102通常包括一个或多个处理单元(CPU) 1702、 一个或多个网络或其他通信接口 1704、存储器1706和一个或多 个通信总线1708用于互连这些组件。客户机系统102可以包括用户接 口 1710,例如显示器1712和键盘1714。存储器1706可以包括高速随 机存取存储器,以及也可以包括非易失存储器,诸如一个或多个磁性 或光学存储介质。存储器1706可以包括与CPU 1702异地的大容量存 储器。存储器1706可以存储下述组件或这些组件的子集或超集
*操作系统1716,包括用于处理各种基本系统服务和用于实现硬
件相关任务的过程; *网络通信模块(或指令)1718,用于经一个或多个通信接口 1704 (有线或无线)将客户机系统102连接到其他计算机,诸如互 联网、其他广域网、局域网、城域网等等; *如上所述的客户机应用106;
參客户机助理104,包括用于监视用户的活动的监视模块1722, 以及传输模块1724,用于将有关用户的活动的信息传送到搜索 系统112,以及从搜索系统112接收信息,以及 如上所述的客户机存储器108
参考图18,搜索引擎1800通常包括一个或多个处理单元(CPU) 1802、 一个或多个网络或其他通信接口 1804、存储器1S06和一个或多 个通信总线1808用于互连这些组件。搜索引擎1800可以包括用户接 口 1810,包括显示器1812和键盘1814。存储器1806可以包括高速随 机存取存储器,以及也可以包括非易失存储器,诸如一个或多个磁性 或光学存储介质。存储器1806可以包括与CPU 1802异地的大容量存 储器。存储器1806可以存储下述元件、或这些元件的子集或超集-*操作系统1816,包括用于处理各种基本系统服务和用于实现硬
件相关任务的过程; *网络通信模块(或指令)1818,用于经一个或多个通信接口 1804 (有线或无线)将搜索引擎1800连接到其他计算机,诸如互 联网、其他广域网、局域网、城域网等等; 參查询服务器,用于响应和处理来自客户机102的通信;以及 *用户信息数据库116,用于存储如参考图5A和5B所述的有关 用户的信息。
在一些实施例中,査询服务器114包括下述元件,或这些元件的
子集客户机通信模块120,用于接收和传送信息;查询接收、处理和
响应模块122,用于接收和响应搜索查询;历史模块128,用于处理和 管理对搜索用户历史的请求;用户信息和处理模块124,用于访问和修 改用户信息数据库116,用户信息数据库116包括一个或多个用户记录, 用户记录包括用户标识符502、基于事件的数据(包括查询信息510、 结果点击信息512、广告点击信息514和浏览信息516)、导出数据506 (包括一个或多个信息值528),以及附加数据508 (包括一个或多个 信息值530)。在一些实施例中,查询服务器114包括这些模块的子集。 在一些实施例中,查询服务器114和/或用户信息数据库116包括附加 模块。
为说明目的,参考具体实施例描述了上述说明。然而上文的示例 性论述不是意在穷举或将本发明限定到所公开的具体形式。鉴于上述 教导,许多改进和变化是可能的。选择和描述实施例是为了最佳地说 明本发明的原理和实际应用,由此允许本领域的技术人员根据所预期 的特定应用最佳地利用本发明和各种实施例以及各种改进。
权利要求
1.一种分析用户的历史活动的方法,包括识别用户的历史活动的部分;从所述部分识别第一会话和第二会话;对所述会话的每个识别一个或多个分组;以及将所述第一会话中的所识别的分组与所述第二会话中所识别的分组相关联。
2. 如权利要求l所述的方法,进一步包括 接收显示历史请求;以及根据所述相关联分组,至少呈现所述部分的子集。
3. 如权利要求2所述的方法,其中,每一相关联分组具有相应的 日期/时间值,以及所述呈现步骤包括根据所述相应的日期/时间值来排 序所述相关联分组。
4. 如权利要求l所述的方法,进一步包括 接收搜索请求;从文档数据库获得与所述搜索请求有关的搜索结果; 识别与所述搜索请求有关的相关联分组;以及 同时显示所述相关联分组和所述搜索结果的至少子集。
5. 如权利要求l所述的方法,其中,所述第一会话的日期和所述 第二会话的日期相隔大于1天。
6. 如权利要求l所述的方法,其中,至少一个分组包括事件,所 述事件包括搜索结果选择、广告选择、查询、浏览事件和产品评论选 择的一个或多个。
7. 如权利要求l所述的方法,其中,所述相关联步骤包括当所述 第一会话中所识别的分组和所述第二会话中所识别的分组之间的相似 度得分大于阈值时,把在所述第一会话中的所识别的分组与在所述第 二会话中所识别的分组相关联。
8. 如权利要求l所述的方法,其中,所述识别一个或多个分组的步骤包括识别相应会话中的一个或多个相关查询,每一査询具有与之相关 联的零个或多个被访问站点。
9. 如权利要求8所述的方法,进一步包括 从搜索请求者接收搜索查询;以及确定至少一个分组是否包含与该搜索查询有关的内容信息,所述 内容信息包括所述一个或多个相关查询中的搜索词语和与所述零个或 多个被访问站点相关联的内容。
10. 如权利要求1所述的方法,其中,所述识别一个或多个分组的步骤包括识别在所述第一会话期间提交的一个或多个相关查询的第一集合;以及识别在所述第二会话期间提交的一个或多个相关查询的第二集
11. 一种结合计算机系统使用的计算机程序产品,所述计算机程 序产品包括计算机可读存储介质和嵌入其中的计算机程序机制,所述计算机程序机制包括用于识别用户的历史活动的 一 部分的指令; 用于从所述部分识别第一会话和第二会话的指令; 用于对所述会话的每个识别一个或多个分组的指令;以及 用于把所述第一会话中的所识别的分组与所述第二会话中所识别的分组相关联的指令。
12. 如权利要求ll所述的方法,其中,所述第一会话的日期和所 述第二会话的日期相隔大于l天。
13. 如权利要求11所述的方法,其中,至少一个分组包括事件, 所述事件包括搜索结果选择、广告选择、査询、浏览事件和产品评论选择的一个或多个。
14. 如权利要求11所述的方法,其中,所述用于相关联的指令包括当所述第一会话中所识别的分组和所述第二会话中所识别的分组之 间的相似度得分大于阈值时,用于把在所述第一会话中的所识别的分 组与在所述第二会话中所识别的分组相关联的指令。
15. 如权利要求ll所述的方法,其中,所述用于识别一个或多个分组的指令包括指令用于识别相应会话中的一个或多个相关查询,每一查询阈值相关联的 零个或多个被访问站点。
16. 如权利要求13所述的方法,进一步包括指令用于 从搜索请求者接收搜索査询;以及确定至少一个分组是否包含与该搜索査询有关的内容信息,所述 内容信息包括所述一个或多个相关查询中的搜索词语和与所述零个或 多个被访问站点相关联的内容。
17. 如权利要求ll所述的方法,其中,所述用于识别一个或多个 分组的指令包括指令用于-识别在所述第一会话期间提交的一个或多个相关查询的第一集 合;以及识别在所述第二会话期间提交的一个或多个相关査询的第二集
18. —种计算机,包括 主存储器;处理器;以及存储在所述主存储器中并由所述处理器执行的程序,所述程序包括用于识别用户的历史活动的一部分的指令; 用于从所述部分识别第一会话和第二会话的指令; 用于对所述会话的每个识别一个或多个分组的指令;以及 用于把所述第一会话中的所识别的分组与所述第二会话中所识别 的分组相关联的指令。
19. 一种分析用户历史活动的系统,包括 用于识别用户的历史活动的一部分的装置; 用于从所述部分识别第一会话和第二会话的装置; 用于对所述会话的每个识别一个或多个分组的装置;以及 用于把所述第一会话中的所识别的分组与所述第二会话中所识别的分组相关联的装置。
全文摘要
记录用户的先前搜索和浏览活动用于后续的使用。用户可以按若干不同的方式来检索用户的先前搜索和浏览活动,包括与广告有关的用户先前活动的指示。可以根据用户的历史活动修改搜索结果集。检查用户的活动以识别偏好位置集。可以将用户的活动集与一个或多个其他用户共享。可以增强呈现给用户的偏好位置集以包括一个或多个其他用户的偏好位置。可以由一个或多个不同的客户机设备或客户机应用监视用户的浏览活动。可以图示地显示用户的浏览量。
文档编号G06F17/30GK101189608SQ200680019268
公开日2008年5月28日 申请日期2006年3月24日 优先权日2005年3月31日
发明者奥伦·E·扎米尔, 安德鲁·菲克斯, 杰弗里·L·科恩, 莉莉·克里斯蒂娜·伊拉尼 申请人:谷歌公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1