亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        感知用戶年齡的Item-based協(xié)同過濾推薦算法

        2019-06-14 07:36:38張彩廷祝永志
        關(guān)鍵詞:用戶實(shí)驗(yàn)

        張彩廷,祝永志

        (曲阜師范大學(xué) 信息科學(xué)與工程學(xué)院,山東 日照 276826)

        0 引 言

        在被稱之為“大數(shù)據(jù)時(shí)代”[1]的今天,電子商務(wù)琳瑯滿目的商品、休閑娛樂軟件數(shù)不盡的電影和音樂、每天大大小小的新聞事件以及社交網(wǎng)站中充滿的無限可能,使得人們的生活豐富多彩,但如何從如此大量的信息中快速找到自己需要的或感興趣的信息成為互聯(lián)網(wǎng)平臺(tái)的挑戰(zhàn)。當(dāng)前,推薦系統(tǒng)成為人們互聯(lián)網(wǎng)生活中的“引路人”,其在電子商務(wù)中的主要功能有:吸引新用戶,即向潛在的新客戶推薦物品將訪客轉(zhuǎn)換為購(gòu)買者;激勵(lì)老用戶,即根據(jù)他們之前購(gòu)買的物品向老客戶推薦更多他們可能喜歡的物品;改善客戶服務(wù),提高系統(tǒng)與用戶的交互[2]。目前,在推薦系統(tǒng)中應(yīng)用最廣泛的是協(xié)同過濾推薦算法。

        文中首先簡(jiǎn)要介紹了相關(guān)研究,在對(duì)傳統(tǒng)算法的基本思想和相關(guān)技術(shù)進(jìn)行簡(jiǎn)單描述的基礎(chǔ)上提出了一種改進(jìn)算法,并通過實(shí)驗(yàn)進(jìn)行了驗(yàn)證。

        1 相關(guān)研究

        對(duì)于推薦算法,已經(jīng)有不少學(xué)者針對(duì)其各方面存在的問題提出了各種各樣的改進(jìn)方法。例如,文獻(xiàn)[3]為了緩解數(shù)據(jù)稀疏性問題,提出了綜合用戶特征及專家信任的協(xié)作過濾推薦算法;文獻(xiàn)[4]主要考慮用戶特征隨時(shí)間的動(dòng)態(tài)變化,進(jìn)行精確相似度的計(jì)算,并解決冷啟動(dòng)問題;文獻(xiàn)[5]提出對(duì)用戶評(píng)分矩陣進(jìn)行兩個(gè)維度聯(lián)合聚類,然后在類內(nèi)進(jìn)行矩陣分解預(yù)測(cè)評(píng)分的兩階段聯(lián)合聚類協(xié)同過濾算法,以提升推薦實(shí)時(shí)性;文獻(xiàn)[6]將基于用戶的協(xié)同過濾算法運(yùn)行在Hadoop平臺(tái),將多任務(wù)映射到不同的處理器上,以解決算法擴(kuò)展性的問題。

        文中受上述文獻(xiàn)啟發(fā),提出一種感知用戶年齡的Item-based協(xié)同過濾推薦算法,該算法在推薦系統(tǒng)的實(shí)時(shí)性、精確性和可擴(kuò)展性上均有所改善。

        2 傳統(tǒng)Item-based協(xié)同過濾推薦算法

        2.1 相關(guān)技術(shù)

        (1)相似度計(jì)算。

        Item-based協(xié)同過濾算法常用有三種相似度計(jì)算方法[7]:

        余弦相似度:

        (1)

        修正余弦相似度:

        (2)

        Pearson相關(guān)性相似度:

        (3)

        (2)項(xiàng)目鄰居選擇。

        將所有Item對(duì)的相似度組成一個(gè)項(xiàng)目相似度矩陣,每行為一個(gè)項(xiàng)目i的相似度向量,將每行的相似度都從大到小降序排列,選出相似度最高的前k個(gè)項(xiàng)目,作為該行項(xiàng)目i的鄰居項(xiàng)目,所組成的集合標(biāo)記為KNNI(i)。集合之外的相似度不用于目標(biāo)用戶預(yù)測(cè)評(píng)分的參考[8],根據(jù)需求可以調(diào)整k的大小來控制算法計(jì)算量和精度。

        (3)評(píng)分預(yù)測(cè)。

        (4)

        該評(píng)分預(yù)測(cè)算法是在該項(xiàng)目評(píng)分平均值的基礎(chǔ)上,利用相似度和目標(biāo)用戶對(duì)其他項(xiàng)目的評(píng)分的加權(quán)平均值來計(jì)算預(yù)測(cè)評(píng)分[6]。

        2.2 算法描述

        Item-based協(xié)同過濾算法的基本思想為:根據(jù)用戶的歷史行為信息計(jì)算項(xiàng)目間的相似度,從而預(yù)測(cè)用戶的其他喜好以及喜好程度,根據(jù)預(yù)測(cè)為其進(jìn)行推薦,算法主要步驟[9]如下:

        (1)利用原始數(shù)據(jù)生成用戶-項(xiàng)目評(píng)分矩陣;

        (2)選擇相似度計(jì)算方法,計(jì)算所有項(xiàng)目之間的相似度,并篩選出每個(gè)項(xiàng)目相似度最高的k個(gè)鄰居項(xiàng)目;

        (3)依據(jù)目標(biāo)用戶對(duì)該項(xiàng)目的鄰居項(xiàng)目的歷史評(píng)分,利用評(píng)分預(yù)測(cè)算法來預(yù)測(cè)目標(biāo)用戶對(duì)該項(xiàng)目的評(píng)分;

        (4)將對(duì)目標(biāo)用戶預(yù)測(cè)出評(píng)分的項(xiàng)目進(jìn)行排序,從高到低選擇一定數(shù)量對(duì)目標(biāo)用戶進(jìn)行推薦。

        3 感知用戶年齡的Item-based協(xié)同過濾推薦算法

        3.1 算法改進(jìn)

        (1)冷啟動(dòng)問題是指新加入的用戶和項(xiàng)目因?yàn)闆]有相關(guān)歷史數(shù)據(jù)而導(dǎo)致無法進(jìn)行相似度的相關(guān)計(jì)算,因此不能對(duì)其進(jìn)行推薦。相對(duì)于新項(xiàng)目冷啟動(dòng)問題,新用戶冷啟動(dòng)問題在現(xiàn)實(shí)的推薦系統(tǒng)中表現(xiàn)得更為突出。為解決用戶冷啟動(dòng)問題,文中在傳統(tǒng)的用戶評(píng)分?jǐn)?shù)據(jù)集的基礎(chǔ)上加入用戶特征數(shù)據(jù)集。用戶特征數(shù)據(jù)集包含的用戶特征有:年齡、性別、職業(yè)和郵政編碼,相關(guān)專家給出四個(gè)特征的權(quán)重比值為4∶3∶2∶1[4],可以看出年齡特征所占比重最大。因此,首先根據(jù)用戶年齡特征對(duì)用戶評(píng)分?jǐn)?shù)據(jù)集進(jìn)行預(yù)處理,將不同年齡段的用戶分成不同的組。在組內(nèi)進(jìn)行項(xiàng)目間的相似度計(jì)算,這些局部項(xiàng)目間的相似度的計(jì)算大大減小,提高了推薦實(shí)時(shí)性[10]。

        (2)傳統(tǒng)Item-based協(xié)同過濾算法的相似度計(jì)算并不能準(zhǔn)確反映項(xiàng)目間的相似程度,針對(duì)該問題,文中使用加權(quán)相似度。共同評(píng)分的用戶數(shù)量越多,則該相似度有效度越高,故權(quán)重選取為同一Item對(duì)打分的用戶數(shù)量[11],加權(quán)相似度計(jì)算公式如下:

        加權(quán)余弦相似度:

        (5)

        加權(quán)Pearson相關(guān)性相似度:

        (6)

        其中,n為項(xiàng)目i和項(xiàng)目j共同打分的用戶數(shù)量;其余元素與式1~3中含義相同。

        (3)隨著推薦系統(tǒng)使用時(shí)間的增長(zhǎng)和用戶數(shù)量的增多,系統(tǒng)數(shù)據(jù)規(guī)模會(huì)快速擴(kuò)展,傳統(tǒng)的單機(jī)推薦算法對(duì)于海量的用戶和項(xiàng)目歷史數(shù)據(jù)是無能為力的,不論是存儲(chǔ)還是計(jì)算無疑都成為了難題。分布式計(jì)算平臺(tái)的出現(xiàn)解決了推薦系統(tǒng)可擴(kuò)展性的難題。文中利用Spark分布式計(jì)算平臺(tái)和HDFS分布式存儲(chǔ)系統(tǒng)相結(jié)合的方式,Spark基于內(nèi)存計(jì)算,HDFS具有高容錯(cuò)性、適合批處理等特點(diǎn),能夠滿足大數(shù)據(jù)計(jì)算和存儲(chǔ)的需求[12]。

        Spark是基于內(nèi)存的分布式計(jì)算框架,通過對(duì)彈性分布式數(shù)據(jù)集(RDD)的操作來進(jìn)行計(jì)算,這些計(jì)算會(huì)在集群上自動(dòng)并行執(zhí)行[13]。每個(gè)應(yīng)用需要一個(gè)驅(qū)動(dòng)器程序來發(fā)起,它通過一個(gè)SparkContext對(duì)象來訪問Spark,這個(gè)對(duì)象代表對(duì)計(jì)算集群的一個(gè)連接[14],驅(qū)動(dòng)器程序一般要管理多個(gè)執(zhí)行器節(jié)點(diǎn),計(jì)算會(huì)被分配到所有的節(jié)點(diǎn)上執(zhí)行。Spark在集群上的運(yùn)行如圖1所示。

        3.2 算法描述

        輸入:用戶評(píng)分?jǐn)?shù)據(jù)集,用戶特征數(shù)據(jù)集,目標(biāo)用戶年齡標(biāo)識(shí);

        輸出:對(duì)目標(biāo)用戶的預(yù)測(cè)評(píng)分集。

        (1)用戶特征矩陣提取年齡特征列,數(shù)據(jù)集已對(duì)年齡進(jìn)行分段標(biāo)識(shí);

        (2)用戶評(píng)分矩陣提取User ID,Movie ID,評(píng)分對(duì)應(yīng)的列,不使用時(shí)間戳數(shù)據(jù);

        (3)根據(jù)目標(biāo)用戶年齡段,提取該類別用戶的評(píng)分?jǐn)?shù)據(jù),并格式化為非嵌套元組,并將數(shù)據(jù)按4∶1分為訓(xùn)練集和測(cè)試集;

        (4)計(jì)算類內(nèi)訓(xùn)練集項(xiàng)目相似度矩陣,記錄各個(gè)Item的最近鄰集;

        (5)預(yù)測(cè)評(píng)分算法對(duì)訓(xùn)練集的空缺數(shù)據(jù)進(jìn)行預(yù)測(cè)。

        圖1 Spark運(yùn)行原理

        4 實(shí)驗(yàn)及結(jié)果分析

        4.1 實(shí)驗(yàn)數(shù)據(jù)集與實(shí)驗(yàn)環(huán)境

        實(shí)驗(yàn)采用MovieLens網(wǎng)站提供的1 MB數(shù)據(jù)集,文中使用了其中的ratings.dat和users.dat兩個(gè)數(shù)據(jù)集,ratings.dat是一百多萬條用戶電影評(píng)分?jǐn)?shù)據(jù),users.dat是參與評(píng)分的六千多名用戶特征信息。

        實(shí)驗(yàn)環(huán)境為虛擬機(jī)上架設(shè)的三個(gè)節(jié)點(diǎn)的Hadoop集群,系統(tǒng)為Ubuntu16.04,Spark為2.1.0版本,運(yùn)行在Hadoop集群,其依賴于Yarn,HDFS作為存儲(chǔ)平臺(tái),采用Python語言進(jìn)行實(shí)驗(yàn)編程。

        4.2 實(shí)驗(yàn)設(shè)計(jì)與結(jié)果分析

        首先用傳統(tǒng)Item-based推薦算法,分別用余弦相似度和Pearson相關(guān)性相似度對(duì)數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。實(shí)驗(yàn)數(shù)據(jù)共1 000 209條評(píng)分?jǐn)?shù)據(jù),按4∶1分為訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù),由于數(shù)據(jù)量過大,僅取鄰居數(shù)為10,對(duì)此數(shù)據(jù)集進(jìn)行了三次實(shí)驗(yàn),運(yùn)行時(shí)間都在3 000 s以上,每次實(shí)驗(yàn)都需要耗費(fèi)大量時(shí)間。MAE(平均絕對(duì)誤差)如表1所示。

        表1 傳統(tǒng)算法實(shí)驗(yàn)結(jié)果

        如表1所示,兩種相似度推薦算法測(cè)試出的MAE都大于1,可見傳統(tǒng)推薦算法推薦效果并不理想。

        感知用戶年齡的Item-based協(xié)同過濾推薦算法中分類標(biāo)識(shí)規(guī)則為:18歲以下、18歲~24歲、25歲~34歲、35歲~44歲、45歲~49歲、50歲~55歲、56歲以上,分別標(biāo)識(shí)為1、18、25、35、45、50和56。每組用戶數(shù)量與總數(shù)量相比大大減少,比例最大的不到40%,最小的為2.7%。實(shí)驗(yàn)結(jié)果顯示不同用戶組實(shí)驗(yàn)運(yùn)行時(shí)間最長(zhǎng)為2 934 s,最短為82 s,可見改進(jìn)算法在很大程度上提高了推薦的實(shí)時(shí)性。

        利用改進(jìn)算法同樣進(jìn)行了兩組實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖2~圖5所示。

        圖2和圖3是第一組采用傳統(tǒng)相似度的各年齡段實(shí)驗(yàn)結(jié)果,18歲以下和18~24歲這兩組用戶的MAE在0.7~0.9之間,其余用戶組實(shí)驗(yàn)的MAE結(jié)果可以控制在0.7~0.8之間,比18歲以下和18至24歲兩組用戶的推薦結(jié)果更為精確。這說明,24歲以下用戶愛好并不穩(wěn)定,該分組數(shù)據(jù)質(zhì)量不高,隨著年齡增長(zhǎng)用戶興趣逐漸趨于穩(wěn)定,推薦準(zhǔn)確度也相應(yīng)提高[15]。從項(xiàng)目鄰居數(shù)的選取角度來看,隨著鄰居數(shù)目的增大,MAE變化率不斷減小。與傳統(tǒng)推薦算法相比,MAE都在1以下,而且最小達(dá)0.706 0,精確度有大幅提高。

        圖2 第一組實(shí)驗(yàn)結(jié)果(1)

        圖3 第一組實(shí)驗(yàn)結(jié)果(2)

        圖4和圖5是第二組實(shí)驗(yàn)結(jié)果,相似度采用Pearson相關(guān)性相似度,實(shí)驗(yàn)結(jié)果同樣顯示18歲以下和18~24歲這兩組用戶MAE偏高,其余用戶組使用該算法MAE控制在0.65~0.8之間,推薦精度大大提高。

        圖4 第二組實(shí)驗(yàn)結(jié)果(1)

        圖5 第二組實(shí)驗(yàn)結(jié)果(2)

        由上述實(shí)驗(yàn)結(jié)果可以說明該算法能夠保證推薦精度,提高推薦實(shí)時(shí)性,并且運(yùn)行在分布式集群上具有可擴(kuò)展性。該算法適用于計(jì)算資源有限,需要減少計(jì)算量,能夠與用戶有效交互,為用戶提供精準(zhǔn)個(gè)性化推薦的推薦系統(tǒng)。

        5 結(jié)束語

        針對(duì)傳統(tǒng)Item-based協(xié)同過濾算法存在的相關(guān)問題,提出一種感知用戶年齡的Item-based協(xié)同過濾推薦算法。新用戶進(jìn)入系統(tǒng)時(shí)根據(jù)年齡信息,利用相應(yīng)組內(nèi)的用戶歷史信息為其推薦,降低了計(jì)算相似度階段的計(jì)算量;采用加權(quán)相似度提高了推薦準(zhǔn)確度;并且該算法運(yùn)行在Spark分布式集群,具有可擴(kuò)展性。通過實(shí)驗(yàn)表明,該算法在計(jì)算效率和推薦精度方面都有一定程度的改善。

        猜你喜歡
        用戶實(shí)驗(yàn)
        記一次有趣的實(shí)驗(yàn)
        微型實(shí)驗(yàn)里看“燃燒”
        做個(gè)怪怪長(zhǎng)實(shí)驗(yàn)
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        NO與NO2相互轉(zhuǎn)化實(shí)驗(yàn)的改進(jìn)
        實(shí)踐十號(hào)上的19項(xiàng)實(shí)驗(yàn)
        太空探索(2016年5期)2016-07-12 15:17:55
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        Camera360:拍出5億用戶
        100萬用戶
        91露脸半推半就老熟妇| 日日噜噜夜夜狠狠久久无码区| 亚洲啪啪综合av一区| 亚洲欧洲国产日产国码无码 | 欧美人与动人物姣配xxxx| 国产精品18久久久久网站| 乱人伦人妻中文字幕不卡| 亚洲一本二区偷拍精品| 色欲色香天天天综合vvv| 在线天堂www中文| 真人男女做爰无遮挡免费视频| 国产91 对白在线播放九色| 韩国女主播一区二区三区在线观看| 最新国产熟女资源自拍| 极品少妇被猛的白浆直喷白浆| 久久中文字幕乱码免费| 久久亚洲av成人无码软件| 精品中文字幕手机在线| 国产自拍在线视频91| 风流老熟女一区二区三区| 久久久久国产一区二区三区| 亚洲中文欧美日韩在线| 丰满人妻被持续侵犯中出在线| 内射干少妇亚洲69xxx| 国产精品人妻一区夜夜爱| 高潮社区51视频在线观看| 国产主播一区二区三区在线观看| 99久久无码一区人妻| 少妇人妻200篇白洁| 国产成社区在线视频观看| 男女上床免费视频网站| 久久人人爽人人爽人人片av高请| 精品人妻伦九区久久aaa片| 欧美伊人网| 日本高清在线一区二区| 久久一道精品一区三区| 日本熟日本熟妇中文在线观看| 精品性影院一区二区三区内射| 亚洲av网站首页在线观看| 久久一区二区三区少妇人妻| 人人鲁人人莫人人爱精品|