天天看點

讓機器讀懂使用者——大資料中的使用者畫像讓機器讀懂使用者——大資料中的使用者畫像

讓機器讀懂使用者——大資料中的使用者畫像

摘要: 使用者畫像(persona)的概念最早由互動設計之父Alan Cooper提出:“Personas are a concrete representation of target users.” 是指真實使用者的虛拟代表,是建立在一系列屬性資料之上的目标使用者模型。随着網際網路的發展,現在我們說的使用者畫像又包含了新的内涵——通常使用者畫像是根據使用者人口學特征、網絡浏覽内容、網絡...

作者:楊傑 網易郵件事業部大資料工程師

使用者畫像的含義

使用者畫像(persona)的概念最早由互動設計之父Alan Cooper提出:“Personas are a concrete representation of target users.” 是指真實使用者的虛拟代表,是建立在一系列屬性資料之上的目标使用者模型。随着網際網路的發展,現在我們說的使用者畫像又包含了新的内涵——通常使用者畫像是根據使用者人口學特征、網絡浏覽内容、網絡社交活動和消費行為等資訊而抽象出的一個标簽化的使用者模型。建構使用者畫像的核心工作,主要是利用存儲在伺服器上的海量日志和資料庫裡的大量資料進行分析和挖掘,給使用者貼“标簽”,而“标簽”是能表示使用者某一次元特征的辨別。具體的标簽形式可以參考下圖某網站給其中一個使用者打的标簽。

http://articles.csdn.net/uploads/allimg/170227/1601034c7-0.png

使用者畫像的作用

提取使用者畫像,需要處理海量的日志,花費大量時間和人力。盡管是如此高成本的事情,大部分公司還是希望能給自己的使用者做一份足夠精準的使用者畫像。

那麼使用者畫像有什麼作用,能幫助我們達到哪些目标呢?

大體上可以總結為以下幾個方面:

1. 精準營銷:精準直郵、短信、App消息推送、個性化廣告等。

2. 使用者研究:指導産品優化,甚至做到産品功能的私人定制等。

3. 個性服務:個性化推薦、個性化搜尋等。

4. 業務決策:排名統計、地域分析、行業趨勢、競品分析等。

使用者畫像的内容

使用者畫像包含的内容并不完全固定,根據行業和産品的不同所關注的特征也有不同。對于大部分網際網路公司,使用者畫像都會包含人口屬性和行為特征。人口屬性主要指使用者的年齡、性别、所在的省份和城市、教育程度、婚姻情況、生育情況、工作所在的行業和職業等。行為特征主要包含活躍度、忠誠度等名額。

除了以上較通用的特征,不同類型的網站提取的使用者畫像各有側重點。

以内容為主的媒體或閱讀類網站,還有搜尋引擎或通用導航類網站,往往會提取使用者對浏覽内容的興趣特征,比如體育類、娛樂類、美食類、理财類、旅遊類、房産類、汽車類等等。

社交網站的使用者畫像,也會提取使用者的社交網絡,從中可以發現關系緊密的使用者群和在社群中起到意見領袖作用的明星節點。

電商購物網站的使用者畫像,一般會提取使用者的網購興趣和消費能力等名額。網購興趣主要指使用者在網購時的類目偏好,比如服飾類、箱包類、居家類、母嬰類、洗護類、飲食類等。

消費能力指使用者的購買力,如果做得足夠細緻,可以把使用者的實際消費水準和在每個類目的心理消費水準區分開,分别建立特征緯度。

另外還可以加上使用者的環境屬性,比如目前時間、通路地點LBS特征、當地天氣、節假日情況等。

當然,對于特定的網站或App,肯定又有特殊關注的使用者緯度,就需要把這些次元做到更加細化,進而能給使用者提供更精準的個性化服務和内容。

http://articles.csdn.net/uploads/allimg/170227/1601035343-1.png

使用者畫像的生産

使用者特征的提取即使用者畫像的生産過程,大緻可以分為以下幾步:

1. 使用者模組化,指确定提取的使用者特征次元,和需要使用到的資料源。

2. 資料收集,通過資料收集工具,如Flume或自己寫的腳本程式,把需要使用的資料統一存放到Hadoop叢集。

3. 資料清理,資料清理的過程通常位于Hadoop叢集,也有可能與資料收集同時進行,這一步的主要工作,是把收集到各種來源、雜亂無章的資料進行字段提取,得到關注的目标特征。

4. 模型訓練,有些特征可能無法直接從資料清理得到,比如使用者感興趣的内容或使用者的消費水準,那麼可以通過收集到的已知特征進行學習和預測。

5. 屬性預測,利用訓練得到的模型和使用者的已知特征,預測使用者的未知特征。

6. 資料合并,把使用者通過各種資料源提取的特征進行合并,并給出一定的可信度。

7. 資料分發,對于合并後的結果資料,分發到精準營銷、個性化推薦、CRM等各個平台,提供資料支援。

http://articles.csdn.net/uploads/allimg/170227/16010343N-2.png

下面以使用者性别為例,具體介紹特征提取的過程:

1.提取使用者自己填寫的資料,比如注冊時或者活動中填寫的性别資料,這些資料準确率一般很高。

2. 提取使用者的稱謂,如文本中有提到的對方稱呼,例如:xxx先生/女士,這個資料也比較準。

3. 根據使用者姓名預測使用者性别,這是一個二分類問題,可以提取使用者的名字部分(百家姓與性别沒有相關性),然後用樸素貝葉斯分類器訓練一個分類器。過程中遇到了生僻字問題,比如“甄嬛”的“嬛”,由于在名字中出現的少,是以分類器無法進行正确分類。考慮到漢字都是由偏旁部首組成,且偏旁部首也常常具有特殊含義(很多與性别具有相關性,比如草字頭傾向女性,金字旁傾向男性),我們利用五筆輸入法分解單字,再把名字本身和五筆打法的字母一起放到LR分類器進行訓練。比如,“嬛”字的打法:『 女V+罒L+一G+衣E = VLGE 』,這裡的女字旁就很有女性傾向。

4. 另外還有一些特征可以利用,比如使用者通路過的網站,經常通路一些美妝或女性服飾類網站,是女性的可能性就高;通路體育軍事類網站,是男性的可能性就高。還有使用者上網的時間段,經常深夜上網的使用者男性的可能性就高。把這些特征加入到LR分類器進行訓練,也能提高一定的資料覆寫率。

資料管理系統

使用者畫像涉及到大量的資料處理和特征提取工作,往往需要用到多資料來源,且多人并行處理資料和生成特征。是以,需要一個資料管理系統來對資料統一進行合并存儲和分發。我們的系統以約定的目錄結構來組織資料,基本目錄層級為:/user_tag/屬性/日期/來源_作者/。以性别特征為例,開發者dev1從使用者姓名提取的性别資料存放路徑為 /user_tag/gender/20170101/name_dev1,開發者dev2從使用者填寫資料提取的性别資料存放路徑為 /user_tag/gender/20170102/raw_dev2。

從每種來源提取的資料可信度是不同的,是以各來源提取的資料必須給出一定的權重,約定一般為0-1之間的一個機率值,這樣系統在做資料的自動合并時,隻需要做簡單的權重求和,并歸一化輸出到叢集,存儲到事先定義好的Hive表。接下來就是資料增量更新到HBase、ES、Spark叢集等更多應用服務叢集。

http://articles.csdn.net/uploads/allimg/170227/160103D56-3.png

應用示例:個性化推薦

以電商網站的某種頁面的個性化推薦為例,考慮到特征的可解釋性、易擴充和模型的計算性能,很多線上推薦系統采用LR(邏輯回歸)模型訓練,這裡也以LR模型舉例。很多推薦場景都會用到基于商品的協同過濾,而基于商品協同過濾的核心是一個商品相關性矩陣W,假設有n個商品,那麼W就是一個n * n的矩陣,矩陣的元素wij代表商品Ii和Ij之間的相關系數。而根據使用者通路和購買商品的行為特征,可以把使用者表示成一個n維的特征向量U=[ i1, i2, ..., in ]。于是U*W可以看成使用者對每個商品的感興趣程度V=[ v1, v2, ..., vn ],這裡v1即是使用者對商品I1的感興趣程度,v1= i1*w11 + i2*w12 + in*w1n。如果把相關系數w11, w12, ..., w1n 看成要求的變量,那麼就可以用LR模型,代入訓練集使用者的行為向量U,進行求解。這樣一個初步的LR模型就訓練出來了,效果和基于商品的協同過濾類似。

這時隻用到了使用者的行為特征部分,而人口屬性、網購偏好、内容偏好、消費能力和環境特征等其他上下文還沒有利用起來。把以上特征加入到LR模型,同時再加上目标商品自身的屬性,如文本标簽、所屬類目、銷量等資料,如下圖所示,進一步優化訓練原來的LR模型。進而最大程度利用已經提取的使用者畫像資料,做到更精準的個性化推薦。

http://articles.csdn.net/uploads/allimg/170227/160103M28-4.png http://articles.csdn.net/uploads/allimg/170227/160103M28-4.png

點評:

使用者畫像是目前大資料領域的一種典型應用,也普遍應用在多款網易網際網路産品中。本文基于網易的實踐,深入淺出地解析了使用者畫像的原理和生産流程。

精确有效的使用者畫像,依賴于從大量的資料中提取正确的特征,這需要一個強大的資料管理系統作為支撐。網易大資料産品體系中包含的一站式大資料開發與管理平台 – 網易猛犸,正是在網易内部實踐中打磨形成的,能夠為使用者畫像及後續的業務目标實作提供資料傳輸、計算和作業流排程等基礎能力,有效降低大資料應用的技術門檻。

微信公衆号【黃小斜】大廠程式員,網際網路行業新知,終身學習踐行者。關注後回複「Java」、「Python」、「C++」、「大資料」、「機器學習」、「算法」、「AI」、「Android」、「前端」、「iOS」、「考研」、「BAT」、「校招」、「筆試」、「面試」、「面經」、「計算機基礎」、「LeetCode」 等關鍵字可以擷取對應的免費學習資料。 

                     ​

繼續閱讀