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

融合用戶興趣表征與注意力機制的推薦算法

2021-03-23 09:15:24孫靜宇
計算機工程與設計 2021年3期
關鍵詞:深度特征用戶

孫 靜,孫靜宇,李 璨,魏 東

(太原理工大學 軟件學院,山西 太原 030024)

0 引 言

個性化推薦算法[1]一方面為用戶在海量數據中找到自己所需信息起到了重要作用,另一方面也能夠有效地為信息生產者尋找到符合信息定位的目標人群。算法關鍵在于挖掘用戶興趣。協同過濾推薦[2]是目前應用最廣的推薦算法,通過挖掘用戶和項目之間的關系,為用戶提供其感興趣的具體項目。傳統推薦方法大多都是基于用戶的顯性反饋行為,而實際情況中多數用戶沒有提供顯性反饋的上網習慣。隨著研究的深入,研究者們發現數據量較大的用戶隱性行為包含著更多反映用戶喜好的深層信息,用戶行為日志[3]可以看作是最有代表性的用戶隱性行為。用戶日志中的行為記錄和用戶所訪問項目間的相關性對準確預測用戶興趣有重要意義。因此,分析用戶隱性行為發掘用戶潛在興趣成為目前推薦算法的一個研究熱點。本文提出的算法模型通過對用戶行為日志的分析,對原始數據進行用戶興趣表征,同時融入時間注意力機制,使用一種新的深度學習模型挖掘并預測用戶興趣,減少了對用戶可能感興趣的具體項目的關注度,更加側重于挖掘用戶興趣標簽、定位目標用戶。將建立起來的用戶-興趣模型與用戶協同過濾算法結合產生推薦,從而為精準定位目標用戶、實現項目精準營銷提供一種新的思路。

1 相關工作

智能設備的發展和普及使用戶上網日志數據量急劇增大。推薦系統隨之面臨新的機遇和挑戰——在數據爆炸的時代下如何準確地提取和預測用戶興趣偏好,從而實現精準推薦。

推薦算法[4,5]通常基于用戶歷史行為記錄并通過挖掘用戶或項目之間的相似性關系主動幫助用戶發現其感興趣的項目。而傳統的推薦算法采用的淺層模型無法學習到用戶和項目的深層次特征。深度學習方法[6]能夠有效處理涉及海量高維數據并抽象出隱含特征。Roy S等[7]在推薦系統中利用視覺CLiMF方法學習視頻潛在因素有效緩解了常見的視頻冷啟動問題;He Ming等[8]構建了一種名為協同附加變分自動編碼器的新型深度學習模型,有效的從輔助信息中無監督地學習潛在表示。眾所周知,深度神經網絡取得優異表現在于其獨特的網絡結構——復雜的多層網絡將低層特征組合抽象為高層語義特征。也正是如此,深度神經網絡受到計算能力和參數眾多的限制。

除了深度學習之外,通過將多個學習者結合在一起的集合方法同樣強大[9,10]。Breiman分別于1996年和2001年提出了Bagging[11]和隨機森林[12]兩種集成方法。一個好的集合方法總是由一些具有高度準確性和多樣性的個體學習者構成。Kontschieder P等[13]研究顯示深度神經網絡特征促進的集合方法將比簡單地使用DNN或集合方法表現更好。Zhou和Feng[14]提出了一種不同的深度學習方法,稱為gcForest(多粒度級聯森林),它生成一個具有級聯框架的深度森林集合,并且能夠進行表征學習。

在實際情況中用戶不可能對自己的上網日志都產生標記行為,因此,訓練模型的預測準確率會受到一定影響。多示例學習[15]中,訓練集由有標記的數據包(Bag)組成,每個包由若干個沒有標記的示例(Instance)構成。唐俊等[16]利用多示例學習方法在用戶反饋不明確的情況下有效地解決了手游道具推薦問題。但對于客戶端用戶日志數據,用戶訪問鏈接大多沒有顯示實質文本內容,因此基于詞頻的表示方法有一定的局限性。

本文改變用戶項目表征為用戶興趣向量表征,在此基礎上,建立一種改進的基于集成隨機森林的多粒度掃描深度森林模型,同時利用用戶行為信息和用戶對項目的停留時間作為模型的輸入,并將其應用于刻畫用戶興趣偏好,提高興趣預測準確率,結合基于用戶的協同過濾推薦算法以提升推薦效果。

2 用戶興趣向量表征

傳統的項目表征通常是將不同的項目以二進制編碼的方式進行數值轉換。這種把項目轉化為由0和1組成的數字序列的直譯式表征方法顯然不完全適合針對用戶上網行為的興趣偏好表征。本文所提算法將包與示例的概念引入到對用戶上網日志的表征,將用戶興趣的預測看作多示例學習問題。由此,本文提出采用概念向量表示算法 (concept vector representation,CVR)來處理模型的原始數據集,得到用戶興趣向量表征作為訓練模型的輸入。

2.1 概念向量表示算法

概念向量表示算法(CVR)是一種基于退化策略的多示例學習算法。核心思想是通過改變數據包的表現形式,將多示例數據集轉化為單示例數據集從而進行求解。CVR算法首先將原始數據集整理成由包組成的訓練集 {(B1,Y1),…,(Bn,Yn)},(Bi,Yi) 表示數據包Bi對應的標簽為Yi,其中,Bi={x1,x2,…,xm},即數據包Bi由m個示例構成。按照以下步驟改變包的表征方式:

步驟1 使用聚類方法把所有示例劃分為d簇,這里不考慮示例的所屬數據包。劃分之后結果用Gd表示 (d=1,2,3,…)。

步驟2 通過式(1)把包的示例量化到d個簇,獲取包的初始化關系模式RP(relation-pattern),其中,f=tf(g,Bi) 為計算數據包Bi中屬于簇g的示例個數

PBi={(g,f)|g∈G,f=tf(g,Bi)}

(1)

步驟3 合并具有相同簇集合的初始化關系模式RP,如式(2)所示

RPi={(g,Pi)|g∈G,Pi=Bx1⊕Bx2⊕…⊕Bxj}

(2)

式中:x1,x2,…,xj∈[1,n],合成運算符⊕連接的數據包的初始化關系模式RP擁有相同的簇集合。此時,數據包的總數為n,Pi合并的擁有相同簇集合包的個數為Pnum(Bx),即合成運算符⊕連接的數據包個數為Pnum(Bx),并由式(3)得到Pi的支持度

(3)

步驟4 將合并后的關系模式RP表示為標準形式,如式(4)所示

β(Pi)={(G1,ω1),(G2,ω2),…,(Gd,ωd)}

(4)

式中:Pi∈RP,ωd表示在關系模式Pi中屬于簇Gd的示例占該模式中總示例個數的比重,計算如式(5)所示

(5)

式中:fd為關系模式RP合并后的Pi中屬于簇Gd的示例個數;

步驟5 計算每個簇在數據集中的重要性,如式(6)所示

(6)

步驟6 把包表示成概念向量形式,如式(7)所示

Bagi=[N1×prβ(G1),N2×prβ(G2),…,Nd×prβ(Gd)]

(7)

步驟7 利用整理后的訓練集訓練學習器。

通過概念向量表示算法得到項目的概念向量表征,簡化了數據集表示形式,多示例數據集被轉化成單示例數據集。之后將其作為訓練集訓練學習器。

2.2 用戶興趣向量表征

本文提出利用CVR算法將用戶日志數據進行向量表征。一般每個用戶行為日志被表示為Sessioni={x1,x2,…,xn}。 本文將用戶日志數據整理為多示例表示UserBagi=[Item1,Item2…,Itemn],把每一個用戶行為日志看作一個數據包,該用戶行為日志中訪問的項目則為數據包中的示例,用戶日志中每個用戶都會訪問多個項目,一個數據包中就有多個示例。模型最終得到的是包的標簽,也就是用戶的興趣標簽。

首先將所有示例聚類為d個簇,這里將d的數量設定為5,每個簇看作是相似項目所代表的一類興趣,表1是按照式(1)給出的一個量化后的例子。

表1 用戶數據包示例量化到5個興趣簇上的 初始化RP模式

表1中的數字表示某用戶數據包中屬于某個興趣簇的項目示例個數。表中的每一行都可以被看作用戶數據包的初始化關系模式RP。

接著利用式(2),將表1的初始化關系模式RP合并,同時按照式(3)計算出每個合并R模式的支持度,合成運算后的結果見表2。

表2 合并初始化關系模式RP

其中,P1=UserBag1⊕UserBag2,支持度為2/5,因為P1由2個初始化R模式合并運算而成;同理,P2=UserBag3⊕UserBag4,支持度為2/5;P3=UserBag5,支持度為1/5。

至此,整個用戶數據集被表示成由RP模式構成的集合。再根據式(4)和式(5)獲取合并后的RP模式的標準化形式,表3給出了表2合并初始化RP模式后的標準化形式。

然后利用概率函數根據式(6)計算每個簇的重要性,也就是計算出每類興趣在整個數據集中的重要程度。計算表3中興趣簇G1的重要性prβ(G1)=3/7×2/5+2/3×1/5,同理算出每簇的重要性見表4。

表3 RP模式的標準化形式

表4 每個(興趣)簇的重要性

3 深度森林模型及優化

深度森林gcForest模型如圖1所示。具有逐層處理、模型內特征轉換和模型復雜度高的深度學習本質,其特點在于以集成方式對特征進行逐層轉換。但該模型在利用隨機森林提取更高維特征時,為所選特征分配相同權重。本文對gcForest模型的兩部分結構分別改進優化:①引入停留時間注意力機制,將其與向量表征共同作為模型輸入;②將簇重要性作為特征權重,對gcForest模型的兩部分結構分別進行優化。

3.1 傳統深度森林模型

圖1 深度森林模型

傳統深度森林模型主要包括兩部分:多粒度掃描和級聯森林。多粒度掃描結構能夠有效地處理特征關系,因此它可以作為特征轉換部分。級聯森林結構提供了一種深度神經網絡中逐層處理的替代方法,以低成本學習高維度表示,提取更多特征并同時輸出最終預測結果。

多粒度掃描結構通過使用滑動窗口來掃描原始特征,并經過兩種集成隨機森林實現特征轉換。M維特征向量經過N維窗口滑動掃描產生 (M-N+1) 個N維實例,每個實例通過隨機森林和完全隨機森林兩種不同的集成器提取到對應的d維類向量,最終聯結成2×(M-N+1)×d維的增強特征向量。如圖2所示,100維的輸入特征經10維的滑動窗口掃描所產生91個10維的實例通過兩種森林訓練,分別提取到對應的91個5維類向量,最終聯結成2×(100-10+1)×5=910維的增強特征向量。

圖2 多粒度掃描結構

滑動窗口維度N取不同的值體現了多個不同的掃描粒度。可將多粒度掃描得到的特征向量聯結成更大維度的增強特征向量,作為級聯森林的輸入特征。

模型的級聯森林結構如圖3所示 (d=5),將多粒度掃描提取的2×(M-N+1)×d維增強特征向量作為多層級聯森林第一層的輸入特征,經過森林模型得到4個d維類向量,相當于得到了4×d個擴充特征。這里使用兩個隨機森林和兩個完全隨機森林,這兩種不同的集成決策樹,在保證準確率的同時使模型具有高度的多樣性。將首層輸入特征與類向量特征聯結,重新組成的2×(M-N+1)×5+4×d維新特征向量作為第二層的森林模型的輸入特征。

圖3 級聯森林結構

以此類推,每一層森林模型輸出的4個d維類向量特征與2×(M-N+1)×d維首層輸入特征聯結,作為下一層的輸入。在最后一層,將4個d維類向量取均值(或最大),得出可能性最大的類。

3.2 深度森林模型優化

深度森林模型受深度神經網絡的啟發,在處理特征關系時,采用基于滑動窗口的多粒度掃描策略,通過掃描原始輸入數據提取局部特征,將生成的一系列局部低維特征向量訓練轉化為類分布向量,但考慮到所屬類數據的不平衡性,森林的決策樹會傾向于根據大多數實例來強調類;另外,級聯森林結構試圖通過在輸入監督下組合集成決策樹的數量來直接學習類分布特征,然而在標準深度森林模型中,多層之間的表示學習過程并沒有考慮特征重要性對預測結果的影響,這可能導致整體預測性能對每個森林中的決策樹的數量敏感。

本文對深度森林模型進行優化:

(1)融合停留時間注意力機制。考慮到可以將用戶在瀏覽過程中對不同項目的駐留時間作為衡量用戶對該項目喜愛程度的重要指標。通常,用戶駐留時間越長,感興趣程度越高。因此將用戶的駐留時間作為注意力機制的權重來深化用戶的興趣程度,具體做法為計算每個用戶數據包中各興趣簇所含項目示例的用戶駐留時間在該數據包所有示例用戶駐留時間總和的占比,并將所得比重作為該興趣簇的注意力權重。對于每個用戶行為日志Sessioni={x1,x2,…,xn},其對應點擊時間為ti={t1,t2,…,tn},停留時間為Δtn-1=tn-tn-1

ΔTi={Δt1,…,Δtn-1,max(Δt)}

(8)

根據學者提出的最后一個項目在序列化推薦算法中的重要性,將xn停留時間設置為ΔTi中的最大停留時間max(Δt)。 時間注意力機制的權重向量具體由式(9)和式(10)計算可得

(9)

(10)

(2)引入特征度量權重。在多粒度掃描結構和級聯森林結構中引入簇重要性prβ(G)作為權重來提升預測準確率。簇重要性在本文第2章根據用戶興趣向量表征計算可得。整體數據集經過聚類得到簇,每個簇都是一類相似項目的集合,因此可以代表用戶的興趣,即興趣簇。經過用戶向量表征得到的每個用戶數據包中的簇重要性,表示該用戶所訪問的項目所屬興趣的比例權重,即用戶具有相同興趣的概率。因此,在圖2和圖3中,將經過隨機森林得到的類分布向量與簇重要性權重結合得到增強類分布向量。

優化后的多粒度掃描結構如圖4所示,原始特征與駐留時間融合作為輸入,并將訓練得到的類向量實例分別與簇重要性權重相乘之后聯結成高維特征,作為級聯森林結構的輸入特征。優化后的級聯森林結構如圖5所示,將簇重要性作為權重,與每一層森林訓練輸出類分布向量結合進一步得到增強類向量,并聯結開始輸入特征作為下一級聯層的輸入,層層傳遞經過N層級聯得到最終預測。

圖4 改進的多粒度掃描結構

圖5 改進的級聯森林結構

4 實驗結果與分析

實驗使用真實的運營商用戶日志數據和RecSys Challenge2015公開數據集作為驗證數據,分別針對用戶興趣向量表征和改進深度森林模型對用戶興趣預測準確率的影響進行多次實驗,并驗證了本文算法對用戶協同過濾推薦的有效性。為避免實驗結果的偶然性,采用十折交叉驗證,將實驗收集的真實數據集分為訓練子集和驗證子集,10次結果的均值作為對算法精度的估計。

實驗環境:處理器Intel(R) Core(TM) i5-8250U CPU @ 1.60 GHz 1.80 GHz;內存8.00 G;Windows 10專業版64位操作系統;編程環境Python3.1。

4.1 數據集

運營商用戶日志數據集(數據集1)是北京市電信運營商2018年10月10日部分用戶的DPI日志,該數據集共有1436萬多條用戶上網日志,12萬多個項目信息。RecSys Challenge2015公開數據集(數據集2)共包含某電商網站924萬多條用戶行為日志、5萬多個項目信息。在使用模型之前按照標準數據集的格式(見表5)提取所需字段并整理。

表5 數據集字段

4.2 評價指標

本實驗使用正確率(Accuracy)和誤差率(Error)作為評價用戶興趣向量表征和改進深度森林模型對用戶興趣預測影響的指標,使用精確率(Precision)、召回率(Recall)和F1值作為評價本文算法對基于用戶的協同過濾推薦算法有效性的指標。

正確率(Accuracy)和誤差率(Error)的計算公式如式(11)和式(12)所示。TP為樣本正例被正確預測的數量,TN為樣本負例被正確預測的數量,FP為樣本負例被錯誤預測的數量,FN為樣本正例被錯誤預測的數量,ALL為樣本總數

(11)

(12)

精確率(Precision)和召回率(Recall)計算公式可參見文獻[17]實驗部分的評估指標,F1值計算公式如式(13)所示

(13)

4.3 實驗與評價

(1)用戶興趣向量表征驗證擴展實驗

本文將表征過后的數據經過深度森林預測出用戶興趣,建立用戶-興趣模型之后再結合基于用戶的協同過濾算法(User-CF)計算推薦結果。根據本文第2章介紹,在進行表征之前首先要對項目進行聚類,設置不同的k值會產生不同數量的興趣簇。本部分實驗主要驗證不同k值對推薦準確率的影響。本實驗設定k值范圍為2-150,兩個數據集分別計算準確率,如圖6和圖7所示。

圖6 數據集1上不同k值下兩種推薦算法的準確率

圖7 數據集2上不同k值下兩種推薦算法的準確率

從圖6可以看出,隨著k值增加,使用K-means聚類的用戶協同過濾算法推薦準確率較傳統的用戶協同過濾算法均有所提升;k值在100附近時,數據集1準確率提升了0.9%,數據集2準確率提升了1.05%;隨著k值繼續增加,準確率有些回落,這是由于聚類個數增加,興趣數增加,但有些類別個數較少,導致興趣預測不準確,進而影響整體推薦效果。因此本文設置k=100為最優聚類數。

(2)用戶興趣向量表征驗證

在標準gcForest模型基礎上,將用戶興趣向量表征與隨機表征和二進制One-hot表征進行對比,比較3種方法對用戶興趣預測結果的影響。實驗使用K-means聚類,這里取k=100。實驗結果見表6,使用用戶興趣向量表征較另兩種表征方式而言,預測準確率有所提升。One-hot表征采用的二進制編碼形式具有一定的隨機性,因此與隨機表征效果相差不大;本文表征方式將注意力集中于用戶興趣,因此預測結果提升明顯。

(3)優化的深度森林模型驗證

為分別驗證優化部分對用戶興趣預測的有效性,將標準深度森林模型gcForest與本文改進模型進行比較,加入簇重要性權重的深度森林模型記為Cluster-gcForest,融入

表6 用戶興趣向量表征對預測結果的影響

停留時間注意力機制的深度森林模型記為ATT-gcForest。同時與作為模型基礎的隨機森林(random forest,RF)算法進行比較。為消除干擾,本部分實驗均選擇二進制編碼表征。

實驗結果見表7,Cluster-gcForest和ATT-gcForest明顯優于隨機森林,隨機森林是集成的決策樹,而gcForest模型又都是隨機森林算法的集成,包含了兩種不同的森林模型(隨機森林和完全隨機森林),體現了集成子模型的多樣性,因此效果更好。而且本文在標準gcForest的基礎上,引入簇重要性作為特征權重,在多粒度掃描結構和級聯森林結構中與預測類向量相結合,保證了模型在訓練數據時將注意力偏向于概率較大的用戶興趣簇;另一方面,在模型輸入中引入時間注意力機制,將停留時間作為輸入選擇權重,從大量數據中篩選出一部分有價值的信息。從而相較于gcForest模型,本文改進模型對興趣預測準確度更高。

表7 改進的深度森林對預測結果的影響

(4)模型推薦精度對比

本實驗比較了本文優化模型Cluster-ATT-gcForest和RF、CNN、gcForest模型對推薦效果的影響,實驗結果見表8,使用精確率、召回率和F1值進行評價。實驗分別使用上述幾個模型預測用戶興趣,將建立起來的用戶-興趣標簽結合用戶協同過濾算法實現推薦。在計算用戶相似度時,使用歐氏距離作為距離函數。

從表8和表9結果可直觀看到各模型結合用戶協同過濾算法的推薦效果,CNN模型與傳統隨機森林模型相比,推薦效果明顯提升。gcForest模型吸收了集成學習和深度學習兩種方法的優勢,在保證與CNN相當或略有提升的結果的前提下,自動確定訓練層數,從而實現模型復雜度自適應調節,提升算法效率。同時,可以看出經過用戶興趣向量表征和引入時間注意力機制的改進模型Cluster-ATT-gcForest性能表現更好。興趣向量表征將算法注意力集中于用戶興趣,有效提高了用戶-興趣模型預測準確率;將駐留時間與模型輸入融合使多維特征被選擇時將目光聚集在大概率特征上,從而體現被選擇特征的重要程度;使用簇重要性作為深度森林權重使隨機森林中的決策樹更傾向于選擇概率大的興趣簇作為類分布向量。因此Cluster-ATT-gcForest實驗效果好于gcForest。

表8 在數據集1上本文方法與RF/CNN/gcForest 效果對比

表9 在數據集2上本文方法與RF/CNN/gcForest 效果對比

5 結束語

本文針對用戶上網日志中行為數據對興趣偏好的體現,提出了一種融合用戶興趣表征與注意力機制的預測推薦算法。該算法通過用戶興趣向量表征將用戶對項目的訪問表示轉化為用戶所屬興趣概率;同時引入駐留時間和簇重要性權重對gcForest模型進行改進和優化,捕獲重點興趣特征;并將建立起來的用戶-興趣模型與基于用戶的協同過濾推薦算法結合。在真實數據集和公開數據集上的實驗結果表明,用戶興趣向量表征和優化gcForest模型有效提升了興趣預測準確率,驗證了本文算法的有效性,同時說明了本文算法具有一定的實用性和普適性。

由于數據源局限,本文模型未考慮到用戶信息多樣性。將不同數據源信息融合全面構建用戶興趣模型是未來研究工作的方向;同時,組合異構網絡從而構建混合推薦模型具有潛在的研究價值。

猜你喜歡
深度特征用戶
深度理解一元一次方程
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
深度觀察
深度觀察
深度觀察
抓住特征巧觀察
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
主站蜘蛛池模板: 一级毛片不卡片免费观看| 国产日韩AV高潮在线| 亚洲天堂视频网| www.亚洲一区二区三区| 亚洲第一视频区| 国产手机在线小视频免费观看 | 国产欧美日本在线观看| 国产va视频| 成年看免费观看视频拍拍| 国产一级妓女av网站| 中文字幕日韩欧美| 国产在线观看一区二区三区| 婷婷六月天激情| 日本道中文字幕久久一区| 成人日韩欧美| 国产尤物jk自慰制服喷水| 欧美日韩中文国产| 午夜天堂视频| 国产精品女熟高潮视频| 国产91av在线| 制服丝袜国产精品| 九九久久精品免费观看| 久久国产热| 精品天海翼一区二区| 天天摸天天操免费播放小视频| 日韩成人午夜| 美女无遮挡免费视频网站| 国产在线观看成人91| 欧美在线中文字幕| 99热这里只有精品久久免费| 国产Av无码精品色午夜| 亚洲人成影视在线观看| 久久久久人妻一区精品色奶水| 国产亚洲精品自在久久不卡| 亚洲男人天堂2018| 伊人中文网| 国产特级毛片aaaaaaa高清| 亚洲色成人www在线观看| 国产拍揄自揄精品视频网站| 久久人搡人人玩人妻精品一| 国产情侣一区| 五月天综合网亚洲综合天堂网| 人妻免费无码不卡视频| 99在线观看免费视频| 国产91在线|中文| 国产综合网站| 久久婷婷五月综合色一区二区| a毛片免费观看| 欧美精品在线看| 久久精品国产91久久综合麻豆自制| 国产www网站| 国产女人18水真多毛片18精品 | 欧美日韩亚洲综合在线观看| 91麻豆国产在线| 亚洲欧洲日产国产无码AV| 精品视频一区二区观看| 91毛片网| 欧美亚洲日韩中文| 青青热久麻豆精品视频在线观看| 美女啪啪无遮挡| 中文字幕在线欧美| 免费久久一级欧美特大黄| 91视频首页| 国产精品永久久久久| 亚洲成肉网| 少妇人妻无码首页| 国产一区二区精品福利| 国产福利影院在线观看| 国产在线精品美女观看| 国产精品无码翘臀在线看纯欲| 国产在线观看一区精品| 欧美一级黄色影院| 99久久精品免费观看国产| 欧美在线导航| 91国内外精品自在线播放| 国产午夜小视频| 久久亚洲综合伊人| 激情爆乳一区二区| 国产精品对白刺激| 欧美激情第一区| 色哟哟精品无码网站在线播放视频| 亚洲一区国色天香|