• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于深度信念網(wǎng)絡(luò)DBN 的音樂(lè)推薦系統(tǒng)設(shè)計(jì)

      2021-12-07 07:45:44田杰胡秋霞司佳豪
      電子設(shè)計(jì)工程 2021年23期
      關(guān)鍵詞:首歌曲列表信念

      田杰,胡秋霞,司佳豪

      (西安航空學(xué)院計(jì)算機(jī)學(xué)院,陜西西安 710077)

      面對(duì)成千上萬(wàn)的音樂(lè),人們可能會(huì)在海量的音樂(lè)中聽(tīng)到一首比較喜愛(ài)的音樂(lè),但是不能每次都遇到喜愛(ài)的音樂(lè)[1-2]。而音樂(lè)推薦系統(tǒng)可以很好地為用戶提供想要聽(tīng)的音樂(lè)。

      基于網(wǎng)易云的音樂(lè)內(nèi)容,平臺(tái)會(huì)記錄用戶在網(wǎng)易云平臺(tái)的所有行為,最終會(huì)結(jié)合用戶畫(huà)像和用戶行為為用戶推薦相關(guān)歌曲[3-4]。龔志等[5]提出了基于多模態(tài)的音樂(lè)推薦系統(tǒng)。彭程、張瑞旸、胡昌平等分別對(duì)睡眠音樂(lè)、場(chǎng)景變化的實(shí)時(shí)音樂(lè)和融合個(gè)體興趣與群體認(rèn)知的音樂(lè)個(gè)性化推薦模型和系統(tǒng)進(jìn)行了研究[6-8]。鮑美英、李濤等分別設(shè)計(jì)了基于Android 的音樂(lè)推薦系統(tǒng)和基于協(xié)同過(guò)濾算法的自動(dòng)化隱式評(píng)分音樂(lè)雙重推薦系統(tǒng)[9-10]。

      以上研究者在音樂(lè)推薦系統(tǒng)方面都取得了一定效果。但是音樂(lè)搜索方法已經(jīng)變得越來(lái)越落后,所以需要發(fā)展一個(gè)更先進(jìn)的搜索方法更好地為用戶進(jìn)行音樂(lè)推薦。文中設(shè)計(jì)了基于深度信念網(wǎng)絡(luò)(DBN)的音樂(lè)推薦,通過(guò)深度信念網(wǎng)絡(luò)進(jìn)行無(wú)監(jiān)督的訓(xùn)練,得到可以進(jìn)行相似度計(jì)算的音樂(lè)向量,有效地提取到音樂(lè)特征并且完成分類,通過(guò)深度信念網(wǎng)絡(luò)模型的訓(xùn)練得到音樂(lè)彼此之間的向量關(guān)系,將這些彼此的音樂(lè)向量進(jìn)行皮爾遜相關(guān)系數(shù)的計(jì)算,按音樂(lè)間彼此的相似度進(jìn)行降序排序,以此來(lái)完成最終的音樂(lè)推薦,形成服務(wù)于用戶的個(gè)性化音樂(lè)推薦系統(tǒng)。

      1 系統(tǒng)概述

      文中設(shè)計(jì)了基于音樂(lè)內(nèi)容和深度信念網(wǎng)絡(luò)的音樂(lè)推薦系統(tǒng),推薦系統(tǒng)的詳細(xì)過(guò)程如圖1 所示。該音樂(lè)推薦系統(tǒng)第一步先將音樂(lè)數(shù)據(jù)全部獲取,第二步在得到這些音樂(lè)數(shù)據(jù)后將這些數(shù)據(jù)進(jìn)行預(yù)處理,得到適合于模型輸入的數(shù)據(jù),第三步將這些數(shù)據(jù)輸入到已經(jīng)建立好的DBN 模型中進(jìn)行訓(xùn)練,第四步是訓(xùn)練后得到一個(gè)音樂(lè)推薦列表,最終形成音樂(lè)推薦系統(tǒng)。

      圖1 音樂(lè)推薦系統(tǒng)流程圖

      2 基于DBN的音樂(lè)推薦系統(tǒng)設(shè)計(jì)

      2.1 音樂(lè)數(shù)據(jù)獲取

      該系統(tǒng)選用的是網(wǎng)易云音樂(lè)中的數(shù)據(jù)[11]。網(wǎng)易云是一個(gè)人們比較成熟的音樂(lè)產(chǎn)品,該文系統(tǒng)在網(wǎng)易云龐大的音樂(lè)數(shù)據(jù)中共選擇了1 200 首音樂(lè),一共分為10 類,分別是電子、爵士、搖滾、鄉(xiāng)村、朋克、輕音樂(lè)、古典、說(shuō)唱、民謠和中國(guó)風(fēng)共10 類,這些音樂(lè)數(shù)據(jù)就是該文音樂(lè)推薦系統(tǒng)所依賴的數(shù)據(jù),在此數(shù)據(jù)上進(jìn)行構(gòu)建,如圖2 所示。

      圖2 10類音樂(lè)數(shù)據(jù)

      2.2 數(shù)據(jù)預(yù)處理

      所采用的音樂(lè)數(shù)據(jù)是MP3 格式,所以首先需要處理的是將MP3 格式進(jìn)行轉(zhuǎn)換,將格式轉(zhuǎn)換后接著就要用到梅爾倒譜系數(shù)(MFCC)進(jìn)行數(shù)據(jù)處理。梅爾倒譜系數(shù)是在Mel標(biāo)度頻率域提取出來(lái)的倒譜系數(shù)。

      主要將MP3 格式轉(zhuǎn)換為輸入模型的數(shù)據(jù)。首先將這些不同類別的音樂(lè)用編碼表示,分別是0到9,然后分別讀取每首歌曲,讀取每首歌曲需要耗費(fèi)的時(shí)間是非常巨大的,故在此過(guò)程中需要等待將所有的數(shù)據(jù)讀取好,之后使用torchaudio直接讀取MP3文件,通過(guò)梅爾倒譜系數(shù)提取原始特征得到一個(gè)新的向量[12-14]。

      MFCC 參數(shù)提取包括預(yù)加重、分幀、加窗、快速傅里葉變換、三角帶通濾波器和離散余弦變換(DCT)計(jì)算,其計(jì)算流程如圖3 所示。

      圖3 MFCC計(jì)算流程

      2.3 DBN模型設(shè)計(jì)

      2.3.1 輸入和輸出層設(shè)計(jì)

      首先將這些不同類別的音樂(lè)用編碼表示,分別是0 到9。然后分別讀取每首歌曲,使用torchaudio可以直接讀取MP3 文件,然后通過(guò)MFCC 提取原始數(shù)據(jù)特征得到一個(gè)新的向量,因?yàn)樘崛『蟮臄?shù)據(jù)長(zhǎng)度太大,無(wú)法直接輸入模型,故將數(shù)據(jù),也就是一首歌曲拆分成很多段相同長(zhǎng)度的段,每段一共包含2 500 幀,然后將得到的數(shù)據(jù)分別保存成Tensor 形式。Pytorch 的數(shù)據(jù)類型為各式各樣的Tensor,Tensor可以理解為高維矩陣。

      讀取上一步的數(shù)據(jù),然后設(shè)置數(shù)據(jù)迭代器。迭代器是一種對(duì)象,每個(gè)迭代器對(duì)象代表容器中的確定的地址。batch_size=512 表示每次訓(xùn)練的批量數(shù)目為512 個(gè),visible_units 表示初始輸入的向量長(zhǎng)度為1 000。

      2.3.2 隱藏層節(jié)點(diǎn)數(shù)的選擇

      輸入層中的神經(jīng)元數(shù)量等于正在處理的數(shù)據(jù)中的輸入變量的數(shù)量。在輸出層中的神經(jīng)元的數(shù)量等于與每個(gè)輸入相關(guān)聯(lián)的輸出的數(shù)量。

      通常,對(duì)所有隱藏層使用相同數(shù)量的神經(jīng)元就足夠了。對(duì)于某些數(shù)據(jù)集,擁有較大的第一層并在其后跟隨較小的層將導(dǎo)致更好的性能,因?yàn)榈谝粚涌梢詫W(xué)習(xí)很多低階的特征,這些較低層的特征可以饋入后續(xù)層中,提取出較高階特征。

      該音樂(lè)推薦系統(tǒng)RBM 有兩個(gè)隱藏層,分別為512和256個(gè)單元,DBN 的訓(xùn)練過(guò)程分為兩個(gè)步驟,第一個(gè)步驟是分別訓(xùn)練兩個(gè)RBM 隱層,RBM 訓(xùn)練是無(wú)監(jiān)督學(xué)習(xí),然后到第二個(gè)RBM 的隱層,第二個(gè)步驟是訓(xùn)練整個(gè)模型。DBN 是由兩個(gè)RBM 和一個(gè)BP 全連接構(gòu)成的。

      2.3.3 激活函數(shù)的選擇

      激活函數(shù)(activation function):在多層的神經(jīng)網(wǎng)絡(luò)中,上一層的神經(jīng)元(neuron)信號(hào),即線性單元wx+b算出的結(jié)果,要輸入到下一層,但是這個(gè)信號(hào)在輸入到下一層之前需要一次激活f=sigmoid(wx+b),或f=ReLU(wx+b)。需要選擇一些信號(hào)在下一層的神經(jīng)元激活。

      文中使用自適應(yīng)時(shí)刻估計(jì)算法(Adaptive Moment Estimation,Adam)。該方法通過(guò)存儲(chǔ)AdaDelta 的指數(shù)衰減平均值,保持了先前梯度的指數(shù)衰減平均值。這一點(diǎn)與動(dòng)量類似,該音樂(lè)推薦系統(tǒng)應(yīng)用的就是Adam 算法[15]。

      2.3.4 損失函數(shù)的選擇

      損失函數(shù)是一種衡量損失和錯(cuò)誤(這種損失與“錯(cuò)誤”地估計(jì)有關(guān),如費(fèi)用或者設(shè)備的損失)程度的函數(shù)。

      交叉熵?fù)p失函數(shù)經(jīng)常用于分類問(wèn)題中,特別是在神經(jīng)網(wǎng)絡(luò)做分類問(wèn)題時(shí),也經(jīng)常使用交叉熵作為損失函數(shù),此外,由于交叉熵涉及到計(jì)算每個(gè)類別的概率,所以交叉熵幾乎每次都和sigmoid函數(shù)一起出現(xiàn)。

      用神經(jīng)網(wǎng)絡(luò)最后一層輸出的情況,來(lái)看整個(gè)模型預(yù)測(cè)、獲得損失和學(xué)習(xí)的流程:神經(jīng)網(wǎng)絡(luò)最后一層得到每個(gè)類別的得分scores,該得分經(jīng)過(guò)sigmoid 函數(shù)獲得概率輸出,模型預(yù)測(cè)的類別概率輸出與真實(shí)類別的one hot形式進(jìn)行交叉熵?fù)p失函數(shù)的計(jì)算[16-19]。

      2.4 產(chǎn)生音樂(lè)推薦

      音樂(lè)推薦系統(tǒng)的目標(biāo)是為在線音樂(lè)用戶提供個(gè)性化推薦服務(wù),收集用戶在聽(tīng)音樂(lè)過(guò)程中的行為,并進(jìn)行分析,幫助用戶發(fā)現(xiàn)可能感興趣的歌曲,自動(dòng)生成音樂(lè)播放列表。在所有音樂(lè)的相似度計(jì)算完畢之后,根據(jù)最前的三首歌曲相似度進(jìn)行推薦。最終得到一個(gè)列表,此列表最終呈現(xiàn)的是跟這首歌相似度最高的三首歌曲。

      3 結(jié)果與分析

      該音樂(lè)推薦系統(tǒng)采用Python 語(yǔ)言,使用Pytorch庫(kù)。Pytorch 是一個(gè)對(duì)多維矩陣數(shù)據(jù)進(jìn)行操作的張量(tensor)庫(kù),廣泛應(yīng)用在機(jī)器學(xué)習(xí)相關(guān)應(yīng)用場(chǎng)景中。

      音樂(lè)推薦系統(tǒng)在經(jīng)過(guò)了模型訓(xùn)練之后會(huì)生成一個(gè)音樂(lè)之間的一個(gè)向量列表,部分列表如圖4 所示。

      圖4 歌曲向量相關(guān)系數(shù)

      圖4 顯示的是經(jīng)過(guò)訓(xùn)練后所得的歌曲向量相關(guān)系數(shù),這些系數(shù)還需要經(jīng)過(guò)處理后才可以得到最終的推薦。

      得到歌曲向量相關(guān)系數(shù)后需要經(jīng)過(guò)皮爾遜相關(guān)系數(shù)進(jìn)行計(jì)算,經(jīng)過(guò)計(jì)算后會(huì)得到每首歌曲與其他歌曲的相似度,0 為最少,1 為最大,但是相似度1 可能不會(huì)出現(xiàn),圖5 是音樂(lè)相似度列表。

      圖5 顯示的是部分歌曲的相似度??梢钥闯龈枨旧砼c自己的相似度是零,但是與其他歌曲的相似度各不相同,有比較低的,也有比較高的,但是最終要形成一個(gè)音樂(lè)推薦表,還需要進(jìn)行最終的處理。

      圖5 音樂(lè)相似度列表

      得到音樂(lè)相似度之后,需要將最靠前的三首歌曲相似度作為最終的推薦,這三首歌曲就是這一首歌最終得到的推薦歌曲列表,圖6 是部分推薦歌曲的結(jié)果。

      圖6 中,一共有1 200 首歌曲形成最終的推薦,此圖只是截取了部分歌曲的推薦列表。

      圖6 音樂(lè)推薦列表

      音樂(lè)推薦系統(tǒng)可以精確到特定一首歌,比如當(dāng)聽(tīng)到Galen Crew-Sleepyhead 這首歌,可以通過(guò)此音樂(lè)推薦系統(tǒng)得到最高的3 個(gè)相似度歌曲Skeeter Davis 的The End of the World、Garth Brooks 的Mom 和Keren Ann 的Right Now &Right Here,意思是對(duì)于喜歡聽(tīng)Galen Crew-Sleepyhead 的用戶來(lái)說(shuō),這三首歌是最佳選擇。

      該系統(tǒng)最終的展示成果就是產(chǎn)生一個(gè)最相似的三首歌曲列表,經(jīng)過(guò)相似度的比較,共為1 200 首歌曲產(chǎn)生了推薦列表。

      4 結(jié)論

      該音樂(lè)推薦系統(tǒng)基于內(nèi)容和深度信念網(wǎng)絡(luò),首先進(jìn)行梅爾倒譜系數(shù)的轉(zhuǎn)換,以網(wǎng)易云音樂(lè)中的部分?jǐn)?shù)據(jù)作為樣本,將音樂(lè)數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡(luò)模型需要的數(shù)據(jù);設(shè)計(jì)了基于深度信念網(wǎng)絡(luò)(DBN)的音樂(lè)推薦,利用深度信念網(wǎng)絡(luò)的深度學(xué)習(xí)模型來(lái)提取音樂(lè)特征。通過(guò)無(wú)監(jiān)督的訓(xùn)練得到進(jìn)行相似度計(jì)算的音樂(lè)向量,有效地提取到音樂(lè)特征并且完成分類,通過(guò)深度信念網(wǎng)絡(luò)模型的訓(xùn)練得到音樂(lè)彼此之間的向量關(guān)系,將這些彼此的音樂(lè)向量進(jìn)行皮爾遜相關(guān)系數(shù)計(jì)算,得到音樂(lè)間彼此的相似度,將這些相似度從大到小進(jìn)行排序,最終形成相似度最高的三首音樂(lè)推薦列表來(lái)完成最終1 200 首歌曲的音樂(lè)推薦。

      猜你喜歡
      首歌曲列表信念
      巧用列表來(lái)推理
      為了信念
      黃河之聲(2021年9期)2021-07-21 14:56:34
      學(xué)習(xí)運(yùn)用列表法
      擴(kuò)列吧
      發(fā)光的信念
      張傲全新單曲《愛(ài)我所愛(ài)》暖心來(lái)襲
      青年歌聲(2019年7期)2019-07-26 08:35:12
      陳曦全新單曲《不轉(zhuǎn)彎》震撼發(fā)行
      青年歌聲(2018年4期)2018-10-20 07:59:24
      信念
      不含3-圈的1-平面圖的列表邊染色與列表全染色
      信念的傳承
      潮安县| 东乡| 湄潭县| 乌兰县| 聂拉木县| 百色市| 肥东县| 五原县| 广宗县| 客服| 连城县| 寿光市| 斗六市| 威宁| 蒲城县| 柳林县| 紫金县| 邯郸市| 郑州市| 浑源县| 鹤庆县| 仙桃市| 白山市| 青川县| 莱西市| 昌图县| 宁国市| 陇南市| 手游| 收藏| 郁南县| 嘉鱼县| 社旗县| 淮南市| 周宁县| 斗六市| 江油市| 通道| 珲春市| 丹东市| 涡阳县|