优选实施方案的详细说明
在下列描述中,为了深入理解本发明的具体优选实施方案,编程、软件模块、用户选择、网络交易、数据库查询、数据库结构等的具体细节都将被提供。然而,本领域的普通技术人员将会发现即使没有这些特定细节中的一个或多个,也可以实践这些实施方案,或者借助于其他方法、组件或材料等,也可以实践这些实施方案。
在一些情况下,为了避免使优选实施方案的一些方面含糊不清,没有详细示出或描述那些公知的结构、材料或运行。而且,在多种备选实施方案中,所描述的特征、结构或特性可以以任何恰当的方式加以组合。在一些实施方案中,这里所描述的方法和系统可以借助于一个或多个数字处理器来实现,这些数字处理器如那类在PC机、笔记本电脑、PDA以及所有其他样式的台式或便携式电子设备中一般可以找到的微处理器。
所公开的是区分移动媒体播放器文件优先性的系统和方法的实施方案。本发明的一些实施方案提供从移动媒体播放器自动删除诸如媒体项目之类的文件的装置和方法。在一些实施方案中,提供了一种统计学方法,以根据用户兴趣数据等来推断移动媒体播放器中的哪些媒体项目应该被删除。这些文件的删除为即将存储到播放器上的新媒体项目提供了自由空间。可以组合一个或多个用户兴趣参数、有意重播的情节、和/或明确指定的用户偏好,对项目进行排序,从最高删除优先性到最低删除优先性进行排序,以满足所要求的空间限制。
本发明的一些实施方案也可,或可替换地,提供用于填充媒体项目到移动媒体播放器的方法或系统。在一些实施方案中,自动填充操作可在一个指定时间和/或在一个重要事件之前自动执行,例如在一天的开始或者在一次旅行之前。加载到设备的新媒体项目可以响应用户的兴趣偏好来选择,在一些情况下受预期事件的影响。也可以部分基于自最后一次填充以来累积在设备上的用户兴趣数据与系统主机服务器上的用户历史和社群兴趣数据的组合来选择新的媒体项目,以及删除该设备上的当前项目。
根据本发明的一个系统实施方案,提供了一个或多个移动媒体播放器。每一个移动媒体播放器都被配置为播放媒体项目播放列表中的媒体项目。提供一个播放列表修改组件,它可被配置为从一个指定用户的移动媒体播放器中接收媒体项目播放列表,分析与该移动媒体播放器相关的用户兴趣数据,并使用该用户兴趣数据修改媒体项目播放列表。网络传输组件也可被提供用来依据修改后的媒体项目播放列表转移媒体项目到移动媒体播放器,并从移动媒体播放器中删除媒体项目。如果需要,修改后的媒体项目播放列表也可被下载到移动媒体播放器。
播放列表修改组件也可被配置为根据用户兴趣数据分析对媒体项目播放列表中的媒体项目进行排序。在这类实施方案中,网络传输组件也可被配置为根据一个类似的排序从移动媒体播放器中删除媒体项目。播放列表修改组件也可包含一个被配置为从用户兴趣数据生成一个或多个播放列表的播放列表生成器。该播放列表生成器可被配置为通过用户兴趣数据对至少一个播放列表中的媒体项目进行排序。当一个播放列表中的媒体项目被如此排序后,网络传输组件可被配置为根据媒体项目的顺序将媒体项目下载到移动媒体播放器。系统可因此对将要删除和/或增加到移动媒体播放器的媒体项目进行排序。
在一些实施方案中,播放列表修改组件可进一步被配置为将该用户兴趣数据和来自以前的一次会话的用户兴趣数据进行比较,以确定改变的用户兴趣数据。播放列表修改组件然后可使用改变的用户兴趣数据来修改媒体项目播放列表。
在根据本发明的一个方法实施方案中,媒体项目播放列表接收自一个移动媒体播放器。与移动媒体播放器用户相关的用户兴趣数据也可被接收和分析。可以通过对用户兴趣数据的分析,生成一个推荐播放列表。该推荐播放列表接下来可同媒体项目播放列表相比较,并使用与媒体项目播放列表的比较来加以修改。该比较和修改可涉及,例如,从推荐播放列表中移除已经存在于媒体项目播放列表中的媒体项目。在该推荐播放列表中的媒体项目或者该推荐播放列表中媒体项目的子集,接下来被排序。这个排序可包含媒体项目最终将被转移到移动媒体播放器的顺序。当然,这并不必然意味着所有排序列表中的所有项目都必须被转移。的确,空间限制、特殊用户要求等可规定比所有被排序的媒体项目的数量要少的媒体项目被转移。媒体项目播放列表中的媒体项目也可根据它们将从移动媒体播放器中移除的顺序而被排序。然而,同样,这也不要求所有排序的项目都被移除。一个或多个媒体项目接下来可根据它们的顺序依次从移动媒体播放器中删除,一个或多个媒体项目也可根据它们的顺序依次被转移到移动媒体播放器。
媒体项目播放列表也可被修改来反映从移动媒体播放器中移除的媒体项目,以及转移到移动媒体播放器的媒体项目。修改后的媒体项目播放列表也可能接下来被转移到移动媒体播放器。
正如这里使用的,“用户推荐器”(user recommender)是一个集成在用户社群(community)里的模块,它的主要功能是将一些用户推荐给社群内的另一些用户。在社群内可能有一系列项目可供社群用户相互使用。这里也可能存在一个向用户推荐其他项目的项目推荐器。与这里所列出的实施方案相关的推荐器系统的范例在下面被描述:美国专利申请序列号NO.11/346,818,标题为“用于响应一组媒体项目输入和知识库协变量,识别该新媒体项目组的推荐器系统(Recommender Systemfor Identifying a New Set of Media Items Respons ive to an InputSet of Media Items and Knowledge Base Metrics)”,以及美国专利申请序列号NO.11/048,950,标题为“响应媒体组输入动态识别新媒体项目组(Dynamic Identification of a New Set of Media ItemsResponsive to an Input Mediaset)”,它们两个都被以引用的方式纳入本说明书。
正如这里所用的,术语“媒体数据项目”(media data item)意在涵盖任何媒体项目或者涵盖媒体项目的表示。“媒体项目”(media item)意在涵盖任何一种可以用数字媒体格式来表达的媒体文件,如一首歌、电影、图片、电子书、报纸、电视/广播节目的片断、游戏等等。因此,术语“媒体数据项目”意在涵盖,例如,可演奏媒体项目文件(如mp3文件),以及识别可演奏媒体文件的元数据(如识别mp3文件的元数据)。因此,这应该是很显而易见的,在提供使用“媒体项目”的过程、步骤或系统的任何实施方案中,该过程、步骤或系统可代之以使用媒体项目的代表(例如元数据),反之亦然。
现在将更加详细地讨论,从移动媒体播放器自动移除媒体项目的过程和系统实施例。通常,移动媒体播放器中提供用来存储媒体项目的内存是一种必须被管理的有限资源。当加载新媒体项目时,用户必须频繁决定是否去重写,或者否则移除当前存储在设备上的媒体项目来为新媒体项目制造空间。如果设备上的每一个媒体项目或者设备上的媒体项目子集可根据当前用户兴趣在存储它们时已被自动排序,可以加速或者简化用户加载新媒体项目的过程。若给定排序,现存的项目可以被自动删除,从最不想要的到最想要的来进行删除,直至达到所需空间容量或者达到期望阈值。自由空间接下来可被用来加载新媒体项目。自动填充媒体项目到移动媒体播放器的过程和系统实施例将在下面被讨论。
这里描述了基于统计回归(statistical regression)来推断自由空间的方法实施例。将介绍一个将设备中每一个项目赋予删除概率的回归模型实施例。接着说明一个响应用户偏好估计模型参数的方法实施例。最后,将描述一个使用统计回归值删除项目的确定性和随机性的示范方案。
根据统计回归推断移动设备中的“自由空间”。
假设移动设备中可被用来存储媒体项目的总空间是ST字节,以及该设备内存当前包含有项目m1,m2,...,mN,其所需空间:
SU=s(m1)+s(m2)+...+S(mN)
目标是确定删除哪一个项目mi1,mi2,...,miL,剩余项目所用的空间为:
SR=s(m1)+...+s(mi1-1)+s(mi1+1)+...+s(mi2-1)+s(mi2+1)
+...
因此产生自由空间
SF=ST-SR
可供新项目使用。
泛化的(Generalized)线性回归模型:
实现它的一种方法是使用具有泛化的线性模型的标准统计回归。删除项目的决定可表示为一个二进制随机变量y,这样例句“yi=1”表明删除项目mi,“yi=o”表明保留项目mi。假设y值是通过可测量的协变量(covariate)矢量X=[x1,x2,...,xK]来预测的,协变量矢量不必是二进制。
协变量x概率性地预测y。即,
Pr{y=1|X=[x1,x2,...,xk]}=F(β0x0+β1x1+β2x2+...+βKXK)=F(βX)
这里为了表示的方便性,假设X0=1,并且F(x)是一个单调增加函数范围从F(-∞)=0到F(∞)=1。协变量x可以是任何能反映了增加或减少删除项目的概率的用户兴趣的可测量特性。
记住y是一个二进制随机变量,它可被表示如下:
E{y|X,β}=1*Pr{y=1|X,β}+0*Pr(y=0|X,β}=F(βX).
这在数学上等价于,该随机变量y可以由以下等式来描述:
y=F(βX)+ε
其中ε是一个随累积分布F(y)变化的随机变量。
线性模型的多项泛化(Multinomial generalization):
可通过简单地将协变量矢量X替换为一个新的非线性协变量矢量,而将基本的线性模型进一步扩展为一个协变量的非线性函数的线性模型,新的协变量矢量为
X′=[g1(X),g2(X),...,gL(X)]=G(X)
,因此
y=F(βG(X))+ε.
如果试图找到最佳多项函数G(X)而不只是参数矢量β的话,这个非线性模型可能会比较难解。R计算环境(R computationalenvironment)支持这种泛化线性模型解决器(solver)中的非线性扩展,其中G(X)是多项矢量函数。
估计模型参数:
在最通常的情况下,不能先验地知道模型参数的矢量β,但必须在给定的一组例子(y1,x1),(y2,X2),...,(yN,XN),N》M下推导出一个估值β′。通常,这是使用最大可能性方法实现的,该方法包括了一些具体的数学技术,以处理在实际应用中出现的部分细节。然而,在本发明中或许不可能存在一组我们可借以导出参数向量的估值β′=[β′1,β′2,...,β′k]的例子(y1,x1),(y2,X2),...,(yN,XN)。相反,必须专门指定β的具体值,或者使用可替代的方法来生成这些值。一种可实践的方法是对保留或删除项目的非形式逻辑规则进行量化。
逻辑表达的算式化:
一个简单途径就是假设变量X是一些可被计算用于每个媒体项目的度量(metric)的集合X的值,并且假设有一个逻辑函数
,它非正式地描述了关于这些度量的规则,用于决定一个项目是否应该被保留或删除。使用布尔代数的标准方法,可将
简化为一个“积之和”(sum-of-products)的逻辑形式:
其中每一个zi(X)是度量X的子集的联合(conjunction),例如:
zi(X)=x2∧×5∧×7
可将布尔函数
变换成关于度量X的值X的一个加权多项函数:
βG(X)=β1z1+β2z2+...+βkZk-1/2
其中每个Zi是在相应的结合Zi中的度量的值的乘积,例如:
zi(X)=X2X5X7
存在很多种选择β
i值进行该布尔函数
变换的方法。一种方法是,如果假设每一个x
i是一个有界、无负值的数,则让每一个β
i成为相应乘积中的度量的值的上界乘积的倒数,例如:
βi=1/[sup(x2)sup(x5)sup(x7)]
这个单调模型可以被扩展为包含负逻辑变量,通过将一个负逻辑变量的度量值表示为:
~Xi=sup(Xi)-X1
一些度量实施例:
正如这里提出的,模型可以包含任何作为一个组分的、预测项目是否应被保留或者删除的任意度量。一类预测协变量是流行度量,包含:
1)在一段时间内任何一点的播放总数p(t),或许已被总预期播放数P归一化,即p(t)/P。
2)最近的播放率r(t)=[p(t)-p(t-Δt)]/Δt.
3)最近的跳转率s(t)=[q(t)-q(t-Δt)]/Δt,其中q(t)是听者提前终止项目重复播放的次数。
另一类预测协变量是基于项目i和一些候选新项目j1,j2,...,jm.之间的相似性。一种类型的相似性度量是基于元数据。假设每一个项目有一组1元数据项目(例如,流派、年、标签),并且将项目i的元数据项目值表示为m1i,m2i,...,mli.将项目i和j之间的元数据相似性定义为:
η(i,j)=msim(m1i,m1j)+msim(m2j,m2j)+...+msim(mli,mlj)
其中如果mlj和mlj之间被认为是相似的,函数msim(mli,mlj)的值为“1”,否则为0。如果给定项目i和一些候选新项目j1,j2,...,jm,可以使用模型的另一个组分:
4)q-平均化元数据相似性(q-mean metadata similarity)η(i)={[η(i,j1)q+η(i,j2)q+....+η(i,jl)q]/l}1/q
注意对于q=1,q→0,q=-1,q→∞,q-平均化可分别简化为算术平均、几何平均、调合均数以及最大值(标准)。而且,也可使用η(i,j1)的最小值作为相似性度量。
除元数据相似性之外,在那些项目i和j之间有独立的相似性测度0≤μ(i,j)≤1的情况下,可以定义
5)q-平均相关相似性μ(i)={[μ(i,j1)q+μ(i,j2)q+....+μ(i,jl)q]/I}1/q
最后,如果用U(ij)代表相似性μ(i,l)的矢量,l≠i,j,可将U(i,j)和U(j,i)之间的余弦相似性定义为
ρ(i,j)=<U(i,j),U(j,i)>/‖U(i,j)‖‖U(j,i)‖
在一些情况下,可能想只将新项目j1,j2,...,jm的组分相似性μ(i,l)包含进相似性矢量U(i,j)和U(j,i)中。使用这些组分相似性ρ(i,j),可以定义
6)q-平均余弦相似性ρ(i)={[ρ(i,j1)q+ρ(i,j2)q+....+ρ(i,jl)q]/l}1/q
将项目的可测量度量组合到一个概率值中的其他度量和技术中,包括那些非正式地描述了项目是否应被保留或者删除的涉及逻辑函数
的算术值,也同样落在此处所描述的用于项目应该被保留或者删除的概率的方法的精神内。
项目删除方法:
一旦有参数矢量β,可以使用两种方法中的一种来决定删除哪一个项目:
确定性删除:
在确定性方法中,是否删除项目m1的实际决定di是由预期的E{yi|Xi,β}=F(βXi)决定的,如
1用户指定项目应该被删除
di=<0用户指定项目应该被保留
1如果E{yi|Xi,β}>B其他情况
其中Xi是项目mi的测量因子的矢量,阈值0≤B≤1是期望保留项目的期望阈值,或被选择成使所得自由空间Sf大到足以满足外部所施加的其他任何空间要求。
随机删除
随机方法直接使用了二进制随机变量yi。即删除项目m1的决定di是随机变量
1用户指定项目应该被删除
di=<0用户指定项目应该被保留
yi其他情况
其中Pr{yi=1|Xi}=F(βXi)。在给定F(βXi),下,标准计算方法可被用来产生在所需二进制分布Pr{yi=1}和Pr{yi=0}下的一个二进制随机变量yi的试例(sample instance)。
因为删除是一个随机过程,这种方法产生的自由空间数量Sf也是一个随机变量。满足自由空间量的一个愿望目标Sf≥Sf,可能比确定性方法更加复杂。这可通过生成试例的矢量
Y(n)=[y1,y2,...,yN],
进行指定删除,并评估产生的自由空间Sf.而被解决。接下来该过程可能需要被重复进行,直至满足Sf≥Sf的要求。或者,可以继续产生试例矢量Y(1),Y(2),...而不进行删除,直到由具体例子Y(m)确定的删除产生满足要求Sf≥Sf的足够的自由空间。
上述说明的是基于用户兴趣偏好智能删除移动播放器中媒体项目,为新媒体项目释放设备上的存储空间的示例性方法和系统。一些实施方案使用作为用户兴趣偏好的度量的预测性协变量Xi=[x1,x2,...,xk],来获得关于设备上是否每一个项目mi都应被删除的概率决定yi。协变量Xi可包含对那些从移动播放器上传到主机系统的本地兴趣数据的度量,以及对被主机装置从用户社群收集和维持的社群兴趣测量数据的度量。类似地,该方法可以被包含在移动设备内,并由系统主机提供给它的度量来驱动,或者该方法存放在系统主机上,最后的删除决定被传输给移动设备。
流程图1表明的是从一个移动媒体播放器自动删除媒体项目的方法实施例。正如图中所示,媒体项目播放数据在步骤502被记录在便携式媒体播放器里。用户接下来在步骤504做出下载新媒体项目和/或在设备上请求生成自由空间的请求。接下来基于所赋予的概率值,对设备里的媒体项目排序,正如在506所示。删除项目的过程接下来在步骤508开始,从列表中排序最高(或者最低,依赖于排序是如何建构的)的媒体项目开始。一旦媒体项目被删除,系统检查是否已经达到阈值512。如果阈值已经达到,该序列(sequence)终止。如果没有,将检查设备上被请求的空间是否已经可用了,正如510所示。如果所需空间还没有被释放,列表中接下来的项目将被删除。如果释放完成,该序列终止。
流程图2中所示的是概率计算过程的一个实施例。正如图中所示,在514概率模型被选择。接着,正如516所示,本地的和/或者社群度量被用来确定协变量系数矢量。接着在518将删除值的概率赋予便携式媒体播放器的每一个项目。正如之前所述,删除值接着在520被应用到删除方法中。
流程图3所示的是从移动媒体播放器中自动删除媒体项目的另一个方法实施例。正如在图中所示,媒体项目播放数据在步骤602被记录到便携式媒体播放器。用户接下来在步骤604做出下载新媒体项目和/或在设备上制造自由空间的请求。接着在步骤606获取便携式媒体播放器中每一个媒体项目或者媒体项目子集的删除概率值。接着在608基于计算概率开始随机删除项目的过程。一旦媒体项目被删除,在612,系统可检查是否已经达到阈值。如果阈值已经达到,该序列终止。如果没有,将检查设备上被请求的空间是否已经可用了,正如在610所示。如果所需空间还没有被释放,列表中接下来的项目将被删除。如果完全释放,该序列终止。
自动填充移动媒体播放器的方法现在也将被更加详细地说明。在一个实施方案中,许多便携式媒体播放器中每个访问中心服务器。每一个用户可首先在本地计算机上获取并安装软件。每一个用户也可以向服务器提供兴趣数据。
在上述初始阶段之后,用户可在主机服务器和他或她的媒体播放器之间建立通信,通常通过将媒体播放器连到一个联网电脑来访问主机服务器。接着用户可以发出一个“开始”命令启动自动填充过程。或者,该系统可能被配置为一旦连接到媒体播放器便自动启动该过程。在一些版本中,该步骤也包括检索本地用户兴趣数据,例如,移动设备中的播放次数、播放顺序、媒体项目次序等。在本公开书的其他地方也给出了用户兴趣数据的其它实施例。
在一些版本中,当前位于移动设备中的项目列表也可被转移到主机服务器。该主机服务器接下来可将用户兴趣数据提供给一个独立的播放列表-生成器系统,该播放列表-生成器系统可使用任何检索到的用户兴趣数据、历史用户兴趣数据、和/或者来自移动设备的媒体项目列表,来向主机服务器提供响应用户兴趣偏好的媒体项目播放列表。这些播放列表可包括用户可用的以及为播放列表-生成器系统所知的任何媒体库里的媒体项目。通常,这些媒体库将包含授权给用户的以及存储在服务器上供用户获取的媒体项目。
一旦主机服务器被提供了播放列表,主机服务器可检索当前移动设备中的媒体项目列表(如果这个列表之前没有检索)。将有待被加载到设备上的新媒体项目列表和当前位于设备上的媒体项目列表进行对比,来决定该设备上必须释放多大的空间来容纳新媒体项目以及哪些媒体项目应该被删除。被选择移除的媒体项目接下来被删除,新媒体项目被加载到设备。
尽管上述步骤可以在没有进一步明确的用户干涉的情况下被无止境地重复执行,但有时用户可能希望调整用户偏好来改变自动-填充行为。例如,用户可能希望提供特殊用户指令,例如将存储在设备中的某些媒体项目标识为“不删除”或者“永远删除”的指令。或者,用户可能希望提供附加的将用户兴趣与一个具体活动联系起来的用户兴趣数据,例如以请求选择一组媒体项目或者一种类型的媒体项目用于“跑”、“晚餐”或者“工作”等的形式的数据。也正如另一个实施例,用户可能希望提供将一组媒体项目或者一种类型的媒体项目的选择与一个将要来临的日子或事件联系起来的暂时的用户兴趣数据。
正如上所述,本系统的一些实施方案可被配置为假设主机服务器访问播放列表生成器系统,所述播放列表生成器系统响应主机服务器的询问,基于用户提供的偏好自动生成播放列表。一些为本领域普通技术人员所公知的此类系统的实施例,包含美国专利号Nos.6,993,532标题为“播放列表自动生成器(Auto Playlist Generator)”,以及Nos.6,526,411标题为“动态生成播放列表的系统和方法(System andMethod for Creating Dynamic Playlists)”。在美国专利申请公开文本中可以发现的另外的实施例有,Nos.2002/0082901标题为“关系发现装置”(Relationship Discovery Engine),Nos.2003/0221541标题为“多种类型歌曲的自动播放列表生成装置(Auto PlaylistGeneration with Multiple Seed Songs)”,以及Nos.2005/0235811标题为“媒体内容的选择、表征以及自动排序的系统和方法(Systemsfor and Methods of Selection,Characterization and AutomatedSequencing of Media Content)”。每一个上述专利和公布的专利申请文本都以引用的方式被纳入本说明书。在优选实施方案中,播放列表生成器将接收多种形式的用户兴趣数据,诸如下列中的一种或多种:
1.标签一标签是与对象相分离但却与之相关的一些信息。在使用自由选择的关键词的合作范畴化(collaborative categorization)实践中,标签是个体赋予对象的说明词。
2.媒体项目或媒体项目列表—曲目、电影等的列表,它们与将被转移到便携式设备的项目属于同种类型。
3.特殊项目列表—例如,用户明确禁止的项目、使用用户反馈的智能系统所明确禁止的项目、以及用户明确要求存储在设备的项目。
4.元-数据—定期与项目相关联来对其进行分类的基于文本的数据(例如,类型、年份、购买时间)。
5.等级(rating)—用户定义的用来判断项目质量的值。
6.事件—可从日历(例如,Yahoo注册日历)中推断出的基于暂时的特性。
7.意外发现(Serendipity)—用户定义的值,表明用户对他们播放流中不再流行内容的偏好。
8.播放模型—用户播放项目的行为的模型,比如用户在对一个媒体项目感到厌倦之前的播放次数,在整个时间内用户对一个项目的期望播放次数,和/或播放列表或者播放媒体项目在被用户切换成另一个之前的百分比。
9.播放流—媒体播放器相互作用的时间特征记录,包含统计学资料,例如被播放项目的完成、跳过、重播和/或删除。
10.播放次数—在给定时间范围内,媒体项目被播放的次数。
11.暂时数据—暗含或明确与一个时间点或事件相关的偏好,该时间点如一天中的某时或者一周中的某天。
12.已订购的影响—用户限定的协助确定预期体验的外部偏好输入值(如朋友的偏好,或被一位专家如一个DJ明确限定的媒体项目等)。
13.周围噪声—设备所感受到的用户环境中的噪声水平。
14.发现值—用户限定的用于指示从来不被用户播放的媒体项目的值,该从来不被用户播放的媒体项目可能会被引入到媒体消费体验中。
15.重新发现值—用户限定的用于指示最近没有被用户播放的媒体项目的值,该最近没有被用户播放的媒体项目可能会被引入到媒体消费体验中。
在给定一个或多个由播放列表-生成器系统响应一个查询生成的播放列表下,主机服务器接下来可确定包含在那些播放列表中的媒体项目组,并执行自动-填充程序,该实施例在图4中被描述。自动填充程序的初始化702可响应一个单用户行为,例如将移动设备连接到主机服务器,或者从用户接收一个明确的“开始”指令。播放列表生成器可接下来接收用户兴趣数据720,并使用该数据产生一个或多个播放列表,正如704所示。
一旦播放列表被提供,主机服务器可在706列举那些播放列表中的媒体项目组,并在708将该媒体项目组与当前设备上的媒体项目组进行比较。主机将决定哪些新媒体项目已经在设备中,并将它们从将要被加载的项目列表中移除。在一些实施方案中,这些媒体项目可能也被移除在考虑删除之外。主机服务器可接着使用一种方法来有效地对设备上的媒体项目根据应该被删除的概率进行排序,项目的删除是基于它们与提供给播放列表生成器系统的用户兴趣数据的兼容性。该排序可被用来选择将要被加载到设备的媒体项目。主机服务器也可以以类似的方式,根据媒体项目应该从播放器中被删除的概率对媒体项目进行排序。
使用新媒体项目的排序信息,主机服务器可正如710所示,从新媒体项目列表中选择应该被加载的最高概率项目。在712,使用下面所述的新方法,一些项目从媒体播放器删除,直到足够空间提供给最大兼容的新项目,之后,媒体项目在714被加载到媒体播放器。这个选择710,删除712,加载714的过程被不断重复直到,例如,正如716所指出的自动填充操作的有效时间结束,正如718所指出的设备上的所有项目都被删除,或者正如722指出的整组新媒体项目被加载到设备。或者在加载过程没有时间限制的情况下,删除过程712可从设备删除足够多的项目,来释放足够多的空间,以加载同设备容量一样多的新媒体项目,或者容纳一预选数量的项目。用户也可指定一特定的内存子集存储新媒体项目并释放同样数量的空间。加载过程714接下来可在一次操作中加载该设备上的空间所允许的数量的新媒体项目。
最后,对那些同样接受媒体列表下载的媒体播放器,播放列表可被编辑,以移除任何不能被加载的新媒体项目,然后播放列表被加载到设备上,分别如724和726所示。
在一些实施方案中,媒体项目可被随机选择和删除从而在媒体播放器中释放足够的空间来容纳新媒体项目。在另一些实施方案中,当前在播放器上的媒体项目可根据以下来进行排序,即根据它们与生成有待被加载到设备上的新媒体项目播放列表时所用的标准的兼容程度进行排序。这些媒体项目可接着基于该次序被择优删除。同样的过程也可被用于播放列表项目来提供一个新媒体项目的相反排序,使最想要的项目首先被加载。以这种方式,在整个新媒体项目组因为诸如时间或空间的限制而不能被加载的情况下,最想要的新项目子集将会被加载。
如上所述,基于用户兴趣偏好的度量来推断播放器中哪些媒体项目应该被删除的统计学方法将被应用。这种方法可对二进制决定y的条件概率进行建模,即根据一个项目变量X的n-矢量计算值X,一个项目应该被删除(y=1):
Pr{y=1|X=[x1,x2,...,XK]}=F(βG(X))
其中,G(x)是一个度量的非线性函数的m矢量,β是一个用于将G(x)的组分线性组合到一个标量值的m个加权值的矢量。组分函数G(x)来自一类特殊函数,这样,决定变量y有一个特殊的泛化线性模型类型
y=F(βG(X))+ε
其中,F(x)是一个单调、非减少的“链接”函数,将(-∝,∝)绘制到区间(0,1)中,ε是一个零-含义的随机变量,被假设为有一个相关分布(尽管自动-删除过程的运行与ε的分布不太相关)。
在给定一个指定的F(x),β和G(X)下,主机服务器根据两组中对每个项目的第一计算F(βG(X))值对播放器中将被删除的媒体项目和将要被加载的新项目进行排序。通常选择的F(x)是逻辑函数:
F(x)=1/(1+e-x)
应该理解,既然F(x)是一个单调不增加的函数,项目应该依据计算值F(βG(X))被排序,当两个项目的F(βG(X))值相同并且那些项目的βG(X)值不同时,使用βG(X)值作为第一轮连接中断器(first roundtie-breaker)。当那两个项目的F(βG(X))和βG(X)值一致时,任何优选方法都可被用来将一个排在另一个之前,包括随机选择。该方法中,根据F(βG(X))值将一组中的媒体项目进行排序被认为同那些根据βG(X)值将那些项目排序是一致的,后者与被计算的度量明确相关的一种排序。
另一种计算度量X=[x1,...,xk]的方法假定项目是依据一组项目属性a1,a2,...,aK以及一组在0(高偏好)到1(低偏好)范围内的偏好值p1,p2,...,pK被排序的,上述属性正如那些在关于生成播放列表的讨论中说明的一样。项目满足程度属性ak可被计算如下:
xk=h(ak)[100-90pk]+(1-h(ak))u(pk)
其中,如果项目具有属性ak则h(ak)=1,否则h(ak)=0。如果pk=0则u(pk)=0,否则u(pk)=5。设备上的媒体项目接下来可根据下面的值被排序,以用于可能要进行的删除。
βG(X)=50k-(x1+...+Xk)
类似地,新项目可根据同样的值被相反地排序。
在对比过程708中,设备上媒体项目的排序建立了项目被删除的相对概率。在删除过程712,项目以一种确定性或概率性的方式被真正删除,例如通过这里所述的方法。用来删除的确定性或概率性方法也可被用于过程712,以用来从新项目组中依次选择项目以在重复自动填充操作中增加用户体验多样性。
以上描述完全公开了本发明,其中包含优选方案。无须进一步详细陈述,相信本领域的普通技术人员能够使用上述说明书最大程度地利用本发明。因此这里所公开的实施例和实施方案将被仅仅解释为说明性的,而不是以任何方式限制本发明的范围。
对于本领域的普通技术人员,很显然在不背离本发明下列原则情况下对上述具体实施方案的细节还可能做出很多修改。因此,需理解本发明不限于公开的具体实施方案,并且附属权利要求的范围意在包括那些修改和其他的实施方案。
因此,本发明的范围仅由下面的权利要求书决定。