本系列文章将從最簡單的概念開始,逐步講解推薦系統的發展曆程和最新實踐。以産品經理的視角,闡述推薦系統涉及的算法,技術和架構。本文将介紹推薦系統如何給現實世界中的用戶打數字化的标簽:用戶畫像。
用戶畫像,簡單來講,就是我們給用戶打上的一系列的标簽。它的應用非常廣泛,在互聯網産品的任何一個領域,任何一種實現用戶個性化的功能,都需要用到用戶畫像。本文隻涉及推薦系統的用戶畫像體系。
一、推薦系統用戶畫像長什麼樣用戶畫像這個詞具有廣泛性。它被應用于推薦,廣告,搜索,個性化營銷等各個領域。任何時候,不管出于什麼目的,我們想描述我們的用戶是誰的時候,大家都會用到用戶畫像這個詞。
比如:
(1)産品經理定性用戶分析
設計産品功能時,會對用戶是誰進行描摹。如:目标用戶群體的人口屬性,社會背景,使用習慣等信息。這種用戶畫像主要描述用戶是誰,以便做好功能定位。
如下圖中的定性用戶畫像分群:
(2)數據分析用戶畫像
分析用戶行為,用戶進行聚類行為分析。如:數據分析師可能會給出,觀看電商直播的男女比例,得出女性用戶更喜歡看我們的電商直播這樣的結論。
(3)推薦系統用戶畫像
為建立個性化功能,用各種辦法給用戶大規模打上幾萬甚至幾千萬個标簽。這種标簽不僅僅有偏好,還有偏好程度值。
本文所指的用戶畫像,僅僅涉及第三種情況。一般地,推薦系統的用戶畫像長成這個樣子:
推薦系統的用戶畫像,一般包括用戶基礎信息和偏好信息。而偏好畫像是重點,數量上占了推薦系統用戶畫像的絕大多數,是我們召回和模型訓練的基石。
因為機器跟人不同,一個詞“中國”對于人來說是有意義的,對于機器隻是一個漢字編碼。因為用戶畫像,為了能讓機器計算,需要帶上概率值或者偏好值(權重值)等。
我們接下來就聊一聊,在推薦系統中,這種帶了一些列數字的用戶畫像怎麼構建出來的。
二、用戶畫像怎麼用?第一章的介紹過,推薦過程分為:召回、初排和精排三個階段。用戶畫像主要用在召回和初排兩個階段。
召回階段使用用戶畫像,主要是通過用戶畫像召回相似的物品。比如一個短視頻APP上,用戶海賊王偏好值比較高,就可以針對海賊王進行内容召回。
初排階段使用用戶畫像,是在模型上使用的。模型将用戶畫像數據作為一部分的特征值,用于模型的離線訓練或者實時模型更新。
三、用戶畫像的分類用戶畫像是一個比較大而全的概念,标簽是用戶畫像最基本的單元,用戶畫像是有成千上萬個标簽組合而成的。當我們想對用戶畫像進行分類時,通過對用戶标簽的分類就可以了。每個平台有自己的用戶畫像體系。對推薦系統的構建來說,一般從以下維度來做标簽分類。
如下圖所示:
其中:
(1)基礎用戶畫像
- 人口統計學标簽:用戶的性别,年齡,地區等信息。
- 行為特征标簽:用戶在互聯網平台的注冊,活躍,付費,浏覽等方面的行為記錄産生的用戶标簽。
- 性格标簽:豪爽大方,精打細算,沖動消費等類型标簽
(2)偏好用戶畫像
- 長期偏好标簽:用戶對較長時間内,幾個月甚至是幾年内,對某類事物的穩定偏好。
- 短期偏好标簽:用戶最近較短時間内,七天内甚至是幾分鐘内,對某類事物的偏好。
- 泛化偏好标簽:衆多的用戶偏好中,不同的偏好之間有關聯性或者相似性,就像啤酒和尿布那樣。用戶對啤酒有過直接的行為,但對尿布還沒有,那麼尿布可能是他的泛化偏好。
以上的五小分類中,前面兩類隻占了用戶标簽數量的很小一部分。而推薦系統中,數量最為龐大的要數偏好類的标簽了。平台有多少個物品标簽,就會産生多少偏好标簽。另一方面,偏好類的标簽的産生,依賴于物品标簽。因為用戶對物品的偏好程度,是通過他對平台物品的曝光,點擊,購買等行為計算出來的。
四、基礎用戶畫像的怎麼來?那基礎的用戶畫像是怎麼産生的呢?一般可分以下幾種來源:
- 簡單信息提取:基于實際基本事實而産生标簽,如注冊時間,渠道來源,用戶所在地區等。
- 邏輯或公式計算:使用簡單的邏輯或公式,對用戶的行為進行統計而産生标簽,如用戶活躍天數,用戶消費金額等。
- 算法學習:基于機器學習模型對用戶的屬性預測産生的标簽,如性别,年齡,有車一族等。
五、簡單舉例:通過模型産生基礎用戶畫像
國内某公司,在Kaggle舉行過一個預測用戶年齡和性别的比賽。他們公布了一個用戶數據集,數據集中包含了手機上安裝的APP列表,手機型号和GPS信息等數據用于模型訓練。參賽選手通過這些數據建模,預測用戶的性别和年齡。準确度高的獲勝。
一個用戶的手機裡安裝的APP,跟他的年齡和性别存在着一定的關聯。如:女性用戶常用美柚,小紅書等APP;而男性用戶可能會裝更多的遊戲。
如下圖:
這個是有監督學習,橙色部分數據是特征,藍色部分數據是label。Label就是我們需要預測的目标。通過大量的數據和算法調優,就可以訓練出較為準确的模型。
用訓練好的模型,就可以給其他的未知性别和年齡的用戶做評分預測。這部分比較簡單,就簡單舉例一下。
六、物品标簽物品畫像,則是每個物品的一系列标簽。物品畫像其中一個作用就是可以作為推薦模型中的物品特征。另外一方面,在推薦系統中,物品畫像是用戶畫像的基礎:物品畫像 用戶行為=用戶畫像。
舉個簡單的例子,一個用戶點擊了一系列的阿克蘇蘋果(物品畫像:阿克蘇,蘋果,阿克蘇蘋果),這個用戶就會被打上阿克蘇,蘋果和阿克蘇蘋果的偏好标簽。
物品畫像的産生,不同的内容形式有不同的做法。但大體可分為兩類:
- 人工的方式給物品打标簽;
- 機器學習的方式給物品打标簽。
如在音樂領域,一些音樂平台是通過一組音樂專家對平台的音樂進行打标簽後,再對用戶進行推薦。這種人工的方式成本比較高,而且依賴于專家的專業程度。另外,不同專家之間的标準可能不一樣,需要統一标準或者拉平差異。但是這也是沒有辦法的辦法,有些場景下,物品标簽匮乏,不得不依賴與人工打标的方式。
大規模地給物品打标簽,大部分還是靠機器學習的方式。如何給物品打标簽不是本文重點,這裡略過。
七、偏好畫像的怎麼計算得來?偏好畫像如何産生?為了直觀簡單,直接以圖文數據的方式來講述。假設一個短視頻平台有4個用戶使用,有4個視頻需要被推薦。
其中,4個視頻分别為:
整理一下,我們可以得到以上4個視頻的物品畫像:
另外,為了簡單一點,這裡隻考慮用戶的觀看行為,看完一次得分為1。4個用戶的數據分别如下,數字代表觀看次數。如下圖中,用戶A看了視頻1一共2次。
先說結論,一般地,用戶畫像的公式為:用戶偏好程度 = 行為類型權重值 × 次數 × 時間衰減 × TFIDF值。
- 行為類型權重值是人為給用戶行為的賦值。比如:看完=1,收藏=2,分享=3,購買=4等。我們這裡隻考慮“看完”這個行為。
- 次數則是行為發生的次數。
- 時間衰減則是按一定的衰減系數,随着時間衰減。一般用牛頓熱力學公式來取衰減系數。
- TFIDF值本來是文本處理領域的算法,用來提取一篇文章中的關鍵字。這裡用來衡量标簽的對一個用戶的關鍵程度。
下面我們來計算用戶A的用戶畫像和偏好值。
第一步:列一下行為類型權重值,因為我們隻考慮觀看行為,權重都為1:
第二步:統計用戶A的行為次數。用戶A看了視頻1兩次,所以視頻1帶的标簽“金融戰争”和“做空”次數都記為2:
第三步:計算時間衰減,假設用戶A看視頻1是兩天前的行為,看視頻4是今天的行為。衰減按照天來計算,衰減系數等于0.1556,熱度計算公式為:熱度=1×exp(-0.1556×天數)。按照這個衰減系數,45天後熱度衰減到0.5。
按照這個計算方式,視頻1的熱度 = 1×exp(-0.1556×2) = 0.73,今天看的視頻4,熱度還為1。
第四步:計算TFIDF值。
這步比較複雜。我們先說下TFIDF的公式,TF和IDF是兩個不同的值,兩兩相乘可以得到TFIDF值。
首先說TF。
TF是Term Frequency的縮寫,意思是可以理解為詞頻,計算公式如下:
TF計算的是在用戶的所有标簽中,某個标簽的重要程度。如果标簽出現頻率高,那麼TF值就會比較高。對于用戶A,每個标簽都出現了一次(因為看過的視頻中,沒有标簽重複的),标簽的TF值=1÷4=0.25。
而對于用戶B,因為有看過兩個海賊王的視頻。一個視頻帶标簽:海賊王,路飛。另外一個視頻帶标簽:海賊王,路飛,甚平。所以,海賊王和路飛标簽個數都是2,甚平的标簽個數是1。
這樣,計算出用戶B的TF值為:
然後說IDF。
IDF是Inverse Document Frequency,意思是逆文檔頻率。先說怎麼計算,公式如下:
這個是為了計算一個标簽的稀缺程度。如果一個标簽全部的用戶都,IDF值就比較小。相反,一個标簽隻有少部分用戶有,則IDF值比較大。公式中,“帶該标簽的用戶數 1”部分加1是為了防止分母為0的情況。
下表的灰色部分是每個用戶行為,計算出用戶的标簽個數統計。如海賊王标簽,因為有三個用戶帶了這個标簽,所以“帶該标簽的用戶數”為3。它的IDF值 = 4 ÷ 3 = 1.33,這裡4是因為有4個用戶。
第五步,彙總計算出用戶A的每個标簽偏好值。
如下圖中,用戶A對三傻大鬧寶萊塢的偏好值為:1×3×1×0.25×2=1.5。
用這種方式,我們就可以為用戶打上海量的标簽,隻用用戶行為足夠多,我們就能捕捉的用戶的偏好數據。
八、總結
- 推薦系統的用戶畫像主要有兩種:基本畫像和偏好畫像。
- 基本畫像是用戶的個人屬性,如年齡,性别,居住城市等。
- 用戶偏好畫像是推薦系統中的重點,它一般用用戶偏好程度 = 行為類型權重值 × 次數 × 時間衰減 × TFIDF值計算出來。
- 用戶畫像在推薦系統中用于召回和模型訓練。
作者:菠蘿王子;公衆号:菠蘿王子AI分享
本文由 @菠蘿王子 原創發布于人人都是産品經理。未經許可,禁止轉載
題圖來自Unsplash,基于CC0協議
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!