用于执行推荐模型的增量更新的方法和装置制造方法

文档序号:6498528阅读:178来源:国知局
用于执行推荐模型的增量更新的方法和装置制造方法
【专利摘要】提供了一种用于基于推荐模型的增量更新确定一个或多个推荐的方法。增量平台至少部分使得活动信息至少部分地基于一个或多个用户组、一个或多个项目组、用于与活动信息相关联的至少一个推荐模型的至少一个更新时间或者其组合而被分类为多个子集。该增量平台进一步至少部分地基于该分类而处理和/或有助于处理活动信息以确定是否执行至少一个推荐模型的增量更新。该增量平台至少部分地基于至少一个推荐模型、增量更新或者其组合而确定一个或多个推荐。
【专利说明】用于执行推荐模型的增量更新的方法和装置

【背景技术】
[0001] 服务提供商和设备制造商(例如,无线、蜂窝等)面临着例如通过提供具有竞争力 的网络服务而向消费者传递价值和便捷的持续挑战。一种这样的具有竞争力的网络服务是 向用户提供关于所推荐内容的推荐的服务。诸如协作式推荐模型之类的某些推荐系统可以 使得针对用户的推荐以基于各种活动而与该用户相关联的其它用户或其它项目为基础。关 于用户、项目和活动的信息的收集允许推荐服务提供商收集大量信息以进行处理并随后用 来生成推荐。然而,这样的基于对所有信息特别是收集到与在用户和项目相关联的附加活 动时的新信息进行处理所需要的大量计算问题的推荐模型带来了可扩展性的问题。存在推 荐模型的其它问题,诸如提供基于推荐源而提供用户可能更信赖的推荐。因此,服务提供商 和设备制造商在保持用户可以信赖的准确推荐的同时面临着应对推荐模型的可扩展性的 重要技术挑战。


【发明内容】

[0002] 因此,需要一种用于基于推荐模型的增量更新来确定一个或多个推荐的方法。
[0003] 根据一个实施例,一种方法包括至少部分地使得活动信息至少部分地基于一个或 多个用户组、一个或多个项目组、用于与活动信息相关联的至少一个推荐模型的至少一个 更新时间或者其组合而被分类为多个子集。该方法还包括至少部分地基于该分类而处理活 动信息以确定是否执行至少一个推荐模型的增量更新。该方法进一步包括至少部分地基于 至少一个推荐模型、增量更新或者其组合而确定一个或多个推荐。
[0004] 根据另一个实施例,一种装置包括至少一个处理器,以及至少一个包括一个或多 个计算机程序的计算机程序代码的存储器,该至少一个存储器和计算机程序代码被配置为 与该至少一个处理器一起而至少部分地使得该装置至少部分地基于一个或多个用户组、一 个或多个项目组、用于与活动信息相关联的至少一个推荐模型的至少一个更新时间或者其 组合而将活动信息分类为多个子集。该装置还被使得至少部分地基于该分类处理活动信息 以确定是否执行至少一个推荐模型的增量更新。该装置进一步被使得至少部分地基于至少 一个推荐模型、增量更新或者其组合而确定一个或多个推荐。
[0005] 根据另一个实施例,一种计算机可读存储介质承载一个或多个指令的一个或多个 序列,当被一个或多个处理器所执行时,上述指令的一个或多个序列至少部分使得装置至 少部分地基于一个或多个用户组、一个或多个项目组、用于与活动信息相关联的至少一个 推荐模型的至少一个更新时间或者其组合而将活动信息分类为多个子集。该装置还被使得 至少部分地基于该分类处理活动信息以确定是否执行至少一个推荐模型的增量更新。该装 置进一步被使得至少部分地基于至少一个推荐模型、增量更新或者其组合而确定一个或多 个推荐。
[0006] 根据另一个实施例,一种装置包括用于至少部分地基于一个或多个用户组、一个 或多个项目组、与活动信息相关联的至少一个推荐模型的至少一个更新时间或者其组合而 将活动信息分类为多个子集的装置。该装置还包括用于至少部分地基于该分类而处理活动 信息以确定是否执行至少一个推荐模型的增量更新的装置。该装置进一步用于至少部分地 基于至少一个推荐模型、增量更新或者其组合而确定一个或多个推荐的装置。
[0007] 此外,针对本发明的各个实施例,以下是可应用的:一种方法包括有助于处理和/ 或处理:(1)数据和/或⑵信息和/或⑶至少一个信号,该⑴数据和/或⑵信息和 /或(3)至少一个信号至少部分地基于(或至少部分从其得出)本申请中公开为与本发明 的任意实施例相关的方法(或处理)中的任意一种或任意组合。
[0008] 针对本发明的各个实施例,以下也是可应用的:一种方法包括有助于对被配置为 访问至少一个服务的至少一个接口的访问,该至少一个服务被配置为执行本申请中所公开 的网络或服务提供商的方法(或处理)中的任意一种或任意组合。
[0009] 针对本发明的各个实施例,以下也是可应用的:一种方法包括有助于以下的创建 和/或修改:(1)至少一个设备用户接口元素和/或(2)至少一种设备用户接口功能,该(1) 至少一个设备用户接口元素和/或(2)至少一种设备用户接口功能至少部分地基于本申请 中公开为与本发明的任意实施例相关的方法(或处理)中的任意一种或任意组合所产生的 数据和/或信息,和/或本申请中公开为与本发明的任意实施例相关的方法(或处理)中 的任意一种或任意组合所产生的至少一个信号。
[0010] 针对本发明的各个实施例,以下也是可应用的:一种方法包括以下的创建和/或 修改:(1)至少一个设备用户接口元素和/或(2)至少一种设备用户接口功能,该(1)至少 一个设备用户接口元素和/或(2)至少一种设备用户接口功能至少部分地基于本申请中公 开为与本发明的任意实施例相关的方法(或处理)中的任意一种或任意组合所产生的数据 和/或信息,和/或本申请中公开为与本发明的任意实施例相关的方法(或处理)中的任 意一种或任意组合所产生的至少一个信号。
[0011] 在各个实施例中,方法(或处理)能够在服务提供商端或移动设备端实现,或者利 用在两端上执行的操作而以服务器提供商和移动设备之间的任意共享方式实现。
[0012] 针对各个示例实施例,以下是可应用的:一种装置包括用于执行原始提交的权利 要求1-10、21-30和36-38中任一项所述的方法的装置。
[0013] 简单地通过对包括预期实施本发明的最佳模式在内的多种特定实施例和实施方 式进行说明,本发明另外的方法、特征和优势由于以下详细描述而是轻易显而易见的。本发 明还支持其它且不同的实施例,并且其若干细节能够以在各个显见方面进行修改,所有这 些都不背离本发明的精神和范围。因此,附图和描述在本质上要被认为是说明性而非限制 性的。

【专利附图】

【附图说明】
[0014] 本发明的实施例在附图的示图中通过示例而非限制进行了图示:
[0015] 图1是根据一个实施例的能够基于推荐模型的增量更新确定一个或多个推荐的 系统的不图;
[0016] 图2是根据一个实施例的增量平台的组件的示图;
[0017] 图3是根据一个实施例的用于基于推荐模型的增量更新确定一个或多个推荐的 处理的流程图;
[0018] 图4是根据一个实施例的用于基于在线和/或离线模式确定一个或多个推荐的处 理的流程图;
[0019] 图5是根据一个实施例的用于确定两个或更多个用户之间的相似度信息以用于 确定一个或多个推荐的处理的流程图;
[0020] 图6是根据一个实施例的用于确定基于至少一次更新之后出现的活动信息而执 行增量更新的处理的流程图;
[0021] 图7是根据一个实施例的用于提供具有关联信息的一个或多个推荐的处理的流 程图;
[0022] 图8A-8F是根据各个实施例的在图3-7的处理中所利用的用户接口的示图;
[0023] 图9是能够被用来实施本发明的实施例的硬件的示图;
[0024] 图10是能够被用来实施本发明的芯片组的示图;以及
[0025] 图11是能够被用来实施本发明的移动终端(例如,手机)的示图。

【具体实施方式】
[0026] 公开了用于基于推荐模型的增量更新确定一个或多个推荐的方法、装置和计算机 程序的示例。在以下描述中,出于解释的目的,给出了大量具体细节以便提供对本发明实施 例的透彻理解。然而,对于本领域技术人员显而易见的是,本发明的实施例可以在没有这些 具体细节或者利用等同配置进行实践。在其它情况下,公知结构和设备以框图形式示出以 避免对本发明的实施例造成不必要的混淆。
[0027] 虽然关于与一个或多个用户相关联的用来生成一个或多个推荐的活动而对各个 实施例进行了描述,但是所要想到的是,这里所描述的方法可以基于与一个或多个项目或 者一个或多个项目和一个或多个用户的组合相关联的活动。
[0028] 图1是根据一个实施例的能够基于推荐模型的增量更新确定一个或多个推荐的 系统的示图。如以上所讨论的,信息时代已经生成了用户可以以电子方式进行访问的海量 信息。该海量信息可以使得用户感到负担过重或者可能会妨碍用户找到他们认为有用或相 关的信息。为了缓解信息过载,附图提供商已经创建了推荐模型来向用户推荐内容。这样 的推荐模型可以收集关于用户、各种项目以及用户之间、项目之间和/或用户与项目之间 的关联活动的信息。推荐模型然后可以使用所收集的信息来生成一个或多个推荐。作为示 例,基于用户的协作式过滤推荐模型可以确定用户-用户相似度以找出用户的在过去具有 对项目和/或内容的相似品味的给定邻居(neighbor)。因此,给定用户的邻居与之具有相 关联活动的项目可以被推荐给该用户。类似地,在基于项目的协作式过滤中,还可以确定项 目-项目的相似度以找出项目的在过去吸引了相似用户的给定邻居。因此,用户已经喜欢 的项目的邻居被推荐给用户。因此,对于诸如协作式过滤推荐模型的推荐模型而言,该模型 的重要部分是确定用户、项目以及用户/项目之间的相似度值。
[0029] 然而,随着所收集信息的数量的增长,这样的推荐模型的可扩展性成为了问题。需 要保持准确性的信息量导致了效率的问题。随着用户和项目的增加,特别是就协作性过滤 推荐模型而言,计算要求在不采用过多计算资源的情况下无法进行扩展。实际上,这样的推 荐模型的计算要求随着推荐系统内的用户和项目的数量指数型增长。结果,计算用户、项目 以及用户/项目之间的相似度数值以生成一个或多个推荐所必需的计算能力在正常情况 下仅可以根据固定更新安排来执行,这可能会忽略掉与用户和项目相关联的近期活动;并 且因此忽略掉将形成更为准确的推荐的信息。
[0030] 另外,提供给用户的许多推荐是基于推荐系统所收集的一般信息。因此,例如,用 来为用户生成推荐的许多信息是基于无法连接至该用户的其它用户(例如,没有社交连 接、家庭连接等)。再进一步,以电子方式呈现给用户并且与一个或多个推荐无关的一般广 告目前无法指示与用户相连接的其它用户是否对该广告有所行动,诸如购买所广告的产品 或者推荐所广告的产品。因此,对于所推荐内容而言,用户对该内容仅有的信任在于信任用 来推荐该内容的推荐系统和模型。对于一般提供给用户的广告而言,诸如没有被推荐模型 所推荐的广告,用户不会直接或间接地信任该广告的内容。因此,用户必须要在没有任何基 础的情况下决定是否关注该广告。
[0031] 为了解决这些问题,图1的系统100引入了基于推荐模型的增量更新确定一个或 多个推荐的系统100。系统100将用户划分为至少两个群组并且将与用户相关联的活动划 分为至少两个群组。用户和活动的划分是基于用于与活动相关联的至少一个推荐模型的至 少一个更新时间。系统100随后基于用户组处理活动信息以确定是否执行至少一个推荐模 型的增量更新。随后,系统100基于至少一个推荐模型、至少一个推荐模型的增量更新或者 其组合来确定一个或多个推荐。通过基于增量更新而不是单纯地以非增量基础而基于推荐 模型生成一个或多个推荐,系统100能够利用较少的计算资源生成推荐。系统100还能够 确定与被提供以推荐的用户以及与该用户对的其它用户相关联的新的活动。通过使用与用 户对内的其它用户相关联的新活动,系统100能够通过使用所有可用信息而生成更为准确 的推荐,而并不需要过多的计算资源。
[0032] 至少一个更新时间可以基于与针对每个用户的推荐模型相关联发生的最后更新 来确定。系统100随后将执行最后更新的时间记住为Ttl,并且将至少一个推荐模型将要进 行更新的当前时间表示为Tn。因此,当至少一个推荐模型基于在Ttl和Tn之间发生的新活 动更新时,系统100将至少一个用户组确定为在时间段(H)期间与推荐模型相关联的 UCTtl,τη),并且将另一个用户组确定为在Ttl之前直至该推荐模型关于所有用户开始(例如, 指示为0)的任意时间与该推荐模型相关联的U(OJtl)。在一个实施例中,在过去可能已经 进行了出现了多于一次的更新时间。在该情况下,用户组可以进一步基于用户与各个更新 时间相比何时与推荐模型相关联而被进一步分类为群组。
[0033] 与用户相关联的活动可以为任意类型的活动,包括但并不局限于对可电子获取的 项目进行评论,将可电子获取的项目指示为收藏(例如,在产品网站、社交网络网站上等)、 分享项目、转发项目、下载项目、购买项目,等等。项目可以为任意类型的电子内容,诸如网 站、博客、在社交网络服务上的发布、商品和/或服务,等等。项目也可以表示不可电子获 取但是以其它方式电子表示的内容,诸如可供在因特网上进行销售的消费性商品和/或服 务。
[0034] 类似地,与用户相关联的活动被划分为两个活动集合。一个活动集合UAn是在时 间段(Un)期间所发生的活动。另一活动集合UAtl是在时间段(0,!;)期间所发生的活动。 在过去已经出现了多于一个的更新时间的一个实施例中,活动的群组可以进一步基于活动 关于更新时间何时进行而被进一步分类为群组。根据以上分类,与用户相关联的总活动可 以被指示为UAa而使得UAa =UAJUAtl。如以下详细讨论的,系统100随后可以使用用户和 活动的上述分类来执行至少一个推荐模型的增量更新。
[0035] 系统100随后可以将用系统100注册的任意用户(包括所有用户)中的用户对 之间的活动信息的相似度进行比较以确定用户间的相似度信息,其随后可以被用来生成一 个或多个推荐。在一个实施例中,推荐模型可以基于根据表示为|AnB|/|AUBl= AnB|八|A| + |B|-|AnBI)的Jaccard相似度的协作式过滤处理,其中A表示与用 户a相关联的活动信息而B表示与用户b相关联的活动信息。以上的相似度表达式可以被 缩写为z/(x+y_z),其中X= |A|,y= |B|且Z=|ΑΠB|。系统100可以将每个用户 对(a,b)的x、y和z的数值存储在数据库和/或文件中并且递增地使用该信息在未来确定 至少一个推荐模型的相似度数值。虽然以上方法讨论了基于Jaccard相似度来确定推荐模 型,但是本领域技术人员将会认识到,这里所讨论的方法可以被应用于其它相似度度量,诸 如泊松系数和余弦相似度。因此,基于以上对用户和项目的分类(例如,均分为两个群组), 存在用于确定用户之间的相似度的四种情况。然而,本领域技术人员将会意识到,在系统 100记住了多于一个的更新时间的情况下,可能有多于四种的情形,并且因此可以将用户和 活动划分为多于四个的群组。
[0036] 在情况1下,用户对可以与新用户a和新用户b相关联,其中新用户表示用户自 至少一个更新时间Ttl以来与至少一个推荐模型新关联。在这种情形下,由于在更新时间 之前针对两个用户都没有之前所收集的信息,所以没有增量更新。因此,为了确定用于 推荐模型的相似度得分,如果用户a或b中的任一个并不与任何活动UAa相关联(例如, |UAQ(a) | + |UAn(a)I=0或者IUAci(b) | + |UAn(b)I=0),则没有信息要进行处理以生成相似 度得分。然而,如果两个用户自最后的更新时间Ttl以来都进行了动作(例如,|UAn(a)|>0 且|UAn(b) |>0),则相似度(a,b)为:
[0037] =IUAn (a)ΠUAn (b) I/IUAn (a) UUAn (b)
[0038] =IUAn(a)ΠUAn(b) I川UAn(a)I+1UAn(b)I-1UAn(a)ΠUAn(b)I)
[0039] =z/ (x+y-z)
[0040] 而使得该系统根据以下而存储用于用户对(a,b)的相似度相关度量。
[0041]X= |UAn (a)
[0042] y=IUAn(b)
[0043]z=IUAn (a)ΠUAn (b)
[0044] 并且用来生成一个或多个推荐的相似度信息为=ζΛχ+y-z)。
[0045] 在情况2下,用户对可以与新用户a和老用户b相关联,其中老用户意味着该用户 在至少一个更新时间Ttl之前就事先注册到至少一种推荐模型的用户。在该情形之下,由于 针对至少一个用户在更新时间之前并未收集到信息,所以没有增量更新。因此,为了确定 用于推荐模型的相似度得分,如果用户a或b中的任一个并不与任何活动UAa相关联(例 如,|UAa(a)I= 0或者|UAa(b)I= 0),则没有信息要进行处理以生成相似度得分。因此,相 似度(a,b) =0。然而,如果两个用户都进行了动作(例如,对于用户a而言,自最后的更 新时间Ttl以来已经进行了动作,而对于用户b而言,自起始0以来已经进行了动作,而使得 UAn(a) |>0 且 |UAa(b) |>0),则相似度(a,b)为:
[0046] =IUAn (a)ΠUAa (b)I/IUAn (a)UUAa (b)
[0047] =IUAn(a)ΠUAa(b)I川UAn(a)I+1UAa(b)I-1UAn(a)ΠUAa(b)I)
[0048]=z/ (x+y-z)
[0049] 而使得该系统根据以下而存储用户对(a,b)的相似度相关度量。
[0050] X=IUAn(a)
[0051] y=IUAa(b)
[0052]z=IUAn (a)ΠUAa (b)
[0053] 并且用来生成一个或多个推荐的相似度信息为=ζΛχ+y-z)。
[0054] 在情况3下,用户对可以与老用户a和新用户b相关联。类似于情况2,在该情形 之下,由于针对至少一个用户在更新时间之前并未收集到信息,所以没有增量更新。因此, 为了确定用于推荐模型的相似度得分,如果用户a或b中的任一个并不与任何活动UAa相 关联(例如,|UAa(a)I=0或者|UAa (b)I=0),则没有信息要进行处理以生成相似度得分。 因此,相似度(a,b) =0。然而,如果两个用户都进行了动作(例如,对于用户b而言,自最 后更新时间Ttl以来已经进行了动作,而对于用户a而言,自起始0以来已经进行了动作,而 使得IUAa (a)I>0 且 |UAn (b)I>0),则相似度(a,b)为:
[0055] =IUAa (a)ΠUAn (b) I/IUAa (a) UUAn (b)
[0056] =IUAa(a)ΠUAn(b) I川UAa(a)I+1UAn(b)I-1UAa(a)ΠUAn(b)I)
[0057] =z/ (x+y-z)
[0058] 而使得该系统根据以下而存储用于用户对(a,b)的相似度相关度量。
[0059] X=IUAa(a)
[0060] y=IUAn(b)
[0061] z=IUAa (a)ΠUAn (b)
[0062] 并且用来生成一个或多个推荐的相似度信息为=ζΛχ+y-z)。
[0063] 在情况4下,用户对可以与老用户a和老用户b相关联。针对该情况,由于两个 用户都是老用户,所以用户将已经与能够基于旧相似度得分进行增量更新的推荐模型相关 联。例如,在以上三种情形中的任意一种下所计算的旧相似度得分为:
[0064] =IUA0 (a)ΠUA0 (b)I川UA0 (a)HUA0 (b)I-1UA0 (a)ΠUA0 (b)I)
[0065] =ζ/ (x+y-z)
[0066]其中χ=|UA0(a)I,y=|UA0(b)I而ζ=|UA0(a)ΠUA0(b)I。
[0067] 新的相似度得分(表示为ζV(x' +y' -ζ'))将根据以下进行计算:
[0068] =IUAa(a)ΠUAa(b)I川UAa(a) I +1 UAa(b) I-1UAa(a) ΠUAa(b)I)
[0069] =IUA〇(a)+UAn(a)) Π(UA〇(b) + ΠUAn(b)) I/(IUA〇(a) I+
[0070]IUAn(a)I+1UA〇(b)I+1UAn(b)I-1(UA〇(a)+UAn(a))Π(UA〇(b) +Π
[0071] UAn(b))I)
[0072] 其中分子z'为:
[0073] =IUA0 (a)Π(UA0 (b)HUA0 (a)ΠUAn (b)HUAn (a)Π(UA0 (b)I+
[0074] IUAn(a)Π(UAn(b)
[0075] 基于以上的z,其被简化为:
[0076]z' =z+1UA0(a)ΠUAn(b) | + |UAn(a)Π(UA0(b) | + |UAn(a)Π
[0077] (UAn (b)
[0078] 并且分母为:
[0079] =x' +y' -ζ'
[0080] 其中,基于以上的x、y和z,其被简化为:
[0081] = (x+|UAn(a) |) + (y+|UAn(b) |)-(z+|UA〇(a) Π UAn(b) | +1UAn(a) Π
[0082] (UA0(b) | + |UAn(a) Π (UAn(b) |)
[0083]而使得χ' = x+|UAn(a) I且y' = y+|UAn(b) I。因此,新的相似度为ζ'/(χ'+y'-ζ') 并且能够基于针对旧相似度的增量变化而确定。
[0084] 特别地,在以上情形之下,由于系统100之前已经针对用户对(a,b)计算了ζ/ (x+y-z)并且数值1、7和2之前进行了计算,所以可以存在增量更新。因此,不同于针对两 个用户在Ttl之前的活动重新计算相似度信息,系统100可以基于一个或两个用户的活动来 计算增量活动。因此,为了确定用于推荐模型的相似度得分,该推荐模型可以基于以下情形 进行更新。
[0085] 在情况1下,如果用户a或b都不与任何新活动相关联(例如,I UAn(a) I =0或 |UAn(b) I =0),则没有信息要进行处理以生成增量更新。
[0086] 在情况2下,如果用户a并没有新活动但是用户b具有新活动,则可以根据以下基 于旧相似度(a,b)来计算相似度(a,b):
[0087] X,= X
[0088] y' =y+|UAn(b)
[0089] z= z+1UA0 (a) Π UAn (b)
[0090] 其中新的相似度(8,13)=2'/(1'+7'-2'),其中1、7和2之前在以上关于配对 (a, b)所讨论的情况1-3中的任一种之下被计算出。由于x、y和ζ之前针对配对(a, b)进 行了计算并且存储在数据库或文件内,所以仅有的需要计算的部分为IUAJa) Π UAn(b) I和 |UAn(b),这与针对推荐模型的每个增量更新重复计算整个相似度信息相比耗用更少的计 算能力。
[0091] 类似地,在情形3之下,如果用户b并没有新活动而用户a具有新活动,则可以根 据以下基于旧相似度(a,b)来计算相似度(a,b):
[0092] x' =x+I UAn (a)
[0093] y' = y
[0094] ζ = z+1UAn (a) Π UA0 (b)
[0095] 其中新的相似度(8,13)=2'/(1'+7'-2'),其中1、7和2之前在以上关于配对 (a, b)所讨论的情况1-3中的任一种之下被计算出。由于x、y和ζ之前针对配对(a, b)进 行了计算,所以仅有的需要计算的部分为IUAn(a) n UAJb) I和IUAtl(b) I,这与针对推荐模 型的每个增量更新重复计算整个相似度信息相比耗用更少的计算能力。
[0096] 在情形4之下,用户a和用户b都可以具有之前被存储为X、y和ζ的新活动。因 此,可以根据以下基于旧相似度(a,b)来计算相似度(a,b):
[0097] x' =x+I UAn (a)
[0098] y' =y+|UAn(b)
[0099] ζ,= z+1UA〇(a) Π UAn (b) I+1UAn(a) Π (UA〇(b) I+1UAn (a) Π (UAn (b) I其中新 的相似度(a, b) = z' /(x' +y' -ζ'),其中x、y和z之前在以上关于配对(a, b)所讨论的 情况1-3中的任一种之下被计算出。因此,推荐模式仅需要计算|UAn(a) I、|UAn(b) I、 UA0(a) Π UAn(b) |、|UAn(a) Π (UA? I以及|UAn(a) Π (UAn(b) I来确定用于确定一个或 多个推荐的新的相似度得分。因此,在情况4的情形4之下,系统100能够基于用户a和用 户b二者的新活动而更新与配对(a,b)相关联的旧相似度得分(例如,ζΛχ+y-z)),而使得 新的更新不仅考虑到用户a的新活动而且还考虑到用户b的新活动。因此,该推荐模型可 以基于用户对中的用户a和用户b的活动来确定推荐,并且能够通过仅计算新活动的信息 而不是重新计算所有活动信息而快速且高效地进行计算。
[0100] 系统100还允许基于离线模式和在线模式来更新推荐模型。根据离线模式,推荐 模型基于预定升级更新频率的安排进行升级而使得升级时间TnWTtl起以间隔△T出现而 使得Tn =TfAT。因此,推荐模型以离线模式的更新在系统时间Tn ='+ΛT时发生,其 中如以上所讨论的,Ttl是推荐模型的最后更新时间。在一个实施例中,每个用户可以具有不 同的ΛT并且因此具有不同的1;和Ttl。在一个实施例中,其中用户是系统的新用户从而 没有Ttl,Ttl =?;,其中?;是用户例如通过注册到推荐模型或者以其它方式使用该推荐模型 而首次与该推荐模型相关联的时间。对于离线模式而言,用户可以指定时间周期△T以控 制更新时间。
[0101] 在在线模式,每个用户并没有用于更新的指定频率△Τ。相反,对于推荐模型的 在线模式的更新是基于与用户相关联的新活动。因此,在线模式根据等于活动发生的时间 Tn而更新推荐模型。根据这两种模式,系统100提供了统一框架,其允许在离线模式和在线 模式之间进行切换。系统100根据离线模式(例如,推荐模型根据安排而被更新的最后时 间)和在线模式(例如,推荐模型根据新活动而被更新的最后时间)而针对每个用户存储 关于Ttl的信息,并且用户能够在各种模式之间进行切换以例如确定新的活动如何对一个或 多个推荐造成影响。
[0102] 系统100还给出了在推荐时向用户提供关联信息的能力,或者可以通过推荐以外 的方法被呈现给用户的其它类型的广告与通过一些类型的所识别连接而连接至该用户的 另一用户相关联。基于该关联信息,用户可以直观地理解该推荐和/或广告以及相关联的 内容是可靠的和/或是基于诸如好友或专家/名人之类的受信任来源进行推荐的。视觉指 示例如可以基于与推荐或广告相关联的与正常情况相比有所不同的背景、边框或对象(和 /或多个对象),提供所连接用户的姓名(例如,好友、名人或专家)。
[0103] 系统100允许基于用户之间的特定关联来确定所连接的用户。在两个用户可能具 有相同项目的活动的情况下,用户并不必与其相连接。相反,相连接的用户通过一个或多个 服务、一个或多个网站、一个或多个数据库、一个或多个个人偏好(例如,列表)、一个或多 个指示等而共享连接,这表示用户之间指示他们之间的某个信任水平的连接。系统100随 后可以对广告或推荐的呈现进行修改以向一个用户指示其它的所连接用户对该广告内的 信息有所动作,而使得一个用户更加信任该推荐和/或广告。因此,系统100提供了一种用 户以诸如好友、家庭成员、专家、名人等的所连接用户为基础而关注项目推荐和/或广告内 容的机制。
[0104] 如图1所示,系统100包括用户设备(UE)101a-101n(统称为UE101),它们经由通 信网络105而具有到增量平台103的连接。作为示例,系统100的通信网络包括一个或多个 网络,诸如数据网络、无线网络、电话网络或者其任意组合。预见到的是,数据网络可以是任 意的局域网(LAN)、城域网(MAN)、广域网(WAN)、公共数据网(例如,因特网)、小范围无线 网络或者任意其它适当的分组交换网络,诸如商业所有的专用分组交换网络,例如,专用线 缆或光纤网络等,或者其任意组合。此外,无线网络例如可以是蜂窝网络并且可以采用各种 技术,包括增强数据GSM环境(EDGE)、通用分组无线服务(GPRS)、全球移动通信系统(GSM)、 因特网协议多媒体子系统(MS)、通用移动电信系统(UMTS)等,以及任意其它适当的无线 介质,例如全球微波接入互操作性(WiMAX)、长期演进(LTE)网络、码分多址(CDMA)、宽带码 分多址(WCDMA)、无线保真度(Wi-Fi)、无线LAN(WLAN)、Bluetooth?、近场通信(NFC)、网 际协议(IP)数据广播、数字无线电/电视广播、卫星、移动自组织网络(MNET)等,或者其 任意组合。
[0105] UE101是任意类型的移动终端、固定终端或便携式终端,包括移动手机、站点、单 元、设备、移动通信设备、多媒体计算机、多媒体平板电脑、因特网节点、通信器、台式计算 机、膝上计算机、笔记本计算机、平板计算机、个人通信系统(PCS)设备、个人导航设备、个 人数字助理(PDA)、音/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广 播接收器、电子书设备、游戏设备,或者其任意组合,包括这些设备的配件和外设,或者其任 意组合。还想到的是,UE101能够支持任意类型的针对用户的接口(诸如"可穿戴"电路 等)。
[0106] UE101可以包括可以在UE101执行或访问的一个或多个应用llla-llln(统称为 应用111)。应用111例如可以包括一个或多个社交网络应用、一个或多个导航应用、一个 或多个日历应用、一个或多个游戏应用、一个或多个娱乐应用、一个或多个生活方式应用、 一个或多个购物应用、一个或多个因特网浏览应用,等等。在一个实施例中,一个或多个应 用111可以允许访问UE101的用户例如通过访问提供附加应用的服务而下载一个或多个 附加应用。一个或多个应用111可以根据这里所讨论的方法而根据用户对之间的相似度信 息提供一个或多个推荐。
[0107] 如以下详细讨论的,增量平台103基于推荐模型的增量更新而确定一个或多个推 荐并且基于该一个或多个推荐提供广告的呈现,或者提供指示用户与一个或多个其它用户 之间的连接的广告或一些其它形式的内容。
[0108] 系统100进一步包括服务平台107,其包括服务109a-109n(统称为服务109)。服 务109可以包括任意类型的服务,诸如社交网络服务、广告提供服务、推荐服务、应用提供 服务等。在一个实施例中,增量平台103的功能可以以服务平台107上的一个或多个服务 109来体现。
[0109] 系统100进一步包括内容提供商113a-l13η(统称为内容提供商113)。内容提供 商可以向UE101、增量平台103和服务平台107提供内容。作为示例,内容提供商所提供的 内容可以包括社交网络内容、广告内容、应用、多媒体、网站、推荐内容等。
[0110]作为示例,UE101、增量平台103、服务平台107和内容提供商113使用公知的、新 的或者仍在研发的协议互相通信以及与通信网络105的其它组件进行通信。在本文中,协 议包括定义通信网络105内的网络节点如何基于在通信链路上发送的信息而互相进行交 互的规则集合。协议在每个节点内的不同操作层面有效,从生成和接收各种类型的物理信 号,到选择用于传输那些信号的链路,到那些信号所指示的信息的格式,到识别计算机系统 上执行的哪个软件应用发送或接收信息。在概念上有所不同的用于通过网络交换信息的协 议层在开放系统互联(OSI)参考模型中进行了描述。
[0111] 网络节点之间的通信通常通过交换离散的数据分组而得以实施。每个分组通常包 括(1)与特定协议相关联的首部信息,和(2)跟在首部信息之后并且包含可以独立于特定 协议进行处理的信息的有效载荷信息。在一些协议中,分组包括(3)跟在有效载荷之后并 且指示有效载荷信息结束的尾部信息。首部包括诸如分组来源、其目的地、有效载荷长度以 及协议所使用的其它属性之类的信息。经常,特定协议的有效载荷中的数据包括与OSI参 考模型中不同的更高层相关联的不同协议的首部和有效载荷。特定协议的首部通常只是其 有效载荷中所包含的下一个协议的类型。较高层协议被认为封装在较低层协议之中。经过 诸如因特网的多个异类网络的分组中所包括的首部通常包括如OSI参考模型所定义的物 理(1层)首部、数据链路(2层)首部、因特网络(3层)首部和传输(4层)首部以及各种 应用(5层、6层和7层)首部。
[0112] 图2是根据一个实施例的增量平台103的组件的示图。作为示例,增量平台103 包括用于基于推荐模型的增量更新而确定一个或多个推荐的一个或多个组件。想到的是, 这些组件的功能可以在一个或多个组件中进行组合或者由等同功能的其它组件来执行,诸 如在UE101的一个或多个应用111和/或服务提供方107内的一个或多个服务109中来 体现。在该实施例中,增量平台103包括信息模块201、分类模块203、更新模块205、推荐模 块207和修改模块209。
[0113] 信息模块201收集关于用户、项目以及与用户和项目相关联的活动的信息。用户 例如可以通过访问网站、参与社交网络服务、听音乐、观看视频等与推荐模型相关联,后者 则与增量平台103相关联,上述活动登记关于用户的信息(例如,IP地址、电子邮件地址、 姓名等)以识别该用户。项目可以是任意类型的电子内容,用户例如可以在UE101上对其 进行访问,或者其可以由一个或多个服务109、一个或多个内容提供商113等所提供。活动 信息可以是与用户和项目相关联的任意类型的信息(例如,评论、收藏、观看、评价、下载、 分析、喜欢、不喜欢等)。作为示例,用户可以从网站下载媒体文件,在这种情况下,该活动可 以对应于用于访问网站、用于观看媒体文件以及用户下载媒体文件。后续活动例如可以对 应于用户评价该媒体文件以及分析该媒体文件或者将该媒体文件链接给好友。该活动可以 与用户、项目或者用户和项目相关联。作为示例,用户可以在社交网站上与另一个用户成为 好友,这构成了用户独立于项目的活动。另外,项目例如可以通过该项目的服务提供方(例 如,音乐服务提供方等)链接至两个项目(例如,在媒体文件的情况下,通过流派、类型等链 接两个项目)而与另一项目相关联。信息模块201还确定活动发生的时间并且存储与用户 和项目相关联的时间以便后续根据该时间而将用户、项目和活动分类为各个群组。
[0114] 分类模块203访问信息模块201所收集的信息以将根据与活动相关联的时间以及 相对应的用户和/或项目而将该信息分类为各个群组。分类模块203基于时间度量以及至 少一个推荐模型的至少一个更新时间而将用户和/或项目分类为至少两个群组。在用户与 推荐模型相关联时,分类模型向用户分配注册时间?;。当增量平台103对与用户相关联的 推荐模型进行更新时,分类模块203向用户分配更新时间Ttl。根据增量平台103所存储的 更新的数量,分类模型203可以针对用户存储各更新时间Ttl,T1,T2,T3等。当增量平台103 确定更新与用户相关联的推荐模块203时,分类模块203基于更新的时间而向该更新分配 以当前时间Tn。作为示例,为了根据安排以离线模式对推荐模型进行更新,分类模块203将 当前时间Tn指定为T。+△T。为了根据新活动而以在线模式对推荐模型进行更新,分类模 块203将当前时间Tn指定为活动的当前时间。在一个实施例中,分配模型可以针对用户存 储各活动时间Tntl,Tnl,Tn2,Tn3等以记住与该用户相关联的各个活动时间。当确定与活动相 关联的各个时间以及针对用户和项目的更新时间时,分类模块203将用户分类为群组,例 如老用户U(0,Τ。)和新用户U(T。,Tn)以及旧活动UA(0,Ttl)和新活动UA(TQ,Tn)。然而,基于 所存储的更新时间的数量,可能存在根据各个更新时间的更多群组。
[0115] 更新模块205基于分类模型203的分类对活动信息进行处理以基于自模型上次更 新起已经发生的活动(例如,离线模式)或者根据与用户相关联的新活动(例如,在线模 式)对至少一个推荐模型进行更新。当确定根据所安排更新或者与用户相关联的新活动进 行更新时,更新模块205基于与推荐模型相关联的用户以及同样与该推荐模型相关联的一 个或多个其它用户来确定用户对。针对用户对,更新模块205确定配对是(新,新)、(新, 老)、(老,新)还是(老,老)(例如,以上所讨论的情况1-4)。针对各种情况,更新模块 205确定是否存在与配对中的每个用户相关联的新信息。因此,作为示例,在离线模式中,更 新模块确定与推荐模型相关联的用户(例如,用户a)自该推荐模型上次更新起或者自从该 用户首次注册到该推荐模型的时间起是否具有近期活动,以及与用户a配对的其它用户自 该推荐模型上次更新起是否也具有近期活动。基于该分析,更新模块205基于对新活动信 息的确定而执行以上关于情况1-4以及针对情况4的情形1-4的分析。更新模块205针对 在线模式执行类似分析,但是基于对新活动的分析而不是基于安排时间而。在一个实施例 中,更新模块205将基于通过从离线模式切换至在线模式而基于新活动的确定来执行一个 或多个推荐模型的更新。
[0116] 因此,基于两种不同模式,更新模块205可以确定至少两种不同推荐模型,诸如基 于截止到离线模式期间呈现给用户的推荐的最后更新时间的活动的推荐模型以及自最后 更新时间依赖考虑与用户对相关联的新活动的推荐模型的增量更新。在离线模式和在线模 式之间进行切换的能力允许用户确定近期活动如何对提供给用户的推荐施加影响。然而, 在离线模式的更新时间成为当前时间时,推荐模型将利用自最后更新时间以来与用户对相 关联的活动进行更新。
[0117] 推荐模块207基于更新模块205所确定的推荐模型而确定一个或多个推荐。在离 线模式,推荐模块207以基于最后更新时间进行更新的推荐模型为基础而确定一个或多个 推荐。因此,推荐模型基于截止到最后更新时间的信息来确定一个或多个推荐。在在线模 式,推荐模块207基于推荐模型以及增量更新而确定一个或多个推荐,如果适用,该增量更 新基于在最后更新时间之前或之后针对配对内的两个用户所发生的活动。因此,在线模式 允许用户接收到更为准确的推荐,其不仅考虑到用户的近期活动而且还考虑到用户对内的 其它用户的近期活动。然而,通过根据增量更新以增量方式对推荐模型进行更新,推荐模块 (和增量平台103)可以利用较少的计算负载来执行推荐,因为确定是基于仅利用最新活动 信息进行更新的先前计算。推荐模块207还可以与一个或多个应用111、UE101的一个或 多个用户接口或者其组合进行对接以便向UE101的用户呈现一个或多个推荐。
[0118] 修改模块209确定呈现给用户的至少一个推荐和/或广告。该推荐和/或广告例 如可以基于在与用户相关联的UEIOla进行呈现而被呈现给用户。该广告可以基于增量平 台103所生成的一个或多个推荐,或者该广告可以是并非基于特定推荐所生成的广告。修 改模块209进一步确定与关联于一个或多个用户的推荐和/或广告相关联的活动。修改模 块209进一步确定具有与修改模块209相关联的活动的一个或多个用户是否与该推荐和/ 或广告进行呈现的UEIOla处的用户相关联或相连接。如以上所讨论的,被提供以UEIOla的用户与关联于该广告的一个或多个用户之间的连接例如可以基于通过一个或多个社交 网络站点、一个或多个网站、一个或多个组织或者其组合所进行的连接。如果被呈现以推荐 和/或广告的用户和另一个用户之间存在连接,则修改模块209可以修改内容的呈现形式 以指示用于该推荐和/或广告的关联信息,而使得被呈现以该内容的用户能够根据连接用 户的活动而关注该推荐和/或广告。作为示例,两个用户可以通过社交网络网站进行关联。 因此,如果用户之一关注了在广告和/或推荐中所呈现的内容,则该信息可以被呈现给另 一用户而使得其它用户可以关注所连接用户的活动。另外,作为示例,用户可以注册到提供 项目的专业评论的特定网站。因此,该用户可以通过注册到该特定网站而连接至各个专家 和/或专家所提供的评论。如果用户被呈现以专家之一对其有所动作和/或进行关注、或 者与专家之一进行了评论的内容相关联的推荐和/或广告,则修改模块209可以通过修改 推荐和/或广告而向用户提供指示这样的信息的关联信息。
[0119] 图3是根据一个实施例的基于推荐模型的增量更新确定一个或多个推荐的处理 的流程图。在一个实施例中,增量平台103执行处理300并且例如被实现在如图10所示的 包括处理器和存储器的芯片组中。在步骤301,增量平台103至少部分地使得活动信息至少 部分地基于一个或多个用户组、一个或多个项目组、与活动信息相关联的至少一个推荐模 型的至少一个更新时间或者其组合而被分类为多个子集。如以上所讨论的,一个或多个用 户组可以基于老用户(之前已经与推荐模型相关联的用户)和新用户(之前并未与推荐模 型相关联的用户)来确定。将用户分类为群组可以基于在与至少一个推荐模型相关联的至 少一个更新时间之前或之后而与该推荐模型相关联的用户。至少一个更新时间是增量平台 103对至少一个推荐模型进行更新的时间以使得一个或多个推荐以自之前更新起已经发生 的新活动为基础。项目可以类似地根据与推荐模型相关联的最后更新时间而被划分为一个 或多个群组。活动可以类似地基于该活动是在至少一个更新时间之前还是至少一个更新时 间之后发生而被划分为一个或多个子集。在一个实施例中,活动信息的一个或多个子集随 后可以根据与推荐模型相关联的至少一个更新时间以及一个或多个用户组和/或项目组 而被划分为一个或多个子集。因此,可能存在一个已经在至少一个更新时间之后出现的与 新用户相关联的活动信息的子集,在至少一个更新时间之后出现的与老用户相关联的活动 信息的子集,以及在至少一个更新时间之前出现的与老用户相关联的活动信息的子集。活 动信息可以类似地(或可替换地)基于相同方法而被划分为一个或多个项目。
[0120] 在步骤303,增量平台103至少部分地基于该分类处理活动信息以确定是否执行 至少一个推荐模型的增量更新。如以上所讨论的,该增量更新可以是在至少一个推荐的至 少一个更新之后出现的与老用户和/或项目相关联的活动信息的确定,而使得并非必须计 算与所有用户对和/或项目相关联的整个相似度数值,增量平台103可以另外将之前基于 旧活动信息所计算的信息与基于新活动新计算的信息相结合。由于为了比较用户对和/或 项目而仅处理新活动,所以与要对所有活动信息进行处理的情况相比,所需要的计算量明 显更少。因此,确定是否执行增量更新例如可以基于用户对是否都是老用户,老用户之一是 否与活动信息相关联,以及其他的老用户是否与活动信息相关联。
[0121] 在步骤305,增量平台103至少部分地基于至少一个推荐模型、增量更新或者其组 合而确定一个或多个推荐。在基于步骤303的确定而没有增量更新的情况下,增量平台103 可以基于之前针对用户对(针对老用户)所确定的推荐模型或者在任一用户为新用户的情 况下所计算的新确定推荐模型来确定一个或多个推荐。否则,在两个用户都是老用户从而 他们具有推荐模型或者之前所计算的可以被用来确定一个或多个推荐的信息,并且新活动 信息可以被处理以确定增量更新的情况下,一个或多个推荐可以基于推荐模型和增量更新 两者。因此,在用户对为老用户并且每一个与自关联于推荐模型的最后更新时间以来所出 现的活动信息相关联的情况下,增量平台103可以使用两个用户的所有活动信息来确定推 荐,同时仍然保持有效确定而并不必重新计算所有用来生成推荐的所有相似度数值。
[0122] 图4是根据一个实施例的基于在线和/或离线模式确定一个或多个推荐的处理的 流程图。在一个实施例中,增量平台103执行处理400并且例如在如图10所示的包括处理 器和存储器的芯片组中进行实施。如以上所讨论的,增量平台103可以以离线模式和在线 模式进行操作。在步骤401,增量平台103确定是以离线模式、在线模式还是其组合对至少 一个推荐模型进行操作。该确定可以至少部分地基于用户输入、用户偏好或者其组合。用 户输入例如可以基于用户选择在在线模式和离线模式之间进行切换的指示符而进行。该用 户输入例如还可以基于用户提供与活动信息相关联的一个或多个输入而进行。作为示例, 用户可以选择与另一个用户分享应用111a。与分享应用相关联的输入也可以是触发增量 平台103从离线模式切换至在线模式的输入。用户偏好可以是预先确定的与模式相关的设 置,而使得例如某个应用111和/或服务109与一种模式相关联,而其它应用111和/或服 务109则与另一模式相关联。
[0123] 在步骤403,增量平台103基于步骤401中的确定而确定以离线模式进行操作。因 此,增量平台103可以至少部分地基于至少一个推荐模型、至少一个更新之间之前的互动 信息的至少一部分或者其组合来确定一个或多个推荐。如以上所讨论的,离线模式基于更 新的安排对推荐模型进行更新。因此,在当前时间并不等于至少一个更新时间加上所安排 的更新周期的情况下(例如,Tn尹Ttl+△T),推荐模型是基于至少最后的更新时间之前的活 动,并且因此并没有考虑到任何新的活动信息。因此,以离线模式所提供的一个或多个推荐 是基于并未根据新活动信息进行增量更新的至少一个推荐模型。
[0124] 在步骤405,增量平台103基于步骤401中的确定而确定以在线模式进行操作。因 此,增量平台103可以至少部分地基于增量更新、在至少一个更新之后所出现的活动信息 的至少一部分或者其组合来确定一个或多个推荐。因此,当处于在线模式时,增量平台103 将确定是否存在与至少一个用户相关联的新活动。当存在与至少一个用户相关联的新活动 时,增量平台103将基于新活动信息执行至少一个推荐模型的更新,而该新活动信息基于 与该至少一个用户以及与推荐模型相关联的其它用户的用户对。如果存在包括两个老用户 的用户对,该老用户具有之前所计算的推荐模型并且至少一个用户包括新的活动信息,则 增量平台103将基于该新活动信息执行确定增量更新并且基于新活动确定一个或多个推 荐。通过执行该增量更新,增量平台103可以在用户对都存在新活动的情况下快速且有效 地在推荐模型中对该新活动加以考虑而使得新活动被用来生成推荐,而并不需要例如大量 的计算资源基于所有活动信息生成推荐,同时通过考虑所有活动信息而保持了准确性。
[0125] 图5是根据一个实施例的确定两个或更多用户之间类似信息以便确定一个或多 个推荐的处理的流程图。在一个实施例中,增量平台103执行处理500并且例如在如图10 所示的包括处理器和存储器的芯片组中进行实施。在步骤501,增量平台103至少部分地基 于一个或多个用户组、一个或多个项目组或者其组合中的至少第二成员而确定请求针对一 个或多个用户组、一个或多个项目组或者其组合中的至少第一成员生成一个或多个推荐。 如以上所讨论的,用户例如可以基于导航至与购物服务l〇9a相关联的购物网站而与增量 平台103相关联。该购物服务109a可以为用户提供一个或多个推荐。当用户访问该购物 网站时,网站可以与增量平台103进行交互以基于用户以及一个或多个其它用户(例如,用 户对)而请求一个或多个推荐。在一个实施例中,一个或多个其它用户可以是与该购物网 站相关联的所有其它用户,或者可以是与该购物网站相关联的用户的任意子集。因此,增量 平台03确定用户对以确定其间的相似度。
[0126] 在步骤503,增量平台103处理活动信息以确定至少一个第一成本员与至少第二 成员(例如,成员配对)之间的相似度。增量平台103根据以上所讨论的情况1-4而处理 活动信息。作为示例,如果成员配对包括购物网站的两个老用户从而用户之前具有基于该 配对所确定的一个或多个推荐,则增量平台103可以基于与用户相关联的任意新活动来确 定增量更新而不是基于两个用户之间相关联的所有数量的活动信息来确定相似度。
[0127] 因此,在步骤505,增量平台103至少部分地基于相似度信息来确定一个或多个推 荐。如果用户对与以上所讨论的情况1-3以及情况4的情形1相关联,则没有在线模式或离 线模式的针对推荐模型的增量更新,因为之前没有针对增量更新所计算的相似度信息。如 果用户对与情况4的情形2-4相关联,则增量平台103根据基于之前所计算的相似度信息 的安排而以在线模式或离线模式对推荐模型进行增量更新。因此,根据当前时间以及离线 /在线模式的设置,增量平台103基于增量更新和/或推荐模型而确定一个或多个推荐。
[0128] 图6是根据一个实施例的基于在至少一次更新之后出现的活动信息而确定执行 增量更新的处理的流程图。在一个实施例中,增量平台103执行处理600并且例如在如图 10所示的包括处理器和存储器的芯片组中进行实施。在一个实施例中,如以上所讨论的,在 步骤601,增量平台103确定至少第一成员和至少第二成员与在至少一个更新时间之前出 现的活动信息的至少一部分相关联。这样,由于成员之前与增量平台103相关联并且他们 因此先前已经计算了能够被增量更新或者被用来对推荐模型进行增量更新的活动信息,所 以他们被认为是老成员。
[0129] 在步骤603,增量平台103至少部分地基于在与第一成员、第二成员或其组合相关 联的在至少一个更新时间之后出现的互动信息的至少一部分而确定执行增量更新。如以上 关于其中两个老用户后续与新的活动信息相关联的情况4所讨论的,新活动信息可以被用 来仅基于该新活动信息而生成增量更新,而无论仅有一个成员与该新活动信息相关联还是 两个用户都与活动信息相关联。因此,增量平台103可以基于新活动信息生成增量更新,并 且通过将该增量更新添加至之前存在的推荐模型而使用该增量更新以生成与至少第一成 员相关联的一个或多个推荐,而不是必须重新计算每个用户对所有的相似度信息。
[0130] 图7是根据一个实施例的提供具关于联信息的一个或多个推荐的处理的流程图。 在一个实施例中,增量平台103执行处理700并且例如在如图10所示的包括处理器和存储 器的芯片组中进行实施。在步骤701中,增量平台103在一个实施例中至少部分地基于一 个或多个推荐而确定至少一个广告。作为示例,增量平台103可以基于与用户和/或项目 以及另一用户和/或项目相关联的活动信息的相似度来确定所推荐的广告。
[0131] 在步骤703,增量平台103至少部分地基于至少一个用户通过一个或多个社交网 络站点、一个或多个网站、一个或多个组织或者其组合而与一个或多个用户之间的一个或 多个连接来确定与该至少一个用户相关联的一个或多个用户。如以上所讨论的,所收集的 信息可以包括用户通过社交网络网站、通过各种购物和/或消费者网站、各种专家网站等 的连接,或者相当于比喜欢相同项目或分享相同活动信息的仅两个用户更多的任意类型的 连接。作为示例,两个用户可以是相同社交网络网站上的好友,一个用户可能订阅了包括 提供评论的专家的商品和服务网站,或者用户可以属于与著名名人或运动员相关联的粉丝 群。根据所有收集的信息,增量平台103确定用户之间的连接。
[0132] 在步骤705,增量平台103确定与关于在步骤701所确定的至少一个广告而连接至 用户的一个或多个用户相关联的活动信息。例如,一个或多个其它用户可能喜欢广告,可能 基于推荐或广告购买了产品,可能已经评论和/或评价了与广告相关联的产品。因此,活动 可以是与推荐和/或广告相关联的任意类型的活动。
[0133] 在步骤707,增量平台103至少部分地基于活动信息而至少部分地形成指示的可 视化,其至少部分地基于至少一种颜色、至少一个符号、至少一个评价和/或对应于被呈现 以该推荐和/或广告的用户的至少一个连接的用户的至少一个标识符。增量平台103在所 呈现的广告和/或推荐内提供关联信息,其通知被呈现以该信息的用户关于连接的用户关 注了呈现给该用户的信息或者以其它方式对其有所动作。作为示例,增量平台103可以修 改与广告相关联的颜色以将该广告与并不与连接用户相关联的其它广告区分开来。在一个 实施例中,增量平台103可以通过名称来标识连接的用户的指示(例如,显示名、用户姓名、 电子邮件地址、给定名称等)而使得被呈现以该指示的用户能够理解到底是谁关注了该广 告和/或推荐或者以其它方式对其有所动作。在步骤709,增量平台103至少部分地基于活 动信息而至少部分地针对至少一个用户进行包括该指示的至少一个广告的呈现。因此,用 户能够基于该指示而更为准确地判断广告的信任度,上述指示指出了连接的用户是否关注 了广告或者以其它方式对其进行了推广。
[0134] 图8A-8F是根据各个实施例的在图3-7的处理中所采用的用户接口的示图。图8A 图示了用户接口 800a,其与配置与推荐模型相关联的推荐设置相关联。用户接口 800a可 以包括用于选择推荐模型的更新类型的栏位801。栏位801可以是允许用户选择更新类型 的任意形式的栏位,诸如图8A中所示的下拉菜单。栏位801可以允许用户选择定期更新的 条目801a以选择离线模式或者选择在新活动时更新的条目801b以选择在线模式。用户接 口 800a还可以包括栏位803,其允许用户在其选择了离线模式的情况下选择更新的频率。 栏位803可以是允许用户选择频率的任意形式的栏位,诸如图8A中所示的下拉菜单。栏位 803可以包括条目803a-803d,其允许用户在每天更新(803a)、每周更新(803b)、每小时更 新(803c)或指定小时数(803d)中进行选择。用户接口 800a还可以包括指示符805,其允 许用户保存对推荐设置所做出的改变。
[0135] 图8B图示在UEIOla上执行的应用Illa的用户接口 800b,其例如与向UEIOla 下载应用相关联。用户接口 800b可以包括允许用户在用于更新推荐模型的离线模式与用 于更新推荐模型的在线模式之间进行选择的指示符807。如图8B中由指示符807所示,推 荐模型当前处于离线更新模式。用户接口 800b还可以包括用户可以选择下载的推荐应用 809a-809d。在一个实施例中,推荐应用的顺序可以指示与特定应用相关联的推荐等级,从 而第一推荐应用(809a)可以指示例如与较低等级的推荐应用相比更高的推荐。作为示例, 用户接口 800b可以与基于定期更新安排而在时间Ttl进行了最后更新的推荐模型相关联。
[0136] 图8C图示了处于如指示符807所示的在线模式的来自图8B的用户接口 800b。在 在线模式,推荐模型可能已经基于关联于UEIOla的用户的活动而在晚于与图8B相关联的 Ttl的时间点进行了更新。作为示例,用户自推荐模型上次被更新以来可能已经与另一个好 友分享了应用。基于该新活动,在线模式的推荐模型可以基于该新活动而更新推荐而使得 所推荐条目的顺序可以发生变化并且条目自身可以有所变化。例如,推荐应用809b和809c 已经交换了位置并且推荐应用809a不再出现在推荐应用的列表上。相反,推荐应用809e 现在是最强烈推荐的应用。
[0137] 图8D图示了与显示推荐应用的细节相关联的界面800c。用户接口 800c可以包括 下载图标811a,用户可以选择它以将应用下载到UE101a。用户接口 800c还可以包括分享 图标811b,用户可以选择它以与另一用户分享推荐应用。用户选择下载图标811a或811b 图标中的任一个可以构成活动,该活动例如将使得相关联推荐模型在该推荐模型处于在线 模式的情况下更新推荐的活动,并且被用来在出现与更新时间相关联的具体安排时间时以 离线模式更新推荐模型。
[0138] 图8E图示了与显示推荐应用的细节相关联的用户接口 800c,其包括关联指示符 813,后者指示另一用户(例如,连接的用户)执行了与推荐应用相关联的一些类型的活 动。作为示例,用户的好友可能已经下载了应用并对其进行了评价。该信息可以在用户接 口SOOe中提供以向与UEIOla相关联的用户提供特别指示该用户的好友下载并评价了所 推荐应用的附加信息。通过提供该附加信息,与UElOla相关联的用户可以理解到受尊重的 好友下载并评价了所推荐应用。这样的信息例如与对该应用进行评价的并未连接至该用户 的一个或多个其它用户相关联的信息相比对于该用户而言更有用。在一个实施例中,为了 将关联指示符的评价与来自并未连接至UEIOla的用户的一个或多个其它用户的评价加 以区分,关联指示符813可以与具体颜色或具体符号相关联。在一个实施例中,如图SFK 示,关联指示符813可以包括指示与评价相关联的特定用户的附加信息。作为示例,关联指 示符813可以包括连接至与UEIOla相关联的用户的其它连接用户的姓名。
[0139] 这里所描述的用于关于基于推荐模型的增量更新而确定一个或多个推荐的处理 有利地可以经由软件、硬件、固件或者软件和/或固件和/或硬件的组合来实施。例如,这 里所描述的处理有利地可以经由(多个)处理器、数字信号处理(DSP)芯片、专用集成电路 (ASIC)、现场可编程门阵列(FPGA)等来实施。这样的用于执行所描述功能的示例性硬件在 以下进行详细描述。
[0140] 图9图示了可以在其上实施本发明的实施例的计算机系统900。虽然计算机900 关于特定装置或设备进行了描绘,但是想到图9内的其它装置或设备(例如,网络元件、月艮 务器等)能够部署系统900的所图示的硬件和组件。计算机系统900被编程(例如,经由计 算机程序代码或指令)为如这里所描述的基于推荐模型的增量更新来确定一个或多个推 荐,并且包括诸如总线910之类的通信机构,其用于在计算机系统900的其它内部和外部组 件之间输送信息。信息(也称作数据)被表示为可测量现象的物理表达形式,通常是电压, 但是在其它实施例中这样的现象包括诸如磁、电磁、压力、化学、生物、分子、原子、亚原子和 量子交互之类的现象。例如,北侧和南侧磁场或者零和非零电压表示二元数位(比特)的 两个状态(〇,1)。其它现象能够表示更高基础的数位。测量之前的多个同时量子状态的叠 加表示量子比特(qubit)。一个或多个数位的序列构成被用来表示字符的编号或代码的数 字数据。在一些实施例中,称作模拟数据的信息由特定范围内的可测量数值的近似连续统 所表示。计算机系统900或者其部分构成了用于执行基于推荐模型的增量更新来执行确定 一个或多个推荐的一个或多个步骤的装置。
[0141] 总线910包括信息的一个或多个并行导体以使得信息在耦合至总线910的设备之 间快速传输。用于处理信息的一个或多个处理器902与总线910进行耦合。
[0142] 处理器(或多个处理器)902对如与基于推荐模型的增量更新来确定一个或多个 推荐相关的计算机程序代码所指定的信息执行一组运算。该计算机程序代码时指令或声明 的集合,其提供供处理器和/或计算机系统用来执行指定功能的操作的指令。代码例如可 以以被编译为处理器的本地指令集合的计算机编程语言进行编写。该代码还可以直接使用 本地指令集合(例如,机器语言)进行编写。该组操作包括从总线910取得信息以及将信息 置于总线910上。该组操作通常还包括比较两个或更多信息单元,移动信息单元的位置,以 及将两个或多个信息单元进行合并,诸如通过相加或线程或者如0R、异或OR(XOR)和AND。 该操作集合中能够由处理器所执行的每个操作通过被称作指令的信息向处理器进行表示, 诸如一个或多个数位的操作代码。要由处理器902所执行的诸如操作代码序列的操作序列 构成了处理器指令,其也被称作计算机系统指令或者简单地计算机指令。除其它之外,处理 器可以单独或作为组合地被实施为机械、电、磁、光、化学或量子组件。
[0143] 计算机系统900还包括耦合至总线910的存储器904。诸如随机访问存储器(RAM) 或者任意其它动态存储设备的存储器904存储包括用于基于推荐模型的增量更新来确定 一个或多个推荐的处理器指令在内的信息。动态存储器允许存储于其中的信息由计算机系 统900所改变。RAM允许存储在被称作存储器地址的位置处的信息单元独立于相邻地址的 信息进行存储和检索。存储器904还被处理器902用来在处理器指令执行期间存储临时数 值。计算机系统900还包括只读存储器(ROM) 906或者耦合至总线910以便存储包括并不 由计算机系统900所改变的指令在内的静态信息的其它静态存储设备。一些存储器由易失 性存储所组成,其在失去供电时丢失存储于其上的信息。诸如磁盘、光盘或闪存卡的非易失 性(持久)存储设备908也耦合至总线910,以用于存储包括指令在内的信息,该信息即使 在计算机系统900关机或者以其它方式失去供电时也得以保持。
[0144] 包括用于基于推荐模型的增量更新来确定一个或多个推荐的指令在内的信息被 从外部输入设备912提供至总线910以便由处理器使用,该外部输入设备912诸如包含由 人类用户进行操作的字母数字按键的键盘或者传感器。传感器检测其附近的状况并且将那 些检测变换为与用来表示计算机系统900中的信息的可测量现象相兼容的物理表达形式。 主要用于与人进行交互的耦合至总线910的其它外部设备包括显示设备914,诸如阴极射 线管(CRT)、液晶显示器(LCD)、发光二极管(LED)显示器、有机LED(OLED)显示器、等离子 屏幕或者用于呈现文本或图像的打印机,以及诸如鼠标、轨迹球、光标方向键或运动传感器 之类的用于控制显示器914上所呈现的小型光标图像的位置并且发出与显示器914上所呈 现的图形要素相关联的命令的指向设备916。在一些实施例中,例如在计算机系统900在 没有用户输入的情况下自动执行所有功能的实施例中,能够省略一个或多个外部输入设备 912、显示设备914和指向设备916。
[0145] 在所图示的实施例中,诸如专用集成电路(ASIC)920之类的专用硬件耦合至总线 910。该专用硬件被配置为出于特殊目的而足够快速地执行并非由处理器902所执行的操 作。ASIC的示例包括用于为显示器914生成图像的图形加速卡、用于对网络上所发送的消 息进行加密和解密的密码板、语音识别以及针对特殊外部设备的接口,该特殊外部设备诸 如重复执行以硬件实施更为有效的一些复杂操作序列的机器人手臂和医疗扫描设备。
[0146] 计算机系统900还包括耦合至总线910的通信接口 970的一个或多个实例。通信 接口 970向诸如打印机、扫描仪和外部磁盘之类的利用其自己的处理器进行操作的各种外 部设备提供单向或双向通信耦合。通常,是与连接至本地网络980的网络链路978进行耦 合,具有其自己的处理器的各种外部设备连接至该本地网络980。例如,通信接口 970可以 是个人计算机上的并行端口或串行端口或者是通用串行总线(USB)端口。在一些实施例 中,通信接口 970是综合业务数字网络(ISDN)卡或者数字订户线路(DSL)卡,或者向相对 应类型的电话线路提供信息通信连接的电话调制解调器。在一些实施例中,通信接口是将 总线910上的信号转换为用于同轴线缆上的通信连接的信号或者用于光纤线缆上的通信 连接的光学信号的线缆调制解调器。作为另一个示例,通信接口 970可以是用于向诸如以 太网的兼容局域网(LAN)提供数据通信连接的LAN卡。也可以实施无线链路。对于无线链 路而言,通信接口 970发送或者接收或者既发送又接收包括红外和光学信号在内的电子、 声音或电磁信号,其承载诸如数字数据之类的信息流。例如,在诸如类似蜂窝电话的移动电 话的无线手持设备中,通信接口 970包括被称作无线电收发器的无线电带电磁传送器和接 收器。在某些实施例中,通信接口 970使得从UE101到通信网络105的连接能够用于基于 推荐模型的增量更新来确定一个或多个推荐。
[0147] 如这里所使用的术语"计算机可读介质"是指参与向处理器902提供包括用于执 行的指令在内的信息的任意介质。这样的介质可以采取许多形式,包括但并不局限于计算 机可读存储介质(例如,非易失性媒体、易失性媒体)和传输媒体。诸如非易失性媒体的非 瞬时媒体例如包括光盘或磁盘,诸如存储设备908。易失性媒体例如包括动态存储器904。 传输媒体例如包括双绞线线缆、同轴线缆、铜线、光纤线缆以及通过没有线路或线缆的空间 行进的载波,诸如光波或者包括无线电、光学和红外波在内的电磁波。信号包括通过传输媒 体进行传送的振幅、频率、相位、极性或其它物理属性的人为瞬态变化。一般形式的计算机 可读媒体例如包括软盘、柔性盘、硬盘、磁带、任意其它磁性介质、CD-ROM、CDRW、DVD、任意其 它光学介质、打孔卡、纸带、光学标记页、具有孔洞图案的其它物理介质或者其它可光学识 别的指示、RAM、PROM、EPROM、闪存EPROM、EEPR0M、闪存、任意其它存储器芯片或卡盒、载波, 或者计算机能够从其进行读取的任意其它介质。术语计算机可读存储介质在这里被用来指 代除传输媒体之外的任意计算机可读介质。
[0148] 在一个或多个有形媒体中编码的逻辑包括计算机可读存储媒体上的处理器指令 或者诸如ASIC920的专用硬件之一或其二者。
[0149] 网络链路978通常使用传输媒体通过一个或多个网络向使用或处理信息的其它 设备提供信息。例如,网络链路978可以通过局域网980提供到主机计算机982或者到由 因特网服务提供商(ISP)所操作的设备984的连接。ISP设备984进而通过网络中目前一 般被称作因特网990的公共全球分组交换通信网络来提供数据通信服务。
[0150] 称作服务器主机998的连接至因特网的计算机存放响应于通过因特网所接收的 信息而提供服务的处理。例如,服务器主机992存放提供表示视频数据的信息以便在显示 器914进行呈现的处理。预见到系统900的组件能够在例如主机982或服务器991的其它 计算机系统内以各种配置进行部署。
[0151] 本发明的至少一些实施例涉及使用计算机系统900来实施这里所描述的一些或 所有技术。根据本发明的一个实施例,那些技术由计算机系统900响应于处理器902执行 存储器904中所包含的一个或多个处理器指令的一个或多个序列来执行。这种也被称作计 算机指令、软件和程序代码的指令可以从诸如存储设备908或网络链路978的另一计算机 可读介质读入存储器904。执行存储器904中所包含的指令序列使得处理器902执行这里 所描述的一个或多个方法步骤。在可替换实施例中,可以替代软件或者与之相结合地使用 诸如ASIC920之类的硬件。因此,除非这里明确另外指出,否则本发明的实施例并不局限 于硬件和软件的任何具体组合方式。
[0152] 通过网络链路978以及通过通信接口 970的其它网络进行传送的信号往来于计算 机系统900运送信息。除其它之外,计算机系统900能够通过网络链路978和通信接口 970 而通过网络980、990发送和接受包括程序代码在内的信息。在使用因特网990的示例中, 服务器主机998通过因特网990、ISP设备984、本地网络980和通信接口 970传送由从计 算机900所发送的消息所请求的用于特定应用的程序代码。所接收的代码可以在其被接收 时由处理器902执行,或者可以存储在存储器904或存储设备908中或者存储在任意其它 非易失性存储中以便随后执行,或者上述的二者。以这种方式,计算机系统900可以获取载 波上的信号形式的应用程序代码。
[0153] 在向处理器902运送指令或数据或者其二者的一个或多个序列以便执行时可以 涉及到各种形式的计算机可读媒体。例如,指令和数据最初可以承载于诸如主机982之类 的远程计算机的磁盘上。该远程计算机将指令和数据加载到其动态存储器中并且使用调制 解调器通过电话线路发送该指令和数据。计算机系统900本地的调制解调器接收电话线路 上的指令和数据并且使用红外传送器将该指令和数据转换为用作网络链路978的红外载 波上的信号。用作通信接口 970的红外检测器接收红外信号中所承载的指令和数据并且将 表示该指令和数据的信息放到总线910上。总线910将该信息送至存储器904,处理器902 从那里获取指令并且使用随指令发送的一些数据执行该指令。存储器904中所接收的指令 和数据可选地可以在被处理器902执行之前或之后存储在存储设备908上。
[0154] 图10图示了可以在其上实施本发明的芯片组或芯片1000。芯片组1000被编程 为如这里所描述的基于推荐模型的增量更新来确定一个或多个推荐,并且例如包括参考图 9所描述的整合在一个或多个物理封装(例如,芯片)的处理器和存储器组件。作为示例, 物理封装包括结构组装件(例如,基板)上的一个或多个材料、组件和/或线路的部署以提 供诸如物理强度、尺寸节约和/或电气交互限制的一个或多个特性。想到在某些实施例中, 芯片组1000可以以单个芯片来实施。进一步预见到,在某些实施例中,芯片组或芯片1000 可以被实施为单个"片上系统"。进一步想到,在某些实施例中,例如将不会使用单独的ASIC 并且如这里所描述的所有相关功能都将由一个或多个处理器来执行。芯片组或芯片1000 或者其部分构成了用于执行提供与功能可用性相关联的用户接口导航信息的一个或多个 步骤的装置。芯片组或芯片1000或者其部分构成了用于执行基于推荐模型的增量更新而 确定一个或多个推荐的一个或多个步骤的装置。
[0155] 在一个实施例中,芯片组或芯片1000包括通信机制,诸如用于在芯片组1000的组 件之间输送信息的总线1001。处理器1003具有到总线1001的连接以执行例如存储在存储 器1005中的指令和处理信息。处理器1003可以包括一个或多个处理核,其中每个核被配 置为独立执行。多核处理器使得能够在单个物理封装内进行多重处理。多核处理器的示例 包括两个、四个、八个或更多数量的处理核。可替换地或除此之外,处理器1003可以包括经 由总线1001串联配置的一个或多个微处理器以使得能够对指令、管道和多线程进行独立 执行。处理器1003还可以伴随有一个或多个专用组件以执行某些处理功能和任务,诸如一 个或多个数字信号处理器(DSP) 1007或者一个或多个专用集成电路(ASIC) 1009。DSP1007 通常被配置为独立于处理器1003实时处理实际信号(例如,声音)。类似地,ASIC1009能 够被配置为无法由更为通用的处理器轻易执行的专用功能。用于辅助执行这里所描述的发 明功能的其它专用组件可以包括一个或多个现场可编程门阵列(FPGA)(未示出)、一个或 多个控制器(未示出)或者一个或多个其它专用计算机芯片。
[0156] 在一个实施例中,芯片组或芯片1000仅包括一个或多个处理器以及支持和/或涉 及和/或用于一个或多个处理器的一些软件和/或固件。
[0157] 处理器1003和伴随组件经由总线1001而具有到存储器1005的连接。存储器1005 包括动态存储器(例如,RAM、磁盘、可写入光盘等)和静态存储器(例如,ROMXD-ROM等), 以便存储在被执行时实施这里所描述的发明步骤以基于推荐模型的增量更新来确定一个 或多个推荐的可执行指令。存储器1005还存储与发明步骤的执行相关联或者由其所生成 的数据。
[0158] 图11是根据一个实施例的能够在图1的系统中进行操作的用于通信的移动终端 (例如,手机)的示例性组件的示图。在一些实施例中,移动终端1101或者其一部分构成了 用于执行基于推荐模型的增量更新来确定一个或多个推荐的一个或多个步骤的装置。总体 上,无线电接收器经常在前端和后端特性方面进行定义。接收器的前端内包含所有的射频 (RF)电路而后端则包含所有的基带处理电路。如本申请中所使用的,术语电路是指以下二 者:(1)仅硬件的电路实施方式实现(诸如仅以模拟和/或数字电路的实施方式);(2)电 路和软件(和/或固件)的组合(诸如,在可应用与特定环境的情况下,共同工作以使得诸 如移动电话或服务器的装置执行各种功能的包括(多个)数字信号处理器的(多个)处理 器、软件和(多个)存储器的组合)。"电路"的这个定义应用于本申请中使用该术语的所 有情况,包括任意权利要求。作为另一个示例,如在本申请中所使用的并且如果可应用于特 定环境,术语"电路"还将覆盖仅为处理器(或多个处理器)及其伴随的软件和/或固件的 实施方式。如果可应用于特定环境,则术语"电路"还将覆盖作移动电话中的基带集成电路 或应用处理器集成电路,或者蜂窝网络设备或其它网络设备中类似的集成电路。
[0159] 电话的相关内部组件包括主控制单元(MCU) 1103、数字信号处理器(DSP) 1105以 及包括麦克风增益控制单元和扬声器增益控制单元在内的接收器/传送器单元。主显示单 元1107向用户提供显示以支持各种应用和移动终端功能,该功能执行或支持基于推荐模 型的增量更新来确定一个或多个推荐的步骤。显示器1107包括显示电路,其被配置为显示 移动终端(例如,移动电话)的用户接口的至少一部分。因此,显示器1107和显示电路被 配置为有助于移动终端的至少一些功能的用户控制。音频功能电路1109包括麦克风1111 以及对从麦克风1111输出的语音信号进行放大的麦克风放大器。从麦克风1111所输出的 经放大的语音信号被送至编码器/解码器(CODEC) 1113。
[0160] 无线电部1115对功率进行放大并且转换频率以便经由天线1117与包括在移动通 信系统中的基站进行通信。功率放大器(PA) 1119和传送器/调制电路对MCU1103进行操 作响应,其中如本领域已知的,来自PA1119的输出耦合至双工器1121或循环器或天线开 关。PA1119还耦合至电池接口和功率控制单元1120。
[0161] 在使用中,移动终端1101的用户向麦克风1111中讲话并且其声音连同任意所检 测到的背景噪声一起被转换为模拟电压。该模拟电压随后通过模数转换器(ADC) 1123而被 转换为数字信号。控制单元1103将数字信号送至DSP1105中以便在其中处理,诸如话音 编码、信道编码、加密和交织。在一个实施例中,经处理的语音信号被并未单独示出的单元 使用蜂窝传输协议进行编码,该蜂窝传输协议诸如全域进化增强数据速率(EDGE)、通用分 组无线服务(GPRS)、全球移动通信系统(GSM)、因特网协议多媒体子系统(IMS)、通用移动 电信系统(UMTS)等,以及任意其它适当无线介质,例如全球微波接入互操作性(WiMX)、长 期演进(LTE)网络、码分多址(CDM)、宽带码分多址(WCDM)、无线保真度(WiFi)、卫星等, 或者其任意组合。
[0162] 编码信号随后被送至均衡器1125以便对通过空中传输期间出现的诸如相位和振 幅失真之类的任何依赖于频率的损伤进行补偿。在对比特流进行均衡之后,调制器1127将 信号与RF接口 1129中所生成的RF信号进行组合。调制器1127利用频率或相位调制而生 成正弦波。为了准备用于传输的信号,上变频器1131将调制器1127所输出的正弦波与合 成器1133所生成的另一个正弦波进行合并以实现所期望的传输频率。该信号随后通过PA 1119发送以将信号增加至适当功率水平。在实际系统中,PA1119用作可变增益放大器,其 增益由DSP1105根据从网络基站所接收的信息来控制。该信号随后在双工器1121内进行 滤波并且可选地被发送至天线耦合器1135以匹配阻抗而提供最大功率传输。最后,该信号 经由天线1117传送至基站。可以提供自动增益控制(AGC)以控制接收器的最后级的增益。 该信号可以从那里被转发至可以为另一部蜂窝电话、任意其它移动电话或连接至公共交换 电话网络(PSTN)或其它电话网络的固话的远程电话。
[0163] 传送至移动终端1101的语音信号经由天线1117被接收并且立即由低噪声放大器 (LNA) 1137所放大。下变频器1139降低载波频率同时解调器1141剥离RF而仅留下数字比 特流。该信号随后通过均衡器1125并且由DSP1105进行处理。数模转换器(DAC) 1143对 该信号进行转换并且所产生的输出通过扬声器1145而被传送至用户,这些所有都处于能 够被实施为中央处理器(CPU)的主控制单元(MCU) 1103的控制之下。
[0164]MCU1103从键盘1147接收包括输入信号在呢id各种信号。与其它用户输入组 件(例如,麦克风1111)相结合的键盘1147和/或MCU1103包括用于管理用户输入的用 户接口电路。MCU1103运行用户接口软件以有助于用户对移动终端1101用于基于推荐模 型的增量更新来确定一个或多个推荐的至少一些功能进行控制。MCU1103还向分别显示器 1107和话音输出切换控制器输送显示命令和切换命令。另外,MCU1103与DSP1105交换 信息并且能够访问可选地所结合的SM卡1149和存储器1151。此外,M⑶1103执行终端 所需的各种控制功能。根据实施方式,DSP1105可以对语音信号执行各种常规的数字处理 功能。此外,DSP1105从麦克风1111所检测的信号确定本地环境的背景噪声水平并且将 麦克风1111的增益设置为所选择的用于对移动终端1101的用户的自然趋势进行补偿的水 平。
[0165]CODEC1113包括ADC1123和DAC1143。存储器1151存储包括来电话音数据在内 的各种数据并且能够存储包括例如经由全球因特网所接收的音乐数据在内的其它数据。软 件模块可以存在于RAM存储器、闪存、寄存器或者本领域已知的任意其它形式的可写入存 储介质中。存储器设备1151可以是单个存储器、⑶、DVD、ROM、RAM、EEPR0M、光学存储、磁盘 存储、闪存存储或者能够存储数字数据的任意其它非易失性存储介质,但是并不局限于此。
[0166] 可选地所结合的SIM卡1149例如载有诸如蜂窝电话号码、载体供应服务、订阅细 节和安全信息之类的重要信息。SIM卡1149主要用来在无线电网络上识别移动终端1101。 卡1149还包含用于存储个人电话号码登记、文本消息和用户特定移动终端设置的存储器。
[0167] 虽然已经结合多个实施例和实施方式对本发明进行了描述,但是本发明并不局限 于此而是覆盖落入所附权利要求范围之内的各种显然的修改和等同配置形式。虽然本发明 的特征在权利要求中以某些组合形式进行表达,但是想到这些特征能够以任意组合形式和 顺序进行部署。
【权利要求】
1. 一种方法,包括有助于处理和/或处理⑴数据和/或⑵信息和/或⑶至少一 个信号,所述(1)数据和/或(2)信息和/或(3)至少一个信号至少部分地基于以下: 至少部分地基于一个或多个用户组、一个或多个项目组、用于与活动信息相关联的至 少一个推荐模型的至少一个更新时间或者其组合的、所述活动信息到多个子集的分类; 至少部分地基于所述分类而对所述活动信息的、用以确定是否执行所述至少一个推荐 模型的增量更新的处理;以及 至少部分地基于所述至少一个推荐模型、所述增量更新或者其组合的一个或多个推 荐。
2. 根据权利要求1所述的方法,其中针对所述增量更新,所述(1)数据和/或(2)信息 和/或(3)至少一个信号进一步至少部分地基于以下: 处理已经在所述至少一个更新时间之后出现的与所述一个或多个用户组、所述一个或 多个项目组或者其组合相关联的所述活动信息。
3. 根据权利要求1和2中任一项所述的方法,其中所述(1)数据和/或(2)信息和/ 或(3)至少一个信号进一步至少部分地基于以下: 对以离线模式、在线模式或者其组合操作所述至少一个推荐模型的至少一个确定, 其中所述在线模式至少部分地基于所述增量更新、在所述至少一个更新时间之后出现 的所述活动信息的至少一部分或者其组合确定所述一个或多个推荐;并且 其中所述离线模式至少部分地基于所述至少一个推荐模型、在所述至少一个更新时间 之前出现的所述活动信息的至少一部分或者其组合确定所述一个或多个推荐。
4. 根据权利要求3所述的方法,所述⑴数据和/或⑵信息和/或(3)至少一个信 号进一步至少部分地基于以下: 至少部分地基于用户输入、用户偏好或者其组合而对是以所述离线模式、所述在线模 式还是其组合进行操作的至少一个确定。
5. 根据权利要求1-4中任一项所述的方法,其中所述⑴数据和/或⑵信息和/或 (3)至少一个信号进一步至少部分地基于以下: 对至少部分地基于所述一个或多个用户组、所述一个或多个用户项目组或者其组合中 的至少第二成员而针对所述一个或多个用户组、所述一个或多个用户项目组或者其组合中 的至少第一成员生成所述一个或多个推荐的请求; 对所述活动信息的、用以确定所述至少第一成员和所述至少第二成员之间的相似度的 处理;以及 至少部分地基于相似度信息对所述一个或多个推荐的至少一个确定。
6. 根据权利要求5所述的方法,其中所述⑴数据和/或⑵信息和/或(3)至少一 个信号进一步至少部分地基于以下: 对至少部分地基于在所述至少一个更新时间之后出现的所述活动信息的至少一部分 而执行所述增量更新的至少一个确定。
7. 根据权利要求6所述的方法,所述⑴数据和/或⑵信息和/或(3)至少一个信 号进一步至少部分地基于以下: 所述至少第一成员和所述至少第二成员与在所述至少一个更新时间之前出现的所述 活动信息的至少一部分相关联的至少一个确定;以及 对至少部分地基于与所述第一成员、所述第二成员或者所述组合相关联的在所述至少 一个更新时间之后出现的所述活动信息的至少一部分而执行所述增量更新的至少一个确 定。
8. 根据权利要求1-7中任一项所述的方法,所述⑴数据和/或⑵信息和/或(3) 至少一个信号进一步至少部分地基于以下: 至少部分地基于所述一个或多个推荐的至少一个广告; 关于所述至少一个广告的与一个或多个用户相关联的活动信息,其中所述一个或多个 用户与至少一个用户相关联;以及 所述至少一个广告对所述至少一个用户的呈现,所述至少一个广告包括至少部分地基 于所述活动信息的指示。
9. 根据权利要求8所述的方法,其中所述⑴数据和/或⑵信息和/或(3)至少一 个信号进一步至少部分地基于以下: 至少部分地基于所述至少一个用户与所述一个或多个用户之间通过一个或多个社交 网络站点、一个或多个网站、一个或多个组织或者其组合的一个或多个连接而对与所述至 少一个用户相关联的所述一个或多个用户的至少一个确定。
10. 根据权利要求8和9中任一项所述的方法,其中所述(1)数据和/或(2)信息和/ 或(3)至少一个信号进一步至少部分地基于以下: 至少部分地基于至少一种颜色、至少一个符号、至少一个评价、对应于所述一个或多个 的用户中的一个或多个用户的至少一个标识符或者其组合的对所述指示的可视化。
11. 一种装置,包括: 至少一个处理器;以及 包括用于一个或多个程序的计算机程序代码的至少一个存储器,所述至少一个存储 器和所述计算机程序代码被配置为与所述至少一个处理器一起,使得所述装置至少执行以 下: 至少部分地使得活动信息至少部分地基于一个或多个用户组、一个或多个项目组、用 于与所述活动信息相关联的至少一个推荐模型的至少一个更新时间或者其组合而被分类 为多个子集; 至少部分地基于所述分类而处理和/或有助于处理所述活动信息以确定是否执行所 述至少一个推荐模型的增量更新;以及 至少部分地基于所述至少一个推荐模型、所述增量更新或者其组合而确定一个或多个 推荐。
12. 根据权利要求11所述的装置,其中所述增量更新至少部分地包括:所述装置被进 一步使得: 处理和/或有助于处理已经在所述至少一个更新时间之后出现的与所述一个或多个 用户组、所述一个或多个项目组或者其组合相关联的所述活动信息。
13. 根据权利要求11和12中任一项所述的装置,其中所述装置进一步被使得: 确定以离线模式、在线模式或者其组合操作所述至少一个推荐模型, 其中所述在线模式至少部分地基于所述增量更新、在所述至少一个更新时间之后出现 的所述活动信息的至少一部分或者其组合而确定所述一个或多个推荐;并且 其中所述离线模式至少部分地基于所述至少一个推荐模型、在所述至少一个更新时间 之前出现的所述活动信息的至少一部分或者其组合而确定所述一个或多个推荐。
14. 根据权利要求13所述的装置,其中所述装置进一步被使得: 至少部分地基于用户输入、用户偏好或者其组合而确定是以所述离线模式、所述在线 模式还是其组合进行操作。
15. 根据权利要求12-14中任一项所述的装置,其中所述装置进一步被使得: 确定对至少部分地基于所述一个或多个用户组、所述一个或多个用户项目组或者其组 合中的至少第二成员而针对所述一个或多个用户组、所述一个或多个用户项目组或者其组 合中的至少第一成员生成所述一个或多个推荐的请求; 处理和/或有助于处理所述活动信息以确定所述至少第一成员和所述至少第二成员 之间的相似度;以及 至少部分地基于相似度信息而确定所述一个或多个推荐。
16. 根据权利要求15所述的装置,其中所述装置进一步被使得: 确定至少部分地基于在所述至少一个更新时间之后出现的所述活动信息的至少一部 分而执行所述增量更新。
17. 根据权利要求16所述的装置,其中所述装置进一步被使得: 确定所述至少第一成员和所述至少第二成员与在所述至少一个更新时间之前出现的 所述活动信息的至少一部分相关联;以及 确定至少部分地基于与所述第一成员、所述第二成员或者其组合相关联的在所述至少 一个更新时间之后出现的所述活动信息的至少一部分而执行所述增量更新。
18. 根据权利要求11-17中任一项所述的装置,其中所述装置进一步被使得: 至少部分地基于所述一个或多个推荐而确定至少一个广告; 确定关于所述至少一个广告的与一个或多个用户相关联的活动信息,其中所述一个或 多个用户与至少一个用户相关联;并且 至少部分地使得所述至少一个广告对所述至少一个用户呈现,所述至少一个广告包括 至少部分地基于所述活动信息的指示。
19. 根据权利要求18所述的装置,其中所述装置进一步被使得: 至少部分地基于所述至少一个用户与所述一个或多个用户之间通过一个或多个社交 网络站点、一个或多个网站、一个或多个组织或者其组合的一个或多个连接而确定与所述 至少一个用户相关联的所述一个或多个用户。
20. 根据权利要求18和19中任一项所述的装置,其中所述装置进一步被使得: 至少部分地基于至少一种颜色、至少一个符号、至少一个评价、对应于所述一个或多个 的用户中的一个或多个用于的至少一个标识符或者其组合而至少部分地使得对所述指示 进行可视化。
21. -种方法,包括: 至少部分地使得活动信息至少部分地基于一个或多个用户组、一个或多个项目组、用 于与所述活动信息相关联的至少一个推荐模型的至少一个更新时间或者其组合而被分类 为多个子集; 至少部分地基于所述分类而处理和/或有助于处理所述活动信息以确定是否执行所 述至少一个推荐模型的增量更新;以及 至少部分地基于所述至少一个推荐模型、所述增量更新或者其组合而确定一个或多个 推荐。
22. 根据权利要求21所述的方法,其中所述增量更新至少部分包括: 处理和/或有助于处理已经在所述至少一个更新时间之后出现的与所述一个或多个 用户组、所述一个或多个项目组或者其组合相关联的所述活动信息。
23.根据权利要求21和22中任一项所述的方法,进一步包括: 确定以离线模式、在线模式或者其组合操作所述至少一个推荐模型, 其中所述在线模式至少部分地基于所述增量更新、在所述至少一个更新时间之后出现 的所述活动信息的至少一部分或者其组合而确定所述一个或多个推荐;并且 其中所述离线模式至少部分地基于所述至少一个推荐模型、在所述至少一个更新时间 之前出现的所述活动信息的至少一部分或者其组合而确定所述一个或多个推荐。
24.根据权利要求23所述的方法,进一步包括: 至少部分地基于用户输入、用户偏好或者其组合而确定是以所述离线模式、所述在线 模式还是其组合进行操作。
25.根据权利要求21-24中任一项所述的方法,进一步包括: 确定对至少部分地基于所述一个或多个用户组、所述一个或多个用户项目组或者其组 合中的至少第二成员而针对所述一个或多个用户组、所述一个或多个用户项目组或者其组 合中的至少第一成员生成所述一个或多个推荐的请求; 处理和/或有助于处理所述活动信息以确定所述至少第一成员和所述至少第二成员 之间的相似度;以及 至少部分地基于相似度信息而确定所述一个或多个推荐。
26.根据权利要求25所述的方法,进一步包括: 确定至少部分地基于在所述至少一个更新时间之后出现的所述活动信息的至少一部 分而执行所述增量更新。
27.根据权利要求26所述的方法,进一步包括: 确定所述至少第一成员和所述至少第二成员与在所述至少一个更新时间之前出现的 所述活动信息的至少一部分相关联;以及 确定至少部分地基于与所述第一成员、所述第二成员或者其组合相关联的在所述至少 一个更新时间之后出现的所述活动信息的至少一部分而执行所述增量更新。
28.根据权利要求21-27中任一项所述的方法,进一步包括: 至少部分地基于所述一个或多个推荐而确定至少一个广告; 确定关于所述至少一个广告的与一个或多个用户相关联的活动信息,其中所述一个或 多个用户与至少一个用户相关联;以及 至少部分地使得所述至少一个广告对所述至少一个用户呈现,所述至少一个广告包括 至少部分地基于所述活动信息的指示。
29.根据权利要求28所述的方法,进一步包括: 至少部分地基于所述至少一个用户与所述一个或多个用户之间通过一个或多个社交 网络站点、一个或多个网站、一个或多个组织或者其组合的一个或多个连接而确定与所述 至少一个用户相关联的所述一个或多个用户。
30. 根据权利要求28和29中任一项所述的方法,进一步包括: 至少部分地基于至少一种颜色、至少一个符号、至少一个评价、对应于所述一个或多个 的用户中的一个或多个用户的至少一个标识符或者其组合而至少部分地使得对所述指示 进行可视化。
31. 根据权利要求11-20中任一项所述的装置,其中所述装置是移动电话,所述移动电 话进一步包括: 用户接口电路和用户接口软件,被配置为通过使用显示器而有助于对所述移动电话的 至少一些功能的用户控制并且被配置为响应用户输入;以及 显示器和显示电路,被配置为显示所述移动电话的用户接口的至少一部分,所述显示 器和显示电路被配置为有助于对所述移动电话的至少一些功能的用户控制。
32. -种装置,包括用于执行根据权利要求21-30中任一项所述的方法的装置。
33. 根据权利要求32所述的装置,其中所述装置是移动电话,所述移动电话进一步包 括: 用户接口电路和用户接口软件,被配置为通过使用显示器而有助于对所述移动电话的 至少一些功能的用户控制并且被配置为响应用户输入;以及 显示器和显示电路,被配置为显示所述移动电话的用户接口的至少一部分,所述显示 器和显示电路被配置为有助于对所述移动电话的至少一些功能的用户控制。
34. -种计算机可读存储介质,载有一个或多个指令的一个或多个序列,所述一个或多 个指令的一个或多个序列在被一个或多个处理器执行时,使得装置至少执行根据权利要求 21-30中任一项所述的方法。
35. -种计算机程序产品,包括一个或多个指令的一个或多个序列,所述一个或多个 指令的一个或多个序列在被一个或多个处理器执行时,使得装置至少执行根据权利要求 21-30中任一项所述的方法的步骤。
36. -种方法,包括有助于对至少一个接口的访问,所述至少一个接口被配置为允许对 至少一个服务进行访问,所述至少一个服务被配置为至少执行根据权利要求21-30中任一 项所述的方法。
37. -种方法,包括有助于处理和/或处理⑴数据和/或⑵信息和/或(3)至少一 个信号,所述(1)数据和/或(2)信息和/或(3)至少一个信号至少部分地基于根据权利 要求21-30中任一项所述的方法。
38. -种方法,包括有助于创建和/或有助于修改(1)至少一个设备用户接口元素和/ 或(2)至少一个设备用户接口功能,所述(1)至少一个设备用户接口元素和/或(2)至少 一个设备用户接口功能至少部分地基于根据权利要求21-30中任一项所述的方法。
【文档编号】G06F17/30GK104380285SQ201280072582
【公开日】2015年2月25日 申请日期:2012年3月9日 优先权日:2012年3月9日
【发明者】王浩, A·钦, 汪浩, H·布拉马卡尔, A·阿尼奥 申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1