层级多源播放列表生成的制作方法

文档序号:16595913发布日期:2019-01-14 19:38阅读:195来源:国知局
层级多源播放列表生成的制作方法

计算机、计算机网络、并且尤其是因特网的发展已经显著地扩展了用于接收可用于用户的音频内容的选项的数目。与典型的广播无线电不同,对于任何特定的站点,音频内容的序列在被整个广播之前由有限数目的个体选择,因特网已经以更加个性化的方式实现音频内容的流式传输。例如,用户可以通过提供诸如艺术家或轨道的种子来使用基于互联网的音频服务来创建个人站点。然后,该服务通常将尝试提供与该种子相对应的音频选择。

尽管这些发展已经是有益的,但是音频内容的基于因特网的递送所特有的各种问题仍然存在。例如,当进行用户不喜欢、厌烦或以其他方式发现不吸引人的音频选择时,用户体验受到阻碍。此外,当没有进行用户将喜欢的音频选择时,机会被错过。这些问题可能会迫使用户手动跳过不喜欢或过度使用的轨道(可能会中断其他任务),或者可能导致他们简单地完全停止使用该服务。

本文中要求保护的主题不限于解决任何缺点或仅在诸如上述那些环境中操作的实施例。更确切地,该背景仅被提供用于说明可以实践本文中描述的一些实施例的一种示例性技术领域。



技术实现要素:

本文中描述的至少一些实施例涉及播放列表生成器的使用,该播放列表生成器被配置为从一组候选轨道组装播放列表内的一个或多个轨道的序列。当最初接收到播放列表种子时,生成一组候选轨道,并且根据一个或多个特征对每个候选轨道进行评分。根据与特定播放列表种子相关联的基于种子的训练数据(例如,多个用户的历史聆听模式)对特征进行加权。在一些实施例中,根据基于用户的训练数据(例如,特定用户的历史聆听模式)对特征进行附加地加权。

在一些实施例中,播放列表生成器然后使用加权特征得分来将每个候选轨道排名在经排名的候选轨道映射/排名中。在一些实施例中,该排名包括将每个候选轨道的加权特征得分转换为概率得分。然后可以通过遍历映射以选择一个或多个候选轨道以构成播放列表来生成播放列表。

在一些实施例中,应用一个或多个选择性参数来控制从经排名的候选轨道映射中选择一个或多个候选轨道的方式。例如,可以应用选择性参数来控制选择序列遵循候选轨道的排名/映射的严格性或紧密性。在一个示例中,选择性参数被配置为基于探索/保守的连续统一体来控制映射内的轨道选择,使得更具探索性的设置实现对位于映射内的相对更大距离处(即,具有相对更低的排名和/或概率得分)的一个或多个候选轨道的选择,而更保守的设置将选择调节到位于相对更接近种子和/或先前播放的轨道(即,具有相对更高的排名和/或概率得分)的一个或多个候选轨道。更“探索性”的设置提供了更多的意外发现和可发现性,这些通常是播放列表的期望特质;然而,不同用户可能期望不同相对量的这种播放列表特质。在一些实施例中,根据基于用户的训练数据和基于种子的训练数据来调节选择性参数,以向所生成的播放列表提供可发现性、意外性或多样性中的至少一个的最佳水平。

当在特定站点中选择和播放候选轨道时,可以迭代播放列表生成和轨道选择过程以在播放序列中生成附加轨道。例如,在一些实施例中,所生成的播放列表可以仅是一个轨道长或几个轨道长,使得基于用户对所选择的候选轨道的响应(例如,跳过、不跳过、或明确指示兴趣级别)来在每个轨道转换或每几个轨道转换时迭代地重新配置候选轨道映射。

在一些情况下,所接收的播放列表种子可能具有很少或不具有与其直接相关联的基于种子的训练数据。例如,相对较新的艺术家可能没有被足够长时间地聆听以便实现对任何直接相关联的历史聆听模式的生成。本文中描述的至少一些实施例通过利用具有不同层级级别和与每个层级级别相对应的不同组的基于种子的训练数据的流派层级来在这些类型的情况下提供基于种子的训练数据。

例如,在特定播放列表种子存在不足量的历史数据的情况下,流派层级被遍历到逐渐更高的级别,直到达到具有足够历史数据的级别,并且来自该级别的使用/训练数据用于制定对候选轨道特征的基于种子的加权。在一些实施例中,当为特定播放列表种子收集附加使用数据时,在加权操作中使用的协作使用数据的逐渐更高比例可以源自先前具有不足够训练数据的较低层级级别。

提供本“发明内容”是为了以简化的形式介绍一些概念,这些概念将在下面的“具体实施方式”中进一步描述。本“发明内容”不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。

附图说明

为了描述可以获取本发明的上述和其他优点和特征的方式,将通过参考附图中所示的具体实施例来呈现上面简要描述的本发明的更具体的描述。应当理解,这些附图仅描绘了本发明的典型实施例,因此不应当被认为是对其范围的限制,本发明将通过使用附图利用附加特征和细节来被描述和解释,在附图中:

图1示出了可以采用本文中描述的原理的示例计算系统;

图2示出了本文中描述的原理可以在其中操作并且其中生成用于控制多媒体播放列表的数据结构的示例环境;

图3示出了根据本文中描述的原理的用于生成多媒体播放列表的方法的流程图。

图4a-4c示出了本文中描述的原理可以通过根据多媒体流派层级来获取基于种子的训练数据来在其中进行操作的示例环境;

图5示出了根据本文中描述的原理的用于根据多媒体流派层级来获取基于种子的训练数据的方法的流程图。

图6a-6b示出了包括根据所应用的选择性参数来选择经排名的元素的多媒体选择过程的示例。

具体实施方式

本文中描述的至少一些实施例涉及一个或多个优化的播放列表的生成,以通过提供对基于因特网的音频内容递送的上下文中特别出现的播放列表生成问题的有益解决方案来实现改进的用户体验。例如,在因特网无线电域中特别出现的问题包括基于指定的用户输入(例如,站点种子)提供合适的个性化播放列表而不关注潜在播放列表候选的错误特征的挑战。在该上下文中特别出现的附加挑战包括提供一种提供足够的多样性、可发现性和偶然发现的机会而不会偏离用户偏好太远并且不会过度重复或无聊的播放列表。

在基于因特网的音频内容递送的上下文中出现的另一挑战包括平衡多个指示数据源。例如,给定特定播放列表种子或当前播放的轨道,候选轨道选择可以基于声学属性的相似性(例如,基于呈现出轨道、专辑和艺术家之间的相似性的数字信号处理)和/或历史使用模式的相似性(例如,基于从大型使用模式数据集观察到的用户的音乐品味;即,协同过滤数据)。对前者的过度依赖倾向于错过良好聆听体验的很多元素,而对后者的过度依赖倾向于将播放列表朝向流行的轨道和艺术家以及具有更多使用数据的旧轨道过度倾斜。

相关挑战包括对相对较新的音频内容的处理。例如,基于除了潜在的声学相似性度量之外的任何东西,难以将具有有限的相关联的使用数据的新艺术家、专辑和/或轨道合并到播放列表生成方案中。当然,播放列表生成器可以更多地针对这种声学相似性度量进行调节,以试图捕获更大比例的较新音频内容,但这样做会引入上述对声学相似性的过度依赖问题,并且无法完全捕获随着时间的推移而可能会变得明显的新内容的现实世界使用相似性。

本文中描述的至少一些实施例解决了前述挑战中的一个或多个。尽管本文中描述的示例和所示实施例通常在生成音频轨道播放列表的上下文中被描述,但是本领域技术人员将理解,本文中描述的解决方案和益处也可以被应用于其他基于因特网的多媒体上下文中的层级多源播放列表生成,其中类似的问题(例如,提供个性化和令人愉快的内容选择序列)通过本文中描述的原理和概念被有利地解决。例如,本文中描述的一些实施例可以在生成视频流队列或非音乐音频播放列表(例如,有声读物)的上下文中被利用。

将关于图1描述计算系统的一些介绍性讨论。然后,将关于图2至图6b描述层级和/或多源播放列表生成器的实施例的操作。

计算系统现在越来越多地采用各种各样的形式。例如,计算系统可以是手持设备、电器、膝上型计算机、台式计算机、大型机、分布式计算系统、数据中心、或甚至传统上尚未被认为是计算系统的设备,诸如可穿戴设备(例如,眼镜)。在本说明书和权利要求书中,术语“计算系统”被广义地定义为包括任何设备或系统(或其组合),其包括至少一个物理和有形处理器以及能够在其上具有可以由处理器执行的计算机可执行指令的物理和有形存储器。存储器可以采用任何形式,并且可以取决于计算系统的性质和形式。计算系统可以分布在网络环境上,并且可以包括多个组成计算系统。

如图1所示,在其最基本配置中,计算系统100通常包括至少一个硬件处理单元102和存储器104。存储器104可以是物理系统存储器,其可以是易失性的、非易失性的、或两者的某种组合。术语“存储器”在本文中也可以用于指代非易失性大容量存储装置,诸如物理存储介质。如果计算系统是分布式的,则处理、存储器和/或存储能力也可以是分布式的。

计算系统100上还具有通常被称为“可执行组件”的多个结构。例如,计算系统100的存储器104被示出为包括可执行组件106。术语“可执行组件”是结构的名称,计算领域中的普通技术人员很好地将该结构理解为可以是软件、硬件或其组合的结构。例如,当以软件实现时,本领域普通技术人员可以理解,可执行组件的结构可以包括软件对象、例程、方法等,其可以在计算系统上被执行,而无论这样的可执行组件是否存在于计算系统的堆中,或者无论可执行组件是否存在于计算机可读存储介质上。

在这样的情况下,本领域普通技术人员将认识到,可执行组件的结构存在于计算机可读介质上,使得当由计算系统的一个或多个处理器(例如,由处理器线程)解释时,计算系统被引起执行功能。这样的结构可以由处理器直接计算机可读(如果可执行组件是二进制的,则就是这种情况)。备选地,结构可以被构造为是可解释和/或被编译的(无论是在单个阶段还是在多个阶段中),以便生成由处理器直接可解释的这样的二进制文件。当使用术语“可执行组件”时,对可执行组件的示例结构的这样的理解完全在计算领域的普通技术人员的理解之内。

术语“可执行组件”也被本领域普通技术人员很好地理解为包括专门或近似专门以硬件(诸如在现场可编程门阵列(fpga)、专用集成电路(asic)或任何其他专用电路内)实现的结构。因此,术语“可执行组件”是用于被计算领域中的普通技术人员很好地理解的结构的术语,无论该结构是以软件、硬件还是以组合的方式实现。在本说明书中,也可以使用术语“组件”、“服务”、“引擎”、“模块”、“虚拟机”、“控件”等。如在本描述中以及在这种情况下所使用的,这些术语(不管是否利用修饰从句表达)也旨在与术语“可执行组件”同义,并且因此也具有被计算领域中的普通技术人员很好理解的结构。

在以下描述中,参考由一个或多个计算系统执行的动作来描述实施例。如果这些动作以软件实现,则(执行动作的相关联的计算系统的)一个或多个处理器响应于已经执行构成可执行组件的计算机可执行指令来引导计算系统的操作。例如,这样的计算机可执行指令可以在形成计算机程序产品的一个或多个计算机可读介质上被实施。这种操作的示例涉及对数据的操纵。

计算机可执行指令(和所操纵的数据)可以存储在计算系统100的存储器104中。计算系统100还可以包含允许计算系统100通过例如网络110与其他计算系统通信的通信信道108。

尽管不是所有计算系统都需要用户界面,但是在一些实施例中,计算系统100包括用户界面112以用于在与用户交互时使用。用户界面112可以包括输出机构112a以及输入机构112b。本文中描述的原理不限于精确的输出机构112a或输入机构112b,因为这将取决于设备的性质。然而,输出机构112a可以包括例如扬声器、显示器、触觉输出、全息图、虚拟现实元素等。输入机构112b的示例可以包括麦克风、触摸屏、全息图、相机、键盘、其他指示器输入的鼠标、任何类型的传感器、虚拟现实元素等。

本文中描述的实施例可以包括或利用包括计算机硬件(诸如例如一个或多个处理器和系统存储器)的专用或通用计算系统,如下面更详细讨论的。本文中描述的实施例还包括用于携带或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是能够由通用或专用计算系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。携带计算机可执行指令的计算机可读介质是传输介质。因此,作为示例而非限制,本发明的实施例可以包括至少两种截然不同的计算机可读介质:存储介质和传输介质。

计算机可读存储介质包括ram、rom、eeprom、cd-rom或其他光盘存储装置、磁盘存储装置或其他磁存储设备、或者能够用于以计算机可执行指令或数据结构的形式存储期望的程序代码装置并且能够由通用或专用计算系统访问的任何其他物理和有形存储介质。

“网络”被定义为实现电子数据在计算系统和/或模块和/或其他电子设备之间的传输的一个或多个数据链路。当通过网络或另一通信连接(硬连线、无线或者硬连线或无线的组合)向计算系统传送或提供信息时,计算系统将连接恰当地视为传输介质。传输介质可以包括能够用于以计算机可执行指令或数据结构的形式携带期望的程序代码装置并且能够由通用或专用计算系统访问的网络和/或数据链路。上述的组合也应当被包括在计算机可读介质的范围内。

此外,在到达各种计算系统组件时,以计算机可执行指令或数据结构形式的程序代码装置可以从传输介质被自动传送到存储介质(反之亦然)。例如,通过网络或数据链路接收的计算机可执行指令或数据结构可以缓存在网络接口模块(例如,“nic”)内的ram中,并且然后最终传送到计算系统ram和/或计算系统处的较不易失性存储介质。因此,应当理解,存储介质可以被包括在也(甚至主要)利用传输介质的计算系统组件中。

计算机可执行指令包括例如当在处理器处执行时引起通用计算系统、专用计算系统或专用处理设备执行特定功能或功能组的指令和数据。备选地或附加地,计算机可执行指令可以将计算系统配置为执行某个功能或功能组。计算机可执行指令可以是例如二进制文件或者甚至在处理器直接执行之前经历一些转换(诸如编译)的指令,诸如例如汇编语言的中间格式指令或甚至源代码。

虽然已经以特定于结构特征和/或方法动作的语言描述了主题,但是应当理解,在所附权利要求中限定的主题不一定限于以上描述的特征或动作。更确切地,所描述的特征和动作被公开作为实现权利要求的示例形式。

本领域技术人员将理解,本发明可以在具有很多类型的计算系统配置的网络计算环境中实践,包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持设备、多处理器系统、基于微处理器或可编程的消费电子产品、网络pc、小型计算机、大型计算机、移动电话、pda、寻呼机、路由器、交换机、数据中心、可穿戴设备(诸如眼镜)等。本发明也可以在分布式系统环境中实施,其中通过网络链接(通过硬连线数据链路、无线数据链路或者通过硬连线和无线数据链路的组合)的本地和远程计算系统都执行任务。在分布式系统环境中,程序模块可以位于本地和远程存储器存储设备两者中。

本领域技术人员还将理解,本发明可以在云计算环境中实践。云计算环境可以是分布式的,尽管这不是必需的。在分布式的情况下,云计算环境可以在国际上在组织内分布和/或具有跨越多个组织而拥有的组件。在本说明书和以下权利要求中,“云计算”被定义为用于实现对可配置计算资源(例如,网络、服务器、存储器、应用和服务)的共享池的按需网络访问的模型。“云计算”的定义并不局限于在适当部署时可以从这样的模型中获取的其他很多优点中的任何优点。

图2示出了本文中描述的原理和组件可以在其中操作的计算系统200。所示组件可以被包括在如以上针对图1的计算系统100所描述的结构化的计算系统或计算设备中。计算系统200包括特征评分组件204,其被配置为接收一组候选轨道202并且生成一组对应的特征向量206。对于该组候选轨道202内的每个候选轨道,特征评分组件204被配置为根据一个或多个单独的特征对候选轨道进行评分,以生成其维度的数目等于评分特征的数目的对应特征向量(例如,k维特征向量,其中“k”等于评分特征的数目)。

该组候选轨道202可以包括计算系统200内或由计算系统200可获取的所有可用候选轨道的全局列表。备选地,该组候选轨道200可以表示子集,诸如被分类为与播放列表种子相关的某种流派或子流派的所有轨道的列表。

候选轨道202中的每一个可以按其被评分的示例性特征包括与播放列表种子的相似性和/或与当前播放的轨道的相似性,其中相似性度量包括声学相似性和/或历史使用相似性(例如,基于对基于人群的数据集的协作过滤)。例如,在其中播放列表种子是艺术家的实现中,特征评分组件202可以被配置为根据以下各项对每个候选轨道进行评分:候选轨道与种子艺术家的声学相似性、候选轨道与当前播放轨道的声学相似性、候选轨道与当前播放轨道的艺术家的声学相似性、候选轨道与种子艺术家的使用相似性、候选轨道与当前播放轨道的使用相似性和/或候选轨道与当前播放轨道的艺术家的使用相似性。

附加地或备选的,该组评分特征可以包括候选轨道流行度、元数据信息(例如,发行年份、记录标签、轨道或专辑的情绪标签等)、策划的专家意见、用户简档信息(例如,年龄、地理位置等)和/或艺术家的原籍州或原籍国。本领域技术人员将理解,本文中描述的特定特征是示例性的,并且还可以包括与候选轨道的排名相关的其他可评价特征。

如本文中使用的,术语“使用相似性”和类似术语是指基于历史使用模式的相似性。例如,使用数据可以指示对于给定的艺术家、专辑或轨道,播放列表将倾向于以相对较高的比率包括另一特定的艺术家、专辑和/或轨道。在一些实施例中,这样的使用数据包括作为多个不同播放列表的编译的结果而由多个用户生成的众包数据。这样的使用数据在本文中可以称为“协作使用数据”、“历史使用数据”、“协作/历史聆听模式”等。

所示出的计算系统200还包括维度加权组件208,其被配置为接收该组特征向量206,并且对特征向量206的每个维度进行加权以生成一组维度加权的特征向量222。如下面更详细地解释的,维度加权组件208可操作以基于基于用户的训练数据210和基于种子的训练数据216来调节特征向量206的评分特征的相对权重。

如图所示,计算系统200还包括种子权重生成器214,其被配置为接收基于种子的训练数据216(或种子训练数据216)并且生成种子权重220。基于种子的训练数据216基于关于特定播放列表种子的多个用户的历史使用/聆听模式。例如,特定种子艺术家的基于种子的训练数据216可以指示与该艺术家相关联的播放列表对评分特征中的一个或多个评分特征更敏感或更不敏感。

在一个示例中,种子艺术家“ladygaga”的基于种子的训练数据216可以指示这样的播放列表的轨道通过使用相似性和流行度而不是通过声学相似性而相互关联,而种子艺术家“贝多芬”的基于种子的训练数据216可能指示对声学相似性特征的更多依赖。

种子权重生成器214将基于种子的训练数据216编译成种子权重220内的k维向量,以实现在维度加权组件208中对特征向量206的对应特征维度进行基于种子的使用加权。

如图所示,计算系统200还包括用户权重生成器212,其被配置为接收基于用户的训练数据210(或用户训练数据210)并且生成对应的用户权重218。基于用户的训练数据212可以基于特定用户所特定的个体使用模式,并且可以指示例如特定用户对评分特征中的一个或多个评分特征更敏感或更不敏感。例如,特定用户的使用模式可以指示该用户对基于声学相似性的特征敏感,并且对流行度或基于使用相似性的特征相对不敏感(即,不太关心)。

用户权重生成器212将基于用户的训练数据210编译成用户权重218内的k维向量,以实现在维度加权组件208中对特征向量206的对应特征维度进行基于用户偏好的加权。

在一些实施例中,维度加权组件208被配置为对用户权重218和种子权重220求和以生成组合加权向量,该组合加权向量可操作以基于历史使用模式和用户偏好两者对特征向量206进行加权。在一些实施例中,对于每个特征向量,通过将特征向量的每个维度的值乘以加权向量的对应维度的值以生成维度加权的向量作为元素积(即,hadamard积)来生成维度加权的特征向量222。

在一些情况下,诸如在涉及相对较新的用户的情况下,基于用户的训练数据210可以被限制。在这种情况下,可以基于基于种子的训练数据执行维度加权而不使用用户权重218。随着更多的用户训练数据被获取,然后其可以被应用以进一步改进维度加权。

所示出的计算系统200还包括候选排名引擎224,其被配置为接收维度加权的特征向量222并且将这些向量转换为候选轨道排名226。在一些实施例中,候选排名引擎224可操作以将与每个候选轨道相对应的加权特征得分转换为概率得分(例如,通过柔性最大(softmax)函数或其他合适的归一化技术)。在一些实施例中,候选轨道排名226表示与评分特征相对应的k维特征空间内的候选轨道的映射。

如图所示,计算系统200还包括候选选择控件228,其被配置为接收候选轨道排名226并且通过遍历候选轨道排名226以选择播放列表234的一个或多个轨道来生成一个或多个轨道的播放列表234。在一些实施例中,候选选择控件234可以操作以通过总是简单地选择排名最高的一个或多个轨道来选择候选轨道以生成播放列表234。在诸如所示出的实施例的其他实施例中,候选选择控件228还被配置为应用选择性参数232(例如,选择模型超参数)以控制候选轨道排名226被遍历的方式。

例如,选择性参数232可以作用为控制候选选择控件228跟随候选轨道排名226的紧密程度,诸如通过为可接受的概率得分设置下限和/或上限。在一个示例中,选择性参数232因此作用为根据探索/保守的连续统一体来控制候选轨道选择,其中更具探索性的设置实现对具有较低概率得分的候选轨道的选择,并且更多设置与更高排名的候选轨道更紧密地对准。

在至少一些实施例中,选择性参数232作用为有利地平衡一方面提供轨道多样性和针对新的偶然发现的机会的能力与另一方面保持与用户的预期的播放列表焦点对准的能力。如图所示,选择性参数生成器230被配置为基于所接收的基于用户的训练数据210和/或基于种子的训练数据216来生成选择性参数232。例如,在生成选择性参数232的上下文中,基于种子的训练数据216可以指示针对特定种子艺术家的基于群体的使用倾向于涉及更具探索性的设置。至少在其中足够的基于用户的训练数据210存在的一些情况下,选择性参数生成器230还可以应用基于用户的训练数据210来生成选择性参数232。例如,用户训练数据210可以指示特定用户倾向于优选更保守的选择方法。

当用户与播放列表234交互时,相关联的事件数据可以被用作训练数据,以用于改进和/或更新用户训练数据210或基于种子的训练数据216中的一个或多个。

图3示出了根据本文中描述的原理的用于生成播放列表的方法300的流程图。例如,方法300可以由图2的计算系统200执行。计算系统接收播放列表种子(动作302)。在典型的实现中,播放列表种子将是由用户选择的艺术家。备选地,播放列表种子可以是例如特定的轨道、专辑或子流派。基于所接收的播放列表种子,一组候选轨道被建立,并且计算系统为每个候选轨道生成特征向量(动作304)。例如,参考图2,特征评分组件204接收该组候选轨道202并且生成对应的一组特征向量206。

计算系统还生成一组种子权重(动作308),并且在其中足够的用户偏好数据存在的情况下,计算系统还可以可选地生成一组用户权重(动作306)。例如,参考图2,种子权重生成器214接收种子训练数据216,并且基于指示评分特征与播放列表种子之间的相关关系的使用模式(例如,基于群体的使用模式)来生成种子权重220。例如,当使用基于用户的训练数据的选项被选择时,用户权重生成器212接收用户训练数据210,并且基于指示用户对评分特征的相对偏好的用户特定的使用模式来生成用户权重218。

然后,计算系统对该组特征向量中的每个特征维度进行加权(动作310)。例如,参考图2,维度加权组件208接收种子权重220、用户权重218(在其中足够的数据存在并且选项被选择的情况下)和特征向量206,并且使用种子权重220和用户权重218来对特征向量206中的每个特征维度进行加权。在一些实施例中,如上所述,对种子权重220和用户权重218求和,并且然后将每个特征向量与经求和的向量相乘以生成维度加权的特征向量222。

然后,计算系统使用加权的特征向量对候选轨道进行排名(动作312),并且基于该排名来选择一个或多个候选轨道以生成播放列表(动作314)。例如,参考图2,候选排名引擎224接收维度加权的特征向量222并且生成候选轨道排名226。候选轨道排名226可以表示该组候选轨道的概率得分映射。候选选择控件228接收候选轨道排名226并且生成播放列表234。在一些实施例中,由选择性参数生成器230生成的一个或多个选择性参数232还被应用以配置候选选择控件228。

图4a-4c示出了被配置为根据流派层级控件400来提供协作使用数据416的计算环境。图4a-4c所示的环境可以被用于生成图2所示的协作使用数据216。如图所示,流派层级控件400包括与特定播放列表种子(在该示例中为艺术家412)相对应的多个层级级别。层级控件400包括全局级别402、包括流派404(以及由省略号406指示的多个附加流派)的流派级别、子流派级别408(以及由省略号408指示的多个附加子流派)、以及包括种子艺术家412(以及由省略号414指示的多个附加艺术家)的艺术家级别。层级控件的其他实施例可以包括不同级别配置,和/或可以包括附加层级级别,诸如专辑和轨道级别。

例如,在特定播放列表种子具有不充足信息的情况下,层级引擎400可操作以利用与层级的更高级别相关联的信息。这些更高级别中的每个级别都充当聚合并且共享从其所有子参数收集的观察到的数据的信息先验。例如,子流派先验聚合并且共享从其所有子艺术家收集的观察到的信息,流派先验聚合并且共享从其所有子子流派收集的观察到的信息,并且根先验聚合并且共享从其所有子流派收集的观察到的信息。因此,尽管先验信息可能比种子参数稍微更粗粒度,但是它在没有充足信息可用于特定种子参数的情况下是有益的。如本文所述,种子参数可以利用来自先验的信息被初始化。然后,随着更多数据被观察到,特定种子参数可以偏离先验以便改善粒度和准确度。

在图4a所示的示例中,特定种子艺术家412缺乏足够的使用历史来充当基于种子的训练数据416(或种子训练数据416)的源。例如,这可以是艺术家412相对较新或具有相对更少的曝光。在这种情况下,层级控件400遍历到更高级别,直到达到具有足够历史使用信息的级别以生成种子训练数据416。如图4a所示,这通过遍历到艺术家级别之上的层级级别来实现。在该示例中,因为子流派408具有足够的使用历史,所以层级控件400通过从子流派408的历史使用信息中得到“100%”的供应来生成种子训练数据416。在其他实现中,层级控件400可能会遍历到更高的级别。例如,如果子流派408也未能具有足够量的关联使用信息,则层级控件400将进一步向上遍历到流派404。

随着时间的推移,可以收集与种子艺术家412相关的更多使用信息。在一些实施例中,层级控件400被配置为在获取较低级别使用信息时使用逐渐更大比例的较低级别使用信息。图4b示出了在与种子艺术家412相关的更多使用信息(例如,以基于群体的使用数据的形式)已经被获取时,种子训练数据416的“50%”源自种子艺术家412的使用数据。图4c示出了在收集与种子艺术家412相关的更多使用数据时,层级控件能够“100%”基于与种子艺术家412相关的使用数据来生成种子训练数据416。

图5示出了根据本文中描述的原理的用于生成协作使用数据的方法500的流程图。例如,方法500可以由图4a-4c的层级控件400执行。计算系统接收播放列表种子(动作502),并且确定播放列表种子的层级级别(动作504)。例如,参考图4a-4c,层级控件400以种子艺术家412的形式接收播放列表种子,并且确定种子艺术家412处于艺术家层级级别中。

然后,计算系统确定播放列表种子的层级级别是否具有足够的使用数据(动作506)。在确定足够量存在的情况下,计算系统然后使用来自播放列表种子的层级级别的种子训练数据(动作508)。在确定不充足的使用数据存在的情况下,计算系统然后在层级中向上移动到具有足够的使用数据的最低层级级别(动作510)。

例如,参考图4a-4c,层级控件400确定与种子艺术家412相关的足够量的使用数据是否存在。在确定使用数据量不足的情况下,层级控件400利用来自更高级别的使用数据,诸如通过使用与子流派408相关联的使用数据,如图4a所示。在确定使用数据量足够的情况下,层级控件400利用与种子艺术家412相关联的使用数据来制定训练数据,如图4c所示。

再次参考图5,其中首先确定在播放列表种子的级别上存在不充足的使用数据,计算系统随后可以在来自较低层级级别的附加使用数据被获取时,使用来自较低层级级别的逐渐更大比例的使用数据(动作512)。例如,参考图4a-4c,在与种子艺术家412相关的更多使用数据被获取时,更大比例的种子训练数据416可以源自种子艺术家412的级别,如从图4a至图4b并且然后至图4c的过渡所指示的。

图6a和6b以图形方式示出了在一个或多个所应用的选择性参数的上下文中对经排名的候选轨道的选择。例如,图6a和6b所示的功能可以由图2的候选选择控件228利用,这受到图2的一个或多个应用的选择性参数232的影响。

图6a以图形方式示出了各种示例性选择性状态602、604和606的候选轨道选择概率分布,其中选择概率在纵轴上被示出并且在n维特征空间内距当前播放的轨道(或种子轨道)的距离在横轴上被示出(即,排名较低的候选轨道更远并且朝向右侧)。如图6a所示,选择性状态602表示更松弛/探索性的选择性状态,其中选择概率保持相对较高,因为候选轨道位置远离原始轨道(例如,当前播放的轨道或播放列表种子)延伸。相反,选择性状态604表示稍微更严格的选择性状态,其中概率对于更靠近原始轨道定位/得分的候选轨道而言稍微更高,而对于更远的候选轨道而言下降得更快。选择性状态606表示甚至更严格的选择性状态,保持对靠近原始轨道定位/评分的候选轨道的更紧密的依从性。

图6b示出了根据各种选择性状态的候选轨道选择过程的另一视图。如图所示,从原始轨道608的位置开始,选择路径602遍历候选轨道空间,其中更频繁地访问更远的候选轨道,而更保守的选择路径604倾向于过渡到相对更近地定位的轨道,并且选择路径606总是移动到最近的相邻轨道。

以下示例性实施例示出了其中可以执行本文中描述的原理的一种特定非限制性方式。具有共轭高斯先验的多元贝叶斯线性回归算法可以用于学习以下模型:

相应地,其中w、x、t是模型参数、数据集和标签。相应地,n、u∈u、a∈a、s∈s、g∈g是样本、用户、艺术家、子流派和流派。xn∈rk是候选轨道的k维特征向量。wu、wa、ws、wg、w∈rk是每个用户、艺术家、艺术家的子流派、艺术家的流派和全局/整个目录的所有学习到的模型参数。相应地,β、αu、αa、αs、αg、α是用于预测、用户、艺术家、子流派、流派和全局的先验噪声精度超参数。这些模型超参数可以被替换为共轭反向伽马先验,共轭反向伽马先验被替换为对模型质量具有更低影响的参数。

可以采用诸如变分贝叶斯因式分解近似等学习方案来找到在给定数据的情况下使我们的模型的后验分布的似然最大化的参数。该模型可以因式分解为对参数的交替回归更新。一旦被训练,通过计算对候选轨道和用户的概率密度的点估计来执行推理:

p(tn|xn,wa,wu)=e[n(tn;(wa+wu)txn,β-1)]=(wa+wu)txn

所得到的概率被用于对候选者进行排名,并且从对应的柔性最大压缩(softmax-squashed)概率分布中获取样本。该样本表示要播放的下一轨道,并且该过程继续直到期望的播放列表长度被生成。由于该过程可以根据其中下一轨道是状态的决策过程来描述,因此可以引入任意启发式决策机制,诸如用于调节来自特定艺术家的轨道数目的机制。可以利用超参数来控制这些机制以根据需要生成在轨道空间上的不同探索行为,并且在相同的基于相关性的模型之上提供不同的用户体验,例如,以迎合“冒险的”和“保守的”用户两者。

在不背离本发明的精神或必要特征的情况下,可以以其他形式来实施本发明。所描述的实施例在所有方面仅被认为是说明性的而非限制性的。因此,本发明的范围由所附权利要求而不是由前面的描述来指示。在权利要求的等同物的含义和范围内的所有变化都将被包含在其范围内。

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