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

可視化支持下CNN在個性化推薦算法中的應用①

2020-06-20 07:32:16宗春梅張月琴趙青杉郝耀軍郭玥鑫
計算機系統應用 2020年6期
關鍵詞:用戶模型

宗春梅,張月琴,趙青杉,郝耀軍,郭玥鑫

1(忻州師范學院 計算機系,忻州 034000)

2(太原理工大學 計算機科學與技術學院,太原 030024)

3(西安工業大學 西北兵器工業研究院,西安 710021)

推薦算法是一種信息過濾技術,通過總結用戶在過去的一段時間內留存在網絡中的信息找到其中的規律,利用這些規律從需要推薦的項目集合中確定用戶可能感興趣的某些項目或者產品,進而主動向用戶提供推薦信息[1].傳統方法是使用各種協同過濾算法實現推薦,但用戶評分數據卻很稀疏,導致推薦質量及速度下降,針對協同過濾中存在的稀疏矩陣的問題有學者引入了降維技術對用戶進行聚類,降低了用戶特征維數的同時實現了推薦的信息的實時性,同時為該推薦系統添加了對數據的隱私保護[2-4],但推薦的時間及精準性仍然與目標相距較大.

近年來深度學習被成功的應用于推薦領域并取得了巨大的成功,尤其是神經網絡,能從數據列中獲取最有信息量的部分,卷積神經網絡在文本特征的提取中得到了很好的應用[5,6].基于此,本文對神經網絡的個性化推薦算法進行研究,依據神經網絡、卷積神經網絡和推薦算法的各種理論構建實現算法的網絡模型,以此預測用戶對電影的評分,實現基于神經網絡的個性化推薦.在使推薦結果更優化的同時有效減少數據稀疏性對推薦結果的影響,提高電影推薦速度及質量.

1 背景知識及相關工作

傳統的推薦方法在學者們不斷改進下取得了很好效果.文獻[7]提出基于一種算法改進評分填充矩陣,在一定程度上緩解了協同過濾推薦中的數據稀疏性問題,并彌補了空值填補法填補值過于單一的問題.文獻[8]提出協同過濾利用相似度計算鄰居用戶,從而以鄰居用戶的偏好對目標用戶的偏好進行推薦預測,提高了電影推薦質量.文獻[9]引入社區劃分的思想,構建了一種融合電影類別、用戶評分和用戶標簽的電影推薦模型,有效解決了數據稀疏性問題.文獻[10]提出一種改進的時間加權協同過濾算法,利用時間加權的聚類結果優化算法使預測評分準確性大幅度提升.但數據稀疏、冷啟動、手工提取特征過多等問題仍然是傳統推薦方法性能提升的瓶頸問題.

隨著卷積神經網絡應用的日漸成熟與推廣,學者們提出了各種基于此算法進行用戶和項目隱藏特征之間的關聯分析從而實現基于關聯的推薦,并通過大量實驗證明該方法在大規模數據環境下從各方面顯著提高了推薦性能,證明深度學習方法對許多關聯分析任務是有效的[11,12].文獻[13]以電影推薦為研究對象,提出了融合動態協同過濾和深度學習的推薦算法,以解決在電影評分推薦場景中的數據稀疏性、冷啟動和信息過期問題,實驗結果表明電影評分預測的準確性提高了.但是算法也存在算法復雜且可解釋性差、算法中的參數選取費時且影響著算法性能等缺點.

文獻[14]提出嘗試基于深度學習來加強個性化推薦,提出將層疊降噪自動編碼器與隱含因子模型相結合的混合推薦方法,綜合考慮評論文本與評分,以提升推薦模型對潛在評分預測的準確性.實驗結果表明:與傳統推薦模型相比,該文提出的方法可有效提高評分預測的準確性,性能提升最高可達64.43%.文獻[15]提出一種融合徑向基函數的二值化卷積神經網絡的推薦模型,通過對推薦系統中的用戶屬性和項目屬性建立了RBF 網絡,使用徑向基函數計算用戶與用戶之間的相似度矩陣,再結合卷積神經網絡進行推薦預測,極大節省數據存儲空間并提高推薦效率.文獻[16]提出了一種基于注意的卷積神經網絡和因子分解機的推薦算法,利用所建立的因子分解機分析用戶和項目隱藏特征之間的關聯,并實現基于關聯的推薦.實驗證明推薦性能得到了顯著提高,另外在數據稀疏和冷啟動的極端環境下該推薦精度也優于其他推薦方法.文獻[17]提出了一種基于生物機制驅動的特征構建的答案推薦方法用于社區問答中推薦相應給定問題的最佳答案,通過引入回答者的用戶信譽信息來模擬記憶處理特性,然后構造出用于答案排序的特征向量,通過特征向量得到最佳答案,并在StackExchange 數據集上的實驗,結果表明該算法具有很好的性能.

綜上所述,神經網絡的批量處理及大幅度循環訓練的特性可以克服傳統的基于協同過濾推薦方法推薦過程時間長的問題,且卷積神經網絡的卷積與池化流程可以適度解決評分矩陣稀疏性問題.因此,本文提出一種神經網絡算法,通過對特征向量和卷積核大小等參數的調整實現推薦速度和推薦準確性的提升,進而在實驗過程中通過誤差均值等參數來驗證神經網絡推薦方法在許多性能上優于傳統協同過濾推薦方法,從而說明算法的有效性.

2 本文提出的推薦模型

2.1 相關模型

本文選取構建神經網絡的方法進行推薦算法的實現即神經網絡推薦算法(Neural Network Recommendation Algorithms),所設初期計模型將其稱為NNRAM_1.NNRAM_1 中,x_y_embed_layer 是將x對象的y數據引入嵌入層后轉成的向量矩陣,其中向量的值是-1 到1 之間的隨機數,本質就是數據降維;x_fc_layer 是x對象的隱含層;concatenate 是做“層”拼接;dense 作為輸出層用以產生x對象的特征矩陣x_combine_layer_flat;inference 是進行預測評分.算法模型NNRAM_1 具體步驟如下:

(1)構建神經網絡模型實現用戶特征的提取.模型包含4 層:輸入層、嵌入層、隱含層、輸出層,具體如圖1所示.預處理后的用戶數據由輸入層接收后,首先經過嵌入層,目的是將用戶的id、年齡、性別和職業等屬性矩陣分別轉成向量矩陣,實現數字化;其次將嵌入層產生的4 個向量矩陣分別送入隱含層;最后,經過在隱含層對用戶年齡及職業做相應加權處理后,將4 個隱含層矩陣合并送入輸出層,生成聚合的用戶屬性特征.

圖1 獲取用戶特征的模型

(2)與用戶特征的提取同理,將處理后電影數據中電影id 和電影類型以同樣的方式處理產生電影基本信息特征.對電影名稱做文本卷積處理,如圖2所示,虛線內部分可以循環多次.首先初始化卷積核的參數和偏置的參數,指定需要做卷積的文本、卷積核的大小以及卷積的步長.對于卷積核數的選擇可以嘗試隨機選取數值,亦可從3 起步,進而選擇使用Tensorboard可視化進行監控的方式來觀察損失率的變化情況,從Loss 的信號曲線防止過擬合,反復觀測即可盡快確定卷積核數量最佳范圍.當然,卷積核越小則網絡中所需參數數量和計算量就越小.激活選用ReLU 方法,池化選用max_pool 方法,處理過后生成電影名全連接矩陣;最后將電影信息所產生的3 個局部全連接合并在一起做全連接并輸出,生成電影特征.

圖2 獲取電影title 特征模型

(3)將第(1)步和第(2)步中所獲得的特征值進行運算,產生最終的預測評分,如式(1)所示.inference 表示預測評分,A為用戶特征,B為電影特征,考慮到預測評分中用戶特征與電影特征所占比例可能存在不平衡性,為A、B設置權重w0、w1.實際評分均為整數,預測評分為實數,所以設置偏差b以縮小兩者之間的差距.實驗中,各模型未明確說明時,w0、w1、b的值分別為1、1、0.

2.2 模型評價標準

推薦算法評價是驗證推薦算法是否合格的重要環節之一,常用指標包括準確度與決策支持精度,本文主要使用統計精度度量中的平均絕對誤差(Mean Absolute Error,MAE),來進行模型評價.MAE 的評價方式為計算預測評分與實際評分二者的絕對平均誤差,MAE 越小代表預測結果更趨近于真實值,即推薦結果較優.MAE 評價公式如式(2)所示,式中n為測試集合元素數,xi表示實際評分,yi表示預測評分.

3 實驗與結果分析

實驗中,將MovieLens-1M 數據集分成訓練集和測試集,訓練數據與測試數據比為9:1,先將訓練數據投入網絡模型進行訓練,訓練的最終目的是得到預測評分.訓練結束后,算法模型得到保存.訓練好的網絡模型用測試數據進行測試,以驗證模型的性能,最后使用模型進行推薦.

3.1 數據集及數據預處理

論文所用數據集是MovieLens-1M,是將近6000個用戶在將近4000 部電影上所有評論,有一億多條評分數據.MovieLens-1M 有3 個數據表:用戶數據表、電影數據表、評分數據表.其中用戶數據分別有用戶id、性別、年齡、職業id 和郵編等字段;電影數據分別有電影id、電影名和電影風格等字段;評分數據分別有用戶id、電影id、評分和時間戳等字段.

在使用之前需要對現有數據進行預處理.將用戶數據中的年齡和性別字段分別轉化為數字.其中性別中代表男性的M 和代表女性的F 轉化為1 和0;對于年齡數據將其分為7 段,依次用0 到6 表示.電影名稱和電影類型通過數據字典將其轉化為數字.電影名稱數據信息分裂為兩個字段信息,電影文字標題及電影年份,進而將電影文字標題轉成數字字典,首先將電影名稱分成字符串列表,然后將每一個單詞字符串變換成一個數字字符串;在電影類型數據中,電影類型的處理同電影名稱轉成數字字典,也是一個單詞對應一個數字.

3.2 參數設置

模型NNRAM-1 中,filter_num 數量為8,batch_size 數量為256,dropout_keep 數量為0.5,learning_rate 數量為0.0001.經訓練后,train time(s)為329.6 s,損失率為0.833 526,MAE 為0.717 517.

在NNRAM-1 中參數值filter_num、batch_size、dropout_keep、learning_rate 不變的情況下,將網絡模型中全連接層的維數由200 更改為50 產生模型NNRAM-2,發現其訓練時間縮短將近一半,而Loss 及MAE 均有所下降.在進行數據挖掘時發現,電影的年份數據未得到使用,而根據觀影者的日常選擇,影視作品的年份在很大程度上影響著觀影者對其的選取,所以在讀取評分數據集后,將電影標題中的年份取出并與現在年份做差運算獲得的信息參與到電影信息特征提取中,產生模型NNRAM-3(全連接層維數為200)與NNRAM-4(全連接層維數為50),實驗結果表明在更改模型設置后,訓練時間、損失函數及平均絕對誤差均有所下降.訓練結果對比如表1所示.

表1 相關模型訓練結果參數對比

繼續對模型NNRAM-4 進行改進,卷積核的數量決定著計算時間的長短及特征提取的準確度,批處理量的大小影響著權重更新的質量,學習率的適度設置可以加快學習的速度,因此對更改模型的卷積核個數filter_num,對批處理參數batch_size、學習率learning_rate 值進行調整以達到運行結果相對最優,具體如表2所示;再將數據經過嵌入層、連接層及全連接層時的維度進行縮減;考慮到電影標題相當于一句話,一般詞組的詞素量為2~3 個,由此改變文本卷積時滑動窗口的單詞數量,使其適量減小.通過以上參數的調整產生了模型NNRAM-5、NNRAM-6、NNRAM-7,模型部分參數值如表3所示.模型NNRAM-7 中,求inference時w0、w1、b的值分別為0.4、0.6、0.28.

表2 相關模型部分參數對比

表3 相關模型數據維數對比

3.3 實驗結果分析

依次運行所設計的3 種模型,實驗結果如表4所示.

表4 改進后相關模型參數對比

當模型中各層的維數適量減小時,訓練時間會大幅減少,如圖3所示.而卷積核數量的適量減少及卷積時滑動窗口的數量的合理設置會使損失函數及平均絕對誤差(MAE)有所下降,如圖4所示,這意味著推薦的準確性隨之增加.

圖3 改進模型間訓練時間對比

圖4 改進模型間性能對比

當對NNRAM_1 與NNRAM_7 的3 次推薦結果進行對比時發現,加入與時間相關的字段后的模型NNRAM_7 所推薦的電影日期上都比較新穎,而未改進的模型NNRAM_1 所推薦的電影中部分時間比較久遠,如表5所示.電影年份早或過早,意味著效果不佳,被推薦對象與觀影者獵新習性相違背,觀影需求可能性較小.改進后的模型NNRAM_7 所推薦電影的時間均為與現在時間相近的,符合觀影者需求,所以推薦結果更容易被觀影者接納.

表5 相關模型推薦結果對比

文獻[18]中所提及的3 種算法改進的SlopeOne 算法、組合協同過濾算法、SVD 和CURE 協同過濾算法的MAE 分別為:1.5、1.38、1.57;文獻[19]中所提及的兩種算法UIPPSCF 和UCF 的MAE 分別為:0.791、0.824;將SlopeOne 算法、組合協同過濾算法、SVD和CURE 協同過濾算法、UIPPSCF 算法、UCF 算依次定位M1~M5,聯合NNRAM_7 算法其MAE 對比如圖5所示.將NNRAM_7 的MAE 值與前5 種模型的MAE 值作對比發現,NNRAM_7 的MAE值比前5 種的平均降低了將近44%.

圖5 傳統及改進模型間MAE 對比

3.4 Tensorboard 實現可視化

在神經網絡的訓練過程中,可以通過Tensorboard來記錄、監測每個epoch 的梯度值并以做出梯度消失、梯度爆炸等問題研究,可以實時檢測每次循環后損失率的變化及走勢,可以分析出權值的更新方向并判斷其是否符合規律,繼而對神經網絡學習率等參數做出相應的設置和調整以解決現有問題.

(1)損失率(Loss)可視化

Loss 圖像如圖6所示,損失率隨著迭代次數的增加在不斷下降,下降過程雖然存在震蕩,但整體持續下降趨勢非常明顯,損失率在不斷降低.通過觀測下降趨勢,可以考慮繼續加大訓練次數以降低損失率,并且這一過程時間損耗并不明顯.

圖6 損失率與迭代次數的關系

(2)梯度更新

卷積層中權重曲線縱坐標表示訓練次數,橫坐標表示權重值,曲線說明權重值隨著網絡的訓練也在波動做調整變化.良好訓練的網絡其偏置及權值反映在曲線上是美觀、光滑的,曲線缺乏結構性則表明訓練不夠理想.電影標題先后兩次池化過程中偏置bias 和權重weight 的直方圖如圖7所示,對比圖像可知訓練效果良好.

圖7 電影標題池化過程中偏置bias 和權重weight 的直方圖

4 結束語

本文嘗試了將普通神經網絡與卷積神經網絡相結合應用于推薦過程中的方法,將特征提取的過程用卷積神經網絡來實現,所形成的模型通過預測評分實現了準確率較高的電影推薦,且在推薦速度和推薦準確性等性能方面相對協同過濾推薦方法有大幅度提升,說明神經網絡可以較理想的實現精準性更高的推薦結果,雖然在適度的有限循環內模型的損失函數及平均絕對誤差呈現著明顯的下降趨勢,但還有待通過改進模型結構及調整參數取值進一步降低損失,使誤差趨近于最低值.另外,可以考慮將時間戳字段中日期時間的所有信息取出參與數據挖掘,因為影評的及時性也體現出觀影者對電影的情感深度,同時觀影的日期時間等信息也暗含了觀影者的其它諸多個人特征如職業及生活習性等,極具研究價值.

猜你喜歡
用戶模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
3D打印中的模型分割與打包
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 在线欧美日韩| 成人在线天堂| 国产成人三级在线观看视频| 免费国产高清视频| 91免费国产在线观看尤物| 国产黄在线免费观看| 中文字幕在线日本| 国产精品刺激对白在线| 国产精品第三页在线看| 波多野结衣视频一区二区| 午夜不卡福利| 99re热精品视频中文字幕不卡| 三区在线视频| 国产精品女熟高潮视频| 成人福利在线免费观看| 一区二区偷拍美女撒尿视频| 成人亚洲国产| 狠狠做深爱婷婷久久一区| 久久久久青草大香线综合精品| 亚洲日韩精品伊甸| 好吊色国产欧美日韩免费观看| 干中文字幕| 日本国产一区在线观看| 欧美色亚洲| 制服丝袜亚洲| 色有码无码视频| 无码中文AⅤ在线观看| 91人人妻人人做人人爽男同| 91小视频在线播放| 日韩精品高清自在线| 国产精品永久在线| 欧美特黄一级大黄录像| 亚洲欧洲一区二区三区| 黄片一区二区三区| 无码啪啪精品天堂浪潮av| 美女内射视频WWW网站午夜| 亚洲国产成人久久精品软件| 国产香蕉在线视频| 亚洲综合九九| 乱人伦视频中文字幕在线| 久久精品66| 亚洲国产综合精品一区| 亚洲乱伦视频| 国产精品无码影视久久久久久久| 香蕉视频在线观看www| 精品欧美视频| 国产尤物jk自慰制服喷水| 中文字幕无码av专区久久| 国产欧美又粗又猛又爽老| 国产99免费视频| 四虎永久在线精品国产免费| 亚洲天堂在线视频| 亚洲精品无码久久久久苍井空| 国产精鲁鲁网在线视频| 免费毛片视频| 久久这里只有精品国产99| 久久天天躁夜夜躁狠狠| 国产丰满大乳无码免费播放| 天堂av高清一区二区三区| 国产91丝袜| 国产a v无码专区亚洲av| 九色视频一区| 午夜国产精品视频黄| 丝袜国产一区| 极品av一区二区| julia中文字幕久久亚洲| 国产三级国产精品国产普男人| 欧美成人h精品网站| 国产一级毛片网站| 午夜视频在线观看免费网站| 青青热久免费精品视频6| 91精品aⅴ无码中文字字幕蜜桃 | 欧美中文字幕在线二区| 又黄又湿又爽的视频| 免费国产高清视频| 国产乱人激情H在线观看| 尤物成AV人片在线观看| 99久久精品国产自免费| 老司机aⅴ在线精品导航| 国内精品手机在线观看视频| 成人噜噜噜视频在线观看| 欧美福利在线观看|