本申请要求2014年12月22日提交的美国实用专利申请No.14/578,911的优先权和权益,该申请特此通过引用并入。
技术领域
背景技术:
传统的系统可以基于元数据属性来计算两个媒体资产之间的相似性。例如,系统可以使用这样的模型,通过该模型,单个的媒体资产基于共享的元数据属性而被认为是相似的。尽管这些系统生成的相似性度量可以是有效的,但是这些模型没有考虑到可以改进相似性度量的其他因素。
技术实现要素:
因此,描述了用于对模型进行训练来产生与媒体资产相关的资产矢量的系统和方法。如本文中所称的,术语“资产矢量”是指与媒体资产的属性相关联的值的集合,该集合可以被存储为这些值的数组,该数组中的每个值对应于该矢量的不同维度。如本文中所称的,术语“属性”包括描述媒体资产的或者与媒体资产相关联的任何内容。属性可以包括体裁、类别、内容来源、标题、系列信息或标识符、特性、演员、导演、演员阵容信息、剧组、情节、地点、描述、描述符、关键字、艺术家、基调、音调、歌词、评论、评级、长度或持续时间、传输时间、可用时间、赞助商和/或它们的任何组合。在一些实施方案中,模型采取媒体资产的语料库、每个媒体资产的元数据信息以及一个或多个用户的使用数据作为输入。元数据可以包括比如以下的信息:体裁、关键字、描述以及其他合适的信息(比如上面列出的属性中的任何一个)。
在媒体资产中,通常遇到与媒体资产相关联的丰富的元数据,比如体裁、关键字、描述等。然而,每一条单独的元数据的相关性或权重(用于找到相似的电影或推荐)通常由于多个来源、算法或所涉及的人工录入而导致缺少、缺失或错误。例如,演出是喜剧,但是它究竟有多有趣以及它对于击败其他有趣的演出的影响程度是更大的观看情绪。使用数据另一方面对于传达什么节目同时出现在用户之间的观看行为中以及对于这些节目有什么共同的态度提供不同种类的信息。
关于每个媒体资产的基于元数据的信息可以以资产矢量的形式表示,资产矢量包括一组属性以及关于该媒体资产的元数据信息的相关联的权重或相关性。在一些实施例中,系统首先通过产生与媒体资产相关的资产矢量、然后基于与媒体资产相关联的使用数据修改资产矢量的权重来产生模型。可以基于使用数据来更新资产矢量以通过与使用数据一致来更新资产矢量中的权重而更加准确。
例如,对于一些用户,具有标题“pacific rim”和“godzilla”的电影可能看似是非常相似的,因为它们的体裁是“科幻”。对于一些用户,电影可能由于例如它们的标题或它们的导演、或者由于可能不能使用元数据信息适当地捕捉的其他无法解释的原因而不能看似如此相似。无法解释的因素可以作为自由浮动的分量包括在电影的媒体资产矢量中,并且可以被更新以捕捉除了可经由基于元数据的信息获得(通过例如考虑与电影相关的使用数据)的信息之外的信息。例如,用户可能相似地或者可能不相似地评定两部电影,或者可能在它们发行之后在相似的时间或者不在相似的时间观看它们。
媒体指导应用可以基于单个的元数据信息以及对应的权重来对两个资产矢量之间的元数据相似性进行建模。此外,已知的单个的矢量可以独立地通过其他已知的基于大型语料库(比如WORD2VEC)中的词语的共同出现的算法来确定。在一些实施例中,媒体指导应用可以利用单词矢量表示工具,比如采取文本语料库作为输入并且生成单词矢量作为输出的WORD2VEC。关于WORD2VEC工具的更多信息可以在code.google.com/p/word2vec找到。
对于媒体资产的元数据得到的单词矢量可以用于形成媒体资产的资产矢量。资产矢量包括每个媒体资产的作为单个元数据(比如体裁、类别、关键字或任何合适的属性层面细节)的加权组合的元数据信息。例如,对于电影“pacific rim”,系统可以获取单词“pacific(太平洋)”,在给定的word2vec二进制文件中查找该单词,并且获得该单词的相关联的维度矢量,然后相似地获得“rim(边缘)”的矢量,并且将这两个矢量加在一起以得到与该元数据相关的资产矢量的分量。可能的是,“pacific rim”作为标题对于关于侵略地球的巨型怪物的电影不是非常有指示性的,但是在该电影中给予怪物来自于哪里的一些信息。在这样的情况下,元数据分量的权重可以缩到远小于1。另一方面,关于“pacific rim”的详细描述可以包含与“giant(巨人)”、“monster(怪物)”和“invasion(入侵)”相似的单词,这些单词将是电影通过描述属性的更好表示。因此,在这种情况下,相关联的权重可以比用于标题的权重高得多。在一些实施例中,资产矢量可以包括用于捕捉媒体资产相似性的隐藏的或无法解释的原因的自由浮动分量。自由浮动矢量最初可以被设置为零、随机值或任何其他合适的矢量值。在进行训练以最小化误差函数之后,自由浮动项包含最佳的一组数值元素。自由浮动分量和它们的权重可以捕捉通过例如WORD2VEC分析没有显露的潜在因素。例如,潜在因素可以与通过WORD2VEC分析或者一般来说任何已知的元数据属性没有捕捉到的元数据或使用信息相关。
在一些实施例中,媒体指导应用基于使用信息、连同观看了媒体资产的用户的隐含/明确评级来计算使用相似性。然后通过拟合最接近使用相似性的元数据相似性来确定各条元数据的权重或相关性。例如,媒体资产矢量可以具有与用户评级、观看时间量、电影观看时间安排、经由社交媒体表达的情绪或其他合适的信息相关的相关联的使用数据。例如,电影“pacific rim”的资产矢量500可以具有6.9/10的用户评级、80%的观看时间量、电影发行之后五天的电影观看时间安排、以及经由社交媒体有三篇推文的情绪捕捉。电影“Godzilla”的资产矢量600可以具有7.5/10的用户评级、95%的观看时间量、电影发行之后三天的电影观看时间安排、以及经由社交媒体有五篇推文的情绪捕捉。
可以单独地对使用信息进行建模来生成项目-项目相似性,其中,被一起观看的并且在多个用户之间被相似地评价/评级(其可以被称为共同的情绪)的项目具有更好的使用-相似性。如上所述,用户的情绪进一步涉及比如以下的属性:明确的评级(如果可用的话)、观看时间、相关联的观看时间安排、片段的观看次数以及情绪捕捉(例如,写博客、发推文、回顾或者经由任何其他合适的处理)。
在一些实施例中,媒体指导应用试图将多对媒体资产矢量尽可能接近相同对上的基于使用的相似性地相互对齐。媒体指导应用构造误差函数,该误差函数将建模的元数据相似性与观测的基于使用的相似性(例如,基于共同出现加上情绪因素)进行比较。使用改变单个的元数据分量的权重以使得基于元数据的相似性和基于使用的相似性之间的净误差最小的函数(例如,随机梯度下降函数或另一个合适的梯度下降函数)来使该误差最小化。在所有的使用数据上迭代之后,单个的元数据权重在媒体资产矢量中被更新为对于媒体资产的对应元数据相关性的最佳预测器。
在一些实施例中,媒体指导应用将观测的基于使用的相似性和建模的元数据相似性进行比较以确定模型误差。如果误差低于阈值,则不需要进一步的改动,因为模型的训练已经足够。如果误差大于阈值,则系统通过例如将误差反向传播通过模型来针对媒体资产改动模型。系统可以更新媒体资产矢量中的权重,并且更新相似性计算所需的其他相关项。
在一些实施例中,误差函数包括每对比较的相似性的置信度项/权重。这表示给定项目-项目对的观测相似性和建模的相似性之间的比较可能准确的可能性,该可能性一般被规范化到0和1之间。例如,如果多于一个的使用数据集存在,其中,第一数据集包括唯一(观看、未观看)使用信息与少数用户,第二数据集包括许多用户与表示他们的情绪的明确的或许多的细节,则第二数据集将具有比第一数据集高的置信度。虽然基于元数据的相似性在这种情况下可以保持不变,但是观测的计算将是不同的,并且具有与所述对相关联的不同置信度(以使得误差的更大变化归因于更准确的观测值)。
在一些实施例中,可以将属性层面上的元数据初始化为单词矢量表示,并且在误差函数中如上所述那样呈现该元数据。然而,在这种情况下,甚至属性层面矢量也可以在训练期间使用与相关性词语相似的方法(例如,链式法则、梯度下降等)来进行修改。比如“western”的体裁例如可以被初始化为单词“western”的一般意义,但是这是部分模糊的,可能暗示类似于北方、东方或南方的方向。调谐级可以使该词语浮动到更具体而言该体裁对于多媒体的意义。
在一些方面,控制电路接收与第一媒体资产相关联的第一值矢量以及与第二媒体资产相关联的第二值矢量。控制电路确定用户是否已经观看了第一媒体资产和第二媒体资产这二者。响应于确定用户已经观看了第一媒体资产和第二媒体资产这二者,控制电路确定建模的相似性值,该值表示第一媒体资产和第二媒体资产之间的建模的相似性。建模的相似性值是基于第一值矢量和第二值矢量来确定的。控制电路进一步检索观测的相似性值,该值表示第一媒体资产和第二媒体资产之间的观测的相似性。观测的相似性是基于第一媒体资产和第二媒体资产的使用数据的,建模的相似性是基于对第一媒体资产和第二媒体资产进行相关性加权的元数据的。控制电路进一步基于建模的相似性值和观测的相似性值以及比较中的相关联的置信度(如果提供的话)来确定建模误差值。控制电路进一步基于建模误差值来更新与第一媒体资产相关联的第一值矢量以及与第二媒体资产相关联的第二值矢量。
在一些实施例中,与第一媒体资产相关联的第一值矢量包括与关于第一媒体资产的元数据相关的一个或多个基于元数据的值以及与关于第一媒体资产的元数据无关的一个或多个自由浮动值。
在一些实施例中,控制电路通过更新所述一个或多个自由浮动值、但不更新所述一个或多个基于元数据的值来更新与第一媒体资产相关联的第一值矢量。
在一些实施例中,控制电路通过更新所述一个或多个自由浮动值并且更新所述一个或多个基于元数据的值来更新与第一媒体资产相关联的第一值矢量。
在一些实施例中,控制电路通过更新所述一个或多个自由浮动值和/或更新所述一个或多个基于元数据的值来更新与第一媒体资产相关联的第一值矢量。
在一些实施例中,控制电路通过基于置信度项确定建模误差值来确定建模误差值。较高的置信度项指示使用数据中的较高信任。如果使用数据集具有更大的时间跨度(例如,捕捉大多数或所有用户)、更好的情绪逼近(例如,明确的用户评级)、更多的用户数量或任何其他合适的指示信任的标准,则可以看到较高的置信度。在一些实施例中,在所描述的系统和方法中同时利用的多个使用数据集对于它们各自的置信度项可以具有不同的值。
在一些实施例中,关于第一媒体资产的元数据包括以下中的至少一个:体裁、类别、内容来源、标题、系列标识符、特性、演员、导演、演员阵容信息、剧组、情节、地点、描述、描述符、关键字、艺术家、基调、音调、歌词、评论、评级、长度或持续时间、传输时间、可用时间以及赞助商。
在一些实施例中,关于第一媒体资产的使用数据包括以下中的至少一个:来自用户的评级、用户观看(或者收听例如音乐)的时间量、用户观看的时间、用户观看的片段的数量以及用户与相关社交媒体交互的次数、收听计数、资产的价格、显露给用户(选择观看)的次数、观看多个片段的速度、第一次的观看速度对第一次可用的观看速度、观看的次序以及投射到单词矢量上的关于“享受”或“喜欢”的评论/博客等。
在一些实施例中,控制电路检索与模型相关联的阈值误差值。控制电路确定建模误差值是否低于阈值误差值。控制电路进一步响应于确定建模误差值不低于阈值误差值,来基于建模误差值更新与第一媒体资产相关联的第一值矢量以及与第二媒体资产相关联的第二值矢量。
在一些实施例中,控制电路通过以下方式来确定建模的相似性值,即,基于第一值矢量和第二值矢量之间的点积来确定第一值矢量和第二值矢量之间的距离、并且基于确定的距离来确定建模的相似性值。
在一些实施例中,控制电路通过调整存储在第一矢量和第二矢量中的值以使得第一矢量和第二矢量之间的距离缩小来基于建模误差值更新第一值矢量和第二值矢量。
在一些实施例中,使用第一媒体资产和第二媒体资产之间的皮尔逊(Pearson)相关系数来确定观测的相似性。另外,该计算可以允许加权的皮尔逊相关系数,其中,观测的采样点是估计的隐含的评级,该计算中的置信度/权重是隐含的评级准确地表示用户情绪的概率。
在一些实施例中,控制电路响应于确定没有用户观看过第一媒体资产和第二媒体资产二者来对建模误差值存储零值。
在一些方面,本文中所描述的系统和方法包括用于搜索媒体资产的被配置为执行上述功能的方法、设备或非暂时性机器可读介质。
应注意到,上述系统和/或方法可以应用于其他系统、方法和/或设备,或者根据其他系统、方法和/或设备使用。
附图说明
通过考虑以下结合附图进行的详细描述,本公开的以上及其他目的和优点将是清楚的,在附图中,相似的标号始终指代相似的部分,其中:
图1和2示出根据本公开的实施例的可以用于提供媒体指导应用列表的说明性显示画面;
图3是根据本公开的一些实施例的说明性用户设备装置的框图;
图4是根据本公开的一些实施例的说明性媒体系统的框图;
图5-6示出根据本公开的一些实施例的说明性资产矢量;以及
图7是根据本公开的一些实施例的用于维护表示媒体资产之间的相似性的模型的处理的示图。
具体实施方式
用户在任何给定的内容递送系统中可用的内容的量可以是相当大的。因此,许多用户期望通过如下界面的媒体指导的形式,该界面允许用户高效地导航内容选择并且容易地识别他们可能期望的内容。提供这样的指导的应用在本文中被称为交互式媒体指导应用,或者有时,媒体指导应用或指导应用。
交互式媒体指导应用可以采取各种形式,这取决于它们为其提供指导的内容。一种典型类型的媒体指导应用是交互式电视节目指南。交互式电视节目指南(有时称为电子节目指南)是众所周知的指导应用,除了其他方面之外,这些指导应用允许用户在许多类型的内容或媒体资产之间导航并且找出这些内容或媒体资产。交互式媒体指导应用可以产生使得用户能够在内容之间导航并且找出并选择内容的图形用户界面画面。如本文中所称的,术语“媒体资产”和“内容”应被理解为意指可电子消费的用户资产,比如电视节目编排以及按次付费节目、点播节目(如视频点播(VOD)系统中的点播节目)、互联网内容(例如,流传输内容、可下载内容、网络直播等)、视频剪辑、音频、内容信息、图片、旋转图像、文档、播放列表、网站、文章、书籍、电子书、博客、广告、聊天会话、社交媒体、应用、游戏和/或任何其他媒体或多媒体和/或这些用户资产的组合。指导应用还允许用户在内容之间导航并且找出内容。如本文中所称的,术语“多媒体”应被理解为意指利用上述至少两种不同的内容形式(例如,文本、音频、图像、视频或交互式内容形式)的内容。内容可以被用户设备装置记录、播放、显示或访问,但是也可以是现场表演的一部分。
媒体指导应用和/或用于执行本文中所讨论的实施例中的任何一个实施例的任何指令可以被编码在计算机可读介质上。计算机可读介质包括能够存储数据的任何介质。计算机可读介质可以是暂时性的,包括但不限于传播电信号或电磁信号,或者可以是非暂时性的,包括但不限于易失性和非易失性计算机存储器或存储装置,比如硬盘、软盘、USB驱动器、DVD、CD、媒体卡、寄存器存储器、处理器高速缓存、随机存取存储器(“RAM”)等。
随着互联网、移动计算以及高速无线网络的出现,用户在他们在传统上不会在其上访问介质的用户设备装置上访问介质。如本文中所称的,短语“用户设备装置”、“用户设备”、“用户装置”、“电子装置”、“电子设备”、“媒体设备装置”或“媒体装置”应被理解为意指用于访问上述内容的任何装置,比如电视机、智能电视机、机顶盒、用于处理卫星电视的集成接收器解码器(IRD)、数字存储装置、数字媒体接收器(DMR)、数字媒体适配器(DMA)、流传输媒体装置、DVD播放器、DVD录放机、连接式DVD、本地媒体服务器、蓝光播放器、蓝光录放机、个人计算机(PC)、膝上型计算机、平板计算机、WebTV盒、个人计算机电视机(PC/TV)、PC媒体服务器、PC媒体中心、手持计算机、固定电话、个人数字助理(PDA)、移动电话、便携式视频播放器、便携式音乐播放器、便携式游戏机、智能电话、或任何其他的电视设备、计算设备、或无线装置、和/或这些装置的组合。在一些实施例中,用户设备装置可以具有面向前的屏幕和面向后的屏幕、多个前屏或多个斜屏。在一些实施例中,用户设备装置可以具有面向前的相机和/或面向后的相机。在这些用户设备装置上,用户可能能够在通过电视机可获得的相同内容之间导航并且找出相同内容。因此,媒体指导也可以在这些装置上获得。所提供的指导可以是关于以下内容的:仅可通过电视机获得的内容、仅可通过一个或多个其他类型的用户设备装置获得的内容、或者既可通过电视机获得、又可通过其他类型的用户设备装置中的一个或多个获得的内容。媒体指导应用可以作为在线应用提供(即,在网站上提供),或者作为用户设备装置上的独立的应用或客户端提供。下面更详细地描述可以实现媒体指导应用的各种装置和平台。
媒体指导应用的功能之一是向用户提供媒体指导数据。如本文中所称的,短语“媒体指导数据”或“指导数据”应被理解为意指与在操作指导应用时使用的数据或内容相关的任何数据。例如,指导数据可以包括节目信息、指导应用设置、媒体资产矢量、用户偏好、用户简档信息、媒体列表、媒体相关信息(例如,广播时间、广播频道、标题、描述、评级信息(例如,父母控制评级、评论家的评级等)、体裁或类别信息、演员信息、关于广播公司或提供商的标志的标志数据等)、媒体格式(例如,标清、高清、3D等)、广告信息(例如,文本、图像、媒体剪辑等)、点播信息、博客、网站、以及任何其他类型的对用户在期望的内容选择之间导航并且找出这些内容选择有帮助的指导数据。
图1-2示出了可以用于提供媒体指导数据的说明性显示画面。图1-2所示的显示画面可以在任何合适的用户设备装置或平台上实现。虽然图1-2的显示被示为全屏显示,但是它们也可以完全地或部分地覆盖在正显示的内容上。用户可以通过选择显示画面中提供的可选选项(例如,菜单选项、列表选项、图标、超链接等)或者按下遥控器或其他用户输入接口或装置上的专用按钮(例如,指南按钮)来指示访问内容信息的期望。响应于用户的指示,媒体指导应用可以向显示画面提供以几种方式之一组织的媒体指导数据,所述方式比如按照网格中的时间和频道、按照时间、按照频道、按照来源、按照内容类型、按照类别(例如,电影、体育、新闻、儿童或其他节目编排类别)、或其他预定义的、用户定义的或其他组织标准。
图1示出了按时间和频道布置的节目列表显示100的说明性网格,该网格还使得能够访问单个显示中的不同类型的内容。显示100可以包括具有以下部分的网格102:(1)频道/内容类型标识符104的列,其中,每个频道/内容类型标识符(其是列中的单元)标识可用的不同频道或内容类型;以及(2)时间标识符106的行,其中,每个时间标识符(其是行中的单元)标识节目编排的时间块。网格102还包括节目列表(比如节目列表108)的单元,其中,每个列表提供在列表的相关联的频道和时间上提供的节目的标题。通过用户输入装置,用户可以通过移动高亮区域110来选择节目列表。与通过高亮区域110选择的节目列表相关的信息可以在节目信息区域112中提供。区域112可以包括例如节目标题、节目描述、提供节目的时间(如果适用的话)、节目所在的频道(如果适用的话)、节目的评级以及其他期望信息。
除了提供对线性节目编排(例如,被调度在预定时间发送到多个用户设备装置并且根据时间表提供的内容)的访问之外,媒体指导应用还提供对非线性节目编排(例如,用户设备装置可在任何时间访问的、不根据时间表提供的内容)的访问。非线性节目编排可以包括来自不同内容来源的内容,包括点播内容(例如,VOD)、互联网内容(例如,流传输媒体、可下载媒体等)、本地存储的内容(例如,存储在上述任何用户设备装置或其他存储装置上的内容)、或其他时间无关内容。点播内容可以包括电影或者特定内容提供商(例如,提供“The Sopranos”和“Curb Your Enthusiasm”的HBO点播)提供的任何其他内容。HBO ON DEMAND是时代警告者有限合伙公司(Time Warner Company L.P.)等所拥有的服务标记,THE SOPRANOS和CURB YOUR ENTHUSIASM是家庭盒子办公室有限公司(Home Box Office,Inc.)所拥有的商标。互联网内容可以包括web事件,比如聊天会话或网络直播、或者可按需作为流传输内容获得的或者可通过互联网网站或其他互联网访问(例如FTP)下载的内容。
网格102可以提供关于非线性节目编排的媒体指导数据,包括点播列表114、录制内容列表116以及互联网内容列表118。组合关于来自不同类型的内容来源的内容的媒体指导数据的显示有时被称为“混合媒体”显示。与显示100不同的可以显示的媒体指导数据的类型的各种排列可以基于用户选择或指导应用定义(例如,仅录制列表和广播列表、仅点播列表和广播列表等的显示)。如所示,列表114、116和118被示为横跨网格102中显示的整个时间块以指示这些列表的选择可以分别提供对于专用于点播列表、录制列表或互联网列表的显示的访问。在一些实施例中,关于这些内容类型的列表可以直接包括在网格102中。附加媒体指导数据可以响应于用户选择导航图标120之一显示。(按下用户输入装置上的箭头按键可以以与选择导航图标120类似的方式影响显示)。
显示100还可以包括视频区域122、广告124以及选项区域126。视频区域122可以允许用户观看和/或预览用户当前可获得的、将可获得的或者以前可获得的节目。视频区域122的内容可以对应于或者独立于网格102中显示的列表之一。包括视频区域的网格显示有时被称为指南中含图片(picture-in-guide)(PIG)显示。2003年5月13日发表的Satterfield等人的美国专利No.6,564,378以及2001年5月29日发表的Yuen等人的美国专利No.6,239,794中更详细地描述了PIG显示和它们的功能,这些专利特此全文通过引用并入本文。PIG显示可以包括在本文中所描述的实施例的其他媒体指导应用显示画面中。
广告124可以为内容提供广告,根据观看者的访问权限(例如,对于订阅节目编排的访问权限),该广告当前可用于观看,未来将可用于观看,或者可能永远不能变为可用于观看,并且可以对应于网格102中的内容列表中的一个或多个或者与这些内容列表中的一个或多个无关。广告124还可以用于与网格102中显示的内容相关或无关的产品或服务。广告124可以是可选的,并且提供关于内容的进一步信息,提供关于产品或服务的信息,使得能够购买内容、产品或服务,提供与广告相关的内容等。广告124可以基于用户的简档/偏好、监视的用户活动、提供的显示的类型或者其他合适的针对性广告基础有针对性地投放。广告124中标识的内容可以基于媒体资产矢量(下面讨论)选择。
例如,媒体指导应用可以标识用户设备装置300的当前用户。媒体指导应用可以选择当前用户最近消费的媒体资产。媒体指导应用可以标识与被选媒体资产相关的第二媒体资产(例如,当前用户以前尚未消费过的媒体资产)(例如,与到被选媒体资产的其他媒体资产矢量之中的距离最短的矢量相关联的媒体资产)。在一些实施例中,最短距离可以由媒体指导应用通过首先计算被选媒体资产的多维矢量和每一个其他的媒体资产的多维矢量之间的点积来确定。在一些实现中,可以使用softmax分类器函数上的梯度下降函数来确定两个矢量之间的距离。然后,媒体指导应用可以基于哪个点积最接近预定值(例如,“1”)来标识与被选媒体资产相关的第二媒体资产。在一些实现中,媒体指导应用可以仅标识当前用户以前尚未消费过的另一个媒体资产或者当前用户以前在特定时间量内(例如,超过2周)尚未消费过的媒体资产。然后可以以广告124的形式向当前用户呈现第二媒体资产。
虽然广告124被示为矩形或横幅形状,但是可以以任何合适的大小、形状、在指导应用显示中的任何合适的位置中提供广告。例如,广告124可以作为与网格102水平相邻的矩形形状提供。这有时被称为面板广告。另外,广告可以覆盖在内容或指导应用显示上,或者嵌入在显示内。广告还可以包括文本、图像、旋转图像、视频剪辑、或上述其他类型的内容。在一些实施例中,广告内容(包括产品和服务的那些广告内容)可以被转换为单词矢量表示(例如,直接从描述性文本转换为矢量,或者从图像/视频转换为概念/特征、再转换为文本、再转换为矢量),并且组合形成基于广告的资产矢量。媒体指导应用在这种情况下可以将近期和隐含的/明确的评级作为因素计入来生成用户最近消费的N个媒体资产矢量的的加权平均,并且通过估计N加权资产矢量和潜在广告的资产矢量之间的相似性来评估每个潜在广告。可以通过基于该相似性值进行排序来生成最有益广告的排名集合。广告可以存储在具有指导应用的用户设备装置中、连接到用户设备的数据库中、远程位置(包括流传输媒体服务器)中、或者其他存储部件上、或者这些位置的组合。例如以下专利申请和专利中更详细地讨论了在媒体指导应用中提供广告:2003年1月17日提交的Knudson等人的美国专利申请公开No.2003/0110499;2004年6月29日发表的Ward,III等人的美国专利No.6,756,997;以及2002年5月14日发表的Schein等人的美国专利No.6,388,714,这些专利申请和专利特此全文通过引用并入本文。将意识到,广告可以包括在本文中所描述的实施例的其他媒体指导应用显示画面中。
选项区域126可以允许用户访问不同类型的内容、媒体指导应用显示和/或媒体指导应用特征。选项区域126可以是显示100(以及本文中所描述的其他显示画面)的一部分,或者可以由用户通过选择屏上选项或者按下用户输入装置上的专用的或可分配的按钮来调用。选项区域126内的可选选项可以涉及与网格102中的节目列表相关的特征,或者可以包括可从主菜单显示获得的选项。与节目列表相关的特征可以包括搜索接收节目的其他开始时间或方式、录制节目、启用节目的串联录制、将节目和/或频道设置为最喜爱的、购买节目、或其他特征。可从主菜单显示获得的选项可以包括搜索选项、VOD选项、父母控制选项、互联网选项、基于云的选项、装置同步选项、第二屏幕装置选项、访问各种类型的媒体指导数据显示的选项、订阅优质服务的选项、编辑用户简档的选项、访问浏览器覆盖的选项、或其他选项。
可以基于用户的偏好来对媒体指导应用进行个性化定制。个性化的媒体指导应用允许用户定制显示和特征以创建对媒体指导应用的个性化“体验”。可以通过允许用户输入这些定制和/或由媒体指导应用监视用户活动以确定各种用户偏好来创建该个性化体验。用户可以通过登录或者以其他方式向该指导应用标识他们自己来访问他们的个性化指导应用。媒体指导应用的定制可以根据用户简档进行。定制可以包括变化的呈现方案(例如,显示的颜色方案、文本的字体大小等)、显示的内容列表的各方面(例如,仅HDTV或仅3D节目编排、基于最喜爱的频道选择的用户指定的广播频道、重新录制频道的显示、推荐的内容等)、期望的录制特征(例如,对于特定用户的录制或串联录制、录制质量等)、父母控制设置、互联网内容的定制呈现(例如,社交媒体内容、电子邮件、电子递送的文章等的呈现)以及其他期望的定制。
媒体指导应用可以允许用户提供用户简档信息,或者可以自动地编译用户简档信息。媒体指导应用可以例如监视用户访问的内容和/或用户可以与指导应用进行的其他交互。另外,媒体指导应用可以获得与特定用户相关的其他用户简档的全部或部分(例如,从用户访问的互联网上的其他网站,比如www.allrovi.com,从用户访问的其他媒体指导应用,从用户访问的其他交互式应用,从用户的另一个用户设备装置,等等),和/或从媒体指导应用可以访问的其他来源获得关于用户的信息。结果,可以为用户提供在用户的不同用户设备装置上统一的指导应用体验。下面结合图4来更详细地描述这种类型的用户体验。以下专利申请和专利中更详细地描述了另外的个人性媒体指导应用特征:2005年7月11日提交的Ellis等人的美国专利申请公开No.2005/0251827、2007年1月16日发表的Boyer等人的美国专利No.7,165,098、以及2002年2月21日提交的Ellis等人的美国专利申请公开No.2002/0174430,这些专利申请和专利特此全文通过引用并入本文。
图2中示出了用于提供媒体指导的另一个显示布置。视频拼接显示200包括关于基于内容类型、体裁和/或其他组织标准组织的内容信息的可选选项202。在显示200中,电视列表选项204被选择,因此提供列表206、208、210和212作为广播节目列表。在显示200中,列表可以提供包括封面艺术的图形图像、来自内容的静态图像、视频剪辑预览、来自内容的直播视频、或者向用户指示列表中的媒体指导数据所描述的内容的其他类型的内容。每个图形列表还可以附有提供关于与该列表相关联的内容的进一步信息的本文。例如,列表208可以包括多于一个的部分,包括媒体部分214和文本部分216。媒体部分214和/或文本部分216可以是可选的,以供在全屏中观看内容或观看与媒体部分214中显示的内容相关的信息(例如,观看关于显示视频的频道的列表)。
显示200中的列表是不同大小的(即,列表206大于列表208、210和212),但是如果需要的话,所有列表都可以是相同的大小。列表可以是不同大小的或者用图形突出显示的,以指示用户的感兴趣程度或者强调内容提供商期望的或者基于用户偏好的某个内容。例如2005年12月29提交的Yates的美国专利申请公开No.2010/0153885中讨论了用于图形突出内容列表的各种系统和方法,该专利申请特此全文通过引用并入本文。
用户可以从他们的用户设备装置中的一个或多个访问内容和媒体指导应用(以及上面和下面描述的它的显示画面)。图3示出了说明性用户设备装置300的一般化实施例。下面结合图4讨论用户设备装置的更具体的实现。用户设备装置300可以经由输入/输出(以下称为“I/O”)路径302来接收内容和数据。I/O路径302可以将内容(例如,广播节目编排、点播节目编排、互联网内容、可通过局域网(LAN)或广域网(WAN)获得的内容、和/或其他内容)和数据提供给控制电路304,控制电路304包括处理电路306和储存器308。控制电路304可以用于使用I/O路径302来发送和接收命令、请求以及其他合适的数据。I/O路径302可以将控制电路304(具体地说,处理电路306)连接到一个或多个通信路径(下面描述)。I/O功能可以由这些通信路径中的一个或多个提供,但是在图3中被示为单个路径以避免使附图过于复杂。
控制电路304可以基于任何合适的处理电路,比如处理电路306。如本文中所称的,处理电路应被理解为意指基于一个或多个微处理器、微控制器、数字信号处理器、可编程逻辑器件、现场可编程门阵列(FPGA)、专用集成电路(ASIC)等的电路,并且可以包括多核处理器(例如,双核、四核、六核或任何其他合适数量的核)或超级计算机。在一些实施例中,处理电路可以分布在多个单独的处理器或处理单元之间,例如,多个相同类型的处理单元(例如,两个Intel Core(英特尔核)i7处理器)或多个不同处理器(例如,Intel Core i5处理器和Intel Core i7处理器)之间。在一些实施例中,控制电路304执行存储在存储器(例如,储存器308)中的用于媒体指导应用的指令。具体地说,控制电路304可以由媒体指导应用指示执行上面和下面讨论的功能。例如,媒体指导应用可以将产生媒体指导显示的指令提供给控制电路304。在一些实现中,控制电路304执行的任何动作都可以基于从媒体指导应用接收的指令。
在基于客户端-服务器的实施例中,控制电路304可以包括适合于与指导应用服务器或其他网络或服务器进行通信的通信电路。用于实现上述功能的指令可以存储在指导应用服务器上。通信电路可以包括线缆调制解调器、综合服务数字网络(ISDN)调制解调器、数字用户线路(DSL)调制解调器、电话调制解调器、以太网卡、或用于与其它设备进行通信的无线调制解调器、或任何其他合适的通信电路。这样的通信可以涉及互联网或任何其他合适的通信网络或路径(结合图4更详细地描述通信网络或路径)。另外,通信电路可以包括启用用户设备装置的对等通信或者彼此远离的位置中的用户设备装置的通信的电路(下面更详细地描述)。
存储器可以是作为控制电路304的一部分的、作为储存器308提供的电子存储装置。如本文中所称的,短语“电子存储装置”或“存储装置”应被理解为意指用于存储电子数据、计算机软件或固件的任何装置,比如随机存取存储器、只读存储器、硬盘驱动器、光学驱动器、数字视频盘(DVD)录放机、紧凑盘(CD)录放机、蓝光盘(BD)录放机、蓝光3D盘录放机、数字视频录放机(DVR,有时称为个人视频录放机或PVR)、固态装置、量子存储装置、游戏控制台、游戏介质、或任何其他合适的固定的或可移动的存储装置、和/或这些装置的任何组合。
储存器308可以用于存储本文中所描述的各种类型的内容以及上述媒体指导数据。例如,储存器308可以用于存储与每个媒体资产相关联的多维矢量。储存器308可以用于存储与各种用户相关联的媒体消费活动和/或观看历史(例如,标识哪些媒体资产已经被给定用户观看或消费过)以产生/更新媒体资产矢量。也可以使用非易失性存储器(例如,用来启动引导例程和其他指令)。储存器308可以用于存储用于产生/更新媒体资产矢量的函数。与图4相关地描述的基于云的储存器可以用于补充储存器308或者代替储存器308。在一些实施例中,针对每个用户存储的观看历史可以包括用户执行的与第一媒体资产和第二媒体资产相关的活动。该活动可以包括用户观看(消费)的媒体资产的百分比、在社交网络上用户对媒体资产做出了多少条评论、在与媒体资产相关联的系列中用户消费了多少个其他的媒体资产片段、用户访问用户从其接收媒体资产以用于消费的内容来源的频率、用户分配给媒体资产的评级、媒体资产的明确的评级、用户消费媒体资产的时间、和/或它们的任何组合。
控制电路304可以包括视频产生电路和调谐电路,比如一个或多个模拟调谐器、一个或多个MPEG-2解码器或其他数字解码电路、高清调谐器、或任何其他合适的调谐或视频电路、或这样的电路的组合。还可以提供编码电路(例如,用于将空中、模拟或数字信号转换为MPEG信号以用于存储)。控制电路304还可以包括用于将内容向上转换和向下转换为用户设备300的优选输出格式的扩展器电路。电路304还可以包括用于在数字信号和模拟信号之间转换的数模转换器电路和模数转换器电路。调谐和编码电路可以被用户设备装置用于接收、显示、播放或录制内容。调谐和编码电路也可以用于接收指导数据。本文中所描述的电路,包括例如调谐、视频产生、编码、解码、加密、解码、扩展器以及模拟/数字电路,可以使用在一个或多个通用或专用处理器上运行的软件来实现。可以提供多个调谐器来处理同时发生的调谐功能(例如,观看功能和录制功能、图片嵌套(PIP)功能、多调谐器录制等)。如果储存器308是作为与用户设备300分开的装置提供的,则调谐和编码电路(包括多个调谐器)可以与储存器308相关联。
用户可以使用用户输入接口310将指令发送到控制电路304。用户输入接口310可以是任何合适的用户接口,比如遥控器、鼠标、轨迹球、键区、键盘、触摸屏、触控板、触针输入、控制杆、语音识别接口或其他用户输入接口。显示器312可以作为独立装置提供,或者与用户设备装置300的其他元件集成。例如,显示器312可以是触摸屏或触摸敏感的显示器。在这样的情况下,用户输入接口312可以与显示器312集成或组合。显示器312可以是以下中的一个或多个:监视器、电视机、用于移动装置的液晶显示器(LCD)、非晶硅显示器、低温多晶硅显示器、电子墨水显示器、电泳显示器、有源矩阵显示器、电浸润显示器、电流体显示器、阴极射线管显示器、发光二级管显示器、电致发光显示器、等离子体显示面板、高性能寻址显示器、薄膜晶体管显示器、有机发光二级管显示器、表面传导电子-发射极显示器(SED)、激光电视机、碳纳米管、量子点显示器、干涉仪调制器显示器、或任何其他合适的用于显示视觉图像的设备。在一些实施例中,显示器312可以是有HDTV能力的。在一些实施例中,显示器312可以是3D显示器,交互式媒体指导应用和任何合适的内容可以以3D显示。视频卡或图形卡可以产生输出到显示器312的输出。视频卡可以提供各种功能,比如3D场景和2D图形的加速渲染、MPEG-2/MPEG-4解码、TV输出、或连接多个监视器的能力。视频卡可以是上面与控制电路304相关地描述的任何处理电路。视频卡可以与控制电路304集成。扬声器314可以设为与用户设备装置300的其他元件集成,或者可以是独立的单元。显示在显示器312上的视频和其他内容的音频分量可以通过扬声器314播放。在一些实施例中,音频可以分发给接收器(未示出),接收器对音频进行处理并且经由扬声器314输出音频。
指导应用可以使用任何合适的架构来实现。例如,它可以是整个在用户设备装置300上实现的独立的应用。在这样的方法中,应用的指令存储在本地(例如,存储在储存器308中),供应用使用的数据被周期性地下载(例如,免费地从带外下载,从互联网资源下载,或者使用另一种合适的方法下载)。控制电路304可以从储存器308检索应用的指令,并且对这些指令进行处理以产生本文中所讨论的显示中的任何一个。基于处理的指令,控制电路304可以确定当从输入接口310接收到输入时执行什么动作。例如,光标在显示器上向上/向下的移动可以由当输入接口310指示向上/向下按钮被选择时的处理的指令指示。
在一些实施例中,媒体指导应用是基于客户端-服务器的应用。供用户设备装置300上实现的胖或瘦客户端使用的数据通过向远离用户设备装置300的服务器发出请求而被按需检索。在基于客户端-服务器的指导应用的一个例子中,控制电路304运行解释远程服务器提供的网页的web浏览器。例如,远程服务器可以将用于应用的指令存储在存储装置中。远程服务器可以使用电路(例如,控制电路304)对存储的指令进行处理,并且产生上面和下面讨论的显示。客户端装置可以接收远程服务器产生的显示,并且可以在设备装置300上本地显示这些显示的内容。这样,指令的处理由服务器远程执行,而所得的显示在设备装置300上本地提供。设备装置300可以经由输入接口310从用户接收输入,并且将这些输入发送到远程服务器以用于处理和产生对应的显示。例如,设备装置300可以将指示向上/向下按钮经由输入接口310被选择的通信发送到远程服务器。远程服务器可以根据该输入来对指令进行处理,并且产生与该输入对应的应用的显示(例如,向上/向下移动光标的显示)。所产生的显示然后被发送到设备装置300以用于呈现给用户。
在一些实施例中,媒体指导应用被下载,并且被解释器或虚拟机(由控制电路304运行)解释或者以其他方式运行。在一些实施例中,指导应用可以被编码为ETV二进制交换格式(EBIF),被控制电路304作为合适的馈送的一部分接收,并且被在控制电路304上运行的用户代理解释。例如,指导应用可以是EBIF应用。在一些实施例中,指导应用可以由一系列基于JAVA的文件定义,这些文件被本地虚拟机或者由控制电路304执行的其他合适的中间件接收并且运行。在这样的实施例中的一些实施例(例如,利用MPEG-2或其他数字媒体编码方案的那些实施例)中,指导应用可以例如与节目的MPEG音频和视频数据包一起被编码并且按MPEG-2对象轮播进行发送。
图3的用户设备装置300可以在图4的系统400中实现为用户电视设备402、用户计算机设备404、无线用户通信装置406、或任何其他类型的适合于访问内容的用户设备(比如非便携式游戏机)。为简单起见,这些装置在本文中可以共称为用户设备或用户设备装置,并且可以与上述用户设备装置基本上是相似的。在其上可以实现媒体指导应用的用户设备装置可以用作独立的装置,或者可以是装置网络的一部分。可以实现装置的各种网络配置,下面更详细地讨论这些网络配置。
利用上面结合图3描述的系统特征中的至少一些的用户设备装置可以不只是分类为用户电视设备402、用户计算机设备404或无线用户通信装置406。例如,用户电视设备402可以像某个用户计算机设备404那样是启用互联网的以允许访问互联网内容,而用户计算机设备404可以像某个电视设备402那样包括允许访问电视节目编排的调谐器。媒体指导应用可以在各种不同类型的用户设备上具有相同的布局,或者可以针对用户设备的显示能力定制。例如,在用户计算机设备404上,指导应用可以作为通过web浏览器访问的网站提供。在另一个例子中,指导应用可以针对无线用户通信装置406缩减。
在系统400中,每种类型的用户设备装置通常存在不只一个,但是在图4中每种类型仅示出了一个以避免使附图过于复杂。另外,每个用户可以利用多于一种类型的用户设备装置,而且还可以利用多于一个的每种类型的用户设备装置。
在一些实施例中,用户设备装置(例如,用户电视设备402、用户计算机设备404、无线用户通信装置406)可以被称为“第二屏幕装置”。例如,第二屏幕装置可以补充第一用户设备装置上呈现的内容。第二屏幕装置上呈现的内容可以是补充第一装置上呈现的内容的任何合适的内容。在一些实施例中,第二屏幕装置提供用于调整第一装置的设置和显示偏好的接口。在一些实施例中,第二屏幕装置被配置为与其他第二屏幕装置进行交互或者与社交网络进行交互。第二屏幕装置可以安置在与第一装置相同的房间里,安置在与第一装置不同的、但是在同一个房子或建筑物里的房间里,或者安置在与第一装置不同的建筑物里。
用户还可以设置各种设置以在家里的装置和远程装置上维护一致的媒体指导应用设置。设置包括本文中所描述的那些,以及最喜爱的频道和节目、指导应用用来做出节目编排推荐的节目编排偏好、显示偏好以及其他希望的指导设置。例如,如果用户例如在他们的办公室处的他们的个人计算机上在网站www.allrovi.com上将频道设置为最喜爱的频道,则同一个频道将在用户的家里的装置(例如,用户电视设备和用户计算机设备)以及用户的移动装置上表现为最喜爱的,如果需要的话。因此,在一个用户设备装置上做出的改变可以改变另一个用户设备装置上的指导体验,而不管它们是相同类型的用户设备装置、还是不同类型的用户设备装置。另外,所做的改变可以基于用户输入的设置以及指导应用监视的用户活动。
用户设备装置可以耦合到通信网络414。也就是,用户电视设备402、用户计算机设备404以及无线用户通信装置406分别经由通信路径408、410和412耦合到通信网络414。通信网络414可以是一个或多个网络,包括互联网、移动电话网络、移动语音或数据网络(例如,4G或LTE网络)、线缆网络、公共交换电话网络、或其他类型的通信网络或通信网络的组合。路径408、410和412可以分别或共同包括一个或多个通信路径,比如卫星路径、光纤路径、线缆路径、支持互联网通信的路径(例如,IPTV)、自由空间连接(例如,用于广播或其他无线信号)、或任何其他合适的有线或无线通信路径或这样的路径的组合。路径412用点线绘制以指示在图4所示的示例性实施例中它是无线路径,路径408和410被绘制为实线以指示它们是有线路径(但是这些路径可以是无线路径,如果需要的话)。与用户设备装置的通信可以由这些通信路径中的一个或多个提供,但是在图4中被示为单个路径以避免使附图过于复杂。
尽管通信路径不是在用户设备装置之间绘制的,但是这些装置可以经由通信路径直接相互通信,所述通信路径比如上面结合路径408、410和412描述的那些通信路径,以及其他短距离点对点通信路径,比如USB线缆、IEEE 1394线缆、无线路径(例如,蓝牙、红外线、IEEE 802-11x等)、或经由有线或无线路径的其他短距离通信。蓝牙是Bluetooth SIG,INC.所拥有的证明商标。用户设备装置还可以通过经由通信网络414的间接路径直接相互通信。
系统400包括分别经由通信路径420和422耦合到通信网络414的内容源416和媒体指导数据源418。路径420和422可以包括上面结合路径408、410和412描述的通信路径中的任何一个。与内容源416和媒体指导数据源418的通信可以通过一个或多个通信路径交换,但是在图4中被示为单个路径以避免使附图过于复杂。另外,内容源416和媒体指导数据源418中的每者都可以存在不只一个,但是在图4中每者仅示出了一个以避免使附图过于复杂。(下面讨论这些源中的每个的不同类型。)如果需要的话,内容源416和媒体指导数据源418可以集成为一个源装置。尽管源416和418之间与用户设备装置402、404和406的通信被示为是通过通信网络414的,但是在一些实施例中,源416和418可以经由通信路径(未示出)(比如,上面结合路径408、410和412描述的那些通信路径)直接与用户设备装置402、404和406进行通信。
内容源416可以包括一种或多种类型的内容分发设备,包括电视分发设施、线缆系统头端、卫星分发设施、节目编排源(例如,电视广播公司,比如NBC、ABC、HBO等)、中间分发设施和/或服务器、互联网提供商、点播媒体服务器以及其他内容提供商。NBC是国家广播有限公司(National Broadcasting Company,Inc.)所拥有的商标,ABC是美国广播有限公司(American Broadcasting Company,Inc.)所拥有的商标,HBO是家庭盒子办公室有限公司(Home Box Office,Inc.)所拥有的商标。内容源416可以是内容的创始者(例如,电视广播公司、网络直播提供商等),或者可以不是内容的创始者(例如,点播内容提供商、用于下载的广播节目的内容的互联网提供商等)。内容源416可以包括线缆源、卫星提供商、点播提供商、互联网提供商、过顶(over-the-top)内容提供商或其他内容提供商。内容源416还可以包括位于远离任何一个用户设备装置的位置中的用于存储不同类型的内容(包括用户选择的视频内容)的远程媒体服务器。结合2010年7月20日发表的Ellis等人的美国专利No.7,761,892更详细地讨论了用于内容的远程存储并且将存储的内容远程地提供给用户设备的系统和方法,该专利特此全文通过引用并入本文。
媒体指导数据源418可以提供媒体指导数据,比如上述媒体指导数据。媒体指导数据可以使用任何合适的方法提供给用户设备装置。在一些实施例中,指导应用可以是独立的交互式电视节目指南,该节目指南经由数据馈送(例如,连续的馈送或细流馈送)接收节目指南数据。节目调度数据和其他指导数据可以使用带内数字信号、使用带外数字信号、或者通过任何其他合适的数据传输技术在电视频道边带上提供给用户设备。节目调度数据和其他媒体指导数据可以在多个模拟或数字电视频道上提供给用户设备。
在一些实施例中,来自媒体指导数据源418的指导数据可以使用客户端-服务器方法提供给用户的设备。例如,用户设备装置可以从服务器拉出媒体指导数据,或者服务器可以将媒体指导数据推送到用户设备装置。在一些实施例中,当需要时,例如,当指导数据过期时或者当用户设备装置从用户接收到接收数据的请求时,驻留在用户的设备上的指导应用客户端可以发起与源418的会话以获得指导数据。媒体指导可以以任何合适的频率(例如,连续地、每日地、用户指定的时间段、系统指定的时间段、响应于来自用户设备的请求等)提供给用户设备。媒体指导数据源418可以向用户设备装置402、404和406提供媒体指导应用本身或者对媒体指导应用的软件更新。
在一些实施例中,媒体指导数据可以包括观看者数据。例如,观看者数据可以包括当前的和/或历史的用户活动信息(例如,用户通常观看什么内容、用户在一天中的什么时间观看内容、用户是否与社交网络进行交互、用户在什么时间与社交网络进行交互来发布信息、用户通常观看什么类型的内容(例如,付费电视或免费电视)、基调、大脑活动信息等)。媒体指导数据还可以包括订阅数据。例如,订阅数据可以标识给定用户订阅了哪些源或服务和/或给定用户以前订阅过但是后来终止访问哪些源或服务(例如,用户是否订阅了付费频道、用户是否已经添加了付费水平的服务、用户是否已经提高了互联网速度)。在一些实施例中,观看者数据和/或订阅数据可以标识给定用户在多于一年的时间段内的模式。
媒体指导应用可以例如是在用户设备装置上实现的独立的应用。例如,媒体指导应用可以实现为可以存储在储存器308中并且被用户设备装置300的控制电路304执行的软件或可执行指令集。在一些实施例中,媒体指导应用可以是客户端-服务器应用,其中,只有客户端应用驻留在用户设备装置上,服务器应用驻留在远程服务器上。例如,媒体指导应用可以部分实现为用户设备装置300的控制电路304上的客户端应用,部分在远程服务器上实现为在远程服务器的控制电路上运行的服务器应用(例如,媒体指导数据源418)。当被远程服务器的控制电路(比如媒体指导数据源418)执行时,媒体指导应用可以指示控制电路产生指导应用显示并且将产生的显示发送到用户设备装置。服务器应用可以指示媒体指导数据源418的控制电路发送数据以用于存储在用户设备上。客户端应用可以指示接收的用户设备的控制电路产生指导应用显示。
递送到用户设备装置402、404和406的内容和/或媒体指导数据可以是过顶(OTT)内容。OTT内容递送允许启用互联网的用户装置(包括上述任何用户设备装置)除了通过线缆连接或卫星连接接收的内容之外还接收通过互联网传送的内容,包括上述任何内容。OTT内容经由互联网服务提供商(ISP)提供的互联网连接递送,但是第三方分发内容。ISP可以不负责观看能力、版权、或内容的再次分发,可以仅传送OTT内容提供商提供的IP数据包。OTT内容提供商的例子包括经由IP数据包提供音频和视频的YOUTUBE、NETFLIX和HULU。Youtube是谷歌有限公司(Google Inc.)所拥有的商标,Netflix是Netflix Inc.所拥有的商标,Hulu是葫芦有限公司(Hulu,LLC)所拥有的商标。OTT内容提供商可以另外或者替代地提供上述媒体指导数据。除了内容和/或媒体指导数据之外,OTT内容的提供商还可以分发媒体指导应用(例如,基于web的应用或基于云的应用),或者内容可以由存储在用户设备装置上的媒体指导应用显示。
媒体指导系统400意图例示说明用户设备装置以及内容和指导数据的来源出于访问内容和提供媒体指导的目的可以通过其相互通信的网络配置或若干种方法。本文中所描述的实施例可以应用于这些方法中的任何一种方法或者这些方法的子集中,或者可以应用于利用用于递送内容并且提供媒体指导的其他方法的系统中。以下四种方法提供图4的一般化例子的具体例示说明。
在一种方法中,用户设备装置可以在家庭网络内相互通信。用户设备装置可以直接经由上述短距离点对点通信方案、经由通过家庭网络上提供的集线器或其他相似装置的间接路径、或者经由通信网络414相互通信。单户家庭里的多个个人中的每个人可以在家庭网络上操作不同的用户设备装置。结果,对于各种媒体指导信息或设置来说可能希望的是在不同的用户设备装置之间被传送。例如,如2005年7月11日提交的Ellis等人的美国专利申请No.11/179,410中更详细地描述的,对于用户来说可能希望的是在家庭网络内的不同用户设备装置上维护一致的媒体指导应用设置。家庭网络中的不同类型的用户设备装置还可以相互通信来发送内容。例如,用户可以将内容从用户计算机设备发送到便携式视频播放器或便携式音乐播放器。
在第二种方法中,用户可以具有他们通过其访问内容并且获得媒体指导的多种类型的用户设备。例如,一些用户可以具有被家里的装置和移动装置访问的家庭网络。用户可以经由远程装置上实现的媒体指导应用来控制家里的装置。例如,用户可以经由他们的办公室处的个人计算机或者移动装置(比如PDA或启用web的移动电话)来访问网站上的在线媒体指导应用。用户可以对在线指导应用设置各种设置(例如,录制、提醒或其他设置)来控制用户的家里的设备。在线指南可以直接地或者通过与用户的家里的设备上的媒体指导应用进行通信来控制用户的设备。例如2011年10月25日发表的Ellis等人的美国专利No.8,046,801中讨论了用于用户设备装置通信(其中,用户设备装置位于相互远离的位置中)的各种系统和方法,该专利特此全文通过引用并入本文。
在第三种方法中,用户设备装置的用户在家里和家外可以使用它们的媒体指导应用来直接与内容源416进行通信以访问内容。具体地说,在家里,用户电视设备402和用户计算机设备404的用户可以访问媒体指导应用以在期望的内容之间导航并且找出期望的内容。用户还可以在家外使用无线用户通信装置406来访问媒体指导应用以在期望的内容之间导航并且找出期望的内容。
在第四种方法中,用户设备装置可以在云计算环境中进行操作来访问云服务。在云计算环境中,用于内容共享、存储或分发的各种类型的计算服务(例如,视频共享站点或社交网络站点)由可接入网络的计算资源和存储资源的集合提供,该集合被称为“云”。例如,云可以包括服务器计算装置的集合,这些服务器计算装置可以集中定位或者位于分布的位置处,向经由网络(比如经由通信网络414的互联网)连接的各种类型的用户和装置提供基于云的服务。这些云资源可以包括一个或多个内容源416以及一个或多个媒体指导数据源418。另外或者在替代方案中,远程计算站点可以包括其他用户设备装置,比如用户电视设备402、用户计算机设备404以及无线用户通信装置406。例如,其他用户设备装置可以提供对流传输的视频或者视频的存储副本的访问。在这样的实施例中,用户设备装置可以在不与中央服务器进行通信的情况下以对等的方式进行操作。
云为用户设备装置提供对服务(除其他例子之外,比如内容存储、内容共享或社交网络服务)的访问以及对上述任何内容的访问。服务可以在云中通过云计算服务提供商或者通过在线服务的其他提供商来提供。例如,基于云的服务可以包括内容存储服务、内容共享站点、社交网络站点、或者来源于用户的内容经由其分发以供其他用户在连接的装置上观看的其他服务。这些基于云的服务可以允许用户设备装置将内容存储到云并且从云接收内容,而不是将内容存储在本地并且访问本地存储的内容。
用户可以使用各种内容捕捉装置(比如,摄影机、具有视频模式的数字相机、音频录制机、移动电话以及手持计算装置)来录制内容。用户可以直接地例如从用户计算机设备404或者具有内容捕捉特征的无线用户通信装置406将内容上传到云上的内容存储服务。可替代地,用户可以首先将内容传送到用户设备装置,比如用户计算机设备404。存储内容的用户设备装置使用通信网络414上的数据传输服务将内容上传到云。在一些实施例中,用户设备装置本身是云资源,其他用户设备装置可以直接从用户在其上存储了内容的用户设备装置访问内容。
云资源可以被用户设备装置使用例如web浏览器、媒体指导应用、桌面应用、移动应用和/或这些访问应用的任何组合来访问。用户设备装置可以是依赖于云计算以供应用递送的云客户端,或者用户设备装置可以具有不访问云资源的一些功能。例如,在用户设备装置上运行的一些应用可以是云应用,即,在互联网上作为服务递送的应用,而其他应用可以被存储在用户设备装置上并且在用户设备装置上运行。在一些实施例中,用户装置可以同时从多个云资源接收内容。例如,用户装置可以流传输来自一个云资源的音频,同时从第二云资源下载内容。或者,用户装置可以从多个云资源下载内容以便更高效地下载。在一些实施例中,用户设备装置可以将云资源用于处理操作,比如与图3相关地描述的处理电路执行的处理操作。
在一些实施例中,媒体指导应用对模型进行训练以产生与媒体资产相关的资产矢量。如本文中所称的,术语“资产矢量”是指与媒体资产的属性相关联的值的集合,其可以被存储为这些值的数组,该数组中的每个值对应于该矢量的不同维度。如本文中所称的,术语“属性”包括描述媒体资产的或者与媒体资产相关联的任何内容。属性可以包括体裁、类别、内容来源、标题、系列信息或标识符、特性、演员、导演、演员阵容信息、剧组、情节、地点、描述、描述符、关键字、艺术家、基调、音调、歌词、评论、评级、长度或持续时间、传输时间、可用时间、赞助商和/或它们的任何组合。在一些实施例中,模型采取媒体资产的语料库、每个媒体资产的元数据信息以及一个或多个用户的使用数据作为输入。元数据可以包括比如以下的信息:体裁、关键字、描述以及其他合适的信息(比如上面列出的属性中的任何一个)。
媒体资产的资产矢量包括一组关于该媒体资产的元数据信息的相关联的权重或相关性。在一些实施例中,系统首先通过产生与媒体资产相关的资产矢量、然后基于与媒体资产相关联的使用数据修改资产矢量的权重来产生模型。可以基于使用数据来更新资产矢量以通过与使用数据一致来更新资产矢量中的权重而更加准确。
图5-6示出了根据本公开的一些实施例的说明性资产矢量。资产矢量500和/或600可以从储存器308检索得到,或者以任何其他合适的方式检索得到。在一些实施例中,如参照图7中的步骤704所描述的,控制电路304接收资产矢量500和600。资产矢量500和600可以包括多个字段。
在例示说明的实施例中,资产矢量500包括字段502-552。字段502指示资产矢量的开头,字段552指示资产矢量的末尾。字段504指示相关的媒体资产的编号i。字段506-512指示标题元数据“pacific rim”(字段508)以及该标题元数据的相关联的矢量(字段510)和权重(字段512)。字段514-520指示演员元数据“idris elba”(字段516)以及该演员元数据的相关联的矢量(字段518)和权重(字段520)。字段522-528指示导演元数据“guillermo del toro”(字段524)以及该导演元数据的相关联的矢量(字段526)和权重(字段528)。字段530-536指示制片人元数据“thomas tull”(字段532)以及该制片人元数据的相关联的矢量(字段534)和权重(字段536)。字段538-540指示体裁元数据“科幻”(字段540)以及该体裁元数据的相关联的矢量(字段542)和权重(字段544)。字段546-550指示资产矢量的自由浮动分量以及标题元数据的相关联的矢量(字段548)和权重(字段550)。资产矢量可以包括一个或多个这样的自由浮动分量。
在例示说明的实施例中,资产矢量600包括字段602-652。字段602指示资产矢量的开头,字段652指示资产矢量的末尾。字段604指示相关的媒体资产的编号j。字段606-612指示标题元数据“godzilla”(字段608)以及该标题元数据的相关联的矢量(字段610)和权重(字段612)。字段614-620指示演员元数据“ken watanabe”(字段616)以及该演员元数据的相关联的矢量(字段618)和权重(字段620)。字段622-628指示导演元数据“gareth edwards”(字段624)以及该导演元数据的相关联的矢量(字段626)和权重(字段628)。字段630-636指示制片人元数据“thomas tull”(字段632)以及该制片人元数据的相关联的矢量(字段634)和权重(字段636)。字段638-640指示体裁元数据“科幻”(字段640)以及该体裁元数据的相关联的矢量(字段642)和权重(字段644)。字段646-650指示资产矢量的自由浮动分量以及标题元数据的相关联的矢量(字段648)和权重(字段650)。资产矢量可以包括一个或多个这样的自由浮动分量。
资产矢量500和600分别与具有标题“pacific rim”和“godzilla”的电影相关联。对于一些用户,这些电影可能看似是非常相似的,因为它们的体裁是“科幻”。对于一些用户,这些电影可能由于例如它们的标题或它们的导演或者由于使用元数据信息可能不能适当地捕捉的其他无法解释的原因而看似不是如此相似。
媒体指导应用可以基于单个的元数据信息以及对应的权重来对两个资产矢量之间的元数据相似性进行建模。此外,已知的单个的矢量可以独立地通过其他已知的基于大型语料库(比如WORD2VEC)中的词语的共同出现的算法来确定。在一些实施例中,媒体指导应用可以利用采取文本语料库作为输入并且生成单词矢量作为输出的工具,比如WORD2VEC。关于WORD2VEC工具的更多信息可以在code.google.com/p/word2vec找到。
对于媒体资产的元数据得到的单词矢量可以用于形成媒体资产的资产矢量。资产矢量包括作为单个元数据(比如体裁、类别、关键字或任何合适的属性层面细节)的加权组合的每个媒体资产的元数据信息。例如,对于电影“pacific rim”,系统可以获取单词“pacific”,在给定的word2vec二进制文件中查找该单词,并且获得该单词的相关联的维度矢量,然后相似地获得“rim”的矢量,并且将这两个矢量加在一起以得到资产矢量的与该元数据相关的分量。可能的是,“pacific rim”作为标题对于关于侵略地球的巨型怪物的电影不是非常有指示性的,但是在该电影中给予怪物来自于哪里的一些信息。在这样的情况下,元数据分量的权重可以缩到远小于1。在一些实施例中,资产矢量可以包括捕捉媒体资产相似性的隐藏的或无法解释的原因的自由浮动分量。自由浮动矢量最初可以被设置为零、随机值或任何其他合适的矢量值。在进行训练以最小化误差函数之后,自由浮动项包含最佳的一组数值元素。
资产矢量可以表示为基于元数据的x项和无法解释的自由浮动y项的组合:
aif=xif+yif
其中,在所有因子f∈F上,存在资产矢量该资产矢量定义媒体资产i内的建模的内容。对于可通过元数据解释的以及不可通过元数据解释的每个媒体资产的各方面,xif可以表示从可用元数据解释的媒体资产项,yif可以表示从可用元数据解释不了的媒体资产项,即,自由浮动分量。
自由浮动分量和它们的权重可以捕捉经由例如WORD2VEC分析没有显露的潜在因素。例如,潜在因素可以与通过WORD2VEC分析没有捕捉到的元数据或使用信息相关。在一些实施例中,媒体指导应用对每个媒体资产的资产矢量进行处理以使得潜在因素限于小分量(y项),已知的基于元数据的信息形成资产矢量的大部分(x项)。
在一些实施例中,每条元数据表示为K维矢量空间中的矢量(例如,K通常可以在100-300或任何合适的值之间变化)。每个资产矢量是单个的矢量的加权和,因此,也是该空间中的矢量。媒体资产矢量之间的关系(例如,媒体资产矢量之间的点积)生成关于元数据相似性的模型。在某些实施例中,丢失的多条元数据被进一步建模为同一个矢量空间中的具有未知参数的矢量。该问题的目标于是在于试图预测表示关于每个媒体资产的丢失元数据的矢量以及已知的多条单个元数据的相关性权重。两个资产的元数据相似性被建模为这些单个元数据的函数。
在一些实施例中,媒体指导应用基于使用信息、连同观看了媒体资产的用户的隐含的/明确的评级来计算使用相似性。然后通过拟合最接近使用相似性的元数据相似性来确定各条元数据的权重或相关性。例如,资产矢量500和600可以与相关的使用信息相关联。资产矢量500和600可以具有与用户评级、观看时间量、电影观看时间安排、经由社交媒体表达的情绪或其他合适的信息相关的相关联的使用数据。例如,电影“pacific rim”的资产矢量500可以具有6.9/10的用户评级、80%的观看时间量、电影发行之后五天的电影观看时间安排、以及经由社交媒体有三篇推文的情绪捕捉。电影“Godzilla”的资产矢量600可以具有7.5/10的用户评级、95%的观看时间量、电影发行之后三天的电影观看时间安排、以及经由社交媒体有五篇推文的情绪捕捉。
可以单独地对使用信息进行建模来生成项目-项目相似性,其中,被一起观看的并且在多个用户之间被相似地评价/评级(其可以被称为共同的情绪)的项目具有更好的使用-相似性。如上所述,用户的情绪进一步涉及比如以下的属性:明确的评级(如果可用的话)、观看时间、相关联的观看时间安排、片段的观看数量以及情绪捕捉(例如,写博客、发推文、回顾或者经由任何其他合适的处理)。
在一些实施例中,媒体指导应用试图将媒体资产矢量尽可能接近基于使用的相似性来对齐。媒体指导应用构造误差函数,该误差函数将建模的元数据相似性与观测的基于使用的相似性(例如,基于共同出现加上情绪因素)进行比较。该误差使用改变单个的元数据分量的权重以使得基于元数据的相似性和基于使用的相似性之间的净误差最小的函数(例如随机梯度下降函数或另一个合适的梯度下降函数)而被最小化。在所有的使用数据上迭代之后,单个的元数据权重在媒体资产矢量中被更新为对于媒体资产的对应元数据相关性的最佳预测器。
例如,系统可以使用协同过滤来计算对媒体资产i和j观测的相似性sij以及置信度度量cij(基于元数据和使用数据)。对于明确评级的演出,对于已经观看过两个媒体资产i和j并且做出了评级的总共U个用户中的每个用户,可以使用皮尔逊相关系数,其中,sij=Pij:
在上面的例子中,Rui=0.69和Ruj=0.75对应于用户评级。媒体指导应用可以接收观看过两个媒体资产的用户中的其余用户的评级,基于接收的数据来计算平均值和通过该信息,系统可以计算观测的相似性,sij=Pij。在一些实施例中,媒体指导应用基于方程sij=0.5*(Pij-1)在0和1之间规范化。
在一些实施例中,媒体指导应用使用概率性(Probsim)、对数似然(LogLikehood)、杰卡德(Jaccard)、同时发生(Cooccurrences)、余弦(Cosine)或任何其他合适的处理来计算观测的相似性。Jojic等人在美国伊利诺斯州芝加哥市2011年10月23-27目的RecSys’11的“A Probabilistic Definition of Item Sililarity”中提供了用于获得两个媒体资产之间的情绪相似性的处理的说明性实施例。在一些实施例中,如果媒体资产i和j都尚未被任何用户观看,则置信度度量cij为零,并且误差项中的贡献为零。因此,不需要从该对媒体资产i和j向后传播调整。
媒体指导应用可以通过例如获取ai和aj的点积来对资产i和j计算建模的相似性mij,其中,pi和pj是资产i和j的流行度,p0是最流行的资产的流行度,α是流行度偏置因子。这些项用于将流行度偏置作为因素计入建模的相似性中。建模的相似性mij由资产矢量和均点积(下面进一步分解)以及流行度偏置项定义:
其中:
pi i的流行度,比如在观测的时间帧上观看的概率
p0 最流行的演出的流行度
α 将流行度偏置作为因素计入模型中的项
aif 表示演出的“潜在因素”的媒体资产因素
f 潜在因素索引,例如,F=300
媒体指导应用将观测的相似性sij和建模的相似性mij进行比较以确定模型误差。如果误差低于阈值,则不需要进一步的改动,因为模型的训练已经足够。如果误差大于阈值,则系统通过例如将误差反向传播通过两个模型来针对资产i和j改动模型。系统可以更新媒体资产矢量ai和aj中的权重,并且更新以上计算中的其他相关项,比如流行度偏置因子α。在一些实施例中,改动计算可以表示为最小化所有媒体资产对上的观测的相似性和建模的相似性之间的误差E:
其中:
ij 媒体资产对ij
sij ij之间的观测的“情绪”相似性(皮尔逊、概率性等)
mij 建模的相似性
cij 观测的相似性sij中的置信度
在一些实施例中,媒体资产矢量的基于元数据的x项可以进一步分解为例如来自wiki页面(来自WIKIPEDIA.COM)的元数据、与媒体资产i相关联的电影数据页面(来自IMDB.COM)、以及基于关键字和体裁的元数据的组合,并且表示为:
或者以规范化的形式表示为:
在一些实施例中,基于标题的元数据、包含与媒体资产i相关联的基于描述性文本的信息的其他网页、以及其他合适的描述可以包括在组合中。例如,对于以下类型的描述,可以使用上述WORD2VEC来对相关性权重v和矢量化权重w进行初始化:
(媒体资产i的WIKIPEDIA表示)
(媒体资产i的IMDB表示)
(媒体资产i的描述符)
(媒体资产i的情节)
(媒体资产i的体裁)
(媒体资产i的关键字)
(媒体资产i中的演员)
(媒体资产i中的制片人)
(媒体资产i中的导演)
其中:
v0 表示总体元数据效果
表示媒体资产i特定的效果
因为每个媒体资产i通常包含多个体裁、关键字和演员,所以可以使用以下方程来组合它们。例如,媒体资产i的多个体裁可以组合并表示为:
相似地,媒体资产i的多个关键字可以组合并表示为:
例如,媒体资产i的多个演员可以组合并表示为:
其中,w*f可以最初被设置为WORD2VEC矢量,并且根据本文中所描述的系统和方法更新。
在一些实施例中,对于基于网页的矢量,比如WIKIPEDIA和IMDB,媒体指导应用遍历与媒体资产i相关联的网页上的所有单词迭代,并且所述组合表示为:
相似地,关于媒体资产i中的每个矢量a的基于网页的描述可以通过WIKIPEDIA、IMDB或相似的网站获得,并且所述组合表示为:
在一些实施例中,演员一直是其一部分的媒体资产可以用流行度进行加权,并且表示为:
在一些实施例中,媒体指导应用对WIKIPEDIA、IMDB或另一个来源适当的网页进行分析,并且如下表示与媒体资产i相关联的网页中的第l个单词的矢量
其中:
关于i的网页中的单词的数量
freq(word(l)) 单词l在所有网页上出现的次数
β 防止生僻单词变得过于重要的项
如果单词l在网页中出现得较早,则对单词l创建更大重要性的项
γ 控制单词l在网页中是早、还是未出现在网页中的重要性的项
在一些实施例中,基于元数据的信息的若干个合适的组合可以基于本文中所描述的系统和方法来考虑,并且可以用于推导媒体资产矢量的分量,这些媒体资产矢量具有与本领域的普通技术人员将明白的变化一样多的变化。
图7是根据本公开的一些实施例的用于维护表示媒体资产之间的相似性的模型的处理700的示图。在步骤702,标识用户消费的一对媒体资产。例如,在控制电路304上运行的媒体指导应用可以从储存器308检索与用户相关联的观看历史。观看历史可以指示第一用户已经观看过与资产矢量500和600相关联的媒体资产。
在步骤704,控制电路304接收与第一媒体资产相关联的第一值矢量以及与第二媒体资产相关联的第二值矢量。媒体资产的资产矢量包括一组关于该媒体资产的元数据信息的相关联的权重或相关性。例如,控制电路304可以接收如上所述的资产矢量500和600。
在步骤706,控制电路304确定用户是否已经观看了第一媒体资产和第二媒体资产二者。如果与媒体资产矢量500和600相关联的媒体资产都尚未被任何用户观看,则置信度度量cij为零,并且误差项中的贡献为零。因此,对于资产矢量的调整不需要从该对媒体资产向后传播。如果控制电路304确定用户已经观看了两个媒体资产,则它继续进行到步骤708。否则,控制电路304继续进行到下面进一步描述的步骤718。
在步骤708,控制电路304确定建模的相似性值,该值表示第一媒体资产和第二媒体资产之间的建模的相似性。建模的相似性值是基于第一值矢量和第二值矢量来确定的。控制电路304可以通过例如获取ai和aj的点积来对资产i和j计算建模的相似性mij,其中,pi和pj是资产i和j的流行度,p0是最流行的资产的流行度,α是流行度偏置因子。这些项用于将流行度偏置作为因素计入建模的相似性中。如上面关于图5-6所描述的,建模的相似性mij可以由资产矢量和的点积定义。
在步骤710,控制电路304检索观测的相似性值,该值表示第一媒体资产和第二媒体资产之间的观测的相似性。观测的相似性是基于关于第一媒体资产和第二媒体资产的使用数据以及元数据的。控制电路304可以使用协同过滤来对媒体资产i和j计算观测的相似性sij以及置信度度量cij(基于元数据和使用数据)。在一些实施例中,控制电路304使用概率性、对数似然、杰卡德、同时发生、余弦或任何其他合适的处理来计算观测的相似性。
在步骤712,控制电路304基于建模的相似性值和观测的相似性值来确定建模误差值。媒体指导应用构造将建模的元数据相似性与观测的基于使用的相似性进行比较的误差函数。使用改变单个的元数据分量的权重以使得基于元数据的相似性和基于使用的相似性之间的净误差最小的函数来使该误差最小化。
在步骤714,控制电路304确定建模误差值是否低于阈值误差值。如果误差低于阈值,则不需要进一步的改动,因为模型的训练已经足够。如果误差大于阈值,则系统通过例如将误差反向传播通过两个模型来针对媒体资产i和j改动模型。如果控制电路304确定建模误差值低于阈值误差值,则它继续进行到下面进一步描述的步骤718。否则,控制电路304继续进行到步骤716。
在步骤716,控制电路304基于建模误差值更新与第一媒体资产相关联的第一值矢量以及与第二媒体资产相关联的第二值矢量。控制电路304可以更新媒体资产矢量500和600中的权重,并且更新相关计算中的其他相关项,比如流行度偏置因子α。在所有的使用数据上迭代之后,单个的元数据权重在媒体资产矢量中被更新为对于媒体资产的对应元数据相关性的最佳预测器。
在步骤718,控制电路304确定另一对媒体资产是否仍要被分析。如果控制电路304确定另一对媒体资产仍要被分析,则它继续进行到步骤704。否则,控制电路304继续进行到步骤720,并且结束处理。
设想图7的步骤或描述可以与本公开的任何其他的实施例一起使用。另外,与图7相关地描述的步骤和描述可以按替代次序或者并行地进行以推进本公开的目的。例如,这些步骤中的每个步骤可以按任何次序或者并行地或者基本上同时地执行以减小滞后或者提高系统或方法的速度。此外,应注意到,与图3-4相关地讨论的装置或设备中的任何一个可以用于执行图7中的步骤中的一个或多个。
本公开的上述实施例是出于例示说明、而非限制的目的呈现的,并且本公开仅由所附权利要求书限制。此外,应注意到,任何一个实施例中所描述的特征和限制可以应用于本文中的任何其他的实施例,与一个实施例相关的流程图或例子可以以合适的方式与任何其他实施例组合,按不同的次序进行,或者并行地进行。另外,本文中所描述的系统和方法可以实时地执行。还应注意到,上述系统和/或方法可以应用于其他系统和/或方法,或者根据其他系统和/或方法使用。