国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于LDA的隱式標簽協(xié)同過濾推薦算法

2022-04-07 03:22:38文勇軍何環(huán)晶唐立軍
計算機與現(xiàn)代化 2022年3期
關(guān)鍵詞:鄰域文檔標簽

文勇軍,何環(huán)晶,唐立軍

(1.長沙理工大學物理與電子科學學院,湖南 長沙 410114;2.長沙理工大學近地空間電磁環(huán)境監(jiān)測與建模湖南省普通高校重點實驗室,湖南 長沙 410114)

0 引 言

隨著互聯(lián)網(wǎng)的發(fā)展,各社交媒體網(wǎng)站等信息平臺都出現(xiàn)了信息過載的問題[1],為有效提高過載信息的利用率,目前已有十幾種主流的推薦算法[2],如基于內(nèi)容的推薦算法[3]、基于位置的推薦算法[4]、協(xié)同過濾推薦算法[5-6]、聚類推薦算法[7]和基于社交網(wǎng)絡的推薦算法[8]等。協(xié)同過濾推薦算法是最流行的推薦算法之一,該算法成為了廣大研究者的研究熱點,針對協(xié)同過濾推薦算法存在數(shù)據(jù)稀疏性、推薦實時性、擴展性、計算量大和冷啟動[9-10]等問題,許多學者開展了大量的研究工作[11-13],對協(xié)同過濾推薦算法進行了有效改進,但大部分研究與其他算法融合不夠。王全民等人[14]提出了一種交替奇異值分解算法(ASVD),即結(jié)合協(xié)同過濾和隱語義分析的混合推薦算法。唐澤坤等人[15]融合聚類算法和協(xié)同過濾推薦算法,取得了一定效果。高娜等人[16-19]將標簽因子和協(xié)同過濾推薦算法結(jié)合研究緩解了數(shù)據(jù)稀疏問題,但這種固定標簽的形式主要依靠人工標記,擴展性不強,主觀因素多。

本文探索一種基于LDA的隱式標簽協(xié)同過濾推薦算法(User Based LDA Tag Collaborative Filtering, UBLTCF),在固定標簽協(xié)同過濾算法的基礎(chǔ)上,結(jié)合隱式標簽與用戶評分數(shù)據(jù),研究隱式標簽的生成及隱式標簽與協(xié)同過濾推薦算法的融合方法,為解決評分矩陣稀疏性帶來的用戶鄰域計算不準確的問題提供一種有效的算法。

1 UBLTCF推薦算法原理

1.1 固定標簽的協(xié)同過濾推薦算法

基于用戶的協(xié)同過濾推薦算法利用用戶評分數(shù)據(jù)計算用戶之間的相似性,固定標簽的協(xié)同過濾推薦算法通過結(jié)合用戶對項目評分行為和項目的標簽特征來計算用戶之間的相似性,取相似度最高的前N個用戶作為鄰域,根據(jù)鄰域內(nèi)用戶的喜好程度相似性特征來推斷目標用戶對未訪問過項目的喜好程度,以此完成對目標用戶的項目推薦。設目標用戶為u,未訪問的項目為i,鄰居數(shù)為N,推薦數(shù)為K,固定標簽的協(xié)同過濾推薦算法包括以下4個部分:

1)用戶-標簽和項目-標簽矩陣。

假設有S個標簽,M個用戶,W個項目,結(jié)合用戶對項目評過分的歷史行為和項目被標簽的標記次數(shù)獲取用戶標記標簽的行為次數(shù)矩陣UTM×S和項目被標簽標記的行為次數(shù)矩陣ITW×S。用戶-標簽矩陣UTM×S如式(1)所示,項目-標簽ITW×S如式(2)所示。

(1)

(2)

2)用戶對項目的喜好向量。

通過式(1)中用戶標記標簽的次數(shù)獲取用戶基于標簽的興趣特征,通過式(2)中項目被標簽標記的次數(shù)獲取項目基于標簽的特征表示,計算公式分別如式(3)、式(4):

(3)

(4)

(5)

3)產(chǎn)生推薦。

選取適合的相似度測量因子可以使鄰域判斷更為準確,從而提升推薦質(zhì)量。通過皮爾森相關(guān)系數(shù)對用戶-標簽矩陣UTM×S進行計算,構(gòu)建用戶相似度矩陣sim(u,v),取與用戶u相似度最高的前N個用戶作為目標用戶u的鄰域。假設目標用戶u對項目i未評分,通過式(5)中u鄰域內(nèi)的用戶對項目i的偏好貢獻得到目標用戶對所有未評分項的預測偏好值,取前Top-K個進行推薦。

1.2 固定標簽的協(xié)同過濾推薦算法改進

從以上推薦過程可以看出,固定標簽的協(xié)同過濾推薦算法將人工標簽因子引入?yún)f(xié)同過濾推薦算法的方法中,能有效緩解數(shù)據(jù)稀疏性,但是標簽受人工主觀因素影響大,且未考慮用戶評分隱藏的用戶喜好。為進一步解決標簽質(zhì)量和標簽語義歧義問題,本文在固定標簽的協(xié)同過濾推薦算法基礎(chǔ)上,提出一種隱式標簽協(xié)同過濾推薦算法。

1.2.1 隱式標簽

LDA主題模型也稱隱迪利克雷分配模型[20],是一種文檔主題生成的3層貝葉斯概率模型,屬于無監(jiān)督學習算法,主要應用于文本挖掘領(lǐng)域中文本主題識別、文本分類和文本相似度計算等方面,能把文檔集中每篇文檔的主題以概率分布的形式表示出來。本文通過對項目內(nèi)容組成的文本集進行分詞、去停用詞等預處理,對預處理后的文本集進行主題模型訓練,根據(jù)算法性能優(yōu)化的要求選擇主題數(shù)量,主題以一定的概率表示文本的特征,可作為文檔的隱式標簽因子,通過模型訓練可得到項目-標簽特征權(quán)重矩陣。隱式標簽與固定標簽比起來,能有效地擴展標簽的多樣化,解決人為標注標簽導致的標簽語義歧義、標簽種類單一等問題,通過挖掘項目語義特征自動生成的標簽集,更深層次地挖掘了項目之間的內(nèi)在聯(lián)系。

1.2.2 UBLTCF算法構(gòu)建

本文將隱式標簽因子引入?yún)f(xié)同過濾推薦算法中,利用LDA主題模型構(gòu)建項目-標簽概率矩陣,深度挖掘項目的特征聯(lián)系,針對固定標簽協(xié)同過濾推薦算法中未考慮用戶評分值在一定程度上能反映用戶喜好的問題,本文將用戶對項目的評分與項目-標簽矩陣結(jié)合構(gòu)建用戶對標簽的喜好矩陣,通過用戶對標簽的喜好進行相似度的計算得到用戶的鄰域,計算鄰居用戶評分值的貢獻,得到每個用戶對未評分項目的預測評分值,取前K個項目進行推薦,該算法能有效緩解評分數(shù)據(jù)稀疏性問題,提高推薦準確度。

推薦算法的具體描述如下:

Step1獲取項目文本,對項目組成的文本集進行分詞和去停用詞等預處理。

Step2在預處理后的文檔集上利用LDA主題模型對W個項目文本生成S個主題,由此得到“文檔-主題”概率分布θW×S,即項目-標簽分布矩陣ITW×S。

Step3結(jié)合用戶User對物品Item的評分和項目-標簽分布矩陣ITW×S得到用戶對標簽的偏好矩陣UTM×S。

Step4利用皮爾森相似度在標簽的偏好矩陣UTM×S上計算目標用戶u和其他所有用戶的相似度大小sim(u,v)。

Step5取相似度最高的前N個用戶作為u的鄰域,根據(jù)鄰域用戶的評分計算目標用戶u未評分項目的預測評分值,根據(jù)預測評分值取前Top-K個項目進行推薦。

算法原理圖如圖1所示。

圖1 算法原理圖

2 UBLTCF推薦算法

2.1 隱式標簽的生成

人工參與的數(shù)據(jù)集標簽,容易受外部因素影響,不同的個體對標簽有不同的理解,主觀因素影響較大,本文嘗試摒棄數(shù)據(jù)集已有的固定標簽,把每個項目的文本看成一篇文檔,對文檔集進行分詞和去停用詞等預處理后再放入LDA模型進行訓練,生成的主題作為項目的標簽因子,利用LDA模型[21]自動挖掘項目的隱式標簽,找到項目對隱式標簽的權(quán)重分布,其中主題數(shù)可通過訓練不斷擬合達到最優(yōu)。

1)數(shù)據(jù)預處理。

輸入W個項目的文本,用I={I1,I2,…,Ii,…,IW}表示,其中i=1,2,…,W,Ii對應一篇文檔內(nèi)容,對W篇文檔采用結(jié)巴分詞和去停用詞等方法進行數(shù)據(jù)預處理。

2)LDA主題模型訓練。

將預處理后的文檔集放入LDA主題模型進行訓練。LDA主題模型如圖2所示。

圖2 LDA主題模型

圖2中,θw和φs分別代表文檔w下的主題分布和主題s下的詞分布,一篇文檔的生成可看作是以一定概率選擇主題,再以一定概率從主題中選擇詞的過程,主題的提取是文檔生成的逆過程[22],即計算文檔-主題概率分布矩陣θ,其近似求解可用變分推斷、期望傳播、極大似然法和吉布斯采樣[23]等方法,本文通過吉布斯(Gibbs)采樣逆推θ,具體步驟如下:

①選擇合適的主題數(shù)K、超參α、β,對所有文檔的每一個詞,隨機賦予一個主題編號。

②遍歷所有文檔中的詞,對于每一個詞,利用Gibbs采樣更新它的主題編號。

③重復步驟2的Gibbs采樣,直到Gibbs采樣收斂。

④統(tǒng)計文檔中各個詞的主題,按式(6)計算文檔-主題分布θ:

(6)

3)輸出文檔-主題概率分布θW×S。

主題作為項目的隱式標簽,θW×S作為項目-標簽的分布矩陣。

2.2 UBLTCF推薦算法設計

基于隱式標簽的協(xié)同過濾推薦算法首先構(gòu)建用戶-項目-標簽三維關(guān)系,如圖3所示,User表示用戶,Item表示項目,Rfi表示用戶Userf對物品Itemi的評分,評分越高表明用戶Userf對物品Itemi越喜歡,Tag是將項目的文本描述通過LDA主題模型生成的主題,其數(shù)量可以根據(jù)需要選取,Pij是利用LDA主題模型訓練得到的項目-標簽概率分布,Pij越大代表項目Itemi具有Tagj這個特征屬性的權(quán)重越大;再通過項目-標簽分布矩陣與評分數(shù)據(jù)相結(jié)合得到用戶對標簽的偏好程度,基于用戶對標簽的偏好矩陣計算用戶間的相似性;最后根據(jù)用戶相似性進行項目推薦。

圖3 用戶-項目-標簽三維關(guān)系

2.2.1 項目-標簽矩陣

通過LDA主題模型生成文檔-主題分布θW×S,文檔是項目的文本屬性,每篇文檔代表一個項目,共有W個項目。主題能充分體現(xiàn)項目的特征表示,可看作項目對應的標簽,θW×S可作為項目-標簽矩陣ITW×S使用。標簽集T=(T1,T2,…,TS),其中S為生成的主題個數(shù),即標簽個數(shù),可通過不斷訓練擬合到最優(yōu)值。項目-標簽矩陣如式(7):

(7)

其中,Pij=θij,代表第i篇文檔屬于主題j的概率,即項目Ii對應標簽Tj的概率,對于同一個項目Ii,Pij越大表明項目Ii擁有特征Tj的權(quán)重越大,特征Tj越能代表這個項目。

2.2.2 用戶-標簽偏好矩陣

評分數(shù)據(jù)能反映用戶對項目的偏好程度,而項目-標簽矩陣隱含了項目之間的關(guān)聯(lián),兩者結(jié)合可以得到用戶對不同標簽的偏好向量。定義用戶集合U=(u1,u2,…uf,…,uM),其中uf代表用戶f,f=1,2,…,M,用戶對項目的評分可用矩陣UIM×W表示:

(8)

通過式(9)計算出用戶對標簽的偏好矩陣UTM×S,用戶-標簽矩陣計算公式如式(10):

UTM×S=UIM×W×ITW×S

(9)

(10)

其中,Lfj的計算公式如式(11):

(11)

其中,Rfi表示用戶uf對項目Ii的評分,Pij表示項目Ii對應標簽Tj的特征權(quán)重,通過兩者的結(jié)合計算用戶uf對標簽Tj的特征偏好,j=1,2,…,S。Lfj表示用戶uf對標簽Tj的偏好程度,Lfj越大表示用戶uf越喜愛標簽Tj。由于用戶評分數(shù)據(jù)非常稀疏,通過結(jié)合項目-標簽的特征權(quán)重矩陣得到的用戶-標簽偏好矩陣既達到降維的效果,又能緩解數(shù)據(jù)稀疏問題。

2.2.3 用戶相似度計算

用戶相似度的計算決定了目標用戶鄰域的選取,鄰域的選取對推薦算法的準確性而言尤其重要。本文采用皮爾森相似度,在用戶對標簽的偏好矩陣UTM×S上計算求得用戶間的相似度sim(u,v),相似度計算公式如式(12)所示。

(12)

2.2.4 預測評分值計算

在用戶相似度矩陣sim(u,v)的基礎(chǔ)上得到某個用戶相似度較高的Top-N個用戶作為其鄰域,通過鄰域用戶對目標用戶未評分物品的評分值來預測目標用戶可能評分值。用戶u對未評分項目i的預測評分用Pred(u,i)表示,計算公式如式(13):

(13)

其中,Rv,i為用戶v對項目i的評分,用戶v為鄰域N中的一個用戶,sim(u,v)為用戶u,v之間的皮爾森相似度。通過鄰域用戶對項目的評分貢獻得到目標用戶u對項目i的預測評分值,預測評分值越高表明用戶喜歡該項目的可能性越高,將預測值較高的前Top-K個項目推薦給目標用戶。

3 驗證與分析

本文實驗采用美國GroupLens站點提供的MovieLens 100 K數(shù)據(jù)集,該數(shù)據(jù)集包含943個用戶,1682部電影,100000個評分數(shù)據(jù)和19個標簽屬性,每個用戶至少評分了20部電影,評分值為1~5之間的整數(shù)[24],該數(shù)據(jù)集沒有電影內(nèi)容簡介。本文通過網(wǎng)絡爬蟲抓取每部電影的中文內(nèi)容簡介作為項目的文檔。由于用戶對項目有過評分不能代表用戶喜歡該項目,本文選取用戶評分不小于3的數(shù)據(jù)作為測試集。

3.1 算法評判指標

不同需求下推薦算法的評判指標各不相同,根據(jù)推薦項目和用戶實際偏好的項目進行比較來評判算法性能,可用準確率、召回率和綜合評價指標F1值。準確率(Precision)也為查準率,表示推薦項目列表中命中測試數(shù)據(jù)集中項目的比率[25];召回率(Recall)為查全率,表示用戶真正喜歡的項目數(shù)中推薦正確數(shù)量的占比;由于準確率和召回率相互制約,故引進F1-measure值進行調(diào)和[26],3個評判指標越高越好。假設A為推薦正確的樣本數(shù),B為訓練集中得出的推薦樣本數(shù),C為測試集中的樣本數(shù)。3個指標計算公式如下:

(14)

(15)

(16)

當a=1時為最常見的綜合測評指標F1-measure,即:

(17)

3.2 對比算法

1)UBTCF算法。文獻[19]提出的基于固定標簽的協(xié)同過濾推薦算法。

2)UBCF算法。基于用戶的協(xié)同過濾推薦算法。

3)IBTFCF算法?;赥F-IDF的協(xié)同過濾推薦算法,取每篇文本對應TF-IDF值最高的前10個詞作為特征詞,構(gòu)建特征詞集合,得到所有文本對應詞集合的TF-IDF矩陣,計算項目間的余弦相似度,生成基于內(nèi)容的協(xié)同過濾推薦。

4)UBTFTCF算法?;赨BLTCF算法,將TF-IDF算法代替LDA主題模型構(gòu)建項目-標簽矩陣,與用戶評分數(shù)據(jù)結(jié)合產(chǎn)生推薦。

3.3 實驗與結(jié)果分析

為了驗證和比較本文提出的UBLTCF算法的有效性,設計以下3組實驗進行對比。

實驗1 為測試利用LDA模型生成的主題數(shù)量對UBLTCF算法的影響,實驗中固定鄰居數(shù)N為50,推薦數(shù)K為20,主題數(shù)S從5到100,間隔為5,比較不同主題數(shù)下UBLTCF算法中Precision、Recall及F1值的變化情況,實驗結(jié)果如圖4所示。

圖4 不同主題S值下的Precision、Recall、F1值

由圖4可以看出,推薦效果隨著主題數(shù)的增加整體呈緩慢上升趨勢,當主題數(shù)為50時,Precision為0.153446,Recall為0.176281,F(xiàn)1值為0.164073,當主題數(shù)大于50時,評價指標曲線趨向于平滑穩(wěn)定,由此可以看出當主題數(shù)量S大于這個閾值時對推薦效果的影響不大,因為主題數(shù)量增大了以后,部分主題的概率分布趨近于0,對算法性能指標提升沒有貢獻。在具體的應用場景,應根據(jù)算法性能優(yōu)化的要求選擇合適的主題數(shù)量。

實驗2 測試鄰居數(shù)N的選取對UBLTCF算法性能的影響,該組實驗用于尋找UBLTCF算法鄰居數(shù)N的最佳值,固定推薦數(shù)K為20,主題數(shù)S為50,鄰居數(shù)N從1到60選取,間隔為2,實驗結(jié)果如圖5所示。

圖5 不同N值下UBLTCF的變化情況

由圖5可見,當鄰居數(shù)N取得19時Precision為0.149258,Recall為0.171469,F(xiàn)1值為0.159594,算法性能趨向于穩(wěn)定,隨著鄰居數(shù)的增加,算法的Precision、Recall和F值整體呈緩慢上升趨勢,但是變化幅度不大,由此可以看出當鄰居數(shù)N大于這個閾值時對推薦效果的影響不大,因為鄰居數(shù)增大了以后,增加部分的鄰居與目標用戶相似度很低,導致對算法性能指標提升沒有貢獻。

實驗3 測試推薦數(shù)K對算法的影響,比較不同算法的性能指標差異。固定鄰居數(shù)N取19,UBLTCF算法中主題數(shù)取50,比較本文提出的UBLTCF算法、UBTCF[19]、基于用戶的協(xié)同過濾(UBCF)推薦算法、基于TF-IDF的協(xié)同過濾(IBTFCF)推薦算法和基于TF-IDF的用戶協(xié)同過濾(UBTFTCF)推薦算法,在不同的推薦數(shù)目K時的性能指標變化,推薦數(shù)由4到100依次遞增,間隔為2,實驗結(jié)果如圖6~圖8所示。

圖6 不同K值下的Precision值

圖7 不同K值下的Recall值

圖8 不同K值下的F1-measure值

由圖6~圖8可以看出,UBLTCF算法的準確率,召回率和F1值始終高于UBTCF算法[19]、UBCF算法、IBTFCF算法和UBTFTCF算法,算法性能指標得到明顯改善。當推薦數(shù)K達到36時,UBLTCF算法的Precision為0.12584,Recall為0.260218,F(xiàn)1值為0.169642,綜合評價指標F值達到峰值,當K值繼續(xù)增加時,推薦效果隨著推薦數(shù)量的增加而降低。在具體的應用場景,可根據(jù)需要在這個閾值附近選擇推薦數(shù)。

4 結(jié)束語

本文研究了固定標簽的協(xié)同過濾算法改進方法,提出了一種深度挖掘項目內(nèi)部特征聯(lián)系的UBLTCF改進算法,該算法通過LDA主題模型挖掘項目之間的內(nèi)在關(guān)聯(lián),生成數(shù)量可控且具有代表性的標簽因子,將項目生成的隱式標簽與用戶評分數(shù)據(jù)相互融合,既彌補了傳統(tǒng)協(xié)同過濾推薦算法中只利用評分數(shù)據(jù)表達用戶偏好的缺陷,也克服了基于標簽的協(xié)同過濾算法中只利用標簽行為次數(shù)和標簽單一類等問題。本文設計了3個實驗,分別選取UBLTCF算法主題數(shù)和鄰居數(shù)最優(yōu)值,通過改變推薦數(shù)與其他算法進行對比,對算法進行了驗證,實驗結(jié)果表明UBLTCF推薦算法的準確率、召回率和F1值較對比算法均有顯著提升。

猜你喜歡
鄰域文檔標簽
有人一聲不吭向你扔了個文檔
稀疏圖平方圖的染色數(shù)上界
無懼標簽 Alfa Romeo Giulia 200HP
車迷(2018年11期)2018-08-30 03:20:32
基于鄰域競賽的多目標優(yōu)化算法
自動化學報(2018年7期)2018-08-20 02:59:04
不害怕撕掉標簽的人,都活出了真正的漂亮
海峽姐妹(2018年3期)2018-05-09 08:21:02
基于RI碼計算的Word復制文檔鑒別
關(guān)于-型鄰域空間
標簽化傷害了誰
Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
基于多進制查詢樹的多標簽識別方法
計算機工程(2015年8期)2015-07-03 12:20:27
铜山县| 库尔勒市| 梁河县| 阿拉尔市| 平定县| 霸州市| 左贡县| 六枝特区| 甘孜县| 新兴县| 珲春市| 鄂托克前旗| 玉田县| 河南省| 蓬溪县| 平塘县| 紫云| 佳木斯市| 泌阳县| 辉县市| 黎川县| 南丹县| 沂源县| 霸州市| 彭阳县| 叙永县| 新蔡县| 永兴县| 蓬莱市| 彩票| 衡山县| 锦州市| 珠海市| 峡江县| 无极县| 嘉禾县| 甘谷县| 徐州市| 绥化市| 华容县| 长葛市|