基于用户行为的兴趣标签模型
隨著網(wǎng)站規(guī)模的擴大,內(nèi)容也相應(yīng)的與日俱增,涵蓋的頻道也越來越繁雜,在如此海量的信息平臺下,如何更好的服務(wù)用戶成了各門戶網(wǎng)站的首要任務(wù)。從用戶需求的角度考慮,對內(nèi)容的判斷標(biāo)準(zhǔn)無疑是用戶對此內(nèi)容是否感興趣?!扒饲妗彼惴ㄔ诨ヂ?lián)網(wǎng)行業(yè)已經(jīng)不是個新鮮的詞匯,但如何做到對用戶興趣的精準(zhǔn)匹配仍是難點,特別是對圖片、視頻等非文本內(nèi)容來說,因為本身缺乏描述性文本,因此興趣標(biāo)簽成為一種非常重要的語義素材。本文主要介紹根據(jù)優(yōu)酷用戶歷史行為構(gòu)建的興趣標(biāo)簽?zāi)P?#xff0c;模型能夠及時捕捉用戶興趣的變化,調(diào)整個性化興趣標(biāo)簽的排序,從而達(dá)到提高精準(zhǔn)推薦和個性化推薦的效果。
1.模型數(shù)據(jù)流程
模型從用戶行為出發(fā),最終定位用戶的興趣標(biāo)簽,根據(jù)行為權(quán)重、時間衰減等因素,計算標(biāo)簽權(quán)重并排序。流程如下所示:?
在用戶行為的選取上,登錄用戶考慮的用戶行為包括觀看、搜索、收藏、評論、頂踩和上傳,未登錄用戶考慮的用戶行為則只有觀看和搜索。
1.1 用戶行為數(shù)據(jù)采集
在本項目中,我們選取了最近180天內(nèi)的用戶行為,每天將新的行為數(shù)據(jù)和歷史數(shù)據(jù)進(jìn)行累加計算。?
1.2 視頻Tag信息
視頻都有一些特定的分詞標(biāo)簽描述,一般是通過視頻標(biāo)題和描述分詞提取出來的,可以單獨使用這些分詞,也可以用機器學(xué)習(xí)算法給標(biāo)簽打上不同的權(quán)重,來標(biāo)識標(biāo)簽不同的重要性。?
1.3 用戶興趣標(biāo)簽
用戶興趣標(biāo)簽體系是一個分層級表示用戶興趣的結(jié)構(gòu),目的是為了從不同的粒度定位用戶的興趣。從視頻分詞標(biāo)簽到用戶興趣標(biāo)簽有一個映射關(guān)系,目前視頻分詞標(biāo)簽量級為百萬,用戶興趣標(biāo)簽有8萬左右。我們給用戶打上下一層級標(biāo)簽的同時也會打上上一層級的標(biāo)簽。?
2. 用戶興趣標(biāo)簽權(quán)重計算規(guī)則
2.1 用戶行為打分規(guī)則(每日)
我們對用戶不同的行為類型設(shè)置了不同的權(quán)重。如此設(shè)定行為權(quán)重帶有一定的主觀性,但設(shè)定值符合大多數(shù)用戶的行為特點,也可以快速推進(jìn)項目的進(jìn)行。在下一版的改進(jìn)計劃中,擬先對用戶進(jìn)行一次聚類,然后對每個聚類群體利用回歸算法迭代出一組最優(yōu)權(quán)重值,從而使權(quán)重的設(shè)定更具有針對性。下面主要介紹下觀看行為打分規(guī)則。?
主要考慮因素如下:?
1、 視頻觀看比例,用戶一天內(nèi)的觀看比例有可能多倍于視頻長度。?
2、 降低短視頻的打分值。?
3、 考慮視頻播放次數(shù)的因素。?
4、 限定打分范圍。
2.2 用戶視頻Tag打分規(guī)則
將用戶行為融合,并轉(zhuǎn)化成對視頻標(biāo)簽的打分。在生成用戶Tag打分?jǐn)?shù)據(jù)時,我們考慮以下幾個因素:?
1、 時間衰減系數(shù)。用戶行為距當(dāng)前時間越近的影響越大,因此從用戶標(biāo)簽上可以反應(yīng)該用戶最近的興趣點。?
2、 每天Tag數(shù)量衰減系數(shù)。考慮到用戶某一天內(nèi)對某一標(biāo)簽的集中行為有可能會拉偏此用戶的興趣點,因此添加了tag數(shù)量的衰減。?
2.3 用戶興趣標(biāo)簽打分規(guī)則
這一步只是簡單的將視頻標(biāo)簽映射到用戶興趣標(biāo)簽分級體系,累加得到興趣標(biāo)簽分值并按由高到低進(jìn)行排序。結(jié)果數(shù)據(jù)形式如下,Weight為該興趣標(biāo)簽分值占總標(biāo)簽分值的百分比,Support為該興趣標(biāo)簽的累加分值。?
小結(jié):
雖然目前的興趣標(biāo)簽?zāi)P瓦€存在一些不足之處有待進(jìn)一步改進(jìn),但引入用戶興趣模型確實可以在一定程度上更精確的定位用戶的興趣,進(jìn)而提高個性化推薦的質(zhì)量。此外,如何優(yōu)化興趣標(biāo)簽的提取也會直接影響著模型的精度。
總結(jié)
以上是生活随笔為你收集整理的基于用户行为的兴趣标签模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spark Java API:Trans
- 下一篇: Hive中JOIN的使用入门