999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于協同過濾的歌曲推薦算法研究

2019-01-08 08:37:44王炳祥
數字技術與應用 2019年10期

王炳祥

摘要:根據用戶的歷史聽歌記錄挖掘用戶的音樂偏好,給用戶做出滿意的個性化歌曲推薦具有重要意義。采用基于用戶的K最近鄰協同過濾推薦算法,以網易云1000多份熱門歌單作為測試數據集,蝦米音樂用戶聽歌行為數據,在PyCharm集成開發環境中進行實驗研究,并用三種方法對獲取的歌單推薦結果進行評估。

關鍵詞:歌曲推薦;協同過濾;KNN

中圖分類號:TN391 文獻標識碼:A 文章編號:1007-9416(2019)10-0126-02

0 引言

在上世紀初期的90年代,推薦系統的研究開始逐步盛行,它應用了認知診斷、信息搜索、機器學習等多領域的知識[1-2]。推薦系統即利用一定的技術和方法,通過已有的歷史記錄對用戶的興趣愛好建立模型,給用戶推薦滿足其個性化需求的物品和信息[2]。推薦系統可被看成一種信息過濾工具,因此,推薦算法也被叫做過濾算法。根據過濾算法的不同,推薦算法可以分為三類:基于內容的過濾、協同過濾、混合過濾。目前應用最為廣泛的是協同過濾的方式[3]。

對于音樂推薦而言,用戶的偏好通常隱式地通過對音樂產生的行為記錄和聆聽習慣來表達。另外,用戶無法全面而的且準確地對音樂進行定位。因此,根據用戶的歷史聽歌記錄挖掘用戶的音樂偏好,給用戶做出個性化推薦,提高推薦系統的準確度和用戶滿意度是很重要的一項研究目標。

1 協同推薦算法

協同過濾(CF,Collaborative Filtering)也叫做基于近鄰(NN,Nearest Neighbor)的推薦算法,主要思想是:利用已有用戶群的過去行為或意見來預測數據,根據與當前用戶/當前物品較為相似的近鄰數據來產生推薦結果。本文采用基于用戶的K最近鄰推薦(User-based KNN)協同推薦算法。算法基本原理如下:

首先,對輸入的評分數據集和當前用戶ID作為輸入,找出與當前用戶過去有相似偏好的其它用戶,這些用戶叫做對等用戶或者最近鄰;然后,對當前用戶沒有見過的每個產品p,利用用戶的近鄰對產品p的評分進行預測;最后,選擇所有產品評分最高的TopN個產品推薦給當前用戶。

通過下式計算用戶u對歌曲i的喜愛程度:

其中N(i)表示對歌曲/單i有過行為的用戶集合,wuv是用戶u和用戶v之間的相似度,rvi表示用戶v對歌曲/單i的打分。

算法輸入是一個“用戶-物品”評分矩陣,輸出數據一般有兩類:當前用戶對物品喜歡和不喜歡程度的預測值和n項的推薦物品列表。

2 數據集獲取

任何機器學習算法解決問題,首先需要考慮的就是數據從何而來。在歌曲推薦算法中首先要考慮歌單數據的來源問題。

2.1 測試數據集

本研究中,采用傳參動態密碼的高級加密標準AES(AES, Advanced Encryption Standard)算法爬取了網易云1000多份熱門歌單作為測試數據集。爬蟲主體是利用requst獲取html內容,用BeautifulSoup提取有用數據。

2.2 數據預處理

對數據進行預處理,將歌單數據轉化成推薦系統格式數據。主流的Python推薦系統框架,其評分基礎數據格式為user item rating timestamp,主要抽取歌單id和歌曲流行度,同時保存好歌單id到歌單名的映射字典文件。

2.3 歌曲推薦數據

利用scrpy_redis分布式爬蟲,爬取蝦米音樂用戶聽歌行為數據,最終得到了大概6萬多條真實的未脫敏用戶播放數據。

要完成推薦,需要得到每個用戶對每首歌的一個評價矩陣。因此,需要從中摘取出用戶id、歌曲名和評分(播放次數越多,評分越高),然后做成excel表格,再用pandas轉換成數據框格式進行讀取。

3 實驗研究

3.1 實驗設計

本次實驗是在PyCharm集成開發環境中進行的,所使用的主要庫為Surprise(Simple Python Recommendation System Engine)。首先對整理好的用戶評分矩陣整理成excel表,然后用pandas函數轉化成數據框格式進行讀取,載入自己的數據集并進行手動5折交叉驗證。用基于用戶的協同過濾算訓練模型,計算相似度(采用內置的皮爾森相似度),然后調用Surprise庫并用KNNWithMeans算法對數據集進行實驗。

3.2 實驗分析

首先,導入數據集readersurprise庫算法,然后用pd.reader_ excel讀取用戶評分矩陣并將其轉化成推薦格式,接著載入數據集并進行模型訓練,最后生成用戶推薦列表。推薦結果如圖1所示。

然后對數據集用KNNWithMeans算法進行實驗評估,結果分別如圖2所示。

評估標準均方根誤差RMSE和標準平均絕對誤差MAE,理論上這兩個值是越小越好。

4 結語

本文提出了基于標簽的個性化音樂推薦和基于用戶特征的個性化音樂推薦的方法,在推薦性能上有了一定的改進,但仍存在需要進一步改善的地方。比如,當音樂的數據量越來越大,音樂的平臺越來越多的時候,對用戶信息的提取和利用應該更加完善,因此對于音樂推薦可以更多的考慮深度學習訓練音樂特征,進一步改進音樂推薦效果。

參考文獻

[1] 高鳳麗,孫連山.個性化推薦系統概述[J].技術與市場,2015,22(2):78-79.

[2] 朱天宇,黃振亞,陳恩紅,等.基于認知診斷的個性化試題推薦方法[J].計算機學報,2017(1):176-191.

[3] 冷亞軍,陸青,梁昌勇.協同過濾推薦技術綜述[J].模式識別與人工智能,2014,27(8):720-734.

主站蜘蛛池模板: 久草中文网| 亚洲无限乱码一二三四区| 凹凸精品免费精品视频| 亚洲精品视频网| 欧美va亚洲va香蕉在线| 国内黄色精品| 夜夜操狠狠操| 呦女亚洲一区精品| 91亚洲精选| 91美女在线| 亚洲国产在一区二区三区| 国产成人精品亚洲日本对白优播| 91色在线观看| 国产丝袜无码一区二区视频| 激情综合网址| 乱码国产乱码精品精在线播放| 视频国产精品丝袜第一页| 国产va欧美va在线观看| 亚洲国产精品日韩av专区| 免费精品一区二区h| 国产一级毛片yw| 国产极品粉嫩小泬免费看| 亚洲人成网站18禁动漫无码| 午夜视频免费试看| 亚洲欧洲日韩久久狠狠爱| 久久国产香蕉| 欧美在线综合视频| 亚洲成人免费看| 亚洲AⅤ永久无码精品毛片| 国产成人福利在线视老湿机| 亚洲av片在线免费观看| 亚洲国产综合自在线另类| 国产精品久久久久久久久kt| 欧美国产精品不卡在线观看| 97久久精品人人| 丁香婷婷久久| 成人福利在线视频| 国产福利大秀91| 伊人成人在线| 91精品国产福利| 高清不卡一区二区三区香蕉| 国产大片喷水在线在线视频| 亚洲高清在线天堂精品| 国产真实二区一区在线亚洲| 国产久操视频| 亚洲中文字幕23页在线| 中文字幕乱码二三区免费| 国产精品福利社| 亚洲91精品视频| 国产丝袜一区二区三区视频免下载| 午夜少妇精品视频小电影| 亚洲午夜福利精品无码| 99re热精品视频中文字幕不卡| 久久综合色88| 欧美啪啪网| 亚洲男人的天堂网| av在线人妻熟妇| 97av视频在线观看| 亚洲热线99精品视频| 成人在线观看一区| 亚洲六月丁香六月婷婷蜜芽| 亚洲欧美另类中文字幕| 国产菊爆视频在线观看| 欧美日韩成人在线观看| 又大又硬又爽免费视频| 九九视频在线免费观看| 亚洲国产91人成在线| 国产精品成人免费视频99| 国产亚洲美日韩AV中文字幕无码成人| 人人看人人鲁狠狠高清| 欧美国产中文| 国产精品妖精视频| www.youjizz.com久久| 日韩无码一二三区| 久久免费观看视频| 亚洲日韩精品综合在线一区二区| 精品国产免费人成在线观看| 国产AV毛片| 中文字幕在线欧美| 久久中文电影| 国产成人喷潮在线观看| 毛片视频网址|