新聞中心

EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > 一種融合社會(huì)化標(biāo)簽的協(xié)同過(guò)濾推薦算法

一種融合社會(huì)化標(biāo)簽的協(xié)同過(guò)濾推薦算法

作者:?郝龍飛 王圣濤 劉小波 時(shí)間:2017-02-28 來(lái)源:電子產(chǎn)品世界 收藏

     推薦系統(tǒng)是為解決信息過(guò)載和發(fā)掘長(zhǎng)尾物品而提出的一種有效的工具,它與搜索引擎相互配合,共同為用戶(hù)提 供可靠便捷的服務(wù)。推薦系統(tǒng)可以應(yīng)用在很多場(chǎng)合,比如電 影、音樂(lè)、圖書(shū)、文章、新聞、網(wǎng)頁(yè)和廣告等領(lǐng)域。代表性 網(wǎng)站有亞馬遜、Netflix、豆瓣、LastFM、YouTube、Facebook 以及淘寶等。推薦系統(tǒng)可以提供個(gè)性化的推薦,滿(mǎn)足用戶(hù)隨 時(shí)變化和差異化的需求
     社會(huì)化作為Web2.0發(fā)展的產(chǎn)物,是一種非常有效 的網(wǎng)絡(luò)資源組織工具。社會(huì)化有兩方面的含義:第一, 表示用戶(hù)的興趣;第二,表示物品的語(yǔ)義。通過(guò)用戶(hù)和 物品可以聯(lián)系起來(lái)。利用社會(huì)化標(biāo)簽可以組織網(wǎng)站內(nèi)容,推 薦物品以及標(biāo)簽。社會(huì)化標(biāo)簽除了這些功用外,還可以與現(xiàn) 有的推薦系統(tǒng)配合,產(chǎn)生更加有效的推薦,這是本文所要研 究的內(nèi)容,利用社會(huì)化標(biāo)簽信息,在經(jīng)典的基于評(píng)分的推薦 系統(tǒng)上產(chǎn)生更好的推薦效果。將社會(huì)化標(biāo)簽和評(píng)分相融合的也是推薦系統(tǒng)領(lǐng)域 研究的一個(gè)熱門(mén)方向。Tso-Sutter提出了
一種可以將標(biāo)簽融合 于標(biāo)準(zhǔn)的,他直接將標(biāo)簽當(dāng)作二值化數(shù)據(jù),作 為用戶(hù)的特征向量或物品的特征向量。Bogers和Van Den Bosh 通過(guò)計(jì)算標(biāo)簽的重合度,來(lái)表示用戶(hù)或物品之間的相似度。Gemmel提出了加權(quán)的混合推薦,他將基于圖的標(biāo)簽推
薦算法和基于用戶(hù)和物品的算法相結(jié)合,通過(guò)加權(quán)計(jì)算二者的流行度產(chǎn)生推薦。
Gedikli和Jannach利用標(biāo)簽來(lái)表示用戶(hù)喜歡或不喜歡的物品具有的特征,通過(guò)對(duì)標(biāo)簽的評(píng)分可以得到用戶(hù)最終對(duì)物品的評(píng)分。Yi zhen在評(píng)分矩陣上使用了PMF產(chǎn)生推薦,將 標(biāo) 簽 信 息 加 入 到PMF的正則化項(xiàng) 中,在模型生成的 過(guò) 程 中 融 入 了 標(biāo)

本文引用地址:http://butianyuan.cn/article/201702/344572.htm

圖1  標(biāo)簽擴(kuò)展評(píng)分矩陣
簽的信息。此外,還有更加復(fù)雜的方法。Yueshen Xu和JianweiYin提出了一種可以把UGC(User Generated Content)信息和 評(píng)分結(jié)合的方法,UGC包括標(biāo)簽和評(píng)論,所使用的方法是 CTR(Collaborative Topic Regression),該方法于2011年被Wang 和Blei提出,是結(jié)合PMF和LDA的一種混合模型,CTR不僅可 以被用來(lái)做評(píng)分預(yù)測(cè),還可以獲取物品描述中的隱變量。
本文結(jié)合現(xiàn)有的基于內(nèi)存的推薦算法,提出了一種整 合隱語(yǔ)義向量的標(biāo)簽融合算法,下面將重點(diǎn)介紹該算法以及 相關(guān)的一些內(nèi)容,最后對(duì)算法的有效性進(jìn)行驗(yàn)證。

1  相關(guān)推薦算法
1.1  基于內(nèi)存的算法
1.1.1 基于用戶(hù)的算法
基于用戶(hù)的協(xié)同過(guò)濾算法的思想是:具有相同愛(ài)好的 用戶(hù)會(huì)選擇相同的物品。該算法包括兩個(gè)步驟:a.找到和目 標(biāo)用戶(hù)興趣相似的用戶(hù)集合;b.找出這個(gè)集合中用戶(hù)喜歡但 是目標(biāo)用戶(hù)沒(méi)有購(gòu)買(mǎi)的物品。每一個(gè)用戶(hù)可以看作是n維向量,每一個(gè)物品的評(píng)分作 為向量的元素,這樣用戶(hù)的相似度就可以轉(zhuǎn)換為計(jì)算向量的 相似度。下面是三種常見(jiàn)的相似度計(jì)算的方法。

其中(1)是歐式距離,(2)是余弦?jiàn)A角,(3)是Pearson相關(guān)系數(shù)。ru,i 為用戶(hù)u對(duì)物品i的評(píng)分,    和  分別是用戶(hù)u和用 戶(hù)v在各自所評(píng)物品集上的均值。在計(jì)算獲得目標(biāo)用戶(hù)的相似用戶(hù)集后,便可根據(jù)相似用戶(hù)預(yù)測(cè)待推薦物品的評(píng)分。評(píng)分的計(jì)算公式為式(4)。

其中 S (u , K ) 表示目標(biāo)用戶(hù)u的K個(gè)相似用戶(hù), 表示對(duì)物品 i評(píng)過(guò)分的用戶(hù)集合,最終的相似用戶(hù)是這兩個(gè)集合的交集。 ru 和 rn 分別表示用戶(hù)u和用戶(hù)n在各自評(píng)分集上的均值。該公式 的含義是對(duì)所有相似用戶(hù)對(duì)物品i的評(píng)分作加權(quán)平均。
1.1.2   基于物品的協(xié)同過(guò)濾算法
基于物品的協(xié)同過(guò)濾算法分為兩個(gè)步驟:a. 根據(jù)用戶(hù)已 評(píng)分過(guò)的物品分別找出每個(gè)物品的K個(gè)相似度最高的物品。 b.找出用戶(hù)未做評(píng)價(jià)的物品預(yù)測(cè)其分?jǐn)?shù)。計(jì)算目標(biāo)物品的相似物品是將每個(gè)物品看作是一個(gè)m維 向量,每個(gè)用戶(hù)的評(píng)分是向量中的項(xiàng)。計(jì)算相似度公式和基于用戶(hù)的推薦算法類(lèi)似,這里要補(bǔ)充的是一種修正的余弦相似度(Adjust Cosine Similarity),如公式(5)所示。該公式被Sarwar在MovieLens上證明是最佳的相似度計(jì)算方法,然而在其他的數(shù)據(jù)集中,該公式不一定是最優(yōu)的。

利用公式(6)可以預(yù)測(cè)待推薦物品的評(píng)分,該公式的含 義是對(duì)相似物品的評(píng)分作加權(quán)平均。其中, S (u , K ) 表示和物 品i相似的K個(gè)物品的集合, N (u ) 表示用戶(hù)u評(píng)過(guò)分的物品。 ri 表示物品i的平均分。

1.2  隱因子模型
隱因子模型(LFM)的核心思想是通過(guò)隱含的特征將用戶(hù) 和物品聯(lián)系起來(lái)。對(duì)于分析用戶(hù)行為背后的含義以及物品的 分類(lèi)有很好的效果。

LFM的思想很簡(jiǎn)單,將評(píng)分矩陣R分解為兩個(gè)低維的矩 陣P和Q,如式(7)所示,針對(duì)每一個(gè)評(píng)分,引入隱變量l。然 后通過(guò)最小化均方誤差學(xué)習(xí)P、Q矩陣,如式(8)所示,為了下降算法優(yōu)化參數(shù)。

2 融合標(biāo)簽的協(xié)同推薦算法
2.1  標(biāo)簽擴(kuò)展評(píng)分矩陣
傳統(tǒng)的評(píng)分矩陣是<用戶(hù),物品,評(píng)分>這是一個(gè)二維 的關(guān)系,而標(biāo)簽矩陣<用戶(hù),物品,標(biāo)簽>是一個(gè)三維的關(guān) 系,因?yàn)橛脩?hù)可以給一個(gè)物品打多個(gè)標(biāo)簽,而評(píng)分只有一 個(gè)。要使用基于評(píng)分的方法,必須將三維的標(biāo)簽矩陣轉(zhuǎn)化為 二維矩陣。圖1為轉(zhuǎn)化的關(guān)系圖,可以將其轉(zhuǎn)化為兩個(gè)二維 矩陣。其中水平方向?qū)⒂脩?hù)打過(guò)的標(biāo)簽作為用戶(hù)向量的一部 分,垂直方向?qū)?biāo)記過(guò)物品的標(biāo)簽作為物品向量的一部分。 對(duì)于UserTag和ItemTag向量中的值,使用TF-IDF(Term Frequency-Inverse Document Frequency)表示,如公式(9),這里將UserTag和ItemTag看作是文檔。

其中TFij 為詞頻,描述的是第i個(gè)標(biāo)簽在文檔j中所占的比例, IDFi 為逆文檔頻率, ni 為第i個(gè)關(guān)鍵詞在N篇文檔中出 現(xiàn)的次數(shù),所以 ni 越大 IDFi 越小。二者的乘積 wij 定義為第i個(gè)標(biāo)簽在文檔j中的權(quán)值。一個(gè)標(biāo)簽在一篇文檔中出現(xiàn)的頻率越高對(duì)權(quán)值的貢獻(xiàn)越大,在所有文檔中出現(xiàn)的頻率越高對(duì) 權(quán)值的貢獻(xiàn)越小。這樣有了權(quán)值的定義,就可以把一個(gè)文檔表示為向量 d j  = (w1 j , w 2 j ,..., w kj ) 。
2.2  提取隱語(yǔ)義
接下來(lái)提取標(biāo)簽的隱語(yǔ)義,所使用的模型是LMF,需 要式(10)來(lái)提取用戶(hù)和物品中的隱語(yǔ)義。

最終得到 Pu  = ( pu1 , ..., puK ) 和 Pi  = ( pi1 , ..., piK ) 向量,它們分別表示了用戶(hù)的偏好隱語(yǔ)義和物品的特征隱語(yǔ)義。
2.3 評(píng)分和隱語(yǔ)義整合
將標(biāo)簽信息的格式轉(zhuǎn)換為評(píng)分的格式,然后可以利用 評(píng)分的協(xié)同推薦算法,將用戶(hù)或物品的評(píng)分向量和標(biāo)簽向,物品向量表示為 i = (r i ,..., r i , pi ,..., pi  ) ,p是隱變量,它的個(gè)數(shù)為K。整合 后,可以使用新的用戶(hù)向量計(jì)算用戶(hù)的相似度,或使用新物
品向量計(jì)算物品的相似度。這里將這兩個(gè)方法稱(chēng)為usertagCF和itemtagCF。

2.4 模型學(xué)習(xí)和推薦
所提的算法利用了協(xié)同過(guò)濾中基于內(nèi)存和基于模型的 算法, L MF需要訓(xùn)練, 具體的訓(xùn)練過(guò)程在1.2節(jié)中已有介 紹,這里需要說(shuō)明的是影響推薦的兩個(gè)參數(shù),一個(gè)是用戶(hù)或 物品的鄰居個(gè)數(shù)K,另一個(gè)是用戶(hù)或物品的隱變量個(gè)數(shù)F。

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

3.1 評(píng)測(cè)指標(biāo)
本文選擇均方根誤差(RMSE)和平均絕對(duì)誤差(MAE)作 為評(píng)價(jià)的主要標(biāo)準(zhǔn)。

RMSE和MAE是評(píng)分預(yù)測(cè)問(wèn)題的兩個(gè)常用指標(biāo)。其中T為測(cè)試集, rui 是實(shí)際的評(píng)分, r?ui 是預(yù)測(cè)的評(píng)分。
3.2  實(shí)驗(yàn)設(shè)計(jì)
(1)實(shí)驗(yàn)數(shù)據(jù)
實(shí)驗(yàn)采用的數(shù)據(jù)集是MovieLens 最新的100k數(shù)據(jù)集,
該數(shù)據(jù)集包含706名用戶(hù)對(duì)8570部電影的100023 個(gè)評(píng)分以及
2488 個(gè)標(biāo)簽,時(shí)間范圍為1996年4月2日到2015年3月30日。 (2)算法實(shí)現(xiàn) 根據(jù)標(biāo)簽數(shù)據(jù)集統(tǒng)計(jì)UserTag和ItemTag中的TF-IDF值,
利用該標(biāo)簽數(shù)據(jù)訓(xùn)練LFM模型,參數(shù)設(shè)置為學(xué)習(xí)率0.15,步 長(zhǎng)0.04,通過(guò)多次迭代后獲取用戶(hù)或物品的特征向量p,將p 與用戶(hù)或物品的評(píng)分向量融合,本算法使用的相似度公式為 Pearson相似度。
算法的實(shí)現(xiàn)過(guò)程中涉及到兩個(gè)重要的參數(shù),一個(gè)是用 戶(hù)或物品的鄰居數(shù)目K,另一個(gè)是LFM模型中的隱變量個(gè)數(shù) F。這兩個(gè)變量的取值不同,對(duì)最終的RMSE和MAE會(huì)造成 不同的影響。
3.3 實(shí)驗(yàn)結(jié)果 (1)userCF和usertagCF的結(jié)果比較 基于用戶(hù)的協(xié)同過(guò)濾和將標(biāo)簽和評(píng)分融合后的協(xié)同過(guò)
濾比較結(jié)果如表1所示,可以發(fā)現(xiàn),隨著K的變化RMSE和
MAE都在減小, user tag CF在K=40時(shí)性能就已經(jīng)開(kāi)始改善 了,隨著K值的增大,可以看到提升逐步增加。表2為不同F(xiàn) 值下usertagCF的結(jié)果對(duì)比,可以發(fā)現(xiàn)F=5左右時(shí),RMSE和 MAE的值都是最小的,說(shuō)明隱變量不是越多越好。
(2) itemCF和itemtagCF的比較 表3為基于物品的協(xié)同過(guò)濾算法在融合標(biāo)簽前后的結(jié)果
比較,可以發(fā)現(xiàn),隨著K的增大,RMSE和MAE都在減小,也 是在K=40的時(shí)候性能開(kāi)始改善。表4為不同F(xiàn)值對(duì)itemtagCF的 影響。隨F值的增大,性能在逐步改善。與usertagCF不同,F(xiàn) 值在較大的情況下仍能提升性能,這是因?yàn)闇y(cè)試的數(shù)據(jù)集中 物品的數(shù)目約為用戶(hù)數(shù)目的12倍,如果要對(duì)物品向量產(chǎn)生影 響,物品的隱語(yǔ)義數(shù)目應(yīng)高于用戶(hù)隱語(yǔ)義數(shù)目。

4  結(jié)束語(yǔ)
本文提出了一種將社會(huì)化標(biāo)簽和評(píng)分相融合的方法,該算法相較于基于模型的方法,具有實(shí)現(xiàn)簡(jiǎn)單、運(yùn)行較快的優(yōu)點(diǎn)。通過(guò)實(shí)驗(yàn)證明,該算法可以有效地較少預(yù)測(cè)誤差。



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉