亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種音樂推薦方法及裝置與流程

文檔序號(hào):12667195閱讀:181來源:國(guó)知局
一種音樂推薦方法及裝置與流程

本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及一種音樂推薦方法及裝置。



背景技術(shù):

隨著移動(dòng)網(wǎng)絡(luò)技術(shù)的發(fā)展,人們可以通過手機(jī)、平板以及可穿戴設(shè)備等終端隨時(shí)隨地的享受音樂,為了改善用戶的聽歌體驗(yàn),除了可以播放終端中本地的音樂外,還可以生成各種場(chǎng)景下的音樂列表,例如,工作場(chǎng)景對(duì)應(yīng)的音樂列表,運(yùn)動(dòng)場(chǎng)景對(duì)應(yīng)的音樂列表。

然而,發(fā)明人在實(shí)踐中發(fā)現(xiàn),上述音樂推薦方法無法體現(xiàn)用戶在相應(yīng)場(chǎng)景下的個(gè)性化特點(diǎn),即所有用戶在運(yùn)動(dòng)場(chǎng)景下可選擇的音樂列表基本相同,導(dǎo)致所推薦音樂的準(zhǔn)確率不高。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明實(shí)施例提供一種音樂推薦方法,能夠提高所推薦的音樂的準(zhǔn)確率。

本發(fā)明實(shí)施例提供一種音樂推薦方法,包括:

獲取目標(biāo)用戶的興趣模型對(duì)應(yīng)的目標(biāo)音樂列表;

確定所述目標(biāo)用戶的步頻數(shù)據(jù)以及所選擇的跑步模式;所述跑步模式包括激勵(lì)模式、訓(xùn)練模式和匹配模式中的任一種;

根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂。

相應(yīng)的,本發(fā)明實(shí)施例還提供一種音樂推薦裝置,包括:

獲取單元,用于獲取目標(biāo)用戶的興趣模型對(duì)應(yīng)的目標(biāo)音樂列表;

確定單元,用于確定所述目標(biāo)用戶的步頻數(shù)據(jù)以及所選擇的跑步模式;所述跑步模式包括激勵(lì)模式、訓(xùn)練模式和匹配模式中的任一種;

所述確定單元,還用于根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂。

本發(fā)明實(shí)施例可以獲取目標(biāo)用戶的興趣模型對(duì)應(yīng)的目標(biāo)音樂列表;以及確定所述目標(biāo)用戶的步頻數(shù)據(jù)以及所選擇的跑步模式;所述跑步模式包括激勵(lì)模式、訓(xùn)練模式和匹配模式中的任一種;根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂??梢姡瑢?shí)施本發(fā)明實(shí)施例可以根據(jù)用戶的步頻數(shù)據(jù)以及選擇的跑步模式來為用戶提供更匹配的跑步音樂,提高了音樂推薦的準(zhǔn)確率。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本發(fā)明實(shí)施例提供的一種音樂推薦方法的流程示意圖;

圖2是本發(fā)明實(shí)施例提供的一種模式選擇界面的示意圖;

圖3是本發(fā)明實(shí)施例提供的一種步頻數(shù)據(jù)顯示界面的示意圖;

圖4是本發(fā)明實(shí)施例提供的另一種步頻數(shù)據(jù)顯示界面的示意圖;

圖5是本發(fā)明實(shí)施例提供的另一種音樂推薦方法的流程示意圖;

圖6是本發(fā)明實(shí)施例提供的一種步頻相似用戶列表的示意圖;

圖7是本發(fā)明實(shí)施例提供的一種已關(guān)注用戶的提示框的示意圖;

圖8是本發(fā)明實(shí)施例提供的又一種音樂推薦方法的流程示意圖;

圖9是本發(fā)明實(shí)施例提供的另一種步頻相似用戶列表的示意圖;

圖10是本發(fā)明實(shí)施例提供的一種音樂推薦裝置的結(jié)構(gòu)示意圖;

圖11是本發(fā)明實(shí)施例提供的一種音樂推薦系統(tǒng)的結(jié)構(gòu)示意圖;

圖12是本發(fā)明實(shí)施例提供的一種終端的結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

為了便于理解本發(fā)明實(shí)施例,現(xiàn)先對(duì)本發(fā)明實(shí)施例涉及的概念、術(shù)語進(jìn)行描述。

本發(fā)明實(shí)施例提供的音樂推薦方法可以應(yīng)用于各種終端設(shè)備中,例如,手機(jī)、平板電腦以及可穿戴設(shè)備等。

應(yīng)理解,興趣模型也可以稱為用戶畫像,用于表示用戶的喜好,從而為用戶推薦的音樂為用戶感興趣的音樂。該興趣模型可以包括各種興趣標(biāo)簽,將匹配興趣模型中各興趣標(biāo)簽的音樂作為目標(biāo)用戶的目標(biāo)音樂列表。其中,該興趣模型的創(chuàng)建可以根據(jù)用戶的歷史行為數(shù)據(jù)來確定,例如,分析用戶下載、收藏、評(píng)價(jià)或愛好的音樂等操作,獲取這些操作對(duì)應(yīng)的音樂的標(biāo)簽,將獲取的標(biāo)簽或者獲取的標(biāo)簽中占比較高的標(biāo)簽作為興趣模型的興趣標(biāo)簽??蛇x的,也可以獲取這些操作對(duì)應(yīng)的音樂的節(jié)奏、音律等,將這些音樂具有的節(jié)奏特點(diǎn)、音律特點(diǎn)作為興趣模型的興趣標(biāo)簽。

可選的,也可以獲取用戶所關(guān)注的好友的興趣模型作為該用戶的興趣模型的一部分。可選的,也可以將關(guān)注的好友的興趣模型對(duì)應(yīng)的目標(biāo)音樂列表作為該用戶的目標(biāo)音樂列表的一部分。例如,用戶A與用戶B是互相關(guān)注的好友,就可以把向用戶A推薦的目標(biāo)音樂列表推薦給用戶B,以及把向用戶B推薦的目標(biāo)音樂列表推薦給用戶A。

可選的,該興趣模型也可以包括步頻相似的用戶的興趣模型,或者將步頻相似的用戶的目標(biāo)音樂列表作為該用戶的目標(biāo)音樂列表的一部分。例如,在預(yù)設(shè)范圍內(nèi),用戶A和用戶B的步頻值的絕對(duì)差值小于預(yù)設(shè)閾值,則可以把向用戶A推薦的目標(biāo)音樂列表推薦給用戶B,以及把向用戶B推薦的目標(biāo)音樂列表推薦給用戶A。

可選的,該興趣模型也可以包括品味相似的用戶的興趣模型,或者將品味相似的用戶的目標(biāo)音樂列表作為該用戶的目標(biāo)音樂列表的一部分。例如,根據(jù)用戶A的歷史行為數(shù)據(jù)(如聽歌時(shí)長(zhǎng)、切歌動(dòng)作、收藏標(biāo)注等操作)獲取用戶A的興趣模型,根據(jù)用戶B的歷史行為數(shù)據(jù)(如聽歌時(shí)長(zhǎng)、切歌動(dòng)作、收藏標(biāo)注等操作)獲取用戶B的興趣模型,若用戶A的興趣模型中各興趣標(biāo)簽與用戶B的興趣模型中各興趣標(biāo)簽相差較小,或者大部分的興趣標(biāo)簽相同,則可以稱用戶A和用戶B為品味相似的用戶,就可以把向用戶A推薦的目標(biāo)音樂列表推薦給用戶B,以及把向用戶B推薦的目標(biāo)音樂列表推薦給用戶A。

作為一種可選的實(shí)施方式,根據(jù)預(yù)設(shè)的評(píng)分方案確定用戶i以及用戶j對(duì)于同一首歌的打分向量分別為Si=[x1,…,xn],Sj=[y1,…,yn],則用戶i與用戶j之間的相似度wij:

這樣,wij小于預(yù)設(shè)閾值時(shí),就可以確定用戶i和用戶j為品味相似的用戶。進(jìn)而,即可確定用戶的目標(biāo)音樂列表。

上述這種依據(jù)用戶之間的相關(guān)性來為用戶推薦音樂的方式也可以稱為基于用戶的協(xié)同過濾算法(User-based Collaborative Filtering recommendation,User-based CF)。

應(yīng)理解,目標(biāo)用戶可以指用戶登錄音樂播放應(yīng)用或者包括音樂推薦功能的應(yīng)用的帳號(hào)等標(biāo)識(shí),也可以指采用了該音樂推薦方法的終端,本發(fā)明實(shí)施例不做限定。另外,目標(biāo)用戶僅是為了區(qū)分其他用戶的一種標(biāo)識(shí),任何用戶相對(duì)于其他用戶都可以稱為目標(biāo)用戶,本發(fā)明實(shí)施例采用“目標(biāo)”是為了更加清楚的闡述本申請(qǐng)的方案。

本發(fā)明實(shí)施例中,步頻數(shù)據(jù)可以包括目標(biāo)用戶運(yùn)動(dòng)的加速度、運(yùn)動(dòng)的起始速度、步長(zhǎng)、運(yùn)動(dòng)的路程以及運(yùn)動(dòng)時(shí)長(zhǎng)等,根據(jù)步頻數(shù)據(jù)來確定用戶的當(dāng)前步頻值、未來一段時(shí)長(zhǎng)的預(yù)測(cè)步頻值、速度變化趨勢(shì)以及加速度變化趨勢(shì)等。其中,步頻值也可以稱為腳步頻率,即兩腿在單位時(shí)間內(nèi)交替的頻率。

例如,用戶運(yùn)動(dòng)的步速為vt,在時(shí)長(zhǎng)t內(nèi),可以通過如下公式計(jì)算該vt

假設(shè)用戶的步長(zhǎng)為L(zhǎng),L*vt即為該用戶的當(dāng)前步頻值,其中,時(shí)長(zhǎng)t越小,通過上述公式計(jì)算出的步頻值越準(zhǔn)確。其中,加速度可以通過終端中設(shè)置的加速度傳感器等器件來實(shí)時(shí)測(cè)量。

本發(fā)明實(shí)施例中,音樂的每分鐘節(jié)拍數(shù)BPM通常可以先進(jìn)行快速傅立葉變換得到音樂的音譜,然后通過波峰、波谷的統(tǒng)計(jì)即可得到音樂的BPM。由于音樂的BPM計(jì)算涉及到較多算法,故可以選擇第三方音樂數(shù)據(jù)庫來計(jì)算音樂的BPM,例如Soundtouch音頻處理器。計(jì)算音樂的BPM可以為非實(shí)時(shí)的操作,即只要檢測(cè)到目標(biāo)音樂列表中有新添加的音樂,就可以調(diào)用相應(yīng)的算法來計(jì)算BPM并錄入的數(shù)據(jù)庫中。

本申請(qǐng)實(shí)施例中,確定所述目標(biāo)音樂列表中各音樂的每分鐘節(jié)拍數(shù)BPM之后,還可以將所述目標(biāo)音樂列表按照所述各音樂的BPM從小到大或從大到小的順序進(jìn)行排序;以每預(yù)設(shè)個(gè)數(shù)個(gè)不同的BPM為區(qū)間將排序后的所述目標(biāo)音樂列表劃分為多個(gè)子音樂列表,每個(gè)子音樂列表對(duì)應(yīng)的BPM區(qū)間不同。其中,每一個(gè)BPM區(qū)間的前一個(gè)BPM區(qū)間為BPM均小于該BPM區(qū)間中的BPM且差值最小的BPM區(qū)間,每一個(gè)BPM區(qū)間的后一個(gè)BPM區(qū)間為BPM均大于該BPM區(qū)間中的BPM且差值最小的BPM區(qū)間。

本申請(qǐng)實(shí)施例中,跑步模式也可以稱為運(yùn)動(dòng)模式,可以用于跑步、快走等運(yùn)動(dòng)中。跑步模式包括激勵(lì)模式、訓(xùn)練模式和匹配模式中的任一種。

匹配模式是指在此模式下推薦給用戶的音樂來自用戶的當(dāng)前步頻值所在的BPM區(qū)間的前一個(gè)BPM區(qū)間以及后一個(gè)BPM區(qū)間對(duì)應(yīng)的子音樂列表,可以幫助用戶保持在當(dāng)前步頻值的預(yù)設(shè)范圍內(nèi)。激勵(lì)模式是指在此模式下推薦給用戶的音樂來自用戶的預(yù)測(cè)步頻值所在的BPM區(qū)間對(duì)應(yīng)的子音樂列表或者來自用戶的預(yù)測(cè)步頻值所在的BPM區(qū)間的后一個(gè)BPM區(qū)間對(duì)應(yīng)的子音樂列表,由于激勵(lì)模式下推薦的音樂的BPM大于用戶的當(dāng)前步頻值,從而可以達(dá)到以歌帶人的目的,幫助用戶達(dá)到減肥、瘦身等需求。

訓(xùn)練模式是指當(dāng)用戶進(jìn)入沖刺階段的化,可以立即進(jìn)入激勵(lì)模式,播放激勵(lì)模式下的歌曲,從而激勵(lì)用戶進(jìn)行沖刺。其中,用戶進(jìn)入沖刺階段之前待播放的音樂是根據(jù)訓(xùn)練模式對(duì)應(yīng)的訓(xùn)練舉例以及當(dāng)前步頻值來確定的。例如,假設(shè)訓(xùn)練距離為800米,跑完400米進(jìn)入沖刺階段,則根據(jù)用戶的當(dāng)前步頻值確定跑完400米需要3分鐘,則可以結(jié)合匹配模式推薦時(shí)長(zhǎng)為3分鐘的音樂;當(dāng)該音樂播放完畢時(shí),切換到激勵(lì)模式,根據(jù)激勵(lì)模式以及步頻數(shù)據(jù)(該步頻數(shù)據(jù)可以以預(yù)設(shè)周期進(jìn)行測(cè)量以確定用戶的當(dāng)前步頻值和預(yù)測(cè)步頻值)確定待播放的音樂,從而,在激勵(lì)模式下的音樂的激勵(lì)下完成沖刺。其中,預(yù)測(cè)步頻值是根據(jù)步頻數(shù)據(jù)中用戶當(dāng)前的速度以及加速度變化趨勢(shì)來確定的,以便于自動(dòng)給用戶切換跑步模式。

可選的,訓(xùn)練模式下,也可以根據(jù)用戶的步頻數(shù)據(jù)來確定用戶是否進(jìn)入沖刺階段。例如,根據(jù)步頻數(shù)據(jù)確定目標(biāo)用戶處于加速運(yùn)動(dòng)狀態(tài)時(shí),將所選擇的跑步模式切換到激勵(lì)模式,從而,根據(jù)激勵(lì)模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂。

本申請(qǐng)實(shí)施例不僅可以根據(jù)目標(biāo)用戶的步頻數(shù)據(jù)以及所選擇的跑步模式從目標(biāo)音樂列表中確定待播放的音樂,還可以實(shí)時(shí)根據(jù)用戶的步頻數(shù)據(jù)來對(duì)跑步模式進(jìn)行切換。例如,根據(jù)步頻數(shù)據(jù)確定用戶目前為加速運(yùn)動(dòng),則自動(dòng)切換到激勵(lì)模式,以帶動(dòng)用戶的運(yùn)動(dòng)節(jié)奏;根據(jù)步頻數(shù)據(jù)確定用戶目前為近似勻速運(yùn)動(dòng),則可以切換到匹配模式,以幫助用戶穩(wěn)固目前的運(yùn)動(dòng)節(jié)奏。

可選的,基于運(yùn)動(dòng)具有一定程度的社交性,本申請(qǐng)實(shí)施例還可以在用戶運(yùn)動(dòng)時(shí)提供步頻相似的用戶的排名榜,即步頻相似用戶列表。根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶的當(dāng)前步頻值;獲取預(yù)設(shè)范圍內(nèi)步頻值與所述當(dāng)前步頻值之間的絕對(duì)步頻差值小于預(yù)設(shè)閾值的用戶集合;根據(jù)所述用戶集合中每個(gè)用戶的步頻值與所述當(dāng)前步頻值之間的絕對(duì)步頻差值確定所述用戶集合中各用戶的排名,獲得所述用戶集合對(duì)應(yīng)的步頻相似用戶列表;所述絕對(duì)步頻差值越大,所述用戶的排名越靠后。步頻相似用戶列表中可以顯示與用戶步頻相似(即預(yù)設(shè)范圍內(nèi)步頻值與所述當(dāng)前步頻值之間的絕對(duì)步頻差值小于預(yù)設(shè)閾值)的用戶的用戶名、運(yùn)動(dòng)時(shí)長(zhǎng)及運(yùn)動(dòng)步數(shù)等信息,可選的,還可以通過“關(guān)注”按鈕來關(guān)注步頻相似的用戶,達(dá)到社交的目的。

可選的,本申請(qǐng)實(shí)施例還可以將步頻相似用戶列表中與用戶的步頻值保持相似時(shí)間較長(zhǎng)的用戶的排名調(diào)整到前面,可以使得用戶想搭訕預(yù)設(shè)范圍內(nèi)步頻相似的用戶時(shí),只需盡可能長(zhǎng)的與其保持步頻相似,從而可以在對(duì)方的步頻相似用戶列表中排名靠前,提供搭訕機(jī)會(huì),提高了音樂推薦方法的社交性。具體的,該步頻相似用戶列表的調(diào)整過程包括:根據(jù)所述步頻相似用戶列表中每個(gè)用戶的步頻值與所述目標(biāo)用戶的當(dāng)前步頻值之間的絕對(duì)步頻差值連續(xù)小于預(yù)設(shè)閾值的時(shí)長(zhǎng)調(diào)整所述步頻相似用戶列表中各用戶的排名,所述保持的時(shí)長(zhǎng)越長(zhǎng),所述用戶的排名越靠前。

基于上述內(nèi)容,下面將詳細(xì)介紹本發(fā)明實(shí)施例提供的音樂推薦方法的相關(guān)內(nèi)容。

請(qǐng)參閱圖1,圖1是本發(fā)明實(shí)施例提供的一種音樂推薦方法的流程示意圖,如圖1所示,該音樂推薦方法可以包括以下步驟:

S101、終端獲取目標(biāo)用戶的興趣模型對(duì)應(yīng)的目標(biāo)音樂列表;

本申請(qǐng)實(shí)施例中,該興趣模型可以根據(jù)用戶的歷史行為數(shù)據(jù)來確定,還可以根據(jù)用戶關(guān)注的好友等基于用戶的協(xié)同過濾算法來確定,還可以根據(jù)與目標(biāo)用戶的步頻相似的用戶的興趣模型來確定,本發(fā)明實(shí)施例不做限定。

其中,根據(jù)目標(biāo)用戶的興趣模型來確定目標(biāo)音樂列表的操作,可以由后臺(tái)服務(wù)器來執(zhí)行,終端只需從后臺(tái)服務(wù)器獲取該目標(biāo)音樂列表。由于確定目標(biāo)音樂列表涉及到大量計(jì)算,占用過多的CPU等,因此,終端可以將目標(biāo)用戶的歷史行為數(shù)據(jù)以及社交數(shù)據(jù)發(fā)送給后臺(tái)服務(wù)器,由后臺(tái)服務(wù)器基于相關(guān)算法,例如基于用戶的協(xié)同過濾算法來確定目標(biāo)音樂列表,從而可以降低終端的運(yùn)行負(fù)載,提高目標(biāo)音樂列表的生成效率。

S102、終端確定所述目標(biāo)用戶的步頻數(shù)據(jù)以及所選擇的跑步模式;所述跑步模式包括激勵(lì)模式、訓(xùn)練模式和匹配模式中的任一種;

本發(fā)明實(shí)施例中,跑步模式的選擇可以通過采用了該音樂推薦方法的終端上的模式選擇選項(xiàng)來確定,例如,圖2是本發(fā)明實(shí)施例提供的一種模式選擇界面的示意圖,如圖2所示,匹配模式,可以根據(jù)步速自動(dòng)選歌;激勵(lì)模式,更快節(jié)奏給你動(dòng)力;訓(xùn)練模式,不同米數(shù)有效訓(xùn)練,可以選擇800m或者1000m等,可選的,也可以設(shè)置其他的訓(xùn)練距離。

可選的,目標(biāo)用戶也可以在運(yùn)動(dòng)過程中手動(dòng)切換跑步模式。例如,圖3是本發(fā)明實(shí)施例提供的一種步頻數(shù)據(jù)顯示界面的示意圖,該步頻數(shù)據(jù)顯示界面可以包括當(dāng)前步頻值55步/秒、已運(yùn)動(dòng)里程數(shù)(已運(yùn)動(dòng)距離)10m以及已運(yùn)動(dòng)時(shí)長(zhǎng)00:03秒,以及提示用戶正在根據(jù)當(dāng)前的步頻(值)推薦音樂中。目標(biāo)用戶可以直觀的根據(jù)這些信息來切換跑步模式,如切換到激勵(lì)模式提高當(dāng)前步頻值,提高運(yùn)動(dòng)強(qiáng)度。

可選地,在運(yùn)動(dòng)結(jié)束后,步頻顯示界面還可以包括運(yùn)動(dòng)全程距離、平均步頻值以及運(yùn)動(dòng)總時(shí)長(zhǎng)。圖4是本發(fā)明實(shí)施例提供的另一種步頻數(shù)據(jù)顯示界面的示意圖,如圖4所示,運(yùn)動(dòng)結(jié)束后,步頻顯示界面還可以包括運(yùn)動(dòng)全程距離5km、平均步頻值105步/分鐘以及運(yùn)動(dòng)總時(shí)長(zhǎng)27分鐘,還可以顯示運(yùn)動(dòng)中播放的音樂列表,本發(fā)明實(shí)施例不做限定。

可選的,終端還可以根據(jù)目標(biāo)用戶的運(yùn)動(dòng)情況自動(dòng)切換跑步模式。根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂,包括:當(dāng)根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶處于加速運(yùn)動(dòng)狀態(tài)時(shí),將所選擇的跑步模式切換到激勵(lì)模式,根據(jù)所述激勵(lì)模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂;當(dāng)根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶處于勻速運(yùn)動(dòng)狀態(tài)時(shí),將所選擇的跑步模式切換到匹配模式,根據(jù)所述匹配模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂。該實(shí)施方式可以在目標(biāo)用戶運(yùn)動(dòng)過程中根據(jù)運(yùn)動(dòng)情況自動(dòng)切換跑步模式,避免用戶手動(dòng)操作的繁瑣性。

S103、根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂。

可選的,跑步模式為匹配模式時(shí),所述根據(jù)所述匹配模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂,包括:根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶的當(dāng)前步頻值;從所述當(dāng)前步頻值所在的BPM區(qū)間的前一個(gè)BPM區(qū)間對(duì)應(yīng)的子音樂列表以及后一個(gè)BPM區(qū)間對(duì)應(yīng)的子音樂列表中確定待播放的音樂;所述前一個(gè)BPM區(qū)間為BPM均小于所述當(dāng)前步頻值所在的BPM區(qū)間中的BPM且差值最小的BPM區(qū)間,所述后一個(gè)BPM區(qū)間為BPM均大于所述當(dāng)前步頻值所在的BPM區(qū)間中的BPM且差值最小的BPM區(qū)間。實(shí)施該實(shí)施方式,由于為目標(biāo)用戶推薦的音樂的BPM為大于當(dāng)前步頻值或者小于當(dāng)前步頻值,因此可以使得目標(biāo)用戶保持在當(dāng)前步頻值的前后一定范圍內(nèi),達(dá)到健身或者減肥的目的。

本發(fā)明實(shí)施例中,終端根據(jù)所述激勵(lì)模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂,可以包括:根據(jù)所述步頻數(shù)據(jù)確定預(yù)設(shè)時(shí)長(zhǎng)內(nèi)所述目標(biāo)用戶能夠達(dá)到的預(yù)測(cè)步頻值;從所述預(yù)測(cè)步頻值所在的BPM區(qū)間對(duì)應(yīng)的子音樂列表以及后一個(gè)BPM區(qū)間對(duì)應(yīng)的子音樂列表中確定待播放的音樂;所述后一個(gè)BPM區(qū)間為BPM均大于所述預(yù)測(cè)步頻值所在的BPM區(qū)間中的BPM且差值最小的BPM區(qū)間。實(shí)施該實(shí)施方式,由于為目標(biāo)用戶推薦的音樂為大于當(dāng)前步頻值所在的BPM區(qū)間的音樂或者當(dāng)前步頻值所在BPM區(qū)間的音樂,因此,使得目標(biāo)用戶可以逐漸大于當(dāng)前步頻值,激勵(lì)用戶跟著音樂的節(jié)奏加速,達(dá)到健身或者減肥的目的。

可選的,跑步模式為訓(xùn)練模式,終端根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂,包括:根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶的當(dāng)前步頻值;根據(jù)所述訓(xùn)練模式對(duì)應(yīng)的訓(xùn)練距離以及所述當(dāng)前步頻值確定所述目標(biāo)用戶進(jìn)入沖刺階段之前待播放的音樂;當(dāng)確定的所述目標(biāo)用戶進(jìn)入沖刺階段之前待播放的音樂播放完畢時(shí),切換到激勵(lì)模式,根據(jù)所述激勵(lì)模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂。實(shí)施該實(shí)施方式,在目標(biāo)用戶進(jìn)入沖刺階段之前確定的待播放音樂是根據(jù)當(dāng)前步頻值和訓(xùn)練距離確定的,因此,沖刺階段之前的音樂播放時(shí)長(zhǎng)可以與沖刺階段之前的時(shí)長(zhǎng)相匹配,當(dāng)進(jìn)入沖刺階段時(shí),正好沖刺階段之前的音樂播放完畢,或者即將播放完畢,待沖刺階段之前的音樂播放完畢,即可播放激勵(lì)模式下確定的待播放音樂,從而可以使得用戶在快節(jié)奏音樂的激勵(lì)下完成沖刺。

可見,本發(fā)明實(shí)施例可以獲取目標(biāo)用戶的興趣模型對(duì)應(yīng)的目標(biāo)音樂列表;確定所述目標(biāo)用戶的步頻數(shù)據(jù)以及所選擇的跑步模式;所述跑步模式包括激勵(lì)模式、訓(xùn)練模式和匹配模式中的任一種;根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂。由于結(jié)合目標(biāo)用戶的步頻數(shù)據(jù)和所選擇的跑步模式來確定待播放音樂,因此可以提高音樂推薦的準(zhǔn)確率。

請(qǐng)參閱圖5,圖5是本發(fā)明實(shí)施例提供的另一種音樂推薦方法的流程示意圖,與圖1所示的音樂推薦方法相比,圖5所示的音樂推薦方法可以實(shí)時(shí)更新預(yù)設(shè)范圍內(nèi)與目標(biāo)用戶的步頻相似的用戶信息,具體的,除了上述步驟S101至S103外,圖5所示的音樂推薦方法還可以包括以下步驟:

S104、終端根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶的當(dāng)前步頻值;

S105、終端獲取預(yù)設(shè)范圍內(nèi)步頻值與所述當(dāng)前步頻值之間的絕對(duì)步頻差值小于預(yù)設(shè)閾值的用戶集合;

S106、終端根據(jù)所述用戶集合中每個(gè)用戶的步頻值與所述當(dāng)前步頻值之間的絕對(duì)步頻差值確定所述用戶集合中各用戶的排名,獲得所述用戶集合對(duì)應(yīng)的步頻相似用戶列表。

其中,絕對(duì)步頻差值越大,相應(yīng)的用戶的排名越靠后。

本發(fā)明實(shí)施例中,步驟S101至S106的執(zhí)行順序不做限定,即步驟S104計(jì)算當(dāng)前步頻值可以與步驟S103同時(shí)執(zhí)行,也可以在確定步頻相似用戶列表時(shí)根據(jù)最近周期的步頻數(shù)據(jù)來確定當(dāng)前步頻值。

本發(fā)明實(shí)施例中,確定用戶集合時(shí)的預(yù)設(shè)閾值可以根據(jù)用戶集合的規(guī)模來確定,該預(yù)設(shè)閾值越大,用戶集合中可包括的用戶數(shù)就越多。

圖6是本發(fā)明實(shí)施例提供的一種步頻相似用戶列表的示意圖,如圖6所示,該步頻相似用戶列表中可以顯示用戶集合中每個(gè)用戶的當(dāng)前步頻值,用戶賬號(hào),還可以通過“關(guān)注”選項(xiàng)關(guān)注這些用戶,例如,Mike 105步/分鐘、Jak 103步/分鐘、Lucy 101步/分鐘、Lily 98步/分鐘。相應(yīng)的,還可以彈出“已關(guān)注該用戶”的提示框,如圖7所示,圖7是本發(fā)明實(shí)施例提供的一種已關(guān)注用戶的提示框的示意圖,關(guān)注某個(gè)用戶時(shí)可以彈出“已關(guān)注該用戶”提示框。該步頻相似用戶列表可以在目標(biāo)用戶運(yùn)動(dòng)過程中顯示,也可以在運(yùn)動(dòng)后顯示,本發(fā)明實(shí)施例不做限定。

可見,圖5所示的音樂推薦方法提供了音樂社交邏輯,在音樂推薦方法中引入跑步社交的邏輯,可以使得步頻相似的用戶一起跑步,一方面推廣了該實(shí)施方式的音樂推薦方法,另一方面可以激勵(lì)用戶堅(jiān)持運(yùn)動(dòng)。

請(qǐng)參閱圖8,圖8是本發(fā)明實(shí)施例提供的又一種音樂推薦方法的流程示意圖,其中,與圖5所示的音樂推薦方法相比,圖8所示的音樂推薦方法還可以根據(jù)其他用戶與目標(biāo)用戶保持步頻相似的連續(xù)時(shí)長(zhǎng)來調(diào)整步頻相似用戶列表中各用戶的排名,具體的,圖8所示的音樂推薦方法除了步驟S101至S106,還可以包括以下步驟:

S107、終端根據(jù)所述步頻相似用戶列表中每個(gè)用戶的步頻值與所述目標(biāo)用戶的當(dāng)前步頻值之間的絕對(duì)步頻差值連續(xù)小于預(yù)設(shè)閾值的時(shí)長(zhǎng)調(diào)整所述步頻相似用戶列表中各用戶的排名。

其中,保持的時(shí)長(zhǎng)越大,用戶的排名越靠前。

可見,圖8所示的音樂推薦方法也可以增加社交邏輯。

圖9是本發(fā)明實(shí)施例提供的另一種步頻相似用戶列表的示意圖,如圖9所示,在步頻相似用戶列表中顯示用戶集合中與目標(biāo)用戶保持步頻相似的時(shí)長(zhǎng),保持的時(shí)長(zhǎng)越大的排名越靠前,如圖9所示,“我的步頻與TA相似長(zhǎng)達(dá)”列表中顯示了我的步頻與Mike相似長(zhǎng)達(dá)10分鐘,與Jak相似長(zhǎng)達(dá)6分鐘,與Lucy相似長(zhǎng)達(dá)3分鐘,與Lily相似長(zhǎng)達(dá)2分鐘;并且還可以通過“關(guān)注”按鈕關(guān)注相應(yīng)的用戶,可見,該實(shí)施方式給用戶或者目標(biāo)用戶提供搭訕的機(jī)會(huì)。例如,目標(biāo)用戶想認(rèn)識(shí)旁邊步頻相似的其他用戶時(shí),與其保持盡可能久的步頻相似即可在對(duì)方的步頻相似用戶列表中顯示目標(biāo)用戶的用戶賬號(hào)等信息。

請(qǐng)參閱圖10,圖10是本發(fā)明實(shí)施例提供的一種音樂推薦裝置的結(jié)構(gòu)示意圖,如圖10所示,該音樂推薦裝置可以包括以下單元:

獲取單元210,用于獲取目標(biāo)用戶的興趣模型對(duì)應(yīng)的目標(biāo)音樂列表;

確定單元220,用于確定所述目標(biāo)用戶的步頻數(shù)據(jù)以及所選擇的跑步模式;所述跑步模式包括激勵(lì)模式、訓(xùn)練模式和匹配模式中的任一種;

所述確定單元220,還用于根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂。

獲取單元210可以根據(jù)目標(biāo)用戶的興趣模型來確定目標(biāo)音樂列表的操作,也可以由后臺(tái)服務(wù)器來執(zhí)行,獲取單元210只需從后臺(tái)服務(wù)器獲取該目標(biāo)音樂列表。由于確定目標(biāo)音樂列表涉及到大量計(jì)算,占用過多的CPU等,因此,終端可以將目標(biāo)用戶的歷史行為數(shù)據(jù)以及社交數(shù)據(jù)發(fā)送給后臺(tái)服務(wù)器,由后臺(tái)服務(wù)器基于相關(guān)算法,例如基于用戶的協(xié)同過濾算法來確定目標(biāo)音樂列表,從而可以降低音樂推薦裝置的運(yùn)行負(fù)載,提高目標(biāo)音樂列表的生成效率。

其中,興趣模型包括所述步頻相似列表中各用戶的興趣模型,或者目標(biāo)用戶關(guān)注的好友的興趣模型等,如前所述,該實(shí)施方式不再詳述。

可選的,確定單元220根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂,具體為:當(dāng)根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶處于加速運(yùn)動(dòng)狀態(tài)時(shí),將所選擇的跑步模式切換到激勵(lì)模式,根據(jù)所述激勵(lì)模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂;當(dāng)根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶處于勻速運(yùn)動(dòng)狀態(tài)時(shí),將所選擇的跑步模式切換到匹配模式,根據(jù)所述匹配模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂。該實(shí)施方式中,確定單元220可以根據(jù)目標(biāo)用戶的運(yùn)動(dòng)狀態(tài)來自動(dòng)切換運(yùn)動(dòng)模式,從而避免用戶手動(dòng)切換運(yùn)動(dòng)模式,降低了操作的繁瑣性。

可選的,跑步模式為訓(xùn)練模式時(shí),確定單元220可以根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂,具體為:根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶的當(dāng)前步頻值;根據(jù)所述訓(xùn)練模式對(duì)應(yīng)的訓(xùn)練距離以及所述當(dāng)前步頻值確定所述目標(biāo)用戶進(jìn)入沖刺階段之前待播放的音樂;當(dāng)確定的所述目標(biāo)用戶進(jìn)入沖刺階段之前待播放的音樂播放完畢時(shí),切換到激勵(lì)模式,根據(jù)所述激勵(lì)模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂。實(shí)施該實(shí)施方式,確定單元220可以在訓(xùn)練模式為目標(biāo)用戶是否進(jìn)入沖刺階段來選擇對(duì)應(yīng)得音樂,從而幫助目標(biāo)用戶完成訓(xùn)練并在沖刺階段激勵(lì)目標(biāo)用戶進(jìn)行沖刺。

可選的,確定單元220,還用于根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶的當(dāng)前步頻值;相應(yīng)的,獲取單元210,還用于獲取預(yù)設(shè)范圍內(nèi)步頻值與所述當(dāng)前步頻值之間的絕對(duì)步頻差值小于預(yù)設(shè)閾值的用戶集合;所述確定單元220,還用于根據(jù)所述用戶集合中每個(gè)用戶的步頻值與所述當(dāng)前步頻值之間的絕對(duì)步頻差值確定所述用戶集合中各用戶的排名,獲得所述用戶集合對(duì)應(yīng)的步頻相似用戶列表;所述絕對(duì)步頻差值越大,所述用戶的排名越靠后。實(shí)施該實(shí)施方式,可以顯示與目標(biāo)用戶的步頻相似的用戶的信息,從而增加音樂推薦裝置的社交性,擴(kuò)大用戶群體。

可選的,圖10所示的音樂推薦裝置還可以包括調(diào)整單元230,用于根據(jù)所述步頻相似用戶列表中每個(gè)用戶的步頻值與所述目標(biāo)用戶的當(dāng)前步頻值之間的絕對(duì)步頻差值連續(xù)小于預(yù)設(shè)閾值的時(shí)長(zhǎng)調(diào)整所述步頻相似用戶列表中各用戶的排名,所述絕對(duì)步頻差值連續(xù)小于預(yù)設(shè)閾值的時(shí)長(zhǎng)越大,所述用戶的排名越靠前。該實(shí)施方式還可以在步頻相似用戶列表中顯示用戶集合中與目標(biāo)用戶保持步頻相似的時(shí)長(zhǎng),并且保持的時(shí)長(zhǎng)越大的排名越靠前,從而給用戶或者目標(biāo)用戶提供搭訕的機(jī)會(huì)。例如,目標(biāo)用戶想認(rèn)識(shí)旁邊步頻相似的其他用戶時(shí),與其保持盡可能久的步頻相似即可在對(duì)方的步頻相似用戶列表中顯示目標(biāo)用戶的用戶賬號(hào)等信息。

其中,確定單元220,還用于確定所述目標(biāo)音樂列表中各音樂的每分鐘節(jié)拍數(shù)BPM;相應(yīng)的,圖10所示的音樂推薦裝置還可以包括以下單元:

排序單元240,用于將所述目標(biāo)音樂列表按照所述各音樂的BPM從小到大的順序進(jìn)行排序;

劃分單元250,用于以每預(yù)設(shè)個(gè)數(shù)個(gè)不同的BPM為區(qū)間將排序后的所述目標(biāo)音樂列表劃分為多個(gè)子音樂列表,每個(gè)子音樂列表對(duì)應(yīng)的BPM區(qū)間不同。

其中,確定單元220還可以根據(jù)所述激勵(lì)模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂,具體為:根據(jù)所述步頻數(shù)據(jù)確定預(yù)設(shè)時(shí)長(zhǎng)內(nèi)所述目標(biāo)用戶能夠達(dá)到的預(yù)測(cè)步頻值;從所述預(yù)測(cè)步頻值所在的BPM區(qū)間對(duì)應(yīng)的子音樂列表以及后一個(gè)BPM區(qū)間對(duì)應(yīng)的子音樂列表中確定待播放的音樂;所述后一個(gè)BPM區(qū)間為BPM均大于所述預(yù)測(cè)步頻值所在的BPM區(qū)間中的BPM且差值最小的BPM區(qū)間。實(shí)施該實(shí)施方式,由于為目標(biāo)用戶推薦的音樂為大于當(dāng)前步頻值所在的BPM區(qū)間的音樂或者當(dāng)前步頻值所在BPM區(qū)間的音樂,因此,使得目標(biāo)用戶可以逐漸大于當(dāng)前步頻值,激勵(lì)用戶跟著音樂的節(jié)奏加速,達(dá)到健身或者減肥的目的。

其中,確定單元220根據(jù)所述匹配模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂,具體為:根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶的當(dāng)前步頻值;從所述當(dāng)前步頻值所在的BPM區(qū)間的前一個(gè)BPM區(qū)間對(duì)應(yīng)的子音樂列表以及后一個(gè)BPM區(qū)間對(duì)應(yīng)的子音樂列表中確定待播放的音樂;所述前一個(gè)BPM區(qū)間為BPM均小于所述當(dāng)前步頻值所在的BPM區(qū)間中的BPM且差值最小的BPM區(qū)間,所述后一個(gè)BPM區(qū)間為BPM均大于所述當(dāng)前步頻值所在的BPM區(qū)間中的BPM且差值最小的BPM區(qū)間。實(shí)施該實(shí)施方式,在目標(biāo)用戶進(jìn)入沖刺階段之前確定的待播放音樂是根據(jù)當(dāng)前步頻值和訓(xùn)練距離確定的,因此,沖刺階段之前的音樂播放時(shí)長(zhǎng)可以與沖刺階段之前的時(shí)長(zhǎng)相匹配,當(dāng)進(jìn)入沖刺階段時(shí),正好沖刺階段之前的音樂播放完畢,或者即將播放完畢,待沖刺階段之前的音樂播放完畢,即可播放激勵(lì)模式下確定的待播放音樂,從而可以使得用戶在快節(jié)奏音樂的激勵(lì)下完成沖刺。

可見,本發(fā)明實(shí)施例中,獲取單元210可以獲取目標(biāo)用戶的興趣模型對(duì)應(yīng)的目標(biāo)音樂列表;確定單元220可以確定所述目標(biāo)用戶的步頻數(shù)據(jù)以及所選擇的跑步模式;所述跑步模式包括激勵(lì)模式、訓(xùn)練模式和匹配模式中的任一種;進(jìn)而,確定單元220可以根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂。由于結(jié)合目標(biāo)用戶的步頻數(shù)據(jù)和所選擇的跑步模式來確定待播放音樂,因此可以提高音樂推薦的準(zhǔn)確率。

可選的,請(qǐng)參閱圖11,圖11是本發(fā)明實(shí)施例提供的一種音樂推薦系統(tǒng)的結(jié)構(gòu)示意圖,如圖11所示,該音樂推薦系統(tǒng)可以包括前段業(yè)務(wù)模塊310、后臺(tái)業(yè)務(wù)模塊320、歌曲BPM計(jì)算模塊330以及推薦模塊340,其中:

前端業(yè)務(wù)模塊310用于直接處理用戶交互相關(guān)的數(shù)據(jù),以及與后臺(tái)業(yè)務(wù)模塊進(jìn)行通信,獲取用戶的步頻數(shù)據(jù),并進(jìn)行處理后(例如,用戶的當(dāng)前步頻值、已運(yùn)動(dòng)時(shí)長(zhǎng)及距離等)顯示給用戶。其中,用戶的步頻數(shù)據(jù)可以通過加速計(jì)來獲取各個(gè)運(yùn)動(dòng)方向上的加速度,從而計(jì)算出用戶的當(dāng)前步頻值或者預(yù)測(cè)用戶在未來一段預(yù)設(shè)時(shí)長(zhǎng)內(nèi)的預(yù)測(cè)步頻值。其中,預(yù)測(cè)步頻值是根據(jù)多個(gè)時(shí)刻用戶的步頻值建立用戶的步頻值變化情況來進(jìn)行預(yù)測(cè)的。另一方面,前端業(yè)務(wù)模塊還可以與后臺(tái)業(yè)務(wù)模塊交互,通過后臺(tái)業(yè)務(wù)模塊提供的API接口獲取確定的待播放音樂的信息,以播放該音樂。

可選的,前端業(yè)務(wù)模塊310還可以將目標(biāo)用戶的用戶賬號(hào)、密碼等信息發(fā)給后臺(tái)業(yè)務(wù)模塊320完成校驗(yàn)、鑒權(quán)等處理。

后臺(tái)業(yè)務(wù)模塊320一方面用于基于用戶的協(xié)同過濾算法來確定目標(biāo)音樂列表,還可以根據(jù)步頻相似、品味相似等一起構(gòu)建推薦給用戶的目標(biāo)音樂列表;另一方面還用于根據(jù)當(dāng)前所處的跑步模式以及用戶的步頻數(shù)據(jù)來為用戶確定待播放的音樂。

后臺(tái)業(yè)務(wù)模塊320還可以用于提供一個(gè)完整的鑒權(quán)體系以及對(duì)可能存在的歌曲盜鏈的保護(hù)機(jī)制。由于用戶可以不登陸即可使用軟件的,因此,可以采用一個(gè)令牌token機(jī)制來對(duì)用戶的有效性進(jìn)行校驗(yàn)和認(rèn)證。一個(gè)完整的令牌token獲取和交互的機(jī)制包括:用戶首先通過前端業(yè)務(wù)模塊310向后臺(tái)業(yè)務(wù)模塊320請(qǐng)求令牌,后臺(tái)業(yè)務(wù)模塊320返回token,使得用戶向后臺(tái)業(yè)務(wù)模塊320請(qǐng)求服務(wù)時(shí)可以攜帶該token實(shí)現(xiàn)鑒權(quán)機(jī)制。

對(duì)于歌曲盜鏈的問題,通過后臺(tái)業(yè)務(wù)模塊320實(shí)時(shí)生成的歌曲鏈接,即控制歌曲鏈接的有效性以及有效期,從而防止過多的暴露后臺(tái)對(duì)歌曲的實(shí)際存儲(chǔ)地址以及永久生效的路徑所帶來的盜鏈的問題。

另外,后臺(tái)業(yè)務(wù)模塊320也負(fù)責(zé)社交化功能的記錄和實(shí)現(xiàn),通過Redis臨時(shí)記錄和用戶步頻相似的用戶信息,并在用戶運(yùn)動(dòng)中或者運(yùn)動(dòng)結(jié)束后輸出給前端業(yè)務(wù)模塊進(jìn)行顯示。其中,后臺(tái)業(yè)務(wù)模塊320可以執(zhí)行獲取單元210、確定單元220以及調(diào)整單元230的相關(guān)功能,本發(fā)明實(shí)施例不再詳述。

歌曲BPM計(jì)算模塊330可以執(zhí)行確定單元、排序單元以及劃分單元的相關(guān)功能,即確定目標(biāo)音樂列表中各個(gè)音樂的BPM,并將所述目標(biāo)音樂列表按照所述各音樂的BPM從小到大的順序進(jìn)行排序;以每預(yù)設(shè)個(gè)數(shù)個(gè)不同的BPM為區(qū)間將排序后的所述目標(biāo)音樂列表劃分為多個(gè)子音樂列表,每個(gè)子音樂列表對(duì)應(yīng)的BPM區(qū)間不同。例如,以5個(gè)BPM為一個(gè)BPM區(qū)間,音樂的BPM為這5個(gè)BPM的歸為一個(gè)子音樂列表。

并且,歌曲BPM計(jì)算模塊330可以在檢測(cè)到有音樂加入到目標(biāo)音樂列表時(shí),計(jì)算該新添加的音樂的BPM,并將該音樂歸到包含該BPM的BPM區(qū)間的子音樂列表中??蛇x的,歌曲BPM計(jì)算模塊330也可以采用定時(shí)機(jī)制來定時(shí)檢測(cè)是否有新添加的音樂,以及時(shí)更新目標(biāo)音樂列表劃分的各子音樂列表。

推薦模塊340,用于基于用戶的興趣模型確定目標(biāo)音樂列表。具體的可以參考上述關(guān)于目標(biāo)音樂列表創(chuàng)建的相關(guān)算法或?qū)嵤┓绞?。即后臺(tái)業(yè)務(wù)模塊320可以將“根據(jù)步頻相似、品味相似等一起構(gòu)建推薦給用戶的目標(biāo)音樂列表”的操作由推薦模塊340來執(zhí)行。推薦模塊340可以每隔預(yù)設(shè)時(shí)長(zhǎng)更新用戶的興趣模型,進(jìn)而,更新目標(biāo)音樂列表。

請(qǐng)參閱圖12,圖12是本發(fā)明實(shí)施例提供的一種終端的結(jié)構(gòu)示意圖,如圖12所示,該終端可以包括:處理器401、通信接口402、存儲(chǔ)器403和通信總線404,其中,通信總線404用于實(shí)現(xiàn)這些組件之間的通信連接,通信接口402用于實(shí)現(xiàn)各機(jī)器之間的通信連接。存儲(chǔ)器403可以是高速RAM存儲(chǔ)器,也可以是非不穩(wěn)定的存儲(chǔ)器(non-volatile memory),例如至少一個(gè)磁盤存儲(chǔ)器。存儲(chǔ)器403可選的還可以是至少一個(gè)位于遠(yuǎn)離前述處理器401的存儲(chǔ)裝置。其中,處理器401可以結(jié)合圖10所示的音樂推薦裝置或者圖11所示的音樂推薦系統(tǒng),存儲(chǔ)器403中存儲(chǔ)一組程序代碼,且處理器401調(diào)用存儲(chǔ)器403中存儲(chǔ)的程序代碼,用于執(zhí)行以下操作:

獲取目標(biāo)用戶的興趣模型對(duì)應(yīng)的目標(biāo)音樂列表;

確定所述目標(biāo)用戶的步頻數(shù)據(jù)以及所選擇的跑步模式;所述跑步模式包括激勵(lì)模式、訓(xùn)練模式和匹配模式中的任一種;

根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂。

本發(fā)明實(shí)施例中,處理器401調(diào)用存儲(chǔ)器403中存儲(chǔ)的程序代碼,根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂,可以包括以下操作:

當(dāng)根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶處于加速運(yùn)動(dòng)狀態(tài)時(shí),將所選擇的跑步模式切換到激勵(lì)模式,根據(jù)所述激勵(lì)模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂;

當(dāng)根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶處于勻速運(yùn)動(dòng)狀態(tài)時(shí),將所選擇的跑步模式切換到匹配模式,根據(jù)所述匹配模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂。

本發(fā)明實(shí)施例中,處理器401調(diào)用存儲(chǔ)器403中存儲(chǔ)的程序代碼,跑步模式為訓(xùn)練模式,根據(jù)所述跑步模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂,可以包括以下操作:

根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶的當(dāng)前步頻值;

根據(jù)所述訓(xùn)練模式對(duì)應(yīng)的訓(xùn)練距離以及所述當(dāng)前步頻值確定所述目標(biāo)用戶進(jìn)入沖刺階段之前待播放的音樂;

當(dāng)確定的所述目標(biāo)用戶進(jìn)入沖刺階段之前待播放的音樂播放完畢時(shí),切換到激勵(lì)模式,根據(jù)所述激勵(lì)模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定為所述目標(biāo)用戶待播放的音樂。

本發(fā)明實(shí)施例中,處理器401調(diào)用存儲(chǔ)器403中存儲(chǔ)的程序代碼,還可以執(zhí)行以下操作:

根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶的當(dāng)前步頻值;

獲取預(yù)設(shè)范圍內(nèi)步頻值與所述當(dāng)前步頻值之間的絕對(duì)步頻差值小于預(yù)設(shè)閾值的用戶集合;

根據(jù)所述用戶集合中每個(gè)用戶的步頻值與所述當(dāng)前步頻值之間的絕對(duì)步頻差值確定所述用戶集合中各用戶的排名,獲得所述用戶集合對(duì)應(yīng)的步頻相似用戶列表;所述絕對(duì)步頻差值越大,所述用戶的排名越靠后。

本發(fā)明實(shí)施例中,處理器401調(diào)用存儲(chǔ)器403中存儲(chǔ)的程序代碼,還可以執(zhí)行以下操作:

根據(jù)所述步頻相似用戶列表中每個(gè)用戶的步頻值與所述目標(biāo)用戶的當(dāng)前步頻值之間的絕對(duì)步頻差值連續(xù)小于預(yù)設(shè)閾值的時(shí)長(zhǎng)調(diào)整所述步頻相似用戶列表中各用戶的排名,所述保持的時(shí)長(zhǎng)越長(zhǎng),所述用戶的排名越靠前。

其中,興趣模型包括所述步頻相似列表中各用戶的興趣模型,或者目標(biāo)音樂列表中還包括步頻相似列表中用戶的喜好的目標(biāo)音樂列表。

本發(fā)明實(shí)施例中,處理器401調(diào)用存儲(chǔ)器403中存儲(chǔ)的程序代碼,還可以執(zhí)行以下操作:

確定所述目標(biāo)音樂列表中各音樂的每分鐘節(jié)拍數(shù)BPM;

將所述目標(biāo)音樂列表按照所述各音樂的BPM從小到大或從大到小的順序進(jìn)行排序;

以每預(yù)設(shè)個(gè)數(shù)個(gè)不同的BPM為區(qū)間將排序后的所述目標(biāo)音樂列表劃分為多個(gè)子音樂列表,每個(gè)子音樂列表對(duì)應(yīng)的BPM區(qū)間不同。

本發(fā)明實(shí)施例中,處理器401調(diào)用存儲(chǔ)器403中存儲(chǔ)的程序代碼,根據(jù)所述激勵(lì)模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂,可以執(zhí)行以下操作:

根據(jù)所述步頻數(shù)據(jù)確定預(yù)設(shè)時(shí)長(zhǎng)內(nèi)所述目標(biāo)用戶能夠達(dá)到的預(yù)測(cè)步頻值;

從所述預(yù)測(cè)步頻值所在的BPM區(qū)間對(duì)應(yīng)的子音樂列表以及后一個(gè)BPM區(qū)間對(duì)應(yīng)的子音樂列表中確定待播放的音樂;所述后一個(gè)BPM區(qū)間為BPM均大于所述預(yù)測(cè)步頻值所在的BPM區(qū)間中的BPM且差值最小的BPM區(qū)間。

本發(fā)明實(shí)施例中,處理器401調(diào)用存儲(chǔ)器403中存儲(chǔ)的程序代碼,根據(jù)所述匹配模式和所述步頻數(shù)據(jù)從所述目標(biāo)音樂列表中確定待播放的音樂,可以執(zhí)行以下操作:

根據(jù)所述步頻數(shù)據(jù)確定所述目標(biāo)用戶的當(dāng)前步頻值;

從所述當(dāng)前步頻值所在的BPM區(qū)間的前一個(gè)BPM區(qū)間對(duì)應(yīng)的子音樂列表以及后一個(gè)BPM區(qū)間對(duì)應(yīng)的子音樂列表中確定待播放的音樂;所述前一個(gè)BPM區(qū)間為BPM均小于所述當(dāng)前步頻值所在的BPM區(qū)間中的BPM且差值最小的BPM區(qū)間,所述后一個(gè)BPM區(qū)間為BPM均大于所述當(dāng)前步頻值所在的BPM區(qū)間中的BPM且差值最小的BPM區(qū)間。

以上對(duì)本發(fā)明實(shí)施例所提供的音樂推薦方法及裝置進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1