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

基于自編碼器的評(píng)分預(yù)測(cè)算法

2015-08-18 11:12:27韓偉森皮建勇貴州大學(xué)計(jì)算機(jī)科學(xué)與信息學(xué)院貴州貴陽(yáng)550025貴州大學(xué)云計(jì)算與物聯(lián)網(wǎng)研究中心貴州貴陽(yáng)550025
關(guān)鍵詞:用戶

韓偉森,皮建勇(1.貴州大學(xué) 計(jì)算機(jī)科學(xué)與信息學(xué)院,貴州 貴陽(yáng) 550025;2.貴州大學(xué) 云計(jì)算與物聯(lián)網(wǎng)研究中心,貴州 貴陽(yáng) 550025)

基于自編碼器的評(píng)分預(yù)測(cè)算法

韓偉森1,2,皮建勇1,2
(1.貴州大學(xué)計(jì)算機(jī)科學(xué)與信息學(xué)院,貴州貴陽(yáng) 550025;2.貴州大學(xué) 云計(jì)算與物聯(lián)網(wǎng)研究中心,貴州 貴陽(yáng) 550025)

評(píng)分預(yù)測(cè)是推薦系統(tǒng)的一個(gè)組成部分,通過(guò)一個(gè)實(shí)數(shù)表達(dá)對(duì)用戶的偏好進(jìn)行預(yù)測(cè),在學(xué)術(shù)界被廣泛研究。神經(jīng)網(wǎng)絡(luò)具有很強(qiáng)的特征提取能力,能獲取數(shù)據(jù)深層次的特征。使用神經(jīng)網(wǎng)絡(luò)中的一種網(wǎng)絡(luò)即自編碼器,通過(guò)擴(kuò)展使其具有處理像評(píng)分矩陣這種有缺失數(shù)據(jù)的矩陣的能力,并通過(guò)實(shí)驗(yàn)證明其預(yù)測(cè)結(jié)果與當(dāng)前主流的評(píng)分預(yù)測(cè)算法SVD的性能接近。

推薦系統(tǒng);神經(jīng)網(wǎng)絡(luò);自編碼器;評(píng)分預(yù)測(cè)

0 引言

協(xié)同過(guò)濾算法是推薦系統(tǒng)中較為常用的算法,因?yàn)槭褂脜f(xié)同過(guò)濾算法進(jìn)行推薦時(shí),只需收集用戶對(duì)某件物品的一個(gè)動(dòng)作表達(dá)用戶對(duì)物品的偏好程度,如評(píng)分、加入購(gòu)物車(chē)、購(gòu)買(mǎi)等,即可進(jìn)行推薦,這樣的數(shù)據(jù)對(duì)于電子商務(wù)網(wǎng)站或者視頻網(wǎng)站來(lái)說(shuō)是非常容易收集的。基于領(lǐng)域[1]的算法是協(xié)同過(guò)濾算法中最基本的算法,主要分為基于用戶的協(xié)同過(guò)濾算法,即給用戶B推薦物品,只需尋找與他相似的用戶并將該用戶喜歡而用戶B沒(méi)有看過(guò)的物品推薦給B。基于物品的協(xié)同過(guò)濾算法與基于用戶的思路類(lèi)似只是主體換成了物品,這兩種算法在業(yè)界被廣泛應(yīng)用。后來(lái)又出現(xiàn)了矩陣分解的方法,其中具有代表性的是SIMON F提出的SVD算法[2]。SVD算法是對(duì)用戶評(píng)分矩陣進(jìn)行分解,然后再重構(gòu),重構(gòu)的結(jié)果就是預(yù)測(cè)結(jié)果,SVD算法在評(píng)分預(yù)測(cè)方面的性能優(yōu)于傳統(tǒng)的基于鄰域的算法,在Netflix Prize競(jìng)賽中取得了巨大的成功。

神經(jīng)網(wǎng)又稱為多層感知器,因其具有強(qiáng)大的函數(shù)表達(dá)能力,可以表達(dá)復(fù)雜模型,是機(jī)器學(xué)習(xí)的一個(gè)重要研究分支,2006年HINTON G E[3]等人發(fā)明訓(xùn)練深度網(wǎng)絡(luò)的方法以后,具有深度結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)成為了機(jī)器學(xué)習(xí)領(lǐng)域的一個(gè)研究熱點(diǎn)。自編碼器是神經(jīng)網(wǎng)絡(luò)中一種用于無(wú)監(jiān)督學(xué)習(xí)的網(wǎng)絡(luò),本文提出一種關(guān)于自編碼器在評(píng)分預(yù)測(cè)上的擴(kuò)展,并與當(dāng)前熱門(mén)的評(píng)分預(yù)測(cè)算法SVD進(jìn)行試驗(yàn)對(duì)比。

1 算法

目前很多的機(jī)器學(xué)習(xí)工作都會(huì)使用自編碼器進(jìn)行無(wú)監(jiān)督學(xué)習(xí),得到一組好的特征表示來(lái)完成更高級(jí)的任務(wù)[4-5],使用這樣的方法獲得了顯著的效果。基于自編碼器有很強(qiáng)的發(fā)現(xiàn)潛在特征的能力,在評(píng)分預(yù)測(cè)中對(duì)于用戶評(píng)分矩陣,用已經(jīng)評(píng)分的部分作為輸入,使用自編碼器學(xué)習(xí)恒等函數(shù)y(x)≈x獲得數(shù)據(jù)更深層次的表達(dá),然后再利用這組表達(dá)去重構(gòu)評(píng)分矩陣缺失的部分,即得到預(yù)測(cè)值。

1.1網(wǎng)絡(luò)結(jié)構(gòu)

假設(shè)有N個(gè)用戶,M部電影,用戶對(duì)某個(gè)電影的評(píng)分為1~K之間的某個(gè)整數(shù),就形成了M×N的矩陣V,這個(gè)矩陣是一個(gè)有缺失數(shù)據(jù)的矩陣,如果用戶i沒(méi)有對(duì)電影j進(jìn)行評(píng)分則元素Vji就是缺失的。矩陣的一列的第i屬性表示用戶i對(duì)電影的評(píng)分,用矩陣V的一個(gè)列向量作為輸入給自編碼器。自編碼器輸入層的每一個(gè)節(jié)點(diǎn)代表用戶對(duì)當(dāng)前電影的評(píng)分,對(duì)于輸入向量中缺失評(píng)分的那個(gè)用戶,網(wǎng)絡(luò)中對(duì)應(yīng)的輸入的單元和輸出單元也是缺失的,這樣自編碼器會(huì)根據(jù)不同的電影輸入而改變網(wǎng)絡(luò)結(jié)構(gòu),但是隱藏層的單元數(shù)是固定的,單元之間的參數(shù)是共享的,網(wǎng)絡(luò)的結(jié)構(gòu)如圖1所示。在圖中展示了兩個(gè)電影輸入給自編碼器的情況,第一個(gè)電影只被用戶1、2、3、5評(píng)過(guò)分,則相應(yīng)的第 4個(gè)輸入和輸出節(jié)點(diǎn)是缺失的;第二個(gè)電影被用戶1、3、4評(píng)過(guò)分,則第2和第 5個(gè)節(jié)點(diǎn)是缺失的。

圖1 訓(xùn)練網(wǎng)絡(luò)

現(xiàn)在來(lái)分析特定電影被用戶評(píng)分的向量作為輸入情況下的自編碼器。假設(shè)電影被n個(gè)用戶評(píng)價(jià),h為隱藏層的單元個(gè)數(shù),則有如下符號(hào)定義:

v:神經(jīng)網(wǎng)絡(luò)的輸入,v∈Rn。

h:隱藏層的單元數(shù)。

其中 W(1)∈Rh×n,W(2)∈Rh×n。

輸入。

自編碼器的向前計(jì)算過(guò)程為:

損失函數(shù)為:

1.2網(wǎng)絡(luò)訓(xùn)練

網(wǎng)絡(luò)的訓(xùn)練采用反向傳播算法,包含向前階段和向后階段兩個(gè)過(guò)程。向前階段使用式(1)、(2)計(jì)算出預(yù)測(cè)值,在向后階段利用誤差向后傳播的思想計(jì)算梯度,即先計(jì)算l+1梯度,再計(jì)算l層的梯度。每個(gè)電影的輸入用向量v表示,則每個(gè)參數(shù)的梯度為:

使用 bath-method訓(xùn)練時(shí),不同電影的輸入被相同用戶評(píng)分為輸出單元和輸入單元,可以把與這些單元相關(guān)的參數(shù)的梯度進(jìn)行累加,作為總梯度來(lái)進(jìn)行參數(shù)的更新。

2006年Chu Chengtao[6]提出當(dāng)算法能夠?qū)懗梢环N稱為summation form的形式時(shí)這種算法就能很容易地進(jìn)行并行化訓(xùn)練,并給出了神經(jīng)網(wǎng)絡(luò)在 Map-Reduce框架下的并行化訓(xùn)練思路,本文提出的預(yù)測(cè)評(píng)分算法很容易擴(kuò)展到處理大數(shù)據(jù)的環(huán)境。

1.3預(yù)測(cè)

網(wǎng)絡(luò)訓(xùn)練完成后進(jìn)入到預(yù)測(cè)階段,如要預(yù)測(cè)用戶u1對(duì)電影的評(píng)分,網(wǎng)絡(luò)的輸入層到隱藏層不變,只需在輸出層增加一個(gè)關(guān)于用戶u1的輸出節(jié)點(diǎn),為了能夠預(yù)測(cè)其訓(xùn)練集中所有用戶對(duì)當(dāng)前電影的評(píng)分,可以把輸出層的節(jié)點(diǎn)數(shù)增加到N,網(wǎng)絡(luò)結(jié)構(gòu)修改如圖2所示。輸入層的節(jié)點(diǎn)4是缺失的,但是輸出層的節(jié)點(diǎn)4還在,因此輸出層的節(jié)點(diǎn)4就是算法對(duì)用戶4關(guān)于當(dāng)前電影的評(píng)分預(yù)測(cè)。然后使用式(1)、(2)對(duì)網(wǎng)絡(luò)進(jìn)行一次向前計(jì)算,即可得到網(wǎng)絡(luò)對(duì)電影被某個(gè)用戶評(píng)分的預(yù)測(cè)。

1.4利用隱式反饋

在推薦系統(tǒng)領(lǐng)域,會(huì)遇到一種叫做冷啟動(dòng)的問(wèn)題。網(wǎng)站有很多的電影和用戶,但是用戶對(duì)電影的評(píng)分卻很少,評(píng)分矩陣過(guò)于稀疏,導(dǎo)致評(píng)分預(yù)測(cè)精度下降。電影網(wǎng)站很容易獲得一種隱式的反饋,即用戶看過(guò)或?yàn)g覽過(guò)某部電影,但是因?yàn)槟撤N原因沒(méi)有給出評(píng)分,這種隱式的反饋,也可以在一定程度上解釋用戶的偏好,因此算法就可以利用這組隱式反饋數(shù)據(jù)。考慮向量d∈{0,1}N是一個(gè)長(zhǎng)度為N的0~1向量,表示電影是否被某個(gè)用戶查看過(guò),這樣就可以通過(guò)這組向量去影響隱藏層的表示,這時(shí)對(duì)式(1)進(jìn)行修改如下:

其中,θ為新增參數(shù) θ=Rh×N,θ的梯度為:

圖2 預(yù)測(cè)網(wǎng)絡(luò)

2 實(shí)驗(yàn)

本次實(shí)驗(yàn)采用 MoiveLens-100k數(shù)據(jù)集,其中含有943個(gè)用戶對(duì) 1 682部電影的 10萬(wàn)次評(píng)分,評(píng)分取值是從1~5之間的整數(shù),實(shí)驗(yàn)前需要對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,即對(duì)整個(gè)數(shù)據(jù)除以5,最后算法的輸出結(jié)果乘以5得到最終的預(yù)測(cè)結(jié)果。在實(shí)驗(yàn)中把數(shù)據(jù)集劃分為不相交的兩部分,第一部分包含9萬(wàn)個(gè)用戶評(píng)分作為訓(xùn)練集,剩下的作為測(cè)試集驗(yàn)證預(yù)測(cè)效果,上述過(guò)程會(huì)重復(fù)劃分10次,進(jìn)行10次訓(xùn)練和預(yù)測(cè)。預(yù)測(cè)結(jié)果的評(píng)價(jià)采用評(píng)分預(yù)測(cè)中常用的均方根誤差(RMSE)作為評(píng)分標(biāo)準(zhǔn)。假設(shè)用戶u對(duì)電影i的真實(shí)評(píng)分為 rui,算法預(yù)測(cè)評(píng)分為r?ui,T是一個(gè)集合存放測(cè)試集中用戶u對(duì)電影i評(píng)分的二元組,則RMSE的計(jì)算公式為:

每次訓(xùn)練,把訓(xùn)練數(shù)據(jù)分成 10批(batche),每批含有 168個(gè)電影的訓(xùn)練用例,最后一批含有 170個(gè)電影訓(xùn)練用例,每一批計(jì)算完梯度后進(jìn)行參數(shù)更新,神經(jīng)網(wǎng)絡(luò)的隱藏單元個(gè)數(shù)設(shè)置為50。對(duì)比實(shí)驗(yàn)選擇當(dāng)下預(yù)測(cè)評(píng)分算法中比較流行的 SVD,SVD的隱式因子設(shè)定為 50,數(shù)據(jù)全部經(jīng)過(guò)算法訓(xùn)練一次記一個(gè)周期(epoch),訓(xùn)練50個(gè)周期,在 1~50個(gè)周期的誤差中選擇最好的訓(xùn)練結(jié)果,如圖3所示。10次測(cè)試的平均結(jié)果如表1所示。從結(jié)果來(lái)看,基于自編碼器的評(píng)分預(yù)測(cè)算法性能在當(dāng)前數(shù)據(jù)集上好于SVD,帶有隱式反饋的自編碼器性能略好于原始的自編碼器,但是提升效果不明顯,僅有 0.06。

3 結(jié)論

本文提出了一種基于自編碼器的評(píng)分預(yù)測(cè)算法,在MoiveLens數(shù)據(jù)集上獲得了不錯(cuò)的效果,實(shí)驗(yàn)中的參數(shù)并沒(méi)有被很好地調(diào)節(jié),算法還有提高的可能性,用戶的隱式反饋雖然還能提高算法的預(yù)測(cè)精度,但是在實(shí)驗(yàn)中提高僅僅只有 0.06,并不明顯,如何更好地利用這種隱式反饋需要進(jìn)一步研究。通常在獲取的用戶評(píng)分?jǐn)?shù)據(jù)中往往帶有時(shí)間屬性,而這也是一個(gè)非常好收集到的屬性,KOREN Y提出的一個(gè) SVD的變種[1]中使用了時(shí)間屬性并取得了好的成績(jī),今后的研究中會(huì)考慮把時(shí)間屬性加入到自編碼器模型中。近年來(lái)基于深度結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)成為機(jī)器學(xué)習(xí)研究的熱點(diǎn),已被成功地使用到很多領(lǐng)域,如自然語(yǔ)言處理、信息檢索、分類(lèi)。未來(lái)利用具有構(gòu)建深度結(jié)構(gòu)的自編碼器來(lái)提高預(yù)測(cè)結(jié)果也值得進(jìn)一步研究。

圖3 模型迭代結(jié)果

表1 測(cè)試結(jié)果

[1]項(xiàng)亮.推薦系統(tǒng)實(shí)戰(zhàn)[M].北京:人民郵電出版社,2012.

[2]SIMON F.Netfix update:tray this at home[EB/OL].[2006-12-11](2014-09-01).http://sifter.org/~simon/journal/20061211. html.

[3]HINTON G E,OSINDERO S,TEH Y.A fast learning algorithm for deep belief nets[J].Neural Computation,2006,(18):1527-1554.

[4]RAINA R,BATTLE A,LEE H,et al.Self-taught learning:transfer learning from unlabeled data[C].Proceedings of the24thInternationalConferenceonMachineLearning,ICML 2007,2007:759-766.

[5]HINTON G E,SALAKHUTDINOV R.Reducing the dimensionality of data with neural networks[J].Science,2006,31 (3):504-507.

[6]Chu Chengtao,KIM S K,Lin Yian,el al.Map-reduce for machine learning on multicore[C].NIPS 2006.

A rating prediction algorithm based on autoencoder

Han Weisen1,2,Pi Jianyong1,2
(1.College of Computer Science and Information,Guizhou University,Guiyang 550025,China;2.Research Centre of Cloud Computing and Internet of Things,Guizhou University,Guiyang 550025,China)

Rating prediction is a part of recommender system,and capturing user′s preference through a number has been extensively studied in academia.Neural network is a powerful framework which has a strong feature extraction capabilities and can obtain deep structure in data.In this paper,we use a kind of unsupervised learning neural network namely autoencoder,by extending this model let it can handle the user rating matrix which has missing rating.Experiments show that the performance is similar with SVD which is the most popular of rating prediction algorithm.

recommender system;neural network;autoencoder;rating prediction

TP183

A

1674-7720(2015)02-0011-03

(2014-09-29)

韓偉森(1990-),男,碩士,主要研究方向:機(jī)器學(xué)習(xí)。

皮建勇(1973-),男,博士,副教授,主要研究方向:數(shù)據(jù)挖掘,人工智能,分布式并行計(jì)算。

猜你喜歡
用戶
雅閣國(guó)內(nèi)用戶交付突破300萬(wàn)輛
您撥打的用戶已戀愛(ài),請(qǐng)稍后再哭
關(guān)注用戶
關(guān)注用戶
兩新黨建新媒體用戶與全網(wǎng)新媒體用戶之間有何差別
關(guān)注用戶
關(guān)注用戶
挖掘用戶需求尖端科技應(yīng)用
Camera360:拍出5億用戶
100萬(wàn)用戶
主站蜘蛛池模板: 国产激情影院| 亚洲人成网站观看在线观看| 日a本亚洲中文在线观看| 中文成人无码国产亚洲| 在线观看欧美精品二区| 国产成人高清精品免费| 亚洲人成电影在线播放| 国产欧美日韩视频怡春院| 热久久这里是精品6免费观看| 九色综合伊人久久富二代| 亚洲一区波多野结衣二区三区| 亚洲色图欧美在线| 欧美不卡在线视频| www.99精品视频在线播放| 2022国产无码在线| 亚洲国产成人麻豆精品| 亚洲国产中文在线二区三区免| 麻豆a级片| 欧美午夜性视频| 四虎综合网| av一区二区三区高清久久| 日韩欧美国产精品| av大片在线无码免费| 久久国产精品影院| 国产成人精品高清不卡在线| 亚洲—日韩aV在线| 亚洲天堂成人在线观看| 一区二区偷拍美女撒尿视频| 国产福利一区二区在线观看| 精品无码专区亚洲| 亚洲Av激情网五月天| 一级毛片在线免费视频| 一本一道波多野结衣av黑人在线| 久久久久久久97| 亚洲视频四区| 看你懂的巨臀中文字幕一区二区 | 玖玖精品视频在线观看| 中国国产A一级毛片| 亚洲浓毛av| 色九九视频| 特级毛片免费视频| 国产香蕉一区二区在线网站| 91青青草视频| 激情国产精品一区| 婷婷激情亚洲| 精品少妇人妻一区二区| 一级毛片免费高清视频| 亚洲国产亚综合在线区| 欧美成人亚洲综合精品欧美激情 | 国产成人久久综合777777麻豆| 九九热在线视频| 久久精品这里只有国产中文精品| 在线99视频| 国产69精品久久| 久久久久久尹人网香蕉 | 国产丝袜无码精品| 国产精品久久自在自线观看| 国产三级国产精品国产普男人| 毛片大全免费观看| 亚洲精品欧美重口| AV无码一区二区三区四区| 欧美国产精品不卡在线观看| 国产美女精品一区二区| 2019年国产精品自拍不卡| 色婷婷综合在线| 欧美精品一区二区三区中文字幕| 黄色网站在线观看无码| A级毛片高清免费视频就| 中文字幕在线永久在线视频2020| 欧美啪啪精品| 东京热av无码电影一区二区| 国产情侣一区二区三区| 91麻豆精品国产91久久久久| 亚洲成人网在线播放| 婷婷色中文| 91精品专区| 欧美日韩高清在线| 91po国产在线精品免费观看| 亚洲区第一页| 国产精品亚洲片在线va| 国产精品永久免费嫩草研究院| 亚洲91精品视频|