專利名稱:基于相似性數(shù)據(jù)的播放列表產(chǎn)生系統(tǒng)和方法
技術(shù)領(lǐng)域:
本公開涉及媒體相似性數(shù)據(jù),并且更具體地,涉及基于媒體相似性數(shù)據(jù)產(chǎn)生媒體播放列表。
背景技術(shù):
定義諸如消費產(chǎn)品的物品之間的關(guān)系早就被認(rèn)為是有價值的任務(wù)。最早的例子是商標(biāo),商標(biāo)給消費者提供了這樣的期望基礎(chǔ)即,制作消費者已經(jīng)擁有的某一種產(chǎn)品的同一公司的另一種產(chǎn)品將達(dá)到類似標(biāo)準(zhǔn)。當(dāng)前,相似性關(guān)系已經(jīng)發(fā)展為遠(yuǎn)遠(yuǎn)超出簡單的品牌名稱。某些商店使用相似性數(shù)據(jù)以便建議用戶購買或至少考慮新的項目。這些商店跟蹤用戶數(shù)據(jù),以便確定用戶傾向于在相同的購物會話內(nèi)觀看哪些產(chǎn)品或相同用戶通常購買哪些產(chǎn)品。出于這個目的使用相似性數(shù)據(jù)的系統(tǒng)識別每個文件內(nèi)的特征,并且將那些文件識別為是相似的。
產(chǎn)生相似性數(shù)據(jù)的這些方法中的每個方法在產(chǎn)生最可能的相似性數(shù)據(jù)或最大可能地使用這種數(shù)據(jù)方面存在不足。產(chǎn)生相似性數(shù)據(jù)的已有方法的一種不足是常規(guī)的相似性數(shù)據(jù)僅僅基于新的購買決策。商店不關(guān)心用戶已經(jīng)擁有了什么,即使該信息可能是用戶將來想要什么的最可靠的指示符。
隨著數(shù)字音頻播放器的到來,人們正在積累大量的數(shù)字媒體庫。在許多情況下,個體媒體庫包括從諸如⑶、SA⑶和DVD-A之類的物理媒體添加的歌曲。隨著ITUNES商店和其它在線媒體提供商的引入,更多的人加入了數(shù)字媒體的在線購買,從2003年4月到2008 年6月超過50億歌曲的銷售就證明了這一點。在數(shù)字音頻播放器已經(jīng)允許人們在幾乎任何地方欣賞其媒體的同時,越來越難以有效地管理不斷增長的媒體庫。以音樂為例,播放列表是有效管理和過濾某些歌曲的一種方法。各種數(shù)字媒體播放器允許通過選擇用于順序回放的歌曲組來創(chuàng)建播放列表。
手工形成播放列表通常涉及搜索長的媒體列表以便找到適當(dāng)?shù)母枨?、選擇所希望的歌曲以及希望忽略不希望的歌曲的煩瑣處理過程。
還可以基于公共音樂軌跡屬性,諸如流派、歌手、和專集等,自動產(chǎn)生音樂播放列表。這些自動產(chǎn)生的播放列表,雖然能被簡單和快速地創(chuàng)建,但是不精細(xì)地描繪了播放列表。這種播放列表通常包括過多和/或不足。另外,這些自動方法假設(shè)所有相關(guān)軌跡屬性可以獲得,并且對于每段媒體都是精確的。產(chǎn)生自動播放列表的一種方法被稱為“智能”播放列表。智能播放列表允許用戶指定搜索準(zhǔn)則,將匹配搜索準(zhǔn)則的歌曲添加到播放列表,并且當(dāng)歌曲滿足或不滿足該準(zhǔn)則時自動更新播放列表。智能播放列表是管理媒體庫的強(qiáng)有力的工具。然而,即使是智能播放列表也受到用戶對音樂的熟悉程度、庫和制作有效的智能播放列表查詢的能力的限制。用戶可能不熟悉一種音樂風(fēng)格。這種不熟悉性可能導(dǎo)致排除相關(guān)歌手或歌曲。用戶的庫可能不完整,從而導(dǎo)致完全的智能播放列表中的空缺。用戶可能不能足夠?qū)挼刂谱髦悄懿シ帕斜聿樵円员惆ㄋ兴M母枨r炞C智能播放列表包括所有預(yù)期歌曲通??杀茸畛跏止ぎa(chǎn)生播放列表更煩瑣。
常規(guī)媒體播放列表產(chǎn)生的每種方法的主要缺點是確定哪些媒體項目彼此相似。當(dāng)手工制作播放列表時,用戶負(fù)責(zé)抽取一個媒體項目和另一個媒體項目之間的相似性。自動播放列表產(chǎn)生器依賴建立播放列表的準(zhǔn)則,但是這些準(zhǔn)則通常太寬泛。同一作者、歌手或甚至同一類型或流派的媒體通常沒有相似到足以產(chǎn)生所希望的播放列表的程度。智能播放列表試圖基于媒體的更詳細(xì)的特征來解決這些問題中的多個問題,但是它們不考慮人的喜好,而人的喜好是不容易定義的。
隨著媒體庫的增長以及數(shù)字媒體播放器可以獲得不斷增加的容量,播放列表的這些問題可能被加劇。另外,由于用戶不可能記住每個文件的內(nèi)容和特性,所以較大的媒體庫對給相似項目分組的系統(tǒng)產(chǎn)生了更大要求。因此,本領(lǐng)域需要一種產(chǎn)生媒體文件之間的相似性數(shù)據(jù)并且使用這種數(shù)據(jù)創(chuàng)建和管理播放列表的改進(jìn)方法。
發(fā)明內(nèi)容
在下面的描述中闡述了此處公開的概念的附加特征和優(yōu)點,并且根據(jù)該描述可以部分地明白或通過實踐所描述的技術(shù)可以了解這些特征和優(yōu)點??梢越柚綑?quán)利要求內(nèi)特別指出的手段和組合來實現(xiàn)和獲得這些概念的特征和優(yōu)點。將從下面的描述和所附權(quán)利要求中更全面地理解所述技術(shù)的這些和其它特征,或通過實踐此處闡述的所公開的概念可以了解這些和其它特征。
本公開描述了至少部分地基于由若干程序參與者提供的媒體庫庫存(inventory) 信息,便于程序參與者實現(xiàn)媒體播放列表產(chǎn)生的方法和裝置。在這個上下文中,個人正在參與的示例性程序或系統(tǒng)是在線媒體商店,諸如銷售音樂軌跡下載以收費的那些在線媒體商店。決定成為程序參與者的這些個人對至少部分地基于從程序的其它參與者群體得出的數(shù)據(jù)組織、維護(hù)和播放其音樂感興趣,該其它參與者在其庫中具有相似或相同的音樂。為了成為程序參與者,單個音樂持有者必須發(fā)送表示該程序參與者的媒體庫存的數(shù)據(jù),并且在線音樂商店接收該數(shù)據(jù)。該數(shù)據(jù)通常包含,常常尤其是,當(dāng)前包含在該參與者的媒體庫內(nèi)的媒體項目個體(歌曲)的標(biāo)識數(shù)據(jù),而不考慮媒體項目個體的來源。也就是,項目可以是購買的、從CD添加的、或以其它方式獲得且包括在收聽者的庫或音樂庫存內(nèi)的。根據(jù)該信息,系統(tǒng)或程序確定媒體項目個體對在不同程序參與者的媒體庫內(nèi)共同出現(xiàn)的發(fā)生率 (incidence) 0在此,這意味著對于若干用戶所標(biāo)識的各對音樂項目,該對存在于不同參與者的多少庫內(nèi)將被注意到(計數(shù))?;谠摯_定,基于所確定的在不同程序參與者的媒體庫內(nèi)共同出現(xiàn)的發(fā)生率,在媒體項目個體(歌曲)對之間分配相似性評估。也就是,如果確定 (計算)特定媒體項目(歌曲)對存在于在程序中表示的許多庫中的10個庫內(nèi),可以給該對的相似性評估分配某一值。6 為了有意義,在包含在多個程序參與者的媒體庫內(nèi)的媒體項目個體的至少大部分之間匯編對相似性評估的分析和分配;也就是,系統(tǒng)的總庫存。
然后系統(tǒng)或程序可以匯編單個參與者的相似性評估,該單個參與者限于包含在他或她的媒體庫內(nèi)的項目。然后可以使用該信息,諸如在諸如常常被稱為MP3播放器的設(shè)備之類的個人數(shù)字音樂播放設(shè)備上,整理(order)作為最終用戶的那個人的媒體的播放列表。以這種方式,可以基于從大量程序參與者得到的相似性數(shù)據(jù)產(chǎn)生各個播放列表。
在不同但是相關(guān)的方面,本公開還描述了從客戶設(shè)備角度出發(fā)采取的方法和裝置,該客戶設(shè)備與在線商店協(xié)作以便于至少部分地基于由若干程序參與者提供的媒體庫庫存信息來實現(xiàn)媒體播放列表產(chǎn)生。該實施例著重于方法、裝置和計算機(jī)程序,其從程序參與者的客戶設(shè)備(通常向程序主機(jī),該主機(jī)在此被示例性地描述為在線媒體商店的在線數(shù)據(jù)處理中心)發(fā)送數(shù)據(jù),該數(shù)據(jù)表示程序參與者的媒體庫內(nèi)的媒體庫存并且包括當(dāng)前包含在媒體庫的庫存內(nèi)的媒體項目個體的標(biāo)識數(shù)據(jù),而不考慮媒體項目個體的來源。媒體項目來源的例子包括在線購買、從購買的CD添加的軌跡和來自其它來源的下載。
在這個實施例中,程序參與者的客戶設(shè)備接著接收媒體項目相似性評估,其中已經(jīng)基于從多個(兩個或更多個)程序參與者收集的累積數(shù)據(jù)而匯編了該媒體項目相似性評估,并且其中該累積數(shù)據(jù)包括包含在程序參與者的媒體庫內(nèi)的媒體項目個體的標(biāo)識數(shù)據(jù), 而不考慮每個媒體項目個體的來源。就此而言,媒體項目之間的基于其來源的主要差異是與每個項目相關(guān)聯(lián)的描述性的和標(biāo)識元數(shù)據(jù)的數(shù)量和質(zhì)量。
如前所述,對接收到的相似性評估的匯編就已經(jīng)包括處理累積數(shù)據(jù),以便確定媒體項目個體對在不同程序參與者的媒體庫內(nèi)共同出現(xiàn)的發(fā)生率,以及基于所確定的在不同程序參與者的媒體庫內(nèi)共同出現(xiàn)的發(fā)生率,在媒體項目個體對之間分配相似性評估 (similarity rating)。如此處所述,如下面更詳細(xì)描述的那樣由程序主機(jī)的在線數(shù)據(jù)處理中心示例性地執(zhí)行該處理和匯編。
程序參與者的客戶設(shè)備接收包含在參與者的媒體庫內(nèi)的多個媒體項目個體的相似性評估。據(jù)此產(chǎn)生媒體播放列表,該媒體播放列表包括包含在程序參與者的媒體庫內(nèi)并且具有相對于從參與者的媒體庫內(nèi)選擇的種子媒體項目的相似性評估的媒體項目個體,通常由程序參與者選擇該種子媒體項目。
作為例子,可以通過操縱客戶設(shè)備上的滾輪設(shè)備而呈現(xiàn)用于選擇的種子媒體項目,以及隨后通過激活選擇按鈕,在客戶設(shè)備的顯示器上選擇種子媒體項目,來影響種子媒體項目的選擇。
在另一個例子中,可以通過使用掃動手指姿態(tài)來操縱程序參與者的客戶設(shè)備上的觸摸屏以便滾動顯示在觸摸屏上的媒體項目列表,直到顯示所希望的種子媒體項目,以及隨后通過觸摸和釋放種子媒體項目來選擇種子媒體項目,來影響種子媒體項目的選擇。
可以在程序參與者的客戶設(shè)備上產(chǎn)生媒體播放列表,該客戶設(shè)備尤其是可以采取便攜式個人媒體播放設(shè)備或個人計算機(jī)的形式。
還構(gòu)想了程序參與者可以傳輸表示程序參與者的媒體庫內(nèi)的當(dāng)前媒體庫存的更新數(shù)據(jù),該更新數(shù)據(jù)包括從參與者最近的前一次數(shù)據(jù)上傳以來添加到參與者的媒體庫的附加媒體項目的標(biāo)識數(shù)據(jù)。類似地,更新數(shù)據(jù)可以指示從最近的前一次數(shù)據(jù)上傳以來,從參與者的媒體庫中去除的媒體項目的缺失。更新數(shù)據(jù)還可以包括關(guān)于媒體項目的使用的信息,諸如但不限于,給予媒體項目的評估、播放計數(shù)和跳過計數(shù)。據(jù)此程序參與者接收考慮到這種更新數(shù)據(jù)而匯編的更新相似性評估。以這種方式,當(dāng)前產(chǎn)生的播放列表可以包括新獲得的媒體項目,并且不考慮最近已被刪除的媒體項目。
在其它相關(guān)方面中,本公開還描述了集成系統(tǒng)、方法和計算機(jī)程序,其包括與程序主機(jī)的在線數(shù)據(jù)處理中心協(xié)作以便產(chǎn)生至少部分地基于由若干程序參與者提供的媒體庫庫存信息的媒體播放列表的一個或多個客戶設(shè)備。因此,數(shù)據(jù)被從程序參與者的客戶設(shè)備傳輸?shù)匠绦蛑鳈C(jī)的在線數(shù)據(jù)處理中心。該數(shù)據(jù)表示客戶設(shè)備上的媒體庫內(nèi)的媒體庫存,并且包括當(dāng)前包含在客戶設(shè)備上的媒體庫的庫存內(nèi)的媒體項目個體的標(biāo)識數(shù)據(jù)。在程序主機(jī)的在線數(shù)據(jù)處理中心,還從多個程序參與者接收如下數(shù)據(jù)該數(shù)據(jù)表示每個相應(yīng)程序參與者的媒體庫存,并且包括當(dāng)前包含在相應(yīng)參與者的媒體庫內(nèi)的媒體項目個體的標(biāo)識數(shù)據(jù), 而不考慮媒體項目個體的來源,如上所述。確定媒體項目個體對在不同程序參與者的媒體庫中共同出現(xiàn)的發(fā)生率,并且基于所確定的在不同程序參與者的媒體庫中共同出現(xiàn)的發(fā)生率,在媒體項目個體對之間分配相似性評估。從程序主機(jī)的在線數(shù)據(jù)處理中心向程序參與者的客戶設(shè)備傳輸包含在客戶設(shè)備上的媒體庫的庫存內(nèi)的多個媒體項目個體的相似性評估。產(chǎn)生媒體播放列表,其包括包含在客戶設(shè)備上的媒體庫的庫存內(nèi)并且具有相對于從客戶設(shè)備上的媒體項目的庫存內(nèi)選擇的種子媒體項目的相似性評估的媒體項目個體。
典型地,在程序主機(jī)的在線數(shù)據(jù)處理中心處確定不同程序參與者的媒體庫內(nèi)的媒體項目個體對共同出現(xiàn)的發(fā)生率,并且還在程序主機(jī)的在線數(shù)據(jù)處理中心處分配媒體項目個體對之間的相似性評估。
單個程序參與者的相似性評估數(shù)據(jù)的匯編局限于包含在該程序參與者的媒體庫內(nèi)的媒體項目個體之間的相似性評估數(shù)據(jù)。以這種方式,數(shù)據(jù)集合局限于可被使用的數(shù)據(jù)集合;即,產(chǎn)生僅包括實際包含在程序參與者的庫內(nèi)的媒體項目的播放列表。
作為在允許包含在不同參與者的媒體庫內(nèi)的大體相同的媒體項目之間的直接相關(guān)時的一種輔助手段,給包含在參與者的媒體庫內(nèi)的每個媒體項目個體分配源自程序的標(biāo)識符。也就是,使用音樂軌跡作為例子,給美國的“Horse With No name”的所有演播室版本實例分配可快速、有效處理的短的基于系統(tǒng)的ID。為了更進(jìn)一步地便于相似性評估的計算,還可以給相似的媒體項目分配相同的標(biāo)識符;例如,可以給美國歌唱的“Horse With No name"的現(xiàn)場錄音分配相同的基于系統(tǒng)的ID,以便在確定其與總數(shù)據(jù)庫內(nèi)的其它媒體項目的相似性時進(jìn)行處理。
另外,可以通過關(guān)聯(lián)從第三方數(shù)據(jù)來源獲得的附加數(shù)據(jù),豐富與特定媒體項目相關(guān)聯(lián)的信息。再次使用音樂作為例子,“流派”是常常與特定音樂項目相關(guān)聯(lián)的特性。在從程序參與者接收到某個音樂標(biāo)題的標(biāo)識數(shù)據(jù),但是該數(shù)據(jù)不包括流派類型的情況下,可以咨詢具有這種相關(guān)信息的第三方,并且可以將第三方提供的該特定音樂項目的流派類型與其相關(guān)聯(lián),以便以后在播放列表產(chǎn)生處理中使用。
應(yīng)當(dāng)理解,該整個程序或系統(tǒng)的獨特方面發(fā)生在媒體提供商(在線音樂商店)的服務(wù)器、參與者的媒體播放設(shè)備上,以及常常發(fā)生在中間設(shè)備上,所述中間設(shè)備諸如是適于播放設(shè)備和在線商店的計算機(jī)系統(tǒng)之間的通信的用戶個人計算機(jī)。
為了最好地描述實現(xiàn)上述實施例的方式,以及定義本公開的其它優(yōu)點和特征,下面提供并且在附圖中示出更具體的描述。應(yīng)當(dāng)理解,這些附圖僅描繪了本發(fā)明的示例性實施例,因此不被認(rèn)為是范圍限制,通過使用附圖,將以附加特性和細(xì)節(jié)描述和解釋這些例子,其中 圖1示出了示例系統(tǒng)實施例; 圖2示出了示例方法實施例; 圖3示出了確定相關(guān)數(shù)據(jù)的方法; 圖4示出了樣本購買矩陣; 圖5示出了主相似性表內(nèi)的列; 圖6示出了單個相似性表; 圖7示出了示例系統(tǒng)實施例; 圖8示出了示例方法實施例; 圖9示出了示例系統(tǒng)實施例; 圖10示出了用于與數(shù)字媒體播放器同步媒體和相似性表的示例系統(tǒng) 圖11示出了用于啟動播放列表產(chǎn)生的示例軟件界面; 圖12示出了示例方法實施例; 圖13示出了示例用戶界面; 圖14示出了示例用戶界面; 圖15示出了示例方法實施例; 圖16示出了推薦購買項目的示例方法實施例; 圖17示出了用于選擇加入的示例用戶界面; 圖18示出了示例用戶界面;和 圖19示出了用于顯示推薦數(shù)據(jù)的示例用戶界面。
具體實施例方式下面詳細(xì)討論公開的方法和裝置的各種實施例。雖然討論了特定實施方式,但是應(yīng)當(dāng)理解,這樣做僅是出于說明目的。相關(guān)領(lǐng)域技術(shù)人員將認(rèn)識到可以使用其它組件、配置和步驟,而不脫離本公開的精神和范圍。
參考圖1,示例性系統(tǒng)包括通用計算設(shè)備100,包括處理單元(CPU) 120和系統(tǒng)總線 110,系統(tǒng)總線110將包括系統(tǒng)存儲器一諸如,只讀存儲器(ROM)HO和隨機(jī)訪問存儲器 (RAM) 150——的各種系統(tǒng)組件耦接到處理單元120。還可以使用其它系統(tǒng)存儲器130??梢岳斫猓撓到y(tǒng)可以在具有多于一個CPU 120的計算設(shè)備或聯(lián)網(wǎng)在一起的一組計算設(shè)備或計算設(shè)備集群上操作,以便提供更大的處理能力。系統(tǒng)總線110可以為若干類型的總線結(jié)構(gòu)中的任一種,所述總線結(jié)構(gòu)包括存儲器總線或存儲器控制器、外設(shè)總線和使用各種總線體系結(jié)構(gòu)中的任意一種的本地總線。存儲在ROM 140等內(nèi)的基本輸入/輸出(BIOS)可以提供諸如在啟動過程中幫助在計算設(shè)備100內(nèi)的元件之間傳送信息的基本例程。計算設(shè)備 100還包括存儲設(shè)備,諸如硬盤驅(qū)動器160、磁盤驅(qū)動器、光盤驅(qū)動器或磁帶驅(qū)動器等。存儲設(shè)備160由驅(qū)動接口連接到系統(tǒng)總線110。驅(qū)動器和相關(guān)聯(lián)的計算機(jī)可讀介質(zhì)提供計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和/或用于計算設(shè)備100的其它數(shù)據(jù)的非易失性存儲。在一個方面,執(zhí)行特定功能的硬件模塊包括存儲在有形計算機(jī)可讀介質(zhì)內(nèi)的軟件組件,其與必需的硬件組件,諸如CPU、總線、和顯示器等相結(jié)合來執(zhí)行該功能。這些基本組件是本領(lǐng)域技術(shù)人員已知的,并且根據(jù)設(shè)備類型,諸如設(shè)備是小型的、手持型計算設(shè)備、臺式計算機(jī)還是大的計算機(jī)服務(wù)器,可以構(gòu)想適當(dāng)?shù)淖凅w。
雖然此處描述的示例性環(huán)境采用硬盤,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,還可以在示例性操作環(huán)境中使用可以存儲計算機(jī)可訪問的數(shù)據(jù)的其它類型的計算機(jī)可讀介質(zhì),諸如磁帶盒(magnetic cassette)、閃存卡、數(shù)字通用盤、盒式磁帶(cartridge)、隨機(jī)訪問存儲器 (RAM)、只讀存儲器(ROM)、和包含比特流的纜線或無線信號等。
為了能夠與計算設(shè)備100進(jìn)行用戶交互,輸入設(shè)備190表示任意數(shù)目的輸入機(jī)構(gòu), 諸如用于語音的麥克風(fēng)、用于手勢或圖形輸入的觸敏屏、鍵盤、鼠標(biāo)、運動輸入、和語音等。 提出者可以使用輸入來指示語音搜索查詢的開始。設(shè)備輸出170也可以是本領(lǐng)域技術(shù)人員已知的若干輸出機(jī)構(gòu)中的一種或多種。在某些情況下,多種方式的系統(tǒng)使得用戶能夠提供多種類型的輸入以便與計算設(shè)備100通信。通信接口 180總地支配并且管理用戶輸入和系統(tǒng)輸出。對所公開的在任意特定的硬件裝置上操作的方法和設(shè)備沒有限制,并且因此,可以用開發(fā)出的改進(jìn)的硬件或固件裝置容易地取代這些基本特征。
為了解釋清楚,說明性系統(tǒng)實施例被呈現(xiàn)為包括各個功能塊(包括標(biāo)記為“處理器”的功能塊)??梢允褂霉蚕砘?qū)S玫挠布峁┻@些塊代表的功能,所述硬件包括但不限于,能夠執(zhí)行軟件的硬件。例如,可由單個共享處理器或多個處理器提供圖1中給出的一個或多個處理器的功能(術(shù)語“處理器”的使用不應(yīng)被認(rèn)為僅僅指的是能夠執(zhí)行軟件的硬件)。說明性實施例可以包括微處理器和/或數(shù)字信號處理器(DSP)硬件、用于存儲執(zhí)行下面討論的操作的軟件的只讀存儲器(ROM)和用于存儲結(jié)果的隨機(jī)訪問存儲器(RAM)。還可以提供超大規(guī)模集成(VLSI)硬件實施例,以及與通用DSP電路相結(jié)合的定制VLSI電路。
各種實施例的邏輯操作被實現(xiàn)為(1)運行在通用計算機(jī)內(nèi)的可編程電路上的一系列計算機(jī)實現(xiàn)的步驟、操作或過程,(2)運行在專用可編程電路上的一系列計算機(jī)實現(xiàn)的步驟、操作或過程;和/或C3)可編程電路內(nèi)的互連的機(jī)器模塊或程序引擎。
上面描述的計算設(shè)備特別適用于產(chǎn)生和使用從大量樣本用戶得到的相似性數(shù)據(jù)。 基于用于確定兩個或更多個歌曲在多個用戶的庫中發(fā)生相關(guān)的發(fā)生率的數(shù)學(xué)分析,可以確定統(tǒng)計相似性。該相似性數(shù)據(jù)可用于各種有幫助的功能,尤其是包括產(chǎn)生高質(zhì)量的播放列表、確定向用戶推薦購買的建議產(chǎn)品、通過歌曲的新近選擇使用戶的媒體設(shè)備保持最新。在一個例子中,用戶可以將關(guān)于他們的整個媒體數(shù)據(jù)庫的內(nèi)容的信息上傳到用戶的大量聽眾可訪問的服務(wù)器?;趦蓚€或更多個媒體項目在用戶的全部聽眾的庫中同時出現(xiàn)的頻繁程度,媒體項目變?yōu)楸舜讼嚓P(guān)并且被標(biāo)注為相似。基于這種相似性,服務(wù)器可以基于對種子軌跡的選擇創(chuàng)建播放列表以便包括一個或多個相似歌曲,或服務(wù)器可以推薦購買用戶的庫內(nèi)沒有的類似歌曲。下面將更詳細(xì)地描述該系統(tǒng)的這些和其它特征。雖然參考在線音樂商店, 諸如蘋果公司的ITUNES商店,將描述所描述的技術(shù)和產(chǎn)品的許多特征,但是應(yīng)當(dāng)理解,該系統(tǒng)不需要任何媒體銷售來執(zhí)行該系統(tǒng)的優(yōu)選實施例。另外,雖然某些描述可以僅涉及一種特定形式的媒體,但是此處描述的原理可被應(yīng)用于任意媒體,諸如音頻、視頻、靜態(tài)圖片、 文檔和其它類型的數(shù)據(jù)文件。
服務(wù)器 上傳 圖2示出了用于產(chǎn)生相似性數(shù)據(jù)的示例方法實施例。該方法包括由服務(wù)器接收與程序參與者的個體媒體庫存相關(guān)的用戶數(shù)據(jù)002)。用戶數(shù)據(jù)包括通常為元數(shù)據(jù)形式的關(guān)于用戶的庫內(nèi)的媒體項目個體的標(biāo)識信息。用戶的庫內(nèi)的媒體項目的起源與該系統(tǒng)無關(guān)。 即使音樂內(nèi)容商店采用所描述的方法,由于服務(wù)器不基于來源區(qū)分文件信息,所有媒體項目被同等地對待,所以本實施例不需要用戶的文件源自于音樂商店。該方法等同地適用于物理媒體,諸如,⑶、DVD或HD-DVD,以及物理媒體被代碼轉(zhuǎn)換為數(shù)字格式并且輸入到用戶媒體庫中的情況。在優(yōu)選實施例中,服務(wù)器不需要用戶上傳關(guān)于其庫內(nèi)的所有媒體項目的信息;服務(wù)器也接受僅關(guān)于有限數(shù)目的媒體項目的信息,或關(guān)于媒體項目的僅僅部分信息。
識別用戶數(shù)據(jù) 該方法還包括將用戶數(shù)據(jù)識別為特定媒體項目203。該步驟可通過若干方式中的任意一種完成,包括檢查文件名、元數(shù)據(jù)或通過對文件的一部分進(jìn)行詳細(xì)分析。在音樂軌跡的例子中,服務(wù)器可以通過各種機(jī)制識別音樂軌跡。例如,給定軌跡,諸如具有大約8分鐘長度的Led Z印pi in WMairway to Heaven,可以具有與該文件相關(guān)聯(lián)的各種數(shù)據(jù),包括文件名或標(biāo)識歌手、歌曲名、流派、軌跡長度、專集名、軌跡號等的元數(shù)據(jù)。這些數(shù)據(jù)中的一部分可能足以使服務(wù)器將該文件識別為專集Led Zepplin IV中的Led Zepplin的Mairway to Heaven.可替換地,可以使用商業(yè)歌曲識別服務(wù)識別該文件。還可以通過對音樂軌跡的一部分采樣,或通過識別來自購買商店的唯一標(biāo)識符,或通過識別歌曲的數(shù)字指紋,來識別軌跡。例如,服務(wù)器或服務(wù)可以識別出歌曲購買自ITUNES商店,并且文件的元數(shù)據(jù)包含專用于ITUNES商店的唯一標(biāo)識符。服務(wù)器可以通過該標(biāo)識符識別媒體項目。應(yīng)當(dāng)理解,識別媒體項目的許多其它可能方法是公知的,并且所有這些方法包括在公開的方法和裝置內(nèi)。
相關(guān) 在步驟204,每個媒體項目與唯一標(biāo)識符相關(guān)聯(lián),并且在步驟205被存儲在表內(nèi)。 如果服務(wù)器以前從沒遇到過該歌曲,服務(wù)器給該軌跡分配新的標(biāo)識符。然而,對于大部分媒體項目,以前已經(jīng)分配了標(biāo)識符,并且媒體僅需要與該標(biāo)識符相關(guān)聯(lián)。繼續(xù)Mairway To Heaven的例子,一旦媒體項目已被識別為該軌跡,服務(wù)器可以查看該軌跡的唯一標(biāo)識數(shù)據(jù)。 針對服務(wù)器接收到的每個媒體項目重復(fù)該處理。
雖然服務(wù)器已經(jīng)將標(biāo)識符與大部分歌曲相關(guān)聯(lián),在某些情況下,媒體項目對于服務(wù)器是全新的,或至少被識別為如此。在這些情況下,服務(wù)器將發(fā)出新的標(biāo)識符,并且將其分配給該媒體項目。例如,服務(wù)器可能不認(rèn)識新的歌手或garage band。然而,服務(wù)器將為該歌手的軌跡發(fā)出新的標(biāo)識符,并且當(dāng)服務(wù)器在不同用戶的庫內(nèi)遇到相同軌跡時,它將給該軌跡分配與以前發(fā)出的標(biāo)識符相同的標(biāo)識符。
在某些情況下,服務(wù)器可能不給對于服務(wù)器來說是新的媒體項目提供新的標(biāo)識符。例如,媒體項目可能是一個用戶庫所獨有的,并且因此由于不會有該項目的同時出現(xiàn)的發(fā)生率,所以提供標(biāo)識符沒有任何價值。因此,系統(tǒng)不需要給所有新項目提供唯一標(biāo)識符。 其后,如果其它用戶也在其庫內(nèi)具有該媒體項目,則系統(tǒng)可以給該軌跡提供唯一標(biāo)識符,并且提供該項目的相似性數(shù)據(jù)。
主購買矩陣 在步驟205每個媒體項目被存儲在主購買矩陣內(nèi)。圖4示出了主購買矩陣的圖示。購買矩陣402是一個表,其包含相應(yīng)于表內(nèi)的每個唯一媒體項目的列404。在該表由音樂內(nèi)容銷售商,諸如ITUNES商店,托管的實施例中,購買矩陣還將包括可從ITUNES商店購買獲得的所有媒體項目。主購買矩陣404的行與用戶的唯一用戶標(biāo)識號406相關(guān)聯(lián)。該標(biāo)識碼以用戶可能知道但是系統(tǒng)不知道的匿名標(biāo)識碼表示用戶。因此,主購買矩陣包含程序服務(wù)器從每個參與用戶接收到的每個文件的記錄。
由于購買矩陣容納有所有程序參與者和每個程序參與者的庫內(nèi)的所有媒體,購買矩陣402可能大得驚人。例如,如果音樂商店具有近似2. 25百萬個用戶以及多于5百萬的歌曲。這種在線商店的購買矩陣是近似2. 25百萬行和5百萬列,或11,250億個單個單元格的表。ITUNES商店具有5千萬注冊用戶,并且包含超過1千萬歌曲。這種在線商店的購買矩陣是近似5千萬行和1千萬列,或5,000, 000億個單個單元格的表。
對于用戶庫內(nèi)的歌曲,標(biāo)記矩陣內(nèi)相應(yīng)于該用戶和該歌曲的單元格??梢杂萌缤紶柲菢雍唵蔚臄?shù)據(jù)類型進(jìn)行標(biāo)記,1用于已購買408,而0用于未購買410。當(dāng)必須存儲比布爾數(shù)據(jù)類型所允許的更多的數(shù)據(jù)時,可以使用其它數(shù)據(jù)類型。雖然矩陣可能非常大,由于大部分用戶在其庫中具有相對少的歌曲(與5百萬相比),該矩陣被非常稀疏地填充。每個用戶行可能僅包含少數(shù)表項,而每個歌曲列可能包含幾十個、幾百個、幾千個、或?qū)τ诟餍械母枨踔翈装偃f個表項,但是購買矩陣的絕大多數(shù)是空的。
應(yīng)當(dāng)理解,當(dāng)用戶庫改變——通過向他們的庫中增加新歌曲、改變文件元數(shù)據(jù)或刪除文件——時,主購買矩陣或表需要更新。購買矩陣可被實時更新,或可對事務(wù)進(jìn)行排隊以便以后插入。一種排隊裝置規(guī)則地,諸如每天晚上11:30,在購買矩陣中插入事務(wù)。另一種排隊裝置在準(zhǔn)備好某個最小數(shù)目的事務(wù)用于插入時才向購買矩陣中插入事務(wù)。
更新購買表不需要針對所有媒體項目重復(fù)步驟203和204。由于在用戶的數(shù)據(jù)最初填充該表時已經(jīng)執(zhí)行過,所以已經(jīng)被識別并且與基于程序的識別號相關(guān)的媒體項目不需要識別和相關(guān)步驟。在一個實施例中,一旦服務(wù)器已經(jīng)將媒體項目和其標(biāo)識數(shù)據(jù)相關(guān),服務(wù)器可以將標(biāo)識數(shù)據(jù)發(fā)送回用戶以便存儲在元數(shù)據(jù)內(nèi)。在與服務(wù)器的將來通信中,服務(wù)器可以接收對具有相關(guān)聯(lián)的標(biāo)識數(shù)據(jù)的媒體項目的更新,從而避免需要重做步驟204。
在某些實施例中,購買矩陣可以是包括關(guān)于每個事務(wù)的附加信息,諸如銷售時間和日期、媒體是什么格式、媒體是高清晰度還是標(biāo)準(zhǔn)清晰度、事務(wù)是贈品還是收費的、哪些設(shè)備被授權(quán)回放等,的更大表或矩陣的一部分。購買矩陣可以是離散的不同的表,或可被完整地結(jié)合在更大的表或矩陣內(nèi)。
在另一個實施例中,主購買矩陣不需要包含關(guān)于用戶媒體庫存的上傳信息。主購買矩陣可以本質(zhì)上由購買信息構(gòu)成。購買信息可以僅是用戶從在線商店購買的項目,或可以包括附加信息。在這個實施例中,該表可以包括每個用戶購買的所有項目的列表。另外, 主購買矩陣很可能至少包括與用戶的媒體庫存的內(nèi)容有關(guān)的相似性數(shù)據(jù)的有限集合。協(xié)同過濾引擎 圖2所示的方法接著包括在步驟206對主購買矩陣運行校準(zhǔn)過濾引擎以便產(chǎn)生相似性數(shù)據(jù),并且在步驟207在主相似性表內(nèi)存儲相似性數(shù)據(jù)??梢愿鶕?jù)媒體項目在主表內(nèi)與某個其它媒體項目共同出現(xiàn)的發(fā)生率,得出相似性數(shù)據(jù)。當(dāng)用戶具有相同的兩個媒體項目時,它們被稱為共同出現(xiàn)。多個用戶的庫內(nèi)的這種共同出現(xiàn)是兩個媒體項目“類似”的指示。兩個媒體項目在程序參與者的庫內(nèi)共同出現(xiàn)得越頻繁,媒體項目被稱為越相似。
協(xié)同過濾引擎308計算主購買表內(nèi)的媒體項目個體之間的相似性。在一個實施例中,協(xié)同過濾引擎可以簡單地是記錄數(shù)據(jù)庫內(nèi)的各對歌曲在程序參與者的庫內(nèi)共同出現(xiàn)的次數(shù)的程序。
在一個實施例中,協(xié)同過濾引擎可以通過將每個項目表示為多維矢量空間內(nèi)的矢量,計算兩個不同媒體項目之間的相似性。維數(shù)等于購買矩陣306內(nèi)的用戶數(shù)目。通過計算矢量之間的距離獲得項目之間的相關(guān)性??梢允褂眉兊幕蛐薷暮蟮娜呛瘮?shù)(例如,余弦或正弦函數(shù))計算矢量之間的距離。如果兩個矢量具有小夾角,它們被認(rèn)為是相似的,并且如果兩個矢量具有大夾角,它們被認(rèn)為不太相似。通過對主購買矩陣內(nèi)的每個歌曲和主購買矩陣內(nèi)的每個其它歌曲進(jìn)行比較,執(zhí)行這個處理。
在另一個實施例中,協(xié)同過濾引擎可以考慮比共同出現(xiàn)發(fā)生率數(shù)據(jù)更多的內(nèi)容。 例如,整體出現(xiàn)的發(fā)生率可被作為相似性評估的因素。例如,歌曲A和B可以與歌曲A和C 同等頻繁地共同出現(xiàn),但是如果歌曲B總體上更為流行,則歌曲A和B可以比歌曲A和C具有更高的相似性得分(即,被認(rèn)為更相似)。一種確定不同歌曲的流行度的方法是測量每個歌曲在整個數(shù)據(jù)集合中出現(xiàn)的頻繁程度。
類似地,協(xié)同過濾引擎可以有影響相似性得分的其它輸入,諸如使用率輸入。例如,給予媒體項目的評估、播放計數(shù)以及跳過計數(shù)全部可被輸入到協(xié)同過濾引擎中,以便確定媒體項目之間的相似性。
圖3示出了將每個歌曲表示為矢量的概念。在圖3a中,基于歌曲在用戶庫2,899、 1,343和2,000中的存在,已經(jīng)制訂了主表內(nèi)的媒體ID 629的矢量。類似地,基于歌曲在用戶庫2、12、444、1,343中的存在,已經(jīng)映射了主表中的媒體ID 1,263,999的矢量。經(jīng)測量這兩個矢量之間的夾角是20度,并且計算出近似為0. 939的余弦值。該余弦值表示媒體ID 629和媒體ID 1,263,999之間的相關(guān)值。圖3b表示用于確定媒體ID 629和媒體ID 15之間的相關(guān)性的另一個相關(guān)性計算。在這個例子中,沒有一個用戶在其庫中有媒體ID 629和媒體ID 1,263,999兩者,并且因此這兩個矢量之間的余弦值近似為-0. 707。較低的得分指示媒體ID 629和1,263,999彼此不緊密相關(guān)。
在另一個實施例中,可以使用其它函數(shù)計算項目之間的相似性得分。作為例子,可以用考慮了特定項目所占一項目的總體共同出現(xiàn)的百分比的方法計算相似性得分。例如, 項目A與項目1-5共同出現(xiàn),并且項目A的總體共同出現(xiàn)是與項目1-5的全部共同出現(xiàn)的總和。例如,如果項目A與項目1共同出現(xiàn)2次,與項目2共同出現(xiàn)2次,與項目3共同出現(xiàn)2次,與項目4共同出現(xiàn)10次并且與項目5共同出現(xiàn)2次,則項目A具有總體共同出現(xiàn) 18。了解共同出現(xiàn)總數(shù)由特定對所導(dǎo)致的百分比可能是有價值的。例如,項目4代表項目 A的全部共同出現(xiàn)的近似55%,并且因此,與任意其它項目相比,與項目A更強(qiáng)地相關(guān),每個其它項目僅僅代表A的全部共同出現(xiàn)中的大約11%。該數(shù)據(jù)還可以用于確定相似性數(shù)據(jù)。 雖然上面圖示了計算相似性數(shù)據(jù)的兩個特定方法,但是應(yīng)當(dāng)理解,可以使用計算兩個項目之間的相似性的任意數(shù)目的其它方法。
以某個規(guī)則的時間間隔在每個項目和每個其它項目之間計算上面的處理。由于這個處理可能花費過多的時間量,它通常離線執(zhí)行。其可每月執(zhí)行一次、一個星期執(zhí)行一次、 一天執(zhí)行一次、或以計算能力允許的頻繁程度執(zhí)行。
相似性表 在圖2的步驟207內(nèi)使用協(xié)同過濾引擎匯編的相關(guān)數(shù)據(jù)產(chǎn)生主相似性表。圖5示出了存儲在主相似性表502內(nèi)的數(shù)據(jù)。對于給定媒體項目,在主相似性表中存在以其基于程序的標(biāo)識數(shù)據(jù)504識別該媒體項目的表項。被認(rèn)為與該媒體項目類似或相關(guān)的每個其它媒體項目也可被列在表508內(nèi)。以這種方式,表502維護(hù)與主購買矩陣402內(nèi)的每個媒體項目相似的所有媒體的列表。
如果項目具有足以被認(rèn)為與該媒體項目相似或相關(guān)的得分,則這些項目被包括在主相似性表內(nèi)。對于任意給定項目,大部分其它項目根本不相似。當(dāng)相似性得分足夠低時, 其不包括在相似性表內(nèi)。確定相似性得分足夠低或高的閾值可以是動態(tài)的或靜態(tài)的。例如, 如果相似性得分的范圍為-1到+1,-1為完全不相似,而1為極其相似,該閾值可被靜態(tài)地設(shè)置為0. 5??梢曰谥髻徺I表內(nèi)歌曲的出現(xiàn)次數(shù),動態(tài)地設(shè)置該閾值,諸如出現(xiàn)次數(shù)小于 100的歌曲的閾值為0. 9,出現(xiàn)次數(shù)小于5,000的歌曲的閾值為0. 7,出現(xiàn)次數(shù)小于25,000 的歌曲的閾值為0. 6,出現(xiàn)次數(shù)等于或大于25,000的歌曲的閾值為0. 5。該閾值還可以基于可獲得的存儲量或任意其它參數(shù)。
換言之,主相似性表502可以包含所有或某些相似性得分。如果必須約束主相似性表以符合某個存儲大小,則僅包括最好或最強(qiáng)的相似性,并且摒棄其余相似性。類似地, 如果沒有足夠的程序參與者在其媒體庫存中具有某一項目,其可被排除。這種方法的一種變型是在項目有資格被包括在主相似性表內(nèi)之前,要求在用戶的庫內(nèi)出現(xiàn)最小次數(shù)。例如, 如果兩個項目具有5或更小的共同出現(xiàn),即,如果5個或更少的人具有這兩個項目,則系統(tǒng)不計算其余得分。
在另一個實施例中,主相似性表還可以存儲等同關(guān)系。例如,表502中的媒體ID 17可以相應(yīng)于Luciano Pavarotti 1990年表演的“0 Sole Mio”。在線商店中可以獲得諸如Enrico Caruso和Mario Lanza的歌手對“0 Sole Mio”的多種表演,并且這些表演被認(rèn)為是等同媒體506。其它顯著類型的等同媒體包括正式專集軌跡、原聲軌跡、現(xiàn)場音樂會軌跡、其它樂隊的翻唱軌跡和甚至相同歌曲的外語軌跡。單個歌曲可以以所有所列形式或更多形式存在??梢允止?zhí)行或可以基于實際媒體內(nèi)容、元數(shù)據(jù)和/或其它可獲得數(shù)據(jù)自動執(zhí)行等同確定??梢栽诿襟wID 504旁邊給出每個的等同媒體ID,以便標(biāo)識它們中的每一個被認(rèn)為是相同的,并且它們可一起計數(shù)。
主相似性表內(nèi)的ID可以與購買矩陣306內(nèi)用于索引媒體的ID相同,或它們可以基于完全不同的方案。如果兩者不一致,可以提供變換器函數(shù)或參考變換表,以便將一個ID 轉(zhuǎn)換為另一個ID或反之亦然。兩者之間共享的公共ID空間的維護(hù)可能最容易并且最簡單而沒有性能損失。
用戶相似性表 雖然主相似性表包含全體相似媒體,個體媒體庫幾乎必定包括全體相似媒體的較小子集。因此,產(chǎn)生約束集合或個體相似性表。約束適合于給定庫內(nèi)的媒體可獲得性。約束集合還可以包括對未在媒體庫內(nèi)發(fā)現(xiàn)的相似媒體的引用??梢赃@樣做以便將用戶作為建議媒體購買的目標(biāo)。由于具有某些共同媒體品味的其它人在其庫中已經(jīng)具有了該建議的購買,這種定向的建議購買很可能對用戶更有吸引力。
一旦計算并且填充了主相似性表502,產(chǎn)生個體相似性表602。圖6示出了個體相似性表。個體相似性表602包括包含在個體媒體庫內(nèi)的每個歌曲的媒體ID 604和與該媒體ID相關(guān)的媒體。在括號中示出了相關(guān)媒體606。個體相似性表內(nèi)的相關(guān)媒體是位于項目的主相似性表內(nèi)的分類相似媒體508的整個列表的子集。基于哪些媒體出現(xiàn)在個體媒體庫內(nèi),選擇該子集。換言之,為位于個人的庫內(nèi)的每個歌曲,產(chǎn)生也包含在個人的庫內(nèi)的相似媒體的列表。
個體相似性表可由服務(wù)器在服務(wù)器處產(chǎn)生并且被客戶設(shè)備下載,或可由客戶端通過僅下載用戶媒體庫存內(nèi)的項目的相似性數(shù)據(jù)而創(chuàng)建個體相似性表。不論在何處創(chuàng)建相似性表,處理是相同的。按照該項目的基于程序的相似性標(biāo)識數(shù)據(jù)在主相似性表內(nèi)查找媒體項目。接著,系統(tǒng)可以按索引查找媒體項目的相似性數(shù)據(jù)的位置?;诓檎也僮鞯慕Y(jié)果,系統(tǒng)可以檢索相似項目。將這些項目與用戶媒體庫內(nèi)的那些媒體項目進(jìn)一步比較,并且僅僅出現(xiàn)在用戶媒體庫內(nèi)的那些項目被存儲在個體相似性表內(nèi)。在另外的實施例中,某些高度相似的軌跡也可被記錄在個體相似性表內(nèi),以便用于向用戶建議購買。
在優(yōu)選實施例中,可由服務(wù)器為每個庫產(chǎn)生至少一個個體相似性表。客戶端可將庫數(shù)據(jù)發(fā)送給服務(wù)器,服務(wù)器可以識別庫內(nèi)的項目,并且通過從主相似性表中提取屬于該庫內(nèi)項目的相似性數(shù)據(jù),為該庫產(chǎn)生個體相似性表。然后,所得到的個體相似性表可被下載到客戶端以便用于產(chǎn)生播放列表??蛻舳诉€可以使用相同的個體相似性表來創(chuàng)建外設(shè)的個體相似性表。
使用這些個體相似性表,用戶可以受益于從整個用戶群體得出的數(shù)據(jù)。用戶可以使用相似性數(shù)據(jù)創(chuàng)建播放列表、接收新媒體購買建議以及用于各種其它可能。
用戶數(shù)據(jù)影響協(xié)同過濾 在基于相似性數(shù)據(jù)產(chǎn)生播放列表的實施例中,用戶可以提供,或系統(tǒng)可以請求,通過跳過播放列表中他們不希望聽的歌曲的反饋,或他們可以給播放列表內(nèi)他們喜歡聽的媒體項目以正面評估。這種數(shù)據(jù)可從客戶設(shè)備上傳,并且被服務(wù)器接收??梢砸匀我鈹?shù)目的不同模式,諸如以主購買索引或以不同的表,存儲反饋數(shù)據(jù)。還可以從諸如ITUNES商店的在線音樂商店得到反饋。在這個實施例中,用戶在在線商店304上的活動產(chǎn)生反饋數(shù)據(jù)。用戶在在線商店上的活動可以包括購買媒體項目、預(yù)覽媒體項目、搜索特定媒體項目標(biāo)題、 搜索特定媒體項目歌手或搜索特定媒體項目流派。協(xié)同過濾引擎可以使用反饋數(shù)據(jù)修改項目之間的相關(guān)得分。
來自群體的反饋數(shù)據(jù)可能潛在地消除可能存在的相關(guān)。例如,Simon和Garfunkel 的歌曲Mrs. Robinson可能與Lemonheads或Frank Sinatra的相同歌曲強(qiáng)相關(guān),但是旨在基于Simon和Garfunkel版本產(chǎn)生播放列表的用戶可能不喜歡不同版本-也許是由于翻唱歌曲的不同流派。經(jīng)過一段時間,諸如跳過歌曲或從播放列表中去除該項目的反饋數(shù)據(jù)可被用于從相關(guān)項目列表中去除一個或兩個翻唱版本。
在其它實施例中,用戶反饋還可用于在客戶端處直接修改相似性數(shù)據(jù),而不用首先將反饋發(fā)送給服務(wù)器以供協(xié)同過濾引擎使用。在這些實施例中,用戶反饋數(shù)據(jù)可以直接影響存儲在客戶設(shè)備上的個體相似性表內(nèi)的關(guān)系,而無需首先與服務(wù)器同步??商鎿Q地,相似性表可以保持相同,但是可以基于用戶反饋數(shù)據(jù)產(chǎn)生約束。例如,如果用戶經(jīng)常跳過一個類似項目,通過從個體相似性表中去除該項目,客戶端本身可以不再認(rèn)為該項目是相似的, 或可以通過其它手段,諸如播放列表算法中的約束,防止添加頻繁跳過的項目從而不會包括在播放列表內(nèi)。
更新相似性表 經(jīng)過一段時間,當(dāng)歌手創(chuàng)建新音樂和新歌手出現(xiàn)時,新媒體項目可被添加到在線商店內(nèi),甚至于被添加到主購買表內(nèi)。因此,可能形成在線商店304內(nèi)已有項目和在線商店內(nèi)新增加項目之間的相關(guān)。例如,如果用戶在他/她的媒體庫內(nèi)具有歌曲A,并且隨后購買了最近被引入在線商店304內(nèi)的新增加的歌曲B,則可以形成歌曲A和新增加的歌曲B之間的新相關(guān)。當(dāng)用戶購買新增加的歌曲B時,該事務(wù)被記錄在購買矩陣306內(nèi),并且產(chǎn)生更新的購買矩陣306??商鎿Q地,歌曲B可能已通過從⑶拷貝軌跡而被添加到用戶庫中。在這種情況下,結(jié)果是相同的。只要歌曲A和歌曲B兩者都在用戶的媒體庫內(nèi),這種共同出現(xiàn)被記錄在更新的主購買矩陣內(nèi)。
協(xié)同過濾引擎308使用來自更新的購買矩陣306的信息,如上所述產(chǎn)生項目的更新的主相似性表316。此后,通過僅提取更新的主相似性表316內(nèi)的已經(jīng)改變的那些項目, 可以為每個用戶產(chǎn)生更新的個體相似性表322??商鎿Q地,可以基于新數(shù)據(jù)創(chuàng)建全新的個體相似性表。
系統(tǒng)概述 圖7示出了可以執(zhí)行上述實施例的一個這種系統(tǒng)的例子。購買矩陣306存儲關(guān)于來自每個用戶的庫的所有媒體項目的數(shù)據(jù)。協(xié)同過濾引擎308使用購買矩陣306內(nèi)的數(shù)據(jù), 確定每個媒體項目相對于每個其他媒體項目的共同出現(xiàn)的發(fā)生率。協(xié)同過濾引擎308可以有選擇地使用存儲在對象3M和326內(nèi)的反饋數(shù)據(jù),以根據(jù)程序參與者群體上的用戶偏好來調(diào)整相似性得分。通過存儲被認(rèn)為類似于給定媒體項目318的所有媒體項目320,協(xié)同過濾引擎的輸出存儲在主相似性表內(nèi)。相似媒體項目320可被分類為按從最相關(guān)項目到最不相關(guān)項目的順序呈現(xiàn)。
在線管理工具304用作客戶端側(cè)302和服務(wù)器側(cè)301的接口。在優(yōu)選實施例中, 在線管理工具304可以與在線商店相關(guān)聯(lián)。在一個實施例中,在線商店可以產(chǎn)生數(shù)據(jù)310, 數(shù)據(jù)310還可被協(xié)同過濾引擎308用于產(chǎn)生相似性數(shù)據(jù)。無論如何,客戶端302用于上傳關(guān)于存儲在客戶端302上的媒體項目的信息,以及從服務(wù)器301下載相似性數(shù)據(jù)??梢酝ㄟ^在線管理工具304直接從主相似性表316下載特定于客戶端的相似性數(shù)據(jù),而在客戶設(shè)備302上產(chǎn)生個體相似性表322,或可由服務(wù)器301產(chǎn)生個體相似性表,并且將該表下載到客戶設(shè)備302??蛻粼O(shè)備還可以將反饋數(shù)據(jù)通過在線管理工具304傳遞給協(xié)同過濾308以便幫助產(chǎn)生更好的相似性數(shù)據(jù)。
客戶端 如圖7所示,客戶設(shè)備302可以采取各種形式中的任意一種??蛻粼O(shè)備302包括諸如便攜式數(shù)字音頻播放器、便攜式數(shù)字視頻播放器、智能電話、臺式和膝上計算機(jī)、電視機(jī)頂盒和能夠播放媒體的任意其它設(shè)備之類的設(shè)備。客戶設(shè)備可以包括離線便攜式設(shè)備, 其通過臺式計算機(jī)或其它中間設(shè)備與在線商店304同步,諸如通過與臺式計算機(jī)的纜線連接同步的IPOD數(shù)字音頻播放器、通過無線路由器無線同步的IP0DT0UCH數(shù)字音頻播放器、 或通過蜂窩連接無線同步的智能電話。根據(jù)上面的討論將會明了,客戶設(shè)備包含各種媒體項目的庫存。如果客戶設(shè)備的用戶希望從相似性數(shù)據(jù)的使用中受益,用戶通過在線接口訪問該服務(wù)??商鎿Q地,客戶設(shè)備可以通過基于客戶端的應(yīng)用,諸如通過hternet與遠(yuǎn)程服務(wù)器通信的ITUNES桌面應(yīng)用,訪問相似性數(shù)據(jù)服務(wù)。
在線商店304可以是允許客戶設(shè)備購買數(shù)字媒體的單個服務(wù)器或服務(wù)器集群。在線商店還可以準(zhǔn)許訪問其它輔助媒體管理特征。
圖15示出了將相似性數(shù)據(jù)下載到客戶端的方法實施例。如果這是客戶端首次訪問協(xié)同程序842,客戶端必須通過選擇加入程序844來選擇參與。在步驟846給客戶端提供私有用戶識別碼。雖然服務(wù)器使用該碼關(guān)聯(lián)客戶的庫,但僅有客戶端包含附加的標(biāo)識信息。 服務(wù)器不知道關(guān)于客戶設(shè)備或用戶(程序參與者)的個人或識別信息。一旦分配了私有識別碼,客戶設(shè)備可以上傳關(guān)于其媒體庫848的信息。在優(yōu)選實施例中,用戶可以選擇與服務(wù)器共享哪些媒體項目。
如果步驟842的結(jié)果指示用戶已經(jīng)參與了協(xié)同程序,在步驟850客戶端可以使用其私有識別碼登錄服務(wù)器。在步驟852,服務(wù)器可以向客戶端請求關(guān)于媒體庫的改變的信息,或可替換地,客戶端可以共享這種信息,而不用首先被請求。如果庫已經(jīng)發(fā)生了改變,客戶端上傳關(guān)于該改變的信息。改變可以采取經(jīng)編輯的元數(shù)據(jù)、新項目、刪除的項目等的形式。一旦關(guān)于客戶端的媒體庫的最新信息已被發(fā)送到服務(wù)器,在步驟856客戶端可以向服務(wù)器請求新的相似性數(shù)據(jù)??商鎿Q地,服務(wù)器可以啟動新的或更新的相似性數(shù)據(jù)的傳輸。
在可替換實施例中,客戶端可以跳過上面的步驟,并且簡單地向主相似性表請求更新結(jié)果,而無需識別庫。例如,客戶端可以請求特定項目或項目列表的更新,而不用以標(biāo)識號標(biāo)識自己,并且不需要將客戶端媒體庫庫存的改變通知給服務(wù)器。
在步驟858下載相似性數(shù)據(jù)。可以用服務(wù)器以前創(chuàng)建的表的形式下載相似性數(shù)據(jù),或該信息可被實時下載和格式化為個體相似性數(shù)據(jù)表。
基于個體相似性表產(chǎn)生播放列表??梢栽诳蛻舳藗?cè)302、在在線商店304中或在協(xié)同過濾引擎308中產(chǎn)生播放列表??梢曰谂c一個歌曲或多個歌曲的統(tǒng)計相似性產(chǎn)生播放列表。當(dāng)客戶設(shè)備采用基于個體相似性表的播放列表時,某些歌曲可能不是用戶期望的,或可能不是用戶喜歡的。當(dāng)用戶經(jīng)常跳過基于統(tǒng)計相似性被置于播放列表內(nèi)的歌曲時,系統(tǒng) “懲罰,,該歌曲,降低其相似性值,將其包括在較不頻繁播放的播放列表內(nèi),并且最終可以將其從播放列表中完全丟棄。當(dāng)用戶跳過歌曲時,這通過報告來實現(xiàn)。該動作被記錄在客戶設(shè)備上,并且作為反饋傳輸?shù)皆诰€商店。在線商店將這種反饋發(fā)送給協(xié)同過濾引擎,協(xié)同過濾引擎將其存儲在負(fù)相關(guān)表326中。負(fù)相關(guān)表存儲相似性的負(fù)指示。以這種方式,在將一個歌曲排除出相似性表之前,每個用戶不必多次單獨跳過該歌曲。累積的負(fù)反饋將基于組行為為該組用戶濾除不流行的歌曲。這樣,這些播放列表作為不斷發(fā)展以便適合用戶群體的不斷改變的媒體品味的生命有機(jī)體。
例如,如果許多用戶總是跳過播放列表內(nèi)的特定歌曲,或如果許多用戶從其播放列表中刪除該歌曲,該信息被記錄并且被分配以影響主相似性表的產(chǎn)生的權(quán)重。該權(quán)重可以基于所報告的負(fù)相關(guān)的數(shù)目,或用戶交互的其它方面。相反,與特定歌曲的正用戶交互提供正相關(guān)。例如,如果許多用戶向已有播放列表中增加相同歌曲,或如果許多用戶在特定歌曲期間調(diào)大音量,這些正相關(guān)可通過在線接口被報告給服務(wù)器,并且被存儲在正相關(guān)表內(nèi)。
除了與服務(wù)器交互之外,客戶端還可以與其它客戶端或外設(shè)交互。在一個優(yōu)選實施例中,客戶端可以是與便攜式音樂播放器,諸如IPOD便攜式音樂播放器,交互的個人計算機(jī)。在這種情況下,客戶設(shè)備還可以準(zhǔn)備在外設(shè)上使用的個體相似性表。如同服務(wù)器可以為客戶端準(zhǔn)備僅包括客戶端的庫內(nèi)的那些媒體項目的信息的個體相似性表,客戶端可以為外設(shè)準(zhǔn)備僅包括外設(shè)的庫內(nèi)的那些媒體項目的信息的個體相似性表??蛻舳丝蓪€體相似性表如同任意其它數(shù)據(jù)項目那樣裝入外設(shè)中。
外設(shè) 外設(shè)是要與客戶端一起工作,就如同客戶端與服務(wù)器一起工作那樣。例如,外設(shè)可以將其內(nèi)容的改變通知給客戶端,并且請求這些內(nèi)容的相似性數(shù)據(jù)。在更優(yōu)選的實施例中, 如同運行ITUNES桌面應(yīng)用的個人計算機(jī)管理IPOD便攜式媒體設(shè)備,客戶端管理外設(shè)。在這個實施例中,通常不需要以外設(shè)內(nèi)容的改變來更新客戶端,這是由于通過作為實施這些改變的工具,客戶端已經(jīng)知道了這些改變。在這個實施例中,客戶端還可以基于客戶端的個體相似性表中的可用數(shù)據(jù),保持外設(shè)的相似性表是最新的。另外,外設(shè)可將反饋數(shù)據(jù)傳遞給客戶端,以便以后傳輸給服務(wù)器。
在另一個實施例中,外設(shè)可以如同客戶端自身那樣與服務(wù)器直接交互。隨著越來越多的便攜式媒體播放器具有訪問Internet的能力,便攜式設(shè)備可以與服務(wù)器直接交互, 以便下載最新的相似性數(shù)據(jù)或更新主購買矩陣。在這種實施例中,外設(shè)可具有客戶端的所有能力。
產(chǎn)生播放列表 如上面討論的,以此處描述的方法產(chǎn)生的相似性數(shù)據(jù)的一種用途是要使用相似性數(shù)據(jù)產(chǎn)生播放列表。雖然產(chǎn)生播放列表可以與播放個體相似性表內(nèi)的所有類似項目一樣簡單,但通過使用播放列表產(chǎn)生模塊可能獲得最好的結(jié)果。圖8展示了用于產(chǎn)生播放列表的方法實施例。在步驟802,選擇一個或多個種子軌跡,并且在步驟804將其添加到播放列表。在步驟806,在個體相似性表中查找種子軌跡(一個或多個)的相似性數(shù)據(jù),并且在步驟808將相似軌跡添加到候選列表。候選是將被添加到播放列表的潛在軌跡的列表。通過根據(jù)一系列約束估計候選,確定是否將候選添加到播放列表。
約束用作為歌曲是否可被添加到播放列表的限制。在大部分情況下,約束用于增強(qiáng)播放列表的品質(zhì)。一個約束可以要求播放列表內(nèi)的特定間隔。例如,如果歌手間隔約束是活動的,則不緊接著播放Radiohead的兩個歌曲。在類似例子中,約束可以防止來自相同專集或歌曲標(biāo)題的歌曲在播放列表中的給定數(shù)目的歌曲內(nèi)彼此出現(xiàn)。另一個約束將防止不兼容流派的歌曲在相同播放列表中被播放。另一個可以是“抖動”功能。抖動可以隨機(jī)地防止否則將被接受的歌曲被添加到播放列表中。抖動給播放列表提供隨機(jī)性以防止每次基于對相同種子軌跡的選擇而產(chǎn)生相同的播放列表。另一個約束是跳過計數(shù)約束,其中已被跳過多于給定次數(shù)的任何歌曲不滿足該約束,并且不被包括在播放列表內(nèi)。
應(yīng)當(dāng)理解,約束取決于可以容易地改變的某些參數(shù)或變量。例如,可以改變相同專集或歌手的兩個歌曲之間的間隔歌曲的所需數(shù)目。類似地,可以改變排除軌跡或兼容流派成員所需的跳過計數(shù)數(shù)目。在一個實施例中,可由用戶配置這種變量設(shè)置。在另一個實施例中,可由服務(wù)器選擇并且從服務(wù)器發(fā)出這種設(shè)置,并且只要客戶端連接以便下載更新的相似性數(shù)據(jù),就可由服務(wù)器調(diào)整這種設(shè)置。
還應(yīng)當(dāng)理解,還可以構(gòu)想正約束。具有高播放率或高評估的歌曲可在播放列表中被向上移動,或可以具有對抖動功能或某些其它負(fù)約束的影響的免疫力。通過增加更多限制、去除約束、使得約束更嚴(yán)格或更不嚴(yán)格,可以有許多變型,可以根據(jù)此處描述的方法構(gòu)想變型中的每一個。
在步驟810選擇將要考慮的下一個候選,并且在步驟812檢索其元數(shù)據(jù)。元數(shù)據(jù)提供估計約束所需的關(guān)于候選的信息。在步驟814、815和816,按照約束估計軌跡。雖然圖 8僅示出了 3個約束,可以構(gòu)想可以存在任意數(shù)目的可能約束。如果歌曲通過一個約束,其被傳遞給下一個約束,直到在步驟818通過所有約束,并且將該軌跡被添加到播放列表。此后,方法進(jìn)入步驟820,并且取得播放列表內(nèi)的新歌曲的相似性數(shù)據(jù)。該相似性數(shù)據(jù)可被附加到候選列表以便考慮包括在播放列表內(nèi)。
如果軌跡沒有通過約束,方法跳到步驟830,并且如果列表中存在將要估計的另外候選,返回步驟810。然而,如果列表中沒有其它候選,意味著所有候選或是沒有通過約束或是被加入播放列表中,步驟832檢查約束以便確定它們是否被設(shè)置為其默認(rèn)值。如果是這樣,在步驟擬8放松約束,以期放松一個或多個約束允許在步驟擬6在重新考慮之后將以前拒絕的候選添加到播放列表。如果所有候選再次沒有通過約束,步驟832確定約束已被放松并且結(jié)束處理。
放松約束可以采取各種形式中的任意一種。在某些情況下,僅有一個約束變得較不嚴(yán)格。在其它情況下,放松多個約束。例如,如果第一個約束需要相同歌手的兩個歌曲彼此不會在4個歌曲內(nèi)播放,約束可被放松為僅需要一個間隔歌曲,或該約束可被完全消除。 在某些實施例中,不是所有約束都可被放松。一個例子是流派約束。某些流派可能從不兼容,并且因此將不放松流派約束以包括附加流派。
返回步驟826,在候選軌跡沒有通過約束并且沒有另外候選可用的情況下,約束可被放松。如果由于放松的約束而使候選通過了所有約束并且被添加到播放列表內(nèi),約束在步驟822和擬4返回正常。步驟822檢查約束以便確定它們被放松還是處于其默認(rèn)設(shè)置。 如果它們處于其默認(rèn)設(shè)置,方法返回步驟810,并且考慮列表內(nèi)的下一個軌跡。然而,如果步驟822確定約束被放松了,方法進(jìn)入步驟824,步驟擬4將約束返回正常,然后回到步驟810 以便考慮列表內(nèi)的下一個候選。該處理繼續(xù)直到?jīng)]有候選通過放松的約束,并且例程在步驟834結(jié)束。
不必以最相似到最不相似的順序?qū)⒏枨砑拥讲シ帕斜韮?nèi);可使用隨機(jī)算法或其它邏輯以任意順序添加歌曲 所產(chǎn)生的播放列表可以是靜態(tài)的或動態(tài)的。隨著相似性數(shù)據(jù)發(fā)展和新項目被添加到用戶庫,動態(tài)播放列表可被隨時間被更新??商鎿Q地,當(dāng)產(chǎn)生了用戶喜歡并且希望保持不變的播放列表時,用戶可將播放列表保存為單獨的靜態(tài)播放列表,該播放列表不再受相似性數(shù)據(jù)的影響。以這種方式,當(dāng)用戶覺得產(chǎn)生的特定播放列表是“完美的”時,其可被保持為不受通過服務(wù)器在相似性表中反映出的大眾的變化的品味的影響。使用相似性數(shù)據(jù)同步設(shè)備 如同可以產(chǎn)生播放列表,還可以使用相似性數(shù)據(jù)來保持以來自用戶的媒體庫的新的或不同的音樂更新外設(shè),諸如便攜式音樂播放器。許多便攜式媒體播放器受到有限容量的困擾,從而不是能夠?qū)⒂脩裘襟w庫全部存儲在便攜式設(shè)備上,諸如在IPOD便攜式媒體播放器上。在這些情況下,用戶通常必須選擇其一部分媒體項目存儲在其便攜式設(shè)備上。某些用戶可能認(rèn)為這個過程很煩瑣,并且可能發(fā)現(xiàn)他們厭倦了當(dāng)前存儲在其便攜式設(shè)備上的媒體項目。
對上面指出的問題的一種解決方案是使用相似性數(shù)據(jù)保持以新的媒體項目更新便攜式設(shè)備。在這個實施例中,用戶選擇其便攜式設(shè)備上表示他們喜歡的音樂類型的某個數(shù)量的種子軌跡。如同可以根據(jù)種子軌跡產(chǎn)生播放列表,還可以選擇用戶庫中的數(shù)據(jù)項目以包括在便攜式媒體播放器中。當(dāng)相似性數(shù)據(jù)改變時,并且當(dāng)新歌曲被添加到用戶庫時,可以使用相似性數(shù)據(jù)保持以新軌跡更新便攜式設(shè)備到最新。
購買推薦 還可以使用相似性數(shù)據(jù)向用戶推薦新項目以便購買。系統(tǒng)可以推薦購買出現(xiàn)在主相似性表內(nèi)但是未出現(xiàn)在用戶庫內(nèi)的項目。在一個實施例中,在線商店可以基于用戶庫或?qū)ΨN子軌跡的選擇做出購買推薦。在線商店還可以使用最近的購買作為種子軌跡,來推薦購買項目。在另一個實施例中,播放列表模塊可以通過向用戶通知如果歌曲是用戶庫的一部分,其將被包括在播放列表的什么位置來推薦用于購買的歌曲。購買推薦可以發(fā)生在從服務(wù)器到客戶端到便攜式媒體播放器的任意級別。
在某些實施例中,要推薦的項目可能是尚沒有與其相關(guān)聯(lián)的相似性數(shù)據(jù)的新項目。在這種情況下,可由在線商店的管理員提供相似性得分,從而向用戶推薦購買該新項目??梢员3炙峁┑南嗨菩缘梅?,直到可獲得基于共同出現(xiàn)的相似性數(shù)據(jù)或其它具體體現(xiàn)。
類似地,還可以推薦電影租借或購買。雖然根據(jù)歌曲描述了大部分實施例,但是媒體項目還可以是包括視頻或電影的任意文件。在這個實施例中,基于對種子項目的選擇,用戶可以請求相似的電影。可替換地,系統(tǒng)可以基于以前的租借推薦電影。甚至可以構(gòu)想可以使用相似性數(shù)據(jù)將新電影自動下載到客戶端或便攜式媒體播放器,以便用戶以后觀看。該實施例可以是預(yù)訂服務(wù)的一部分,或用戶可以選擇不觀看電影并且不發(fā)生租借費用。
圖16示出了可以使用相似性數(shù)據(jù)推薦用于購買的媒體項目的一個方法實施例。 在步驟1002,選擇種子軌跡。如同基于種子軌跡產(chǎn)生播放列表,購買推薦不基于種子軌跡。 然而,在至少一個實施例中,購買推薦可以基于與用戶的整個庫最相似的內(nèi)容。
一旦選擇了種子軌跡,示出的方法接著在步驟1004從個體相似性表中查找該種子軌跡的相似性數(shù)據(jù)。在這個實施例中,應(yīng)當(dāng)理解,個體相似性表還包含不在用戶庫內(nèi)但是通過相似性數(shù)據(jù)與存在于用戶媒體庫內(nèi)的項目有關(guān)的媒體項目。在另一個實施例中,購買推薦可以直接來自于服務(wù)器,而不是本地存儲的相似性表。來自主相似性表的相似性列表可以提供相似性數(shù)據(jù),并且服務(wù)器或客戶端可以去除從用戶庫中識別出的軌跡。由于不需要包括購買推薦,并且為了推薦目的所有用戶共享主表,該實施例具有產(chǎn)生最小的可能的個體相似性表的益處。
為了防止推薦購買已經(jīng)在用戶庫內(nèi)的項目,步驟1006從在步驟1004檢索到的相似性數(shù)據(jù)中濾除已經(jīng)在用戶媒體庫內(nèi)的項目。在某些情況下,媒體項目已被用戶購買,但是這些項目未被包括在用戶的媒體庫內(nèi)。這可能是出于任意數(shù)目的原因,諸如用戶不喜歡該歌曲并且已經(jīng)將其刪除,或用戶將該媒體項目存儲在另一個庫內(nèi),或用戶可以購買了該媒體項目但是還未下載它。至少在這些情況下,不希望推薦購買這些媒體項目,從而它們都在步驟1008被濾除。步驟1010顯示推薦購買的項目。
當(dāng)然,可以針對用戶當(dāng)前選擇的每個歌曲重復(fù)該方法。在某些實施例中,用戶不需要積極地尋求購買推薦。在這些實施例中,每當(dāng)選擇媒體項目以便回放時,購買推薦可被顯示在媒體組織器或媒體商店內(nèi)。當(dāng)播放媒體項目時,圖形用戶界面可以顯示其它推薦購買的媒體項目,或媒體項目組,諸如專集。在優(yōu)選實施例中,可以通過以輸入設(shè)備選擇推薦本身,直接購買媒體項目,或至少該推薦可被超鏈接到在線商店,從而可以從那里購買該媒體項目。
在另一個實施例中,在選擇不可獲得的情況下,還可以使用這種方法顯示購買推薦。例如,在顯示聽眾也已購買的指定歌手的排名靠前歌曲的View An Artist頁面中,系統(tǒng)可以顯示濾除了對于已經(jīng)在用戶庫內(nèi)的項目的推薦的推薦。
服務(wù)器> 客戶端> IPOD 在一個特別優(yōu)選的實施例中,可用于一個位置的方法可等同地應(yīng)用于系統(tǒng)內(nèi)的每個位置。圖9示出了這種概念。在線音樂商店902被示出為包括相似性表908和播放列表模塊914。相似性表908包含服務(wù)器媒體庫存內(nèi)的每個項目的所有關(guān)系。播放列表模塊914 基于相似性表內(nèi)的數(shù)據(jù)進(jìn)行操作,如同其在系統(tǒng)內(nèi)的任意其它客戶端或便攜式媒體播放器上操作一樣。類似地,客戶端904被示出為包括比服務(wù)器所包括的媒體庫存小的媒體庫存, 并且客戶端媒體庫存內(nèi)的每個項目的相似性數(shù)據(jù)被存儲在其相似性表910內(nèi)。播放列表模塊916基于本地相似性表910內(nèi)的數(shù)據(jù)進(jìn)行操作,就如同其在便攜式媒體播放器906或音樂商店902上操作一樣。最后,便攜式媒體播放器906被示出為包括比客戶端904的媒體庫存少的媒體庫存。相似性表912存儲關(guān)于便攜式媒體播放器906的媒體庫存內(nèi)的項目的信息,并且播放列表模塊918基于該數(shù)據(jù)操作。
圖9示出了對于一組便攜式媒體播放器,客戶端可以如同服務(wù)器那樣運作,或者對于較小的客戶端,較大的客戶端可以作為服務(wù)器運作的概念;此處設(shè)想了所有這些情況。
在大部分實施例中,服務(wù)器是保持主購買矩陣和主相似性表的唯一位置,但是本地相似性表的產(chǎn)生可以基于從服務(wù)器得到的數(shù)據(jù)發(fā)生在任意設(shè)備上。很可能由服務(wù)器執(zhí)行的另一個功能是更新。在大部分實施例中,服務(wù)器不僅是相似性表更新的來源,而且服務(wù)器還可以更新系統(tǒng)的播放列表模塊或軟件組件。
應(yīng)當(dāng)理解,不是此處描述的所有處理都必須實時發(fā)生。在許多情況下,可能希望節(jié)省處理資源,并且離線執(zhí)行某些任務(wù)。例如,可以僅在預(yù)定時間運行協(xié)同過濾引擎以便產(chǎn)生主相似性數(shù)據(jù)表。還可以設(shè)想隨著技術(shù)的進(jìn)步,可以緩解對離線處理的需要。在這些情況下,現(xiàn)在優(yōu)選為離線執(zhí)行的那些處理可被實時執(zhí)行。
在另一個實施例中,雖然每個設(shè)備能夠本地執(zhí)行某些功能,但是可能希望服務(wù)器執(zhí)行特定任務(wù)。例如,服務(wù)器可以為客戶端產(chǎn)生個體相似性表或為客戶端產(chǎn)生播放列表??蛻舳藶楸銛y式媒體播放器執(zhí)行這些任務(wù)可能更有用,便攜式媒體播放器通常缺少大量處理所希望的處理資源。在另一個例子中,服務(wù)器執(zhí)行用于播放列表產(chǎn)生的某些約束,并且將結(jié)果結(jié)合在相似性表數(shù)據(jù)中可能是有益的。例如,在從不放松的流派約束的情況下,服務(wù)器可以從項目的相似性數(shù)據(jù)中排除不兼容流派的媒體項目。以這種方式,由于服務(wù)器已經(jīng)從個體相似性表中排除了未通過該約束的項目,所以在產(chǎn)生播放列表時,播放列表模塊將不必運行約束。
圖10示出了用于向數(shù)字媒體播放器同步媒體和相似性表的示例系統(tǒng)。通信介質(zhì) 920最可能是hternet,但是可以包括允許設(shè)備彼此通信的任何通道(一個或多個)。在線商店922與客戶端擬4通信,客戶端擬4通常是個人計算機(jī),其安裝有特殊軟件以便與在線商店通信和交互。便攜式媒體播放器926,諸如,APPle IPOD媒體播放器,通常通過30針USB連接器與連接到在線商店922的個人計算機(jī)924同步。將便攜式媒體播放器926連接到個人計算機(jī)924的其它方法包括USB、Firewire、802. 11系列或Bluetooth無線連接。在線商店具有媒體主庫930和主相似性表932。當(dāng)同步便攜式媒體播放器936時,本地媒體 934元數(shù)據(jù)和本地子集相似性表936通過個人計算機(jī)924和通信介質(zhì)920被傳輸?shù)皆诰€商店922。重要的是要注意,僅傳輸元數(shù)據(jù)而不傳輸實際媒體。在線商店不需要媒體拷貝,它僅需要足以肯定地識別哪些媒體位于便攜式媒體播放器926上的足夠信息。在線商店能夠產(chǎn)生和/或檢索適當(dāng)信息,并且將其發(fā)送回設(shè)備,從而以相應(yīng)于本地存儲的媒體934、938的新數(shù)據(jù)更新本地子集相似性表936、938。然后在在線商店級別,在計算機(jī)級別和/或在設(shè)備本身上使用本地子集相似性表產(chǎn)生個體播放列表。
在另一個實施例中,便攜式媒體播放器936可以直接從服務(wù)器922獲得數(shù)據(jù)。在這種實施例中,便攜式媒體播放器可以配備有諸如通過802. 11系列通信(Wi-Fi)或通過移動電話網(wǎng)絡(luò)連接在線商店的各種能力。便攜式媒體播放器可以直接連接到服務(wù)器,并且如同上面例子中的客戶設(shè)備那樣執(zhí)行??梢越o便攜式媒體分配唯一標(biāo)識號,或如果庫也與客戶設(shè)備相關(guān)聯(lián),便攜式媒體播放器可以使用與客戶設(shè)備使用的相同的標(biāo)識號。不論如何,便攜式媒體播放器可以上傳關(guān)于存儲在其庫內(nèi)的媒體項目的信息,并且下載關(guān)于這些相同項目的相似性數(shù)據(jù)。應(yīng)當(dāng)理解,便攜式媒體播放器可以具有多于一種連接到服務(wù)器的方法。便攜式媒體播放器不僅可以具有用于連接到在線商店的多種機(jī)制,而且便攜式媒體播放器還可以具有與客戶設(shè)備同步和直接與在線商店通信的能力。
用戶接口 -概要 圖11示出了用于啟動播放列表產(chǎn)生的示例軟件接口。示出了播放媒體、管理媒體和媒體播放列表,允許從在線商店購買媒體,并且執(zhí)行其它與媒體相關(guān)的功能的應(yīng)用的軟件接口 702。軟件接口 702可以顯示媒體列表704和某些或全部相關(guān)元數(shù)據(jù)。為了使用通過在線商店接收到的個體相似性表產(chǎn)生播放列表,用戶選擇一段或多段媒體,并且點擊按鈕或以其它方式向計算機(jī)給出基于所選擇的種子軌跡產(chǎn)生播放列表的命令。所構(gòu)想的適當(dāng)用戶界面包括諸如鍵盤上的按鍵序列、鼠標(biāo)手勢、基于觸摸的輸入、語音命令或這些和其它適合的人機(jī)接口的任意組合的特征。一旦被啟動,軟件應(yīng)用檢索所選擇的媒體種子軌跡的相似性表,并且基于該相似性表產(chǎn)生播放列表。該應(yīng)用可以向用戶顯示或不顯示播放列表的內(nèi)容。應(yīng)用可以僅顯示當(dāng)前播放的軌跡或播放列表內(nèi)容的某個其它子集,諸如緊接的前一個媒體、當(dāng)前播放的媒體和排隊在下一個的媒體。
當(dāng)選擇多于一個歌曲,諸如圖11中以陰影示出的條目,以便產(chǎn)生播放列表時,可以通過簡單地組合兩個條目的相應(yīng)個體相似性數(shù)據(jù),產(chǎn)生播放列表??商鎿Q地,可以使用更復(fù)雜的算法來合并兩者;例如,給所選歌曲之間共有的媒體分配較高的重要性,并且給看上去不類似所選歌曲兩者的歌曲分配較低的重要性或甚至丟棄該歌曲。用戶可以控制或可以在應(yīng)用中事先設(shè)置該算法和/或應(yīng)用在處理多個所選歌曲以便產(chǎn)生播放列表時的行為。
在還可以刷新或重新創(chuàng)建播放列表的實施例中,可以提供以時間先后順序逐步通過所產(chǎn)生的每個播放列表的向后和向前功能。例如,如果用戶形成了播放列表,然后形成了另一個播放列表,用戶可以回到前一個播放列表,包括內(nèi)容和順序,然后跳回新創(chuàng)建的播放列表_如同瀏覽器的后退和前進(jìn)按鈕。
還可以創(chuàng)建播放列表而不選擇任何歌曲。用戶可以簡單地選擇“Choose ForMe(為我選擇)”類型按鈕706,其可以導(dǎo)致系統(tǒng)為用戶選擇種子軌跡。在一個實施例中,可以隨機(jī)選擇種子軌跡。在另一個實施例中,系統(tǒng)可以根據(jù)當(dāng)前播放項目的列表、最多播放項目的列表、最高評估項目、最近添加或購買的項目、流派或用于選擇項目的任意其它屬性選擇軌跡。不論如何選擇種子軌跡,然后可以基于相似性數(shù)據(jù)創(chuàng)建播放列表。
用戶界面-IP0D/IPH0NE/IP0DTOUCH 圖12示出了從用戶角度根據(jù)相似性數(shù)據(jù)產(chǎn)生播放列表的方法。圖12示出了兩個可能的開始點720和721。用戶可以在步驟720選擇媒體項目作為播放列表模塊的種子軌跡,或用戶可以決定基于用戶當(dāng)前正在聽的項目721創(chuàng)建播放列表。用戶輸入使得菜單被顯示的命令722??梢酝ㄟ^任意用戶接口對象,諸如按鈕、觸摸屏或指針,來輸入命令。一旦顯示了菜單,在步驟726,用戶導(dǎo)航光標(biāo)以便選擇播放列表產(chǎn)生器選項727并且選擇它。在步驟7 顯示確認(rèn)屏幕,并且在用戶確認(rèn)之后,在步驟730產(chǎn)生播放列表。
圖13A和1 示出了用于開始播放列表產(chǎn)生程序的兩個不同上下文菜單。當(dāng)用戶在媒體項目(例如,歌曲列表或現(xiàn)在播放的屏幕內(nèi)的歌曲)上按壓中心按鈕723達(dá)延長的時間段時,顯示上下文菜單。上下文菜單可以包括,尤其是,啟動播放列表產(chǎn)生器命令。用戶可以通過使用滾輪719順時針或逆時針移動其手指來進(jìn)行導(dǎo)航,以便高亮顯示播放列表產(chǎn)生器項目,并且按壓中心按鈕723以便選擇高亮顯示的區(qū)域。
圖13C示出了可以在用戶在上下文菜單中選擇播放列表產(chǎn)生器程序時或在用戶例如在媒體回放期間按壓中心按鈕723達(dá)預(yù)定次數(shù)時出現(xiàn)的屏幕。通過等待將箭頭7 移動到開始位置的滾輪輸入719,該屏幕需要用戶對播放列表產(chǎn)生器的激活。用戶可以通過按壓菜單按鈕退出。
圖13D示出了說明性的播放列表。能量符號325表示為其創(chuàng)建播放列表的種子 (軌跡)。刷新327基于種子創(chuàng)建新播放列表。保存播放列表3 保存播放列表,其可從音樂(在最高層菜單結(jié)構(gòu)中)下的播放列表子菜單中或通過選擇播放列表產(chǎn)生器程序(在最高層菜單結(jié)構(gòu)中)被檢索到。
圖14示出了使用播放列表產(chǎn)生器的可替換界面。圖14A示出了播放列表菜單,其中可以使用觸摸屏選擇播放列表產(chǎn)生器模塊。用戶可以通過以其手指敲擊菜單項目,或在菜單項目上移動其手指并且將其手指抬離觸摸屏,選擇播放列表產(chǎn)生器程序(或任意其它菜單項目)。
圖14B示出了種子軌跡選擇屏幕,其中用戶可以選擇播放列表模塊將為其創(chuàng)建播放列表的媒體項目。用戶可以通過使用手指觸摸進(jìn)行滾動,在媒體項目列表中導(dǎo)航。用戶可以使用向下和向上掃動手指的手勢使得列表分別按照字母降序或升序的順序滾動??商鎿Q地,用戶可以通過選擇對應(yīng)于字母列表的所希望部分的字母,跳到字母列表的所希望部分。
圖14C示出了基于歌曲“Abram”產(chǎn)生的樣本播放列表,并且圖14D示出了正被播放的該播放列表的第一個軌跡。再次參考圖14C,可以使用刷新按鈕740根據(jù)相似性表中的新數(shù)據(jù)創(chuàng)建新播放列表,并且圖14E示出了刷新后的播放列表播放。
圖14F示出了保存按鈕742,可以選擇該按鈕以便將刷新后的列表保存為靜態(tài)播放列表??梢栽趫D14G中的播放列表菜單中看到保存的播放列表。即使是保存的播放列表也可被編輯。圖14H示出了樣本播放列表編輯屏幕。在其它實施例中,例如,如果用戶希望結(jié)束當(dāng)前種子軌跡的播放列表并且基于當(dāng)前播放的軌跡創(chuàng)建新播放列表,可以選擇播放列表內(nèi)的歌曲作為種子軌跡。
在另一個實施例中,可以使用遙控器控制客戶設(shè)備購買歌曲并且創(chuàng)建播放列表。
用戶界面-ITUNES 圖17A和17B示出了用戶選擇加入頁面的兩種可能實施方式。用戶選擇加入屏幕通知用戶關(guān)于其個人音樂庫的數(shù)據(jù)將被發(fā)送給一個服務(wù),并且需要用戶通過點擊選擇加入按鈕10 而選擇加入該程序。
圖17B示出的圖形用戶界面還示出了可以啟動播放列表產(chǎn)生程序的可選擇項目 1020和10M??蛇x擇項目1020可以啟動媒體項目推薦特征。在優(yōu)選實施例中,項目1022 可以在用于呈現(xiàn)推薦用戶購買的項目的圖形用戶界面內(nèi)打開圖框1025。
圖18 —般地示出了在上傳關(guān)于用戶媒體庫的信息以及接收本地媒體庫內(nèi)容的相似性數(shù)據(jù)的同時顯示的一種可能的圖形用戶界面。圖18A示出了程序收集關(guān)于用戶媒體庫的信息的可能屏幕,該信息在顯示圖18B所示的屏幕時被傳輸給服務(wù)器。圖18C示出了在下載將被存儲在這個客戶設(shè)備的個體相似性表內(nèi)的信息時所示的可能屏幕。圖18D示出了指出用戶現(xiàn)在可以使用此處描述的播放列表產(chǎn)生處理和媒體推薦處理的處理完成屏幕。用戶在收集、上傳和下載信息過程中不必觀看這些屏幕-在至少一個優(yōu)選實施例中,在該處理期間用戶可以繼續(xù)使用圖形用戶界面的其它特征。
用戶界面-ITUNES/工具條 圖19 一般地示出了用于顯示基于相似性數(shù)據(jù)的媒體項目購買推薦的一個圖形用戶界面。參考圖19A,該圖示出了圖形用戶界面1038,圖形用戶界面1038可被結(jié)合到更大的圖形用戶界面中,或它可以是獨立的界面。在界面1038中,示出了關(guān)于一個專集的相似性數(shù)據(jù)。在這個例子中,選擇了 White Stripes專輯中的歌曲,并且界面1038顯示關(guān)于這個媒體項目的相似性數(shù)據(jù)。模塊1040包含一種類型的購買推薦。模塊1040內(nèi)的項目表示相同歌手的專集,包括包含指定媒體項目的專集。在某些實施例中,在該界面中選擇專集將展開顯示該專集上的所有軌跡的列表。推薦的專集可能尚不能下載,但是可在其發(fā)行之前被購買。重要的是,如果用戶已經(jīng)在其庫或購買歷史中具有一個專集中的所有歌曲,即使該專集是最相關(guān)的專集也不顯示該專集。然而,如果用戶僅擁有專集中的某些歌曲,可以顯示該專集,并且將已經(jīng)擁有的歌曲標(biāo)出。界面1038僅顯示不在用戶庫或購買歷史內(nèi)的媒體項目。
模塊1042顯示不在用戶媒體庫或購買歷史內(nèi)的相同歌手的歌曲。模塊1044基于所選擇的歌曲的相似性數(shù)據(jù)推薦媒體項目。預(yù)期對于某些歌曲,系統(tǒng)可能不能提供相關(guān)推薦,但是在這些情況下,可以向用戶給出仍然符合用戶收聽和購買習(xí)慣并且針對他們已經(jīng)具有的歌曲進(jìn)行了過濾的更寬推薦。
每個模塊1040、1042和1044可以包含任意數(shù)目的項目,不必僅是附圖中表示的數(shù)目。在某些情況下,可能出現(xiàn)比界面一次能夠顯示的推薦更多的推薦。在這種情況下,界面可以包含滾動條或鏈接以便觀看附加推薦項目。
還可以通過選擇圖標(biāo)1041預(yù)覽每個媒體項目個體。通過選擇這個圖標(biāo),用戶可以預(yù)覽媒體項目個體以便確定他/她是否喜歡該推薦。在某些實施例中,圖標(biāo)1041可以改變?yōu)椴シ虐粹o,以便更好地指示該項目可被預(yù)覽。如果用戶希望購買該媒體項目,用戶可以選擇圖標(biāo)1043,這允許用戶購買并且獲得所選擇的項目。一旦購買了該項目,可以顯示表示購買的圖標(biāo)或其它工具。在另一個實施例中,一旦項目被購買,它可以成為附加推薦的種子軌跡。
圖19B示出了界面1038的可替換布局。在這個布局中,僅顯示了框1040和1044。 為了占據(jù)界面內(nèi)的附加可用空間,附加媒體項目已被添加到推薦框1044。在至少一個實施例中,由于對于用戶來說具有空白的浪費的空間可能令人討厭,希望以推薦填充所有可用空間。
圖19C示出了一個實施例,其中對于所選的媒體項目沒有可用的相似性數(shù)據(jù)。在這個實施例中,框1048指示用戶沒有匹配可用,并且使用模塊1043和1046推薦與選擇的媒體項目相同或類似流派的排名靠前的專集。
圖19D示出了一個實施例,其中沒有相似性數(shù)據(jù)可用并且也沒有流派信息可用 (或沒有基于流派的推薦)。同樣,在框1048中顯示向用戶通知沒有針對所選媒體項目返回的匹配的消息。模塊1045可以顯示所選媒體項目的排名靠前的相似媒體項目。模塊1046 可以顯示在線商店的排名靠前的專集。
圖19E也示出了一個實施例,其中由于用戶未選擇加入程序或服務(wù)器不能發(fā)出相似性數(shù)據(jù),所以不可獲得推薦??梢栽谀K1048中顯示指示沒有匹配可用的消息。代替相似性數(shù)據(jù),模塊1050可以顯示相同歌手的其它歌曲和專集作為種子軌跡。在這個實施例中,可以顯示在用戶的媒體庫內(nèi)的項目。模塊1052顯示從商店購買信息得出的商店項目。
圖19F示出了一個實施例,其中不可獲得推薦,并且可以在模塊1048中顯示指示不可獲得推薦的消息。代替推薦,界面在模塊IOM和1046中示出了來自在線商店的排名靠前的銷售表。
本發(fā)明范圍內(nèi)的實施例還可以包括用于承載或其上存儲有計算機(jī)可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)的計算機(jī)可讀介質(zhì)。這種計算機(jī)可讀介質(zhì)可以是可被通用或?qū)S糜嬎銠C(jī)訪問的任何可獲得的介質(zhì)。作為例子并且不是作為限制,這種計算機(jī)可讀介質(zhì)可以包括RAM、R0M、 EEPROM、CD-ROM或其它光盤存儲裝置、磁盤存儲設(shè)備或其它磁存儲設(shè)備、或可用于承載或存儲計算機(jī)可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)形式的所希望的程序代碼工具的任意其它介質(zhì)。當(dāng)信息通過網(wǎng)絡(luò)或另一種通信連接(硬布線的、無線的或其組合)被傳輸或提供給計算機(jī)時,計算機(jī)適當(dāng)?shù)貙⒃撨B接視為計算機(jī)可讀介質(zhì)。因此,任何這種連接可被適當(dāng)?shù)胤Q為計算機(jī)可讀介質(zhì)。上述的組合也被包括在計算機(jī)可讀介質(zhì)的范圍內(nèi)。
計算機(jī)可執(zhí)行指令包括例如使得通用計算機(jī)、專用計算機(jī)或?qū)S锰幚碓O(shè)備執(zhí)行某種功能或一組功能的指令和數(shù)據(jù)。計算機(jī)可執(zhí)行指令還包括由獨立環(huán)境或網(wǎng)絡(luò)環(huán)境中的計算機(jī)執(zhí)行的程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件和數(shù)據(jù)結(jié)構(gòu)。計算機(jī)可執(zhí)行指令、相關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)和程序模塊代表用于執(zhí)行此處公開的方法的各步驟的程序代碼工具的例子。這些可執(zhí)行指令或相關(guān)聯(lián)數(shù)據(jù)結(jié)構(gòu)的特定序列代表用于執(zhí)行這些步驟中描述的功能的相應(yīng)動作的例子。
本領(lǐng)域技術(shù)人員將明了,可以在具有許多類型的計算機(jī)系統(tǒng)配置的網(wǎng)絡(luò)計算環(huán)境中實踐本發(fā)明的其它實施例,所述計算機(jī)系統(tǒng)配置包括個人計算機(jī)、手持設(shè)備、多處理器系統(tǒng)、基于微處理器或可編程消費電子設(shè)備、網(wǎng)絡(luò)PC、微型計算機(jī)、和大型計算機(jī)等。這些實施例還可在分布式計算環(huán)境中被實踐,其中由通過通信網(wǎng)絡(luò)鏈接(通過硬布線鏈接、無線鏈接或其組合)的本地和遠(yuǎn)程處理設(shè)備執(zhí)行任務(wù)。在分布式計算環(huán)境中,程序模塊可以位于本地和遠(yuǎn)程存儲器存儲設(shè)備內(nèi)。
可以通過網(wǎng)絡(luò)云328,諸如局域網(wǎng)、令牌環(huán)網(wǎng)絡(luò)、Internet、公司內(nèi)聯(lián)網(wǎng)、802. 11系列無線信號、光纖網(wǎng)絡(luò)、無線電或微波傳輸?shù)葓?zhí)行所描述系統(tǒng)的各個階段的通信。雖然底層通信技術(shù)可能改變,此處描述的基本原理仍然適用。
僅以示例方式提供上述各個實施例,并且這些實施例不應(yīng)被認(rèn)為限制本發(fā)明。例如,此處的原理可適用于可由便攜式媒體播放設(shè)備無線訪問的或可由物理連接到網(wǎng)絡(luò)的個人計算機(jī)無線訪問的在線商店。本領(lǐng)域技術(shù)人員容易認(rèn)識到可以對本發(fā)明做出各種修改和改變,而無需遵從此處示出和描述的示例實施例和應(yīng)用,并且不脫離本公開的真實精神和范圍。
權(quán)利要求
1.一種用于建立程序參與者的媒體庫內(nèi)的媒體項目的相對相似性以便于媒體播放列表產(chǎn)生的計算機(jī)實現(xiàn)的方法,所述方法包括由服務(wù)器從多個程序參與者接收表示相應(yīng)程序參與者的媒體庫庫存的數(shù)據(jù),所述數(shù)據(jù)包括當(dāng)前包含在每個參與者的媒體庫內(nèi)的媒體項目個體的標(biāo)識數(shù)據(jù);確定媒體項目個體對在不同程序參與者的媒體庫中共同出現(xiàn)的發(fā)生率;基于所確定的在不同程序參與者的媒體庫中共同出現(xiàn)的發(fā)生率,分配媒體項目個體對之間的相似性評估;和向程序參與者的設(shè)備發(fā)送基于所分配的相似性評估的關(guān)于該程序參與者的媒體庫內(nèi)的類似于該程序參與者的媒體庫內(nèi)的其它媒體項目的媒體項目的數(shù)據(jù)。
2.一種用于建立程序參與者的媒體庫內(nèi)的媒體項目的相對相似性以便于媒體播放列表產(chǎn)生的計算機(jī)實現(xiàn)的方法,所述方法包括由程序參與者的客戶設(shè)備接收基于所分配的相似性評估的、與程序參與者的媒體庫內(nèi)的類似于所述程序參與者的媒體庫內(nèi)的其它媒體庫項目的媒體庫項目有關(guān)的數(shù)據(jù),基于從程序參與者群體收集的累積數(shù)據(jù)匯編一個媒體庫項目相對于另一個媒體庫項目的相對相似性評估,并且其中累積數(shù)據(jù)包括包含在程序參與者的媒體庫內(nèi)的各個媒體庫項目的標(biāo)識數(shù)據(jù);和根據(jù)所述數(shù)據(jù)產(chǎn)生相似媒體庫項目的播放列表,包括選擇用作為種子軌跡的媒體庫項目,并且檢索程序參與者的媒體庫內(nèi)的類似于種子軌跡的其它媒體庫項目,以便用作為播放列表內(nèi)的候選。
3.一種包含權(quán)利要求1和2所述的方法的方法。
4.如權(quán)利要求1-3中任意一個所述的方法,其中與程序參與者的媒體庫內(nèi)的類似于所述程序參與者的媒體庫內(nèi)的其它媒體庫項目的媒體庫項目有關(guān)的數(shù)據(jù)被存儲在程序參與者的設(shè)備上的表內(nèi)。
5.如權(quán)利要求2所述的方法,其中匯編相似性評估還包括處理累積數(shù)據(jù)以確定媒體項目個體對在不同程序參與者的媒體庫中共同出現(xiàn)的發(fā)生率,以及基于所確定的在不同程序參與者的媒體庫中共同出現(xiàn)的發(fā)生率,分配媒體項目個體對之間的相似性評估。
6.如權(quán)利要求2-3中任意一個所述的方法,還包括產(chǎn)生媒體播放列表,所述媒體播放列表僅僅包括包含在程序參與者的媒體庫內(nèi)的并且具有相對于從參與者的媒體庫中選擇的種子媒體項目的相似性評估的媒體項目個體。
7.如權(quán)利要求2-3中任意一個所述的方法,還包括產(chǎn)生媒體播放列表,所述媒體播放列表包括包含在程序參與者的媒體庫內(nèi)的并且具有相對于從參與者的媒體庫中選擇的種子媒體項目的相似性評估的媒體項目個體。
8.如權(quán)利要求2-3中任意一個所述的方法,其中在程序參與者的客戶設(shè)備上產(chǎn)生媒體播放列表,所述設(shè)備采取便攜式個人媒體播放設(shè)備或個人計算機(jī)的形式。
9.如權(quán)利要求1-3中任意一個所述的方法,其中由在線媒體提供源收集從程序參與者群體收集的累積數(shù)據(jù),在所述在線媒體提供源處匯編所述相似性評估。
10.如權(quán)利要求1-3中任意一個所述的方法,其中在線媒體提供源是在線音樂商店,程序參與者從在線音樂商店購買各個音樂軌跡。
11.如權(quán)利要求1-3中任意一個所述的方法,還包括基于對相應(yīng)標(biāo)識數(shù)據(jù)的分析,給包含在參與者的媒體庫內(nèi)的每個媒體項目個體分配源自程序的標(biāo)識符,從而允許包含在不同參與者的媒體庫內(nèi)的大體相同的媒體項目之間的直接相關(guān)。
12.如權(quán)利要求1-3中任意一個所述的方法,其中所述媒體項目個體是當(dāng)前包含在程序參與者的視頻媒體庫內(nèi)的電影。
13.如權(quán)利要求1-3中任意一個所述的方法,其中所述媒體項目個體是當(dāng)前包含在程序參與者的音頻媒體庫內(nèi)的音頻軌跡。
14.如權(quán)利要求1-3中任意一個所述的方法,其中所述媒體項目個體是當(dāng)前包含在程序參與者的音樂媒體庫內(nèi)的音樂軌跡。
15.如權(quán)利要求1所述的方法,還包括從服務(wù)器向程序參與者的設(shè)備傳輸至少一個推薦購買的媒體項目的標(biāo)識,其中基于被評價為類似于當(dāng)前包含在程序參與者的媒體庫庫存內(nèi)的指定媒體項目的推薦購買的媒體項目選擇所述至少一個推薦購買的媒體項目,所述評估表示推薦購買的媒體項目與其它人的媒體庫內(nèi)的指定媒體項目共同出現(xiàn)的頻率。
16.一種計算機(jī)可讀介質(zhì),所述計算機(jī)可讀介質(zhì)具有指令計算機(jī)執(zhí)行權(quán)利要求1-14中任意一個所述的方法的程序代碼。
17.一種用于產(chǎn)生媒體播放列表的系統(tǒng),包括至少兩個客戶設(shè)備,每個客戶設(shè)備具有存儲介質(zhì)設(shè)備,每個存儲介質(zhì)設(shè)備包括媒體項目個體的相應(yīng)程序參與者的媒體庫;用于存儲從多個程序參與者的客戶設(shè)備接收的數(shù)據(jù)的裝置;用于執(zhí)行相似性數(shù)據(jù)產(chǎn)生程序的裝置,所述相似性數(shù)據(jù)產(chǎn)生程序從用于存儲從多個程序參與者的客戶設(shè)備接收的數(shù)據(jù)的裝置接收表示數(shù)據(jù),其中所述表示數(shù)據(jù)來自多個程序參與者的相應(yīng)媒體庫庫存,并且包括當(dāng)前包含在相應(yīng)參與者的媒體庫內(nèi)的媒體庫項目個體的標(biāo)識數(shù)據(jù),而不考慮媒體項目個體的來源;用于在客戶設(shè)備和數(shù)據(jù)處理中心之間通信的裝置,從而用于通信的裝置從客戶設(shè)備傳輸表示媒體庫內(nèi)的媒體項目個體而不考慮媒體項目個體的來源的標(biāo)識數(shù)據(jù),并且向客戶設(shè)備傳輸相似性評估數(shù)據(jù)。
18.如權(quán)利要求17所述的系統(tǒng),其中客戶設(shè)備中的至少一個上的存儲介質(zhì)還存儲相似性表,所述相似性表包括標(biāo)識存儲在相應(yīng)客戶設(shè)備上的媒體項目個體的數(shù)據(jù),以及與這些項目中的類似于也存儲在同一相應(yīng)客戶設(shè)備上的其它媒體項目個體的子集的至少一些項目有關(guān)的數(shù)據(jù)。
19.如權(quán)利要求17或18所述的系統(tǒng),還包括用于產(chǎn)生客戶設(shè)備上的播放列表的裝置,所述播放列表被填充有被識別為類似于所選種子軌跡的媒體項目。
20.一種媒體播放列表產(chǎn)生設(shè)備,包括與存儲介質(zhì)設(shè)備進(jìn)行信號通信的處理器;包含關(guān)于媒體項目相似性評估的數(shù)據(jù)的所述存儲介質(zhì)設(shè)備,所述媒體項目相似性評估是基于從多個程序參與者收集的累積數(shù)據(jù)匯編的,并且其中累積數(shù)據(jù)包括包含在程序參與者的媒體庫內(nèi)的媒體項目個體的標(biāo)識數(shù)據(jù),而不考慮每個媒體項目個體的來源;和所述處理器被配置為至少執(zhí)行播放列表產(chǎn)生程序,所述播放列表產(chǎn)生程序從存儲介質(zhì)設(shè)備接收相似性數(shù)據(jù),并且基于所述相似性數(shù)據(jù)產(chǎn)生播放列表。
21.如權(quán)利要求20所述的設(shè)備,其中相似性數(shù)據(jù)限于屬于存儲在所述存儲介質(zhì)上的媒體項目個體的相似性數(shù)據(jù)。
22.—種媒體播放列表產(chǎn)生設(shè)備,包括與存儲介質(zhì)設(shè)備進(jìn)行信號通信的處理器;包含關(guān)于由多個程序參與者提供的媒體庫庫存信息的數(shù)據(jù)的所述存儲介質(zhì)設(shè)備;所述處理器被配置為至少執(zhí)行相似性數(shù)據(jù)產(chǎn)生程序,所述相似性數(shù)據(jù)產(chǎn)生程序從存儲介質(zhì)設(shè)備接收表示數(shù)據(jù),其中所述表示數(shù)據(jù)來自多個程序參與者的相應(yīng)庫存,并且包括當(dāng)前包含在相應(yīng)參與者的媒體庫內(nèi)的媒體項目個體的標(biāo)識數(shù)據(jù),而不考慮媒體項目個體的來源;和所述處理器還被配置為確定媒體項目個體對在不同程序參與者的媒體庫中共同出現(xiàn)的發(fā)生率,并且基于所確定的在不同程序參與者的媒體庫中共同出現(xiàn)的發(fā)生率,分配媒體項目個體對之間的相似性評估。
23.如權(quán)利要求22所述的設(shè)備,還包括通信接口,用于發(fā)送包含在程序參與者的媒體庫內(nèi)的媒體項目個體相對于包含在所述程序參與者的媒體庫內(nèi)的另一個媒體項目的相似性評估。
全文摘要
公開了用于至少部分地基于由若干程序參與者提供的媒體庫庫存信息,便于實現(xiàn)程序參與者的媒體播放列表產(chǎn)生的方法和設(shè)備。個人參與的系統(tǒng)或程序是在線媒體商店。決定成為程序參與者的這些個人對至少部分地基于從程序的其它參與者群體得出的數(shù)據(jù)組織、維護(hù)和播放其音樂感興趣,這些其它參與者在其庫中具有相似或相同的音樂。為了成為程序參與者,個人音樂持有者必須發(fā)送,并且在線音樂商店接收,表示程序參與者的媒體庫存的數(shù)據(jù)。該數(shù)據(jù)通常包含當(dāng)前包含在參與者媒體庫內(nèi)的媒體項目個體的標(biāo)識數(shù)據(jù),而不考慮媒體項目個體的來源。系統(tǒng)或程序確定媒體項目個體對在不同程序參與者的媒體庫內(nèi)共同出現(xiàn)的發(fā)生率?;谠摯_定,基于所確定的不同程序參與者的媒體庫內(nèi)共同出現(xiàn)的發(fā)生率,在媒體項目個體對之間分配相似性評估。
文檔編號G06F17/30GK102187338SQ200980141185
公開日2011年9月14日 申請日期2009年9月1日 優(yōu)先權(quán)日2008年9月8日
發(fā)明者P·蓋茨, R·F·瓦格納, J·韋納, A·瓦蒂基, J·弗勞爾斯, S·A·戴維斯, J·S·米勒, D·J·杜波斯 申請人:蘋果公司