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)用戶
主站蜘蛛池模板: aa级毛片毛片免费观看久| 亚洲人成网18禁| 欧美性猛交一区二区三区| 色男人的天堂久久综合| 在线观看欧美精品二区| 日韩视频精品在线| 亚洲国产精品不卡在线| 精品自窥自偷在线看| 国产精品专区第1页| 欧美成人h精品网站| 这里只有精品在线| 伊人久久大线影院首页| 久久久久久久久亚洲精品| 久久这里只精品国产99热8| 国产亚洲欧美日本一二三本道| 成人av专区精品无码国产| 日韩亚洲高清一区二区| 日本a级免费| 2022国产无码在线| 国产成人精品视频一区二区电影 | 日本欧美精品| 91美女视频在线观看| 欧美激情成人网| 国产中文一区二区苍井空| 国内丰满少妇猛烈精品播 | 亚洲国产午夜精华无码福利| 久久亚洲综合伊人| 亚洲精品少妇熟女| 国产精品性| 欧美成人午夜影院| 亚洲bt欧美bt精品| 亚洲国产一区在线观看| 国产手机在线小视频免费观看| 亚洲中文字幕国产av| 国产午夜无码专区喷水| 91精品aⅴ无码中文字字幕蜜桃| 国产福利观看| 扒开粉嫩的小缝隙喷白浆视频| 国产一级裸网站| 日韩福利在线观看| 国模沟沟一区二区三区| 欧美国产日产一区二区| 久草中文网| 青青网在线国产| 操美女免费网站| 55夜色66夜色国产精品视频| 亚洲欧美自拍中文| 日韩一区精品视频一区二区| 在线观看无码av免费不卡网站| 欧美69视频在线| 日韩精品一区二区深田咏美| 亚洲永久免费网站| 秋霞国产在线| 呦视频在线一区二区三区| 亚洲AV永久无码精品古装片| 在线免费观看AV| 国产精品午夜电影| 91免费国产在线观看尤物| 国产精品微拍| 91娇喘视频| 亚洲国产系列| 中文字幕有乳无码| 日韩高清欧美| 亚洲日韩AV无码一区二区三区人| 国产91麻豆免费观看| 国产交换配偶在线视频| 丝袜国产一区| 青青青草国产| 无码中文字幕精品推荐| 国产精女同一区二区三区久| 国产在线视频自拍| 国产亚洲精久久久久久久91| 欧美色亚洲| 国产免费久久精品99re丫丫一| 免费人成视网站在线不卡| 九九久久精品国产av片囯产区| 国产AV毛片| 免费人欧美成又黄又爽的视频| 国产欧美日韩另类精彩视频| 亚洲 欧美 日韩综合一区| 国产福利大秀91| 欧美a在线视频|