专利名称:使用基于特征的聚类来为推荐感兴趣的项产生定型简表的方法和装置的利记博彩app
技术领域:
本发明涉及用于推荐感兴趣的项诸如电视节目的方法和装置,更特别地,涉及在用户的购买或者观看历史可用前推荐节目和其它感兴趣的项的技术。
背景技术:
随着可用于电视观众的频道数目增加,连同在这种频道上可用的各种节目内容,对于电视观众来说识别感兴趣的电视节目已经变得日益复杂。电子节目指南(EPG)识别可用的电视节目,例如通过名称、时间、日期和频道,并通过允许可用的电视节目按照个人偏好检索和存储便利感兴趣的节目的识别。
已经有一些推荐工具被提出或者被建议用来推荐电视节目和其它感兴趣的项目。电视节目推荐工具例如施加用户偏好给EPG以获得一组推荐的节目,这些节目可能对于一个特定的观众有兴趣。一般说,电视节目推荐工具使用隐式或者显式的技术或者使用上述技术的某种组合来获得观众的偏好。隐式电视节目推荐工具根据从观众的观看历史导出的信息以鲁莽的方式产生电视节目推荐。另一方面,显式电视节目推荐工具明确询问观众关于他们对节目属性的偏好,诸如名称、类型、演员、频道、和日期/时间,以导出观众的简表和产生推荐。
虽然当前可用的推荐工具帮助用户识别感兴趣的项目,但是它们仍然遭受一些限制,如果能够克服这些限制的话,则将极大地改善这种推荐工具的方便性和性能。例如,为能包容广泛的内容,显式推荐工具在初始化时过于单调乏味,要求每一个新的用户回答非常详尽的调查,这些调查非常粗糙地指定用户的偏好。尽管隐式电视节目推荐工具通过观察观看行为不明显地导出简表,但是它们需要长期的时间才能精确。另外,这种隐式电视节目推荐工具至少需要最小量的观看历史来开始做出任何推荐。从而这种隐式电视节目推荐工具在被首次得到时不能做出任何推荐。
因此需要一种方法和装置,它们能够在足够的个人观看历史可用前不明显地推荐项目诸如电视节目。另外,需要一种用于根据第三方的观看习惯为给定用户产生节目推荐的方法和装置。
发明内容
总体上,公开了一种用于给用户推荐感兴趣的项目的方法和装置,诸如电视节目推荐。根据本发明的一个方面,在可得到用户的观看历史或者购买历史前-诸如当用户首次得到推荐器时产生推荐。最初,使用来自一个或者多个第三方的观看历史或者购买历史来给一个特定用户推荐感兴趣的项目。
处理第三方观看或购买历史以产生定型简表(stereotypicalprofile),该简表反映由有代表性的观众所选择的项目的典型模式。每一定型简表是在某些方面彼此相似的项目(数据点)的一个群(cluster)。用户选择感兴趣的定型来用最接近他或她自己的兴趣的项目初始化他或她的简表。
聚类例程把第三方观看或购买历史(数据集)划分为群(cluster),使得在一群中的点(例如电视节目)比任何其它群更接近该群的平均值。使用每一群的平均值,根据在该数据点到每一群之间的距离把一个给定的数据点-诸如电视节目分配给一个群。
还公开了平均值计算例程,用于计算一群的符号平均值(symbolicmean)。对于基于项的平均值计算,在两个项之间的距离计算在项级上执行,而作为结果产生的群平均值由选择的平均值项的特征值组成。这样,选择任何展现最小方差的一个或者多个项来作为该群的平均值。
参考下面详细的说明和附图,可以更完整地理解本发明、以及本发明的进一步的特征和优点。
图1是根据本发明的一个电视节目推荐器的原理框图;图2是取自图1的示例节目数据库的样本表;图3是说明体现本发明原理的图1的定型简表的处理的流程图;图4是说明体现本发明原理的图1的聚类例程的流程图;图5是说明体现本发明原理的图1的平均值计算例程的流程图;图6是说明体现本发明原理的图1的距离计算例程的流程图;图7A是取自一个示例频道特征值发生表中的一个样本表,所述频道特征值发生表为每一类指示每一频道特征值的发生的数目;图7B是取自一个示例特征值对距离表中的一个样本表,所述特征值对距离表指示从图7A所示示例计数中计算的每一特征值对之间的距离;图8是说明体现本发明原理的图1的聚类性能评价例程的流程图。
具体实施例方式
图1表示根据本发明的电视节目推荐器100。如图1所示,示例电视节目推荐器100估计节目数据库200中的节目,以识别一个特定观众感兴趣的节目,所述节目数据库200将在下面结合图2讨论。该组被推荐的节目可以呈现给观众,例如使用采用众所周知的屏上呈现技术的顶置终端/电视(未示出)。虽然这里是在电视节目推荐的上下文中说明了本发明,但是本发明可以应用于任何基于对用户行为的评价,诸如观看历史或者购买历史而自动产生的推荐。
根据本发明的一个特征,电视节目推荐器100可以在用户的观看历史140可得到之前-诸如当用户首次得到电视节目推荐器100时产生电视节目推荐。如图1所示,电视节目推荐器100最初使用来自一个或者多个第三方的观看历史130来给一个特定用户推荐感兴趣的节目。一般说,第三方观看历史130基于一个或者多个样本人群的观看习惯,该样本人群具有代表大量人数的人口统计学特性,诸如年龄、收入、性别和教育。
如图1所示,第三方观看历史130包括一组由给定的人群观看的和未观看的节目。通过观察由给定的人群实际观看的节目来得到被观看的一组节目。通过例如随机采样节目数据库200中的节目来得到未被观看的一组节目。在另一个变更中,根据序号为No.09/819,286的美国专利申请的教导得到未被观看的一组节目,所述美国专利申请在2001年3月28日提交,名称为“An Adaptive Sampling Techniquefor Selecting Negative Examples for Artificial IntelligenceApplications”,转让给本发明的受让人,在这里引用作为参考。
根据本发明的另一个特征,电视节目推荐器100处理第三方观看历史130来产生定型简表,它反映由有代表性的观众所观看的电视节目的典型模式。如下面进一步讨论的,定型简表是一群在某些方面彼此相似的电视节目(数据点)。这样,一个给定的群相应于取自展现一个特定模式的、第三方观看历史130中的一个特定的电视节目段。
根据本发明来处理第三方观看历史130以提供展现某特定模式的节目群。之后,用户可以选择最相关的定型,从而用最接近他或她自己的兴趣的节目初始化他或她的简表。然后根据每个单独用户他们自己的记录样式以及给予节目的反馈,定型简表调整并朝向每一单个用户的特定的、个人观看行为发展。在一个实施例中,当决定节目得分时,可以对取自用户自己的观看历史140的节目比取自第三方观看历史130的节目给予较高的权。
电视节目推荐器100可以被具体化为任何计算设备,诸如个人计算机或者工作站,其包括诸如中央处理单元(CPU)的处理器115、和存储器120,诸如RAM和/或ROM。电视节目推荐器100还可以具体化为例如在顶置终端或者显示器(未示出)中的专用集成电路(ASIC)。另外,电视节目推荐器100可以具体化为许多可得到的电视节目推荐器,诸如由位于加利福尼亚的Sunnyvale市的Tivo公司生产的市售TivoTM系统,或者在下述美国专利申请中说明的序号No.09/466,406,在1999年12月17日提交,名称为“Method andApparatus for Recommending Television Programming UsingDecision Tress”、序号No.09/498,271,于2000年2月4日提交,名称为“Bayesian TV Show Recommender”、和序号No.09/627,139,在2000年7月27日提交,名称为“Three-way Media RecommendationMethod and System”,或者它们的任何组合,每一个都在这里引用作为参考,按照这里所修改的以完成本发明的特征和功能。
如图1所示,和在下面结合图2到8的进一步讨论,电视节目推荐器100包括节目数据库200、定型简表过程300、聚类例程400、平均值计算例程500、距离计算例程600和聚类性能评价例程800。一般说,节目数据库200可以具体化为公知的电子节目指南和可以为在一个给定时间间隔内可用的每一节目记录信息。定型简表过程300(i)处理第三方观看历史130以产生反映由有代表性的观众所观看的电视节目的典型模式的定型简表;(ii)允许用户选择最相关的定型从而初始化他或她的简表;(iii)根据选择的定型产生推荐。
聚类例程400由定型简表过程300调用来把第三方观看历史130(数据集)划分为群,使得在一群中的点(电视节目)比任何其它群更接近该群的平均值(质心)。聚类例程400调用平均值计算例程500计算一个群的符号平均值。聚类例程400调用距离计算例程600以根据在给定电视节目和一给定群的平均值之间的距离评价一个电视节目对每一群的接近度。最后,聚类例程400调用聚类性能评价例程800以确定何时已满足用于建立群的停止标准。
图2是取自图1的节目数据库(EPG)200的一个样本表。如前面指出的,节目数据库200为在一个给定时间间隔内可用的每一个节目记录信息。如图2所示,节目数据库200包含多条记录,诸如205到220条,每一条与一个节目关联。对于每一个节目,节目数据库200分别在栏240和245中表示出与该节目相关的日期/时间和频道。另外,分别在栏250、255和270为每一节目标识出名称、类型和演员。另外公知的特征(未示出)-诸如节目的持续时间和描述也可以包含在节目数据库200中。
图3是一个流程图,说明结合本发明特征的定型简表过程300的示例实现。如前面指出的,定型简表过程300(i)处理第三方观看历史130以产生反映由有代表性的观众观看的电视节目的典型模式的定型简表;(ii)允许用户选择最相关的定型从而初始化他或她的简表;(iii)根据选择的定型产生推荐。注意,可以例如在工厂中脱机执行第三方观看历史130的处理,和可以给用户提供安装有产生的定型简表的电视节目推荐器100以由用户进行选择。
这样,如图3所示,定型简表过程300最初在步骤310收集第三方观看历史130。之后,定型简表过程300在步骤320执行聚类例程400以产生相应于定型简表的节目群,聚类例程400在下面结合图4讨论。如下面进一步论述的,示例聚类例程400可以使用一个无监督数据聚类算法,诸如“k-平均值”聚类例程来观看历史数据集130。如前面指出的,聚类例程400把第三方观看历史130(数据集)划分为群,使得在一群中的点(电视节目)比对任何其它群更接近该群的平均值(质心)。
然后定型简表过程300在步骤330给每一群指定一个用于表征每一定型简表的一个或者多个标签。在一个示范实施例中,该群的平均值成为整群的有代表性的电视节目,而该平均值节目的特征可以用来标记该群。例如,可以配置电视节目推荐器100使得类型对每一群为主要因素或是定义特征。
在步骤340,把标记的定型简表展示给每一用户以便选择最接近该用户兴趣的定型简表。用于形成每一被选择的群的节目可以被认为是该定型的“典型观看历史”,并且可以用来为每一群构建一个定型简表。这样,在步骤350为该用户产生一个观看历史,它包括来自选择的定型简表中的节目。最后,在步骤360把在前一步骤产生的观看历史应用到节目推荐器以获得节目推荐。该节目推荐器可以具体化为任何常规节目推荐器,诸如上面所涉及的那些推荐器,虽然在这里进行了修改,但是其对于具有本技术领域一般技能的人是显然的。程序控制在步骤370结束。
图4是一个流程图,说明结合本发明特征的聚类例程400的示例实现。如前面指出的,聚类例程400在步骤320由定型简表过程300调用来把第三方观看历史130(数据集)划分为群,使得在一个群中的点(电视节目)比任何其它群都接近该群的平均值(质心)。一般说,聚类例程集中于在一个样本数据集中寻找例子分组的无监督任务。本发明使用k-平均值聚类算法把一个数据集划分为k个群。如下面讨论的,到聚类例程400的两个主要参数是(i)用于寻找最接近的群的距离量度,其在下面结合图6说明;(ii)k,要建立的群的数目。
示例聚类例程400使用动态值k,条件是当进一步聚类示例数据不产生分类精度的任何改善时已达到一个稳定的k。另外,群的大小被递增到记录一个空群的点。这样,当已达到群的一个平常水平时,聚类停止。
如图4所示,聚类例程400在步骤410最初建立k个群。该示例聚类例程400通过选择一个最小数目的群,例如两个而开始。对这一固定数目,聚类例程400处理整个观看历史数据集130,经过几次迭代,达到两个可以被认为稳定的群(亦即不会有节目再从一群移动到另一群,即使该算法再进行一次迭代)。在步骤420使用一个或者多个节目初始化当前k个群。
在一个示范实施例中,在步骤420,使用从第三方观看历史130中选择的某些种子节目来初始化这些群。用于初始化群的节目可以随机或者顺序选择。在顺序实现中,可以使用从在观看历史130中第一节目开始的节目或者使用从观看历史130中某一随机点开始的节目来初始化这些群。在另一个变更中,用于初始化每一群的那些节目的数目可以被改变。最后,可以用一个或者多个“假设的”节目初始化这些群,所述“假设的”节目由从第三方观看历史130中的节目中随机选择的特征值组成。
之后,聚类例程400在步骤430启动平均值计算例程500以便计算每一群的当前平均值,平均值计算例程500在下面结合图5说明。然后聚类例程400在步骤440执行距离计算例程600以决定第三方观看历史130中的每一节目与各个群之间的距离,距离计算例程600将在下面结合图6说明。然后,在步骤460,把观看历史130中的每一节目分配给最接近的群。
在步骤470,执行测试以确定是否有任何节目从一群移动到另一群。如果在步骤470确定某节目已经从一群移动到另一群,则程序控制返回到步骤430并以上述方式继续,直到识别出一组稳定的群。然而,如果在步骤470确定没有节目从一群移动到另一群,则程序控制前进到步骤480。
在步骤480执行进一步的测试以确定是否已满足一个指定的性能标准或者是否识别出一个空群(总称“停止标准”)。如果在步骤480决定尚未满足停止标准,则在步骤485递增k值,程序控制返回到步骤420并以上述方式继续。然而,如果在步骤480决定停止标准已经满足,则程序控制终止。下面将结合图8进一步讨论停止标准的评价。
示例聚类例程400只在一群中放置节目,从而建立所谓的“脆”(crisp)群。一个进一步的变更采用模糊聚类,它允许一个特殊的例子(电视节目)部分地属于多个群。在模糊聚类方法中,给电视节目分配一个权,该权表示一个电视节目离该群平均值有多接近。该权可以视电视节目离开群平均值的距离平方的倒数而定。与单一电视节目相关的所有群的权的和加起来一定是100%。
群的符号平均值的计算图5是描述结合了本发明的特征的平均值计算例程500的一个示例实现的流程图。如前面指出的,平均值计算例程500由聚类例程400调用来计算一个群的平均值。对于数值数据,该平均值是使方差最小的值。把该概念扩展到符号数据,可以通过寻找使群内方差最小的值xμ来确定群的平均值(并因此确定此群的半径或范围)。
Var(J)=Σi∈J(xi-xμ)2---(1)]]>群半径R(J)=Var(J)---(2)]]>式中J是取自同一类的(观看的或不观看的)一群电视节目,xi是对应演出i的符号特征值,xμ是取自J中的一个电视节目的特征值,使得它使Var(J)最小。
这样,如图5所示,平均值计算例程500最初在步骤510识别当前在一个给定的群J中的节目。对于在考虑中的当前的符号属性,在步骤520,使用等式(1)为每一可能的符号值xμ计算群J的方差。在步骤530,选择使该方差最小的符号值xμ作为平均值。
在步骤540,执行测试以确定是否存在另外要被考虑的符号属性。如果在步骤540确定存在另外要被考虑的符号属性,则程序控制返回到步骤520并以上述方式继续。然而,如果在步骤540确定不存在另外要被考虑的符号属性,则程序控制返回到聚类例程400。
就计算上来说,J中的每一符号特征值都被作为xμ,而使方差最小的符号值成为J中在考虑中的符号属性的平均值。有两类可能的平均值计算,称为基于表示的平均值和基于特征的平均值。
基于特征的符号平均值这里讨论的示例平均值计算例程500是基于特征的,其中产生的群平均值由从群J中的例子(节目)抽取的特征值组成,因为符号属性的平均值必须是其可能的值之一。然而,重要的是注意群平均值可以是“假设的”电视节目。该假设的节目的特征值可以包括从一个例子中(例如EBC)中抽取的频道值和从另一个例子(例如BBC世界新闻,实际上它从未在EBC上播出)抽取的名称值。这样,选择展示最小方差的任何特征值来表示该特征的平均值。对于所有特征位置,重复平均值计算例程500,直到在步骤540确定所有特征(亦即符号属性)已经被考虑。使用这样得到的、作为结果的假设节目来表示该群的平均值。
基于节目的符号平均值在另外一个变更中,在用于方差的等式(1)中,xi可以是电视节目i自身,相似地xμ可以是群J中使在群J中的该组节目上的方差最小的(多个)节目。在这种情况下,节目之间的距离而不是个别特征值之间的距离是要被最小化的相关的量度。另外在这种情况下产生的平均值不是假设的节目,而正是从集合J中提取的节目。使用在群J中这样找到的、使在群J中所有节目的方差最小的任何节目来表示该群的平均值。
使用多节目的符号平均值上面讨论的示例平均值计算例程500使用对应每一可能特征的一个单一特征值来表征一个群的平均值(而不管是在基于特征还是基于节目的实现)。然而,已经发现,在平均值计算中只依赖对应每一特征的一个特征值经常导致不合适的聚类,因为该平均值不再是该群的一个代表性的群中心。换句话说,也许不希望只由一个节目表示一个群,而是多个节目表示平均值或者可以使用多个平均值表示该群。于是,在另外一个变更中,可以用多个平均值或者对应每一可能的特征的多个特征值表示一个群。这样,在步骤530,选择使方差最小的N个特征(对应基于特征的符号平均值)或N个节目(对应基于节目的符号平均值),这里N是用于表示一群中的平均值的节目的数目。
节目和群之间的距离计算如前面指出,聚类例程400调用距离计算例程600,根据在一个给定的电视节目和一个给定群的平均值之间的距离来估计一个电视节目对每一群的接近度。该计算的距离量度量化了在一个样本数据集中的各个例子之间的区别以决定一群的范围。为能够聚类用户简表,必须计算观看历史中的任何两个电视节目之间的距离。一般说,彼此接近的电视节目趋向于归于一群。存在一些相对直接的技术来计算两个数字值矢量之间的距离,诸如欧几里德距离,曼哈顿距离和马哈拉诺比斯(Mahalanobis)距离。
然而,在电视节目矢量的场合,不能使用现有的距离计算技术,因为电视节目主要由符号特征值组成。例如,两个电视节目,诸如EBC在2001年3月22日晚8点广播的“朋友”的一集和FEX在2001年3月25日晚8点广播的“西蒙一家”一集,可以使用下面的特征矢量表示名称朋友 名称西蒙一家频道EBC 频道FEX广播日期2001.03.22广播日期2001.03.25
广播时间20:00 广播时间20:00显然,不能使用已知的数值距离量度来计算特征值“EBC”和“FEX”之间的距离。值差量度(VDM)是用于测量在符号特征值域中的特征值之间的距离的一种现有技术。VDM技术为每一特征的每一可能值考虑所有实例的分类的总相似性。使用这一方法,根据在训练集中的例子,用统计方法导出定义一个特征的所有值之间的距离的一个矩阵。关于用于计算符号特征值之间的距离的VDM技术的更详细的讨论例如见Stanfill和Waltz所著“Toward Memory-Based Reasoning”,Communication of the ACM,2912,1213-1228(1986),在此结合作为参考。
本发明使用VDM技术或其变更来计算在两个电视节目或其他感兴趣的项目之间的特征值之间的距离。原来的VDM建议在两个特征值之间的距离计算中使用权项,它使得距离量度不对称。修改的VDM(MVDM)省略了该权项以使距离矩阵对称。关于用于计算符号特征值之间的距离的MVDM技术的更详细的讨论例如见Cost和Salzberg所著“AWeighted Nearest Neighbor Algorithm For Learning WithSymbolic Feature”Machine Learning,Vol.10,57-58,波士顿,马萨诸塞州,Kluwer Publishers(1993),在此结合作为参考。
根据MVDM,对于一个特定的特征在两个值V1和V2之间的距离δ由下式给出δ(V1,V2)=∑|C1i/C1-C2i/C2|r等式(3)在本发明的节目推荐环境中,MVDM等式(3)被变换成用于特殊处理类别“观看的(watched)”和“未观看的(not_watched)”。
δ(V1,V2)=|C1_watchedC1_total-C2_watchedC2_total|+]]>|C1_not_watchedC1_total-C2_not_watchedC2_total|]]>等式(4)在等式(4)中,V1和V2是在考虑中的特征的两个可能的值。继续上面的例子,对于特征“频道”第一值V1等于“EBC”,第二值V2等于“FEX”。这些值之间的距离是这些例子被分类成的所有类的总和。用于本发明的示例节目推荐器实施例的相关类是“观看的”和“未观看的”。C1i是V1(EBC)被分类到类i(i等于意指被观看类别的1)的次数,而C1(C1_Total)是V1在该数据集中出现的总次数。值“r”是常数,通常设定为1。
如果这些值对于所有分类都以相同的相关频率出现的话,就由等式(4)定义的量度将这些值看成是相似的。项C1i/C1表示平均余数将被分类为i的概率,假定所讨论的这一特征具有值V1。这样,如果两个值对于所有可能的分类都给出相似的概率,则这两个值相似。等式(4)通过对于所有分类寻找这些概率的差的和来计算两个值之间的总相似性。两个电视节目之间的距离是这两个电视节目矢量的相应特征值之间的距离的和。
图7A是对应与特征“频道”相关的特征值的距离表的一部分。图7A规划对应每一类的每一频道特征值的发生数目。图7A所示数值取自示例第三方观看历史130。
图7B表示使用MVDM等式(4)从图7A所示示例计数计算的每一特征值对之间的距离。直觉上看,EBC和ABS应该彼此接近,因为它们大多数发生在观看的类中而不发生(ABS具有小的未观看分量)在未观看的类中。图7B用EBC和ABS之间的小的(非零)距离来确认了这一直觉。另一方面,ASPN大多数在未观看类中发生,因此对于这一数据集对EBC和ABS两者都应该“远”。图7B将EBC和ASPN之间的距离规划为1.895,在最大可能距离2.0之外。相似地,在ABS和ASPN之间的距离也很高,其值为1.828。
这样,如图6所示,距离计算例程600最初在步骤610识别第三方观看历史130中的节目。对于在考虑下的当前节目,距离计算例程600在步骤620使用等式(4)计算每一符号特征值到每一群平均值(由平均值计算例程500确定的)的相应特征的距离。
在步骤630,通过合计在相应特征值之间的距离计算在当前节目和群平均值之间的距离。在步骤640,执行测试以确定在第三方观看历史130中是否还有另外要考虑的节目。如果在步骤640确定,在第三方观看历史130中还有另外要考虑的节目,则在步骤650识别下一节目,程序控制前进到步骤620,以上述方式继续。
然而,如果在步骤640确定,在第三方观看历史130中没有另外要考虑的节目,则程序控制返回到聚类例程400。
如前面在名称为“从多节目导出的符号平均值”小节中所讨论的,可以使用对应每一可能特征(不管是在基于特征的还是基于节目的实现中)的一些特征值来表征一个群的平均值。然后,通过距离计算例程600的一个变更把从多平均值产生的结果集中以通过投票达成一致的决定。例如,现在在步骤620计算在一个节目的一个给定特征值与对应各个平均值的每一相应特征值之间的距离。集中最小的距离结果并用于投票,例如通过使用多数投票或者专家的混合以便达成一致的决定。对于这些技术的更详细的讨论,例如见J.Kittler等人所著“combing Classifiers”,in Proc.of the 13thInt’l Conf.OnPattern Recognition,Vol.II,897-901,维也纳,奥地利,(1996),在此结合作为参考。
停止标准如前面指出的,聚类例程400调用图8所示聚类性能评价例程800,以确定何时已满足用于建立群的停止标准。示例聚类例程400使用动态值k,使用的条件是当对示例数据的进一步的聚类不会产生分类精度的任何改善时已经达到一个稳定的k。另外,可以递增群的大小到记录空群的点。这样,当达到群的一个平常水平时,聚类停止。
示例聚类性能评价例程800使用取自第三方观看历史130中的一个节目子集(测试数据集)来测试聚类例程400的分类精度。对在测试集中的每一个节目,聚类性能评价例程800确定最接近它的群(其群平均值是最接近的),并比较该群和在考虑下的节目的类标签。把匹配的类标签的百分比变换为聚类例程400的精度。
这样,如图8所示,聚类性能评价例程800最初在步骤810从第三方观看历史130收集节目的子集作为测试数据集。之后,在步骤820,根据在该群中观看的和未观看的节目的百分比给每一群分配一个类标签。例如,如果在一群中的大多数节目是观看过的,则可以给该群分配一个“观看的”标签。
在步骤830识别最接近该测试集中的每一节目的群,并且比较所分配的群的类标签以确定该节目实际是否被观看。在其中使用多个节目表示一个群的平均值的实现中,可以使用(到每一节目的)平均距离或投票方案。在程序控制返回到聚类例程400之前,在步骤840确定匹配的类标签的百分比。如果分类精度已经达到一个预定的阈值,则聚类例程400结束。
应该理解,这里表示的实施例和变更仅为说明本发明的原理,本技术领域的熟练人员可以在不脱离本发明的范围和精神的情况下实现各种修改。
权利要求
1.一种用于表征多个项(205,210,220)J的方法,每一所述项(205,210,220)具有至少一个符号属性,每一所述符号属性具有至少一个可能的值,所述方法包括步骤为每一所述符号属性的每一所述可能的符号值xμ计算所述多个项(205,210,220)J的方差;和通过为每一所述符号属性选择使所述方差最小的至少一个符号值xμ作为平均符号值,来用至少一个平均值项表征所述多个项(205,210,220)J。
2.如权利要求1所述的方法,其中,用于每一所述符号属性的所述平均符号值包括所述多个项(205,210,220)的所述平均值。
3.如权利要求1所述的方法,其中,用于每一所述符号属性的所述平均符号值包括一个或者多个假设项。
4.如权利要求1所述的方法,进一步包括如下步骤使用取自所述多个项(205,210,220)的所述至少一个平均值的至少一个符号值给所述多个项(205,210,220)分配一个标签。
5.如权利要求1所述的方法,其中,所述多个项(205,210,220)是包括相似项(205,210,220)的群。
6.如权利要求1所述的方法,其中,所述项(205,210,220)是节目和/或内容和/或产品。
7.如权利要求1所述的方法,其中,所述计算方差的步骤按如下执行Var(J)=∑i∈J(xi-xμ)2式中J是取自同一类的项(205,210,220)的一个群,xi是用于项i的符号特征值,xμ是取自J中的一个项(205,210,220)的属性值,使得它使所述Var(J)最小。
8.一种用于表征多个项(205,210,220)J的系统(100),每一所述项(205,210,220)具有至少一个符号属性,每一所述符号属性具有至少一个可能的值,所述系统(100)包括存储器(120),用于存储计算机可读代码;和处理器(115),可操作地耦合于所述存储器(120),所述处理器(115)被配置为为每一所述符号属性的每一所述可能的符号值xμ计算所述多个项(205,210,220)J的方差;和通过为每一所述符号属性选择使所述方差最小化的至少一个符号值xμ作为平均符号值,来用至少一个平均值项表征所述多个项。
9.如权利要求8所述的系统(100),其中,用于每一所述符号属性的所述平均符号值包括所述多个项(205,210,220)的所述平均值。
10.如权利要求8所述的系统(100),其中,用于每一所述符号属性的所述平均符号值包括一个或者多个假设项。
11.如权利要求8所述的系统(100),其中,所述处理器(115)被进一步配置为使用取自所述多个项(205,210,220)的所述至少一个平均值的至少一个符号值给所述多个项(205,210,220)分配一个标签。
12.如权利要求8所述的系统(100),其中,所述多个项(205,210,220)是包括相似项(205,210,220)的群。
13.如权利要求8所述的系统(100),其中,所述处理器(115)按如下计算所述方差Var(J)=∑i∈J(xi-xμ)2式中J是取自同一类的项(205,210,220)的一个群,xi是用于项i的符号特征值,xμ是取自J中的一个项(205,210,220)的属性值,使得它使所述Var(J)最小。
14.一种计算机程序产品,使可编程设备在当执行所述计算机程序产品时能够起到在权利要求8到13中任何一个权利要求所定义的系统的作用。
全文摘要
公开了一种用于在可得到用户的观看历史或购买历史前向用户推荐感兴趣的项目,诸如电视节目推荐的方法和装置。处理第三方观看或购买历史来产生定型简表,它反映由有代表性的观众所选择的项的典型模式。用户可以从产生的定型简表选择最相关的(多个)定型,从而使用最接近他或她自己的兴趣的项初始化他或她的简表。聚类例程使用k平均值聚类算法来把第三方观看或购买历史(数据集)划分为群,使得在一群中的点(例如电视节目)比任何其它群更接近该群的平均值。平均值计算例程计算群的符号平均值。对于基于特征的平均值计算,在特征(符号属性)级别上执行在两个项之间的距离计算,作为结果产生的群平均值由从在该群中的例子(节目)中抽取的特征值组成。作为结果产生的群平均值可以是一个“假设的”电视节目,这一假设的节目的个别特征值从任一例子中抽取。
文档编号H04N7/16GK1586076SQ02822388
公开日2005年2月23日 申请日期2002年11月6日 优先权日2001年11月13日
发明者K·库拉帕蒂, S·V·R·古特塔 申请人:皇家飞利浦电子股份有限公司