,
(黔南民族師范學(xué)院,貴州 都勻 558000)
由于信息不斷增加與更新,使網(wǎng)絡(luò)結(jié)構(gòu)中信息量以指數(shù)規(guī)律迅速擴展,因此形成了信息爆炸顯式社會網(wǎng)絡(luò)結(jié)構(gòu),對于音樂愛好者來說,網(wǎng)絡(luò)上信息過載成為了嚴(yán)重問題,愛好者在網(wǎng)絡(luò)復(fù)雜結(jié)構(gòu)中迷失航向,無法明確所要尋找信息位于信息空間中的具體位置,也無法返回到某個節(jié)點,再加上網(wǎng)絡(luò)信息的復(fù)雜性,限制愛好者的認(rèn)知能力,造成用戶無法獲取滿意音樂信息[1]。為了解決這些問題,需將網(wǎng)絡(luò)從被動瀏覽轉(zhuǎn)化為主動瀏覽,實現(xiàn)網(wǎng)絡(luò)結(jié)構(gòu)對用戶提供主動的信息服務(wù),為此,構(gòu)建了基于協(xié)同過濾算法的自動化隱式評分音樂雙重推薦系統(tǒng)。采用協(xié)同過濾算法的自動化隱式評分結(jié)構(gòu)能夠反映出不同用戶之間對音樂興趣以及內(nèi)容之間關(guān)聯(lián)性,為具有共同興趣用戶推薦相似內(nèi)容的可能性大大增加。對于同一用戶對音樂喜歡的具體內(nèi)容也是具有相似特征關(guān)聯(lián)的,其音樂種類也具有風(fēng)格和品質(zhì)。基于用戶自身、用戶與用戶之間的聯(lián)系,可通過內(nèi)容推薦方式,引導(dǎo)用戶對音樂內(nèi)容訪問行為,進而適應(yīng)網(wǎng)絡(luò)能力,實現(xiàn)網(wǎng)絡(luò)帶寬利用效率的優(yōu)化,根據(jù)用戶興趣愛好,推薦滿足用戶需求的信息[2]。
在普適環(huán)境下,人們能夠任意使用設(shè)備來獲取相關(guān)信息,基于普適環(huán)境背景下構(gòu)建異構(gòu)普適環(huán)境推薦框架,為自動化隱式評分音樂雙重推薦系統(tǒng)研究奠定基礎(chǔ)[3]。異構(gòu)普適環(huán)境推薦框架設(shè)計如圖1所示。
圖1 異構(gòu)普適環(huán)境推薦框架
普適環(huán)境結(jié)合了網(wǎng)絡(luò)技術(shù)與移動技術(shù),設(shè)計了面向客戶的自適應(yīng)推薦結(jié)構(gòu)。普適環(huán)境是由網(wǎng)絡(luò)設(shè)備與服務(wù)共同組成的,其中網(wǎng)絡(luò)設(shè)備包括計算機、手機和各種網(wǎng)絡(luò)連接家電等,網(wǎng)絡(luò)服務(wù)包括計算、管理與控制等。在該環(huán)境下,網(wǎng)絡(luò)可收集來自用戶、管理員的查詢、配置與管理信息,將這些信息傳遞到各個服務(wù)器端口,再次通過網(wǎng)絡(luò)應(yīng)用到綜合平臺,為推薦系統(tǒng)設(shè)計提供基礎(chǔ)[4]。
基于異構(gòu)普適環(huán)境推薦結(jié)構(gòu)的自動化隱式評分音樂雙重推薦系統(tǒng)設(shè)計如圖2所示。
圖2 自動化隱式評分音樂雙重推薦系統(tǒng)
由圖2可知:雙重推薦系統(tǒng)是由應(yīng)用、異構(gòu)通信和網(wǎng)絡(luò)模塊構(gòu)成的,其中核心部分主要位于異構(gòu)通信模塊之中。采用協(xié)同過濾算法,從一個節(jié)點中提取信息,隨機發(fā)送給另外一個節(jié)點,重復(fù)該動作,使其他節(jié)點接收到信息[5]。基于協(xié)同過濾算法的信息傳送方式完全模擬人們通過網(wǎng)絡(luò)的日常交流方式,保證用戶信息的高效率傳輸。其中藍(lán)牙模塊是連接外圍設(shè)備的統(tǒng)一橋梁,采用無線連接方式可實現(xiàn)用戶自然享受信息推薦服務(wù);數(shù)據(jù)采集模塊是收集可推薦給用戶的主要信息,也可根據(jù)用戶偏好作出個性化推薦服務(wù)。對于不同推薦系統(tǒng),需要收集的內(nèi)容也是不同的,音樂推薦需要收集用戶音樂播放器中的數(shù)據(jù),而歌手推薦需要收集音樂播放器中的歌手信息[6]。根據(jù)推薦內(nèi)容分別將信息存儲到服務(wù)器上,用戶可將自己感興趣的數(shù)據(jù)保存到播放器中,通過設(shè)備之間的交互實現(xiàn)數(shù)據(jù)共享;推薦模塊是通過數(shù)據(jù)采集到的用戶偏好信息來推薦內(nèi)容,采用協(xié)同過濾算法獲取合適的推薦列表給用戶。
如圖3所示,音樂雙重推薦系統(tǒng)硬件結(jié)構(gòu)是由4個元件組成的。
圖3 音樂雙重推薦系統(tǒng)硬件結(jié)構(gòu)
根據(jù)圖3分別對音樂播放器和隱式評分提取器進行設(shè)計。
2.1.1 音樂播放器
在異構(gòu)普適環(huán)境下,用戶界面友好性展示的更加明顯,根據(jù)用戶接入的電子設(shè)備以及接入方式,對用戶端界面做出適當(dāng)調(diào)整[7]。具體設(shè)計如圖4所示。
圖4 音樂播放器
由圖4可知:采用W900710型號的核心板與電源模塊、語音識別模塊、LCD、鍵盤和音頻相連。利用麥克風(fēng)向播放器中輸入語音數(shù)據(jù),通過語音識別模塊對數(shù)據(jù)進行識別;利用麥克風(fēng)和耳機向音頻編解碼輸入語音數(shù)據(jù),通過音頻編解碼對數(shù)據(jù)進行處理[8]。最終將所有數(shù)據(jù)集中在W900710型號的核心板上,通過LCD顯示在屏幕上。
2.1.2 隱式評分提取器
根據(jù)音樂數(shù)據(jù)采集器采集到的用戶信息,設(shè)計一種隱式評分提取器,專門對用戶隱式信息進行評分。在普適環(huán)境中分別提取歌手與歌曲這兩種項目評分,并在移動環(huán)境中充分考慮資源分布情況,通過推薦引擎,將用戶瀏覽過的多種瀏覽器和自定義播放器信息進行集中處理,采用協(xié)同過濾算法使網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中的每個節(jié)點都部署一個智能代理節(jié)點。結(jié)合普適環(huán)境,將經(jīng)過音樂數(shù)據(jù)采集器上的信息分散在各個服務(wù)器之中[9]。當(dāng)用戶進入到普適推薦環(huán)境之中,服務(wù)器會根據(jù)用戶以往搜索記錄,將可感興趣的歌曲或歌手推薦到用戶設(shè)備上,將這些數(shù)據(jù)在客戶端與服務(wù)器中進行交互,采用協(xié)同過濾算法不會受到噪聲干擾影響得以共享[10]。隱式評分提取內(nèi)部電路圖如圖5所示。
圖5 隱式評分提取電路連接
由圖5可知:當(dāng)引腳為為高電平時,Q1三極管截止,電路不工作;當(dāng)引腳為高電平時,Q1三極管導(dǎo)通,電路工作,向外發(fā)射信號,經(jīng)過三極管將電流放大,發(fā)射載波所占的比例增加,保證采集器能夠容納更多信息,使評分結(jié)果更準(zhǔn)確。
音樂雙重推薦系統(tǒng)是由音樂數(shù)據(jù)采集器、音樂播放器和隱式評分提取器和推薦引擎組成的,其中音樂數(shù)據(jù)采集器可為系統(tǒng)提供海量數(shù)據(jù);音樂播放器可為系統(tǒng)提供清晰推薦結(jié)果;將隱式評分提取器與推薦引擎結(jié)合起來,可為推薦系統(tǒng)提供準(zhǔn)確評分結(jié)果。采用協(xié)同過濾算法,盡可能利用集中式推薦效果,以便達(dá)到異構(gòu)環(huán)境下的推薦服務(wù)一致性[11]。
針對硬件中的隱式評分提取器,對推薦系統(tǒng)軟件功能進行設(shè)計。在構(gòu)建協(xié)同過濾自動化隱式評分音樂雙重推薦系統(tǒng)時,需先統(tǒng)計用戶聽歌歷史記錄,從該記錄中提取用戶的音樂偏好信息,根據(jù)提取的信息來決定該用戶對歌曲以及歌手喜愛情況。采用雙重提取策略,首先對所有歌曲進行隱式評分,根據(jù)評分結(jié)果提取出得分相對較高的歌曲;然后分析這些歌曲的類型,定位到某種唱這種風(fēng)格歌曲的歌手,再次將這些歌曲與歌手發(fā)行的歌曲進行整合處理;最后將整合結(jié)果做成推薦列表,推薦給用戶。在此過程中,利用協(xié)同過濾算法,為用戶提供合理推薦建議。
自動化隱式評分是指在用戶尋找感興趣信息過程中,系統(tǒng)追隨用戶行為來分析用戶興趣,該過程只需通過用戶瀏覽某個網(wǎng)站時,就可對某個閱讀時間較長的頁面保存下來,以此說明該網(wǎng)頁涉及用戶感興趣內(nèi)容。區(qū)別于傳統(tǒng)系統(tǒng),在該推薦系統(tǒng)中采用雙重推薦機制,綜合考慮歌曲和歌手推薦,使每個歌手很自然地融合為一個曲風(fēng)載體。在實際生活中,經(jīng)常使用歌手名來表達(dá)用戶對音樂偏好程度。如果用戶音樂播放器播放的是“林俊杰”的歌,那么可推斷出該用戶比較喜歡抒情類的歌曲。但是,如果用戶音樂播放器播放的是《一千年以后》—林俊杰某個專輯中的一首歌,那么很難分辨出該用戶的音樂偏好。為此,采用協(xié)同過濾算法能夠更精準(zhǔn)度量出用戶音樂偏好。具體流程如圖6。
圖6 自動化隱式評分系統(tǒng)流程
對于特定用戶來說,假設(shè)用戶能多聽一次該歌手的歌曲,那么相應(yīng)隱式評分會大大增加,因此,每聽一次歌曲的行為就要被賦予新的權(quán)重。設(shè)立如表1所示的場景來模擬衰減現(xiàn)象。
表1 衰減模擬場景
由表1可推斷出用戶1不喜歡歌曲1,而用戶2喜歡歌曲1;用戶1和2都喜歡歌曲2。用戶2聽的次數(shù)是用戶1的10倍,雖然獲取的偏好相似度與實際完全相反,但是后續(xù)聽歌行為可增加隱形評分,其權(quán)值大小是小于最初用戶聽歌時的權(quán)值大小。在推薦系統(tǒng)之中,采用協(xié)同過濾算法來設(shè)計衰減函數(shù)來描述上述具體衰減現(xiàn)象。
假設(shè)聽歌行為次數(shù)為n,那么第n次聽歌行為的權(quán)值為:
weight(n)=α×e-β×n
(1)
公式(1)中:β為衰減速度;α為控制歌曲的隱式評分程度;e為常數(shù)。
假設(shè)用戶X聽歌曲Y的次數(shù)為n′(X,Y),那么根據(jù)公式(1)的衰減公式,可獲取用戶X對歌曲Y的雙重推薦機制:
(2)
根據(jù)上述雙重推薦機制,將所有用戶對于某個歌手或歌曲偏好程度作為向量,計算兩者之間的相似度,獲取歌手與歌曲的相似內(nèi)容之后,根據(jù)用戶歷史偏好預(yù)測當(dāng)前用戶還沒有確定的歌曲種類,獲取一個排序的歌曲列表作為推薦項目。具體推薦內(nèi)容如圖7所示。
圖7 推薦內(nèi)容
由圖7可知:對于歌曲A,根據(jù)用戶歷史偏好,喜歡歌曲A的用戶都喜歡歌手C,得出歌曲A與歌手C所唱的歌曲風(fēng)格相似,而用戶3喜歡歌曲A,那么可推斷出用戶3也可能喜歡歌手C。
根據(jù)上述推薦內(nèi)容的需求用例設(shè)計隱式評分推薦功能,給出自動化隱式評分音樂雙重推薦功能代碼如下:
import javax.sound.midi.*; // The midi package is necessary
public class MiniMusicApp {
public static void main(String[] args) {
MiniMusicApp mini = new MiniMusicApp();
mini.play();
}
public void play() {
try {
// Get a sequencer and open it
Sequencer player = MidiSystem.getSequencer();
player.open();
Sequence seq = new Sequence(Sequence.PPQ, 4); //Treat the arguments as Ready-bake arguments
Track track = seq.createTrack(); // Ask the sequence for a track
// Put some MidiEvents into the Track, the setMessage() method is what we should really care
ShortMessage a = new ShortMessage();
a.setMessage(144, 1, 44, 100);
MidiEvent noteOn = new MidiEvent(a, 1);
track.add(noteOn);
ShortMessage b = new ShortMessage();
b.setMessage(128, 1, 44, 100);
MidiEvent noteOff = new MidiEvent(b, 16);
track.add(noteOff);
player.setSequence(seq); // Give the sequence to the Sequencer
// like pushing a CD to a CD player
player.start(); // Start the sequencer like pushing PLAY
}
catch(Exception ex) {
ex.printStackTrace();
}
} // Close play
} // Close class
根據(jù)上述推斷內(nèi)容,可作為推薦依據(jù)實現(xiàn)軟件部分的設(shè)計,保證用戶獲取更加準(zhǔn)確的推薦列表。
采用協(xié)同過濾算法設(shè)計的自動化隱式評分音樂雙重推薦系統(tǒng),從該系統(tǒng)推薦結(jié)果準(zhǔn)確性角度出發(fā),設(shè)計了如下對比實驗。由于協(xié)同過濾算法需要上百個節(jié)點才能體現(xiàn)網(wǎng)絡(luò)復(fù)雜程度,因此,采用基于Java的工具包模擬離散點來構(gòu)建復(fù)雜網(wǎng)絡(luò)結(jié)構(gòu)。
實驗環(huán)境設(shè)置如表2所示。
表2 實驗參數(shù)設(shè)置
與計算固定數(shù)量節(jié)點不同,采用協(xié)同過濾算法需計算相鄰節(jié)點最大值的限制,將距離一定范圍內(nèi)的所有節(jié)點都視為當(dāng)前鄰居,雖然鄰居個數(shù)不確定,但是相似度不會相差較大,對于孤立節(jié)點處理也較為妥當(dāng)。
傳統(tǒng)系統(tǒng)采用顯示評分方法,為用戶進行音樂推薦;而雙重推薦系統(tǒng)采用隱式評分方法,為用戶進行音樂推薦。這兩種推薦系統(tǒng)分別在噪聲干擾和人為因素影響下推薦結(jié)果精準(zhǔn)度進行對比,具體對比情況如下所示。
3.2.1 噪聲干擾
傳統(tǒng)系統(tǒng)對音樂數(shù)據(jù)進行提取時,受到噪聲干擾影響,使數(shù)據(jù)不能被全部統(tǒng)計,導(dǎo)致最后提取到的數(shù)據(jù)為無效數(shù)據(jù)。而協(xié)同過濾系統(tǒng)設(shè)計隱式評分提取電路對音樂數(shù)據(jù)進行提取時,不會受到噪聲干擾影響,使數(shù)據(jù)被全部統(tǒng)計,提取效果較好,對于推薦結(jié)果也較為準(zhǔn)確。將這兩種系統(tǒng)受到噪聲干擾影響程度進行對比,結(jié)果如圖8所示。
圖8 兩種系統(tǒng)在噪聲干擾影響下推薦精準(zhǔn)度對比
由圖8可知:當(dāng)噪聲干擾為t1~t2等級時,傳統(tǒng)系統(tǒng)推薦結(jié)果精準(zhǔn)度從85%下降到60%,而協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度從88%下降到70%;當(dāng)噪聲干擾為t2~t4等級時,傳統(tǒng)系統(tǒng)推薦結(jié)果精準(zhǔn)度從60%下降到35%,而協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度從70%下降到65%;當(dāng)噪聲干擾為t4~t5等級時,傳統(tǒng)系統(tǒng)推薦結(jié)果精準(zhǔn)度與協(xié)同過濾系統(tǒng)推薦結(jié)果無明顯變化;當(dāng)噪聲干擾為t5~t6等級時,傳統(tǒng)系統(tǒng)推薦結(jié)果精準(zhǔn)度從35%升高到了40%,而協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度從65%升高到了67%;當(dāng)噪聲干擾為t6~t7等級時,傳統(tǒng)系統(tǒng)推薦結(jié)果精準(zhǔn)度從40%升高到了43%,而協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度從67%升高到了69%;當(dāng)噪聲干擾為t7~t8等級時,傳統(tǒng)系統(tǒng)推薦結(jié)果精準(zhǔn)度從43%下降到了40%,而協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度從67%下降到了65%;當(dāng)噪聲干擾大于t8等級時,傳統(tǒng)系統(tǒng)推薦結(jié)果精準(zhǔn)度下降到了30%,而協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度下降到了55%,說明噪聲干擾等級超過t8時,兩種系統(tǒng)都受到較大程度的干擾,推薦結(jié)果精準(zhǔn)度無法得到有效控制,而在實際生活中,超過t8等級的噪聲會噪聲機器設(shè)備的損壞,為此,可忽略超過該等級的噪聲干擾影響。
根據(jù)上述對比內(nèi)容可知:當(dāng)噪聲干擾為t1~t2等級時,兩種系統(tǒng)推薦結(jié)果精準(zhǔn)度都達(dá)到最高,分別為85%和88%,且協(xié)同過濾系統(tǒng)在受到t1~t8等級噪聲干擾影響,推薦結(jié)果精準(zhǔn)度始終不低于60%。由此可知,在噪聲影響下,采用協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度較高。
3.2.2 人為因素影響
采用傳統(tǒng)系統(tǒng)會受到人為因素影響,播放器中的音樂雜亂無章,無法獲取準(zhǔn)確的推薦信息,采用顯示評分機制,使推薦結(jié)果更加偏向后期用戶聽到的歌曲;而采用協(xié)同過濾系統(tǒng),雖然播放器中的音樂播放種類較為混亂,但是可通過隱式評分來獲取準(zhǔn)確推薦信息,并采用雙重推薦機制,提高推薦結(jié)果精準(zhǔn)度。將這兩種系統(tǒng)受到人為因素影響進行對比,結(jié)果如圖9所示。
圖9 兩種系統(tǒng)在人為因素影響下推薦精準(zhǔn)度對比
由圖9可知:在人為因素影響下,當(dāng)時間為6h時,采用傳統(tǒng)系統(tǒng)推薦結(jié)果精準(zhǔn)度為80%,而采用協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度為90%;當(dāng)時間為12 h時,采用傳統(tǒng)系統(tǒng)推薦結(jié)果精準(zhǔn)度為70%,而采用協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度為88%;當(dāng)時間為18 h時,采用傳統(tǒng)系統(tǒng)推薦結(jié)果精準(zhǔn)度為60%,而采用協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度為80%;當(dāng)時間為24 h時,采用傳統(tǒng)系統(tǒng)推薦結(jié)果精準(zhǔn)度為50%,而采用協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度為78%。
根據(jù)上述對比內(nèi)容可知:當(dāng)時間為6h時,兩種系統(tǒng)推薦結(jié)果精準(zhǔn)度都達(dá)到最高,分別為80%和90%,由此可知,在人為因素影響下,采用協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度較高。
綜合上述實驗內(nèi)容可得出結(jié)論:采用協(xié)同過濾算法設(shè)計的自動化隱式評分音樂雙重推薦系統(tǒng)是具有合理性的。①在噪聲干擾影響下,當(dāng)干擾等級為t1~t2時,傳統(tǒng)系統(tǒng)與協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度都達(dá)到最高,分別為85%和88%;②在人為因素影響下,當(dāng)時間為6 h時,傳統(tǒng)系統(tǒng)與協(xié)同過濾系統(tǒng)推薦結(jié)果精準(zhǔn)度都達(dá)到最高,分別為80%和90%。在這兩種因素干擾下,采用協(xié)同過濾算法設(shè)計的系統(tǒng)推薦結(jié)果精準(zhǔn)度都比傳統(tǒng)系統(tǒng)精準(zhǔn)度要高。
針對設(shè)計內(nèi)容具有以下創(chuàng)新點:以推薦系統(tǒng)內(nèi)容為主,結(jié)合普適環(huán)境,通過收集當(dāng)前用戶偏好信息,利用協(xié)同過濾處理方式預(yù)測用戶感興趣內(nèi)容,以此為基礎(chǔ)設(shè)計推薦系統(tǒng),可有效避免噪聲干擾和人為因素的影響,保證較高的推薦結(jié)果精準(zhǔn)度。
對于設(shè)計系統(tǒng)的研究展望內(nèi)容有:采用協(xié)同過濾算法設(shè)計的推薦系統(tǒng)是具有合理性的,但是有關(guān)藍(lán)牙交互可靠性還有待提高,主要原因是藍(lán)牙交互協(xié)議的不對稱性,導(dǎo)致異構(gòu)通信模塊工作效率較低。因此,在以后研究過程中,爭取使用定量化方法來研究藍(lán)牙交互行為,保障系統(tǒng)的實時性。