構(gòu)建用戶畫像中所用到的AI算法

3 評論 20217 瀏覽 95 收藏 20 分鐘

本文從三個部分——標(biāo)簽的層級、生產(chǎn)、權(quán)重方面,分析了構(gòu)建用戶畫像中所用到的AI算法。

談及用戶畫像,我想產(chǎn)品和運營的朋友們都不會陌生,用戶畫像是用戶研究的重要輸出,它能幫助我們更好的進行業(yè)務(wù)決策以及產(chǎn)品設(shè)計。用戶畫像落實到產(chǎn)品設(shè)計,本質(zhì)上是將數(shù)據(jù)組合成數(shù)據(jù)特征,從而形成用戶的數(shù)據(jù)模型。

構(gòu)建用戶畫像的主流方法有4種:

  1. 基于數(shù)據(jù)統(tǒng)計
  2. 基于規(guī)則定義
  3. 基于聚類
  4. 基于主題模型

前兩者是基于已有數(shù)據(jù)的構(gòu)建方法,其缺陷是無法處理數(shù)據(jù)缺失或不在規(guī)則范圍內(nèi)的用戶。而解決這一類問題,也正是機器學(xué)習(xí)存在的意義,它讓計算機像人一樣去學(xué)習(xí)處理問題,并給出答案。

本文將從構(gòu)建用戶畫像的角度和大家分享能夠運用在其中的一些AI算法,希望能給大家提供一些價值。

用戶畫像偏向于定性,而產(chǎn)品設(shè)計是將需求從定性轉(zhuǎn)換為定量的過程,用戶畫像在量化過后我們也稱之為用戶標(biāo)簽。

一、標(biāo)簽的層級

圖1-構(gòu)建用戶畫像的三個步驟

構(gòu)建用戶標(biāo)簽我拆分了三個步驟,分別是層級、生產(chǎn)以及權(quán)重。理解標(biāo)簽的層級能夠幫助我們設(shè)計產(chǎn)品架構(gòu),并且熟悉標(biāo)簽生產(chǎn)的方法。

圖2-標(biāo)簽的層級劃分方式

標(biāo)簽的層級有兩種劃分方式,方式1是較為常見的做法,而方式2查閱于京東的數(shù)據(jù)分析師凌靖的文章,結(jié)合兩種方式之后形成了下圖圖3。

圖3-標(biāo)簽的層級

標(biāo)簽的每一個層級,可以將其理解為對上一層標(biāo)簽的再次提煉。對照著圖3,我們試著理解這4個層級:

1. 原始數(shù)據(jù)

來源于用戶的基礎(chǔ)信息、交易數(shù)據(jù)、訪問數(shù)據(jù),如:用戶的注冊手機號碼、用戶的歷史訂單、用戶的訪問軌跡等。

2. 事實標(biāo)簽

是對原始數(shù)據(jù)進行統(tǒng)計分析后的初步提煉結(jié)果。

3. 模型標(biāo)簽及預(yù)測標(biāo)簽

3-1 模型標(biāo)簽

由一個或多個事實標(biāo)簽組合而成,是基于模型訓(xùn)練的結(jié)果。以模型標(biāo)簽“交易偏好”為例,它是由交易商品類型、交易場景、交易來源這幾個事實標(biāo)簽組合而成的。

3-2 預(yù)測標(biāo)簽

以已有的模型標(biāo)簽數(shù)據(jù)作為特征,經(jīng)過機器學(xué)習(xí)生產(chǎn)的標(biāo)簽。由于預(yù)測標(biāo)簽會映射成為模型標(biāo)簽,所以在圖3中將2者放置于同一個層級。

4. 策略標(biāo)簽

策略標(biāo)簽,則是用戶標(biāo)簽構(gòu)建的最終目的,根據(jù)目的提煉用戶,并對用戶進行定向的營銷。

標(biāo)簽的層級,指導(dǎo)著產(chǎn)品經(jīng)理構(gòu)建用戶畫像的每個步驟。前兩個層級,我們需要對缺失的數(shù)據(jù)建立數(shù)據(jù)源,對數(shù)據(jù)進行清洗、修復(fù)以及特征構(gòu)建等;后兩個層級,我們需要使用合適的方式生產(chǎn)標(biāo)簽。

二、標(biāo)簽的生產(chǎn)

在第一章中我們理解了標(biāo)簽的層級,這一張主要講述標(biāo)簽的生產(chǎn)過程,用戶畫像的構(gòu)建方式不同,生產(chǎn)方式也不同。

1. 基于規(guī)則定義的標(biāo)簽生產(chǎn)方式

顧名思義,這種生產(chǎn)方式是根據(jù)固定的規(guī)則,通過數(shù)據(jù)查詢的結(jié)果生產(chǎn)標(biāo)簽。這里的重點在于如何制定規(guī)則。

從數(shù)據(jù)的變化頻次來看,可以將標(biāo)簽劃分為靜態(tài)標(biāo)簽以及動態(tài)標(biāo)簽。靜態(tài)標(biāo)簽變化的頻次低,或者一旦確認(rèn)不做改變。而動態(tài)標(biāo)簽變化頻繁,它會衰減也可能會消失。

以靜態(tài)標(biāo)簽和動態(tài)標(biāo)簽為思路向下順延,我們可以劃分為基礎(chǔ)屬性以及偏好行為兩大類,如下圖圖4所示:

圖4-用戶標(biāo)簽的規(guī)則分類

這是一張比較普適的圖,在實際應(yīng)用的過程中產(chǎn)品經(jīng)理可以根據(jù)業(yè)務(wù)去定義更多的類型。將類型劃分清楚,用戶標(biāo)簽的生產(chǎn)工具已經(jīng)初具雛形。

在設(shè)置規(guī)則時產(chǎn)品經(jīng)理應(yīng)該適當(dāng)抽象,過于精細(xì)會增加研發(fā)的周期,上線后的數(shù)據(jù)查詢也會有較大的壓力。其次也可能因為篩選條件過多,查詢的數(shù)據(jù)樣本不足,導(dǎo)致空耗資源。

適當(dāng)抽象考驗產(chǎn)品經(jīng)理對需求、資源以及應(yīng)用的平衡能力,以用戶訪問行為為例,在初期不建議放開全量查詢,可以優(yōu)先將頻次高、強度高的查詢需求抽象成規(guī)則,如商品詳情、平臺活動、渠道投放等。

基于規(guī)則定義和基于數(shù)據(jù)統(tǒng)計這兩種用戶標(biāo)簽構(gòu)建方式在產(chǎn)品設(shè)計中的邏輯是相對簡單的,就不花更多的篇幅解釋了。

2. 基于主題模型的標(biāo)簽生產(chǎn)方式

主題模型,最開始運用于內(nèi)容領(lǐng)域,目的是找到用戶的偏好,它將內(nèi)容劃分為了3個層級:分類、主題、關(guān)鍵詞。

圖5-基于主題模型的標(biāo)簽生產(chǎn)方式

在用戶標(biāo)簽中我們可以參照分類算法將用戶進行分類、聚類,使用關(guān)鍵詞的算法挖掘用戶的偏好,從而生產(chǎn)標(biāo)簽。

2-1?線性支持向量機

線性支持向量機(Linear Support Vector Machine)是一種二分類算法,適用于“是與否”,“有或無”的問題,它隸屬于機器學(xué)習(xí)中的有監(jiān)督學(xué)習(xí)(Supervised Learning)。

圖6-函數(shù)公式

有監(jiān)督學(xué)習(xí),類似我們從小接觸的函數(shù)公式,即根據(jù)輸入(x),和公式f(x)得到輸出(y),假設(shè)x是數(shù)據(jù)的特征,那么經(jīng)過函數(shù)的運算后我們能夠得到分類結(jié)果。

以人口屬性為例,非社交應(yīng)用用戶填寫自己性別的主動性較低。當(dāng)我們想了解用戶的性別組成,卻只有10%用戶填寫了性別,而另外90%的用戶的性別是未知的。

在機器學(xué)習(xí)中,我們會將明確性別的用戶作為數(shù)據(jù)樣本,提取他們的數(shù)據(jù)特征訓(xùn)練模型。以明確性別的用戶的數(shù)據(jù)特征設(shè)為x,性別為y,訓(xùn)練出f(x)的函數(shù)之后,我們將其他未知性別的用戶特征代入到公式f(x)中,從而去預(yù)測他們的性別。

函數(shù)是是由模型訓(xùn)練而成的,線性支持向量機是怎么訓(xùn)練的呢?

圖7-支持向量機圖解

在圖7中,我們發(fā)現(xiàn)有一條直線將象限中的數(shù)據(jù)分成了兩部分,而支持向量機則是找到一條劃分效果最好的直線。劃分效果越好,新數(shù)據(jù)分類錯誤的可能性也越低,而這兩個類別在支持向量機中我們也叫正樣本和負(fù)樣本。

回到線性支持向量機的定義:“對于給定的數(shù)據(jù)集,能在樣本空間中找到一條劃分直線,從而將兩個不同類別的樣本分開,并且這條直線距離最接近的訓(xùn)練數(shù)據(jù)點最遠?!?/strong>

圖8-支持向量機實例

圖8以購買過男性/女性短袖作為男性用戶和女性用戶的特征,黑點表示為已知的男性用戶,白點為已知的女性用戶。

當(dāng)遇到新的未知性別的用戶,但是我們發(fā)現(xiàn)其有購買過男性短袖這一行為,而這一用戶的數(shù)據(jù)落在了男性部分,所以我們預(yù)測這個用戶是男性。

當(dāng)然在實際過程中,數(shù)據(jù)的特征絕對不僅是簡單的二維特征,在這里只是方便大家理解。線性支持向量機在三維求解的是一個分類效果最好的平面,而在高維則是線性函數(shù)。

圖9-線性支持向量機的目標(biāo)函數(shù)

線性支持向量機的目標(biāo)函數(shù)求解的過程比較復(fù)雜,在小規(guī)模數(shù)據(jù)集中線性支持向量機的表現(xiàn)是較好的,但是由于受到了數(shù)據(jù)量的限制,我們會運用訓(xùn)練更加簡單并且能實時計算的算法——邏輯回歸。

2-2 邏輯回歸

邏輯回歸(Logistic Regression)是和線性支持向量機非常相似,它們都是有監(jiān)督學(xué)習(xí)方法,在不考慮核函數(shù)時都是線性的分類方法。其不同點在于,線性支持向量機是基于距離分類,而邏輯回歸是基于可能性分類。

理解邏輯回歸之前,我們先復(fù)習(xí)一下最簡單的一元線性回歸。一元線性回歸的公式是:y=kx+b。

圖10-一元線性回歸圖例

我們假定圖10中的直線,代表著人在勻速狀態(tài)下路程與速度的關(guān)系。但在實際情況下人的速度不是恒定的,我們沒有辦法使不同時間的速度都穿過這條直線。退而求其次,我們?nèi)フ乙粭l最接近這些速度數(shù)據(jù)的支線。

看到圖10的函數(shù)圖例,大家會發(fā)現(xiàn)線性回歸和線性支持向量機非常的相像,線性回歸與邏輯回歸有什么關(guān)系?邏輯回歸又是怎樣的一種分類方式?

邏輯回歸在線性回歸的基礎(chǔ)上套用了sigmoid函數(shù),它將回歸函數(shù)的結(jié)果映射在sigmoid函數(shù)之中,這個函數(shù)的特點是其值域分布在[0,1]之間,1和0對應(yīng)了二分類的“是與否”,隨著x值的變化,y值會不斷的趨近于0或1,這種趨近我們稱之為可能性。

圖11-sigmoid函數(shù)圖例

在線性支持向量機中只有兩種值:正樣本和負(fù)樣本,而邏輯回歸除了分類還能夠表達分類的概率。

2-3 文本挖掘算法:TF-IDF

TF意思是詞頻(Term Frequency),IDF意思是逆文本頻率指數(shù)(Inverse Document Frequency),在用戶畫像的構(gòu)建中我們會將其運用于生產(chǎn)用戶的偏好標(biāo)簽。

TF表述的核心思想是,在1條文本中反復(fù)出現(xiàn)的詞更重要。而IDF的思想是,在所有文本都出現(xiàn)的詞是不重要的,IDF用于修正TF所表示的計算結(jié)果。

圖12-TF-IDF計算公式

上文描述TF-IDF能夠用于生產(chǎn)用戶的偏好標(biāo)簽,其中的原理是什么呢?

我們將一名用戶類比為一篇文章,用戶瀏覽的商品標(biāo)題在分詞匯總后作為其中的詞庫,平臺的用戶總數(shù)即為文本總數(shù),出現(xiàn)該詞語的文本數(shù)作為有同樣瀏覽行為的用戶。這樣轉(zhuǎn)置過后,就能夠進行計算了。

圖13-用戶A的商品瀏覽記錄

以用戶A為例,用戶A擁有3條瀏覽記錄,分詞后總計17個詞。

設(shè):平臺的用戶總數(shù)=10000人,用戶瀏覽過的商品標(biāo)題帶有“黑色”1詞的用戶有500人,底數(shù)為2。

圖14-標(biāo)簽“黑色”的TF-IDF

以底數(shù)為2,可計算“黑色”這個標(biāo)簽對用戶的權(quán)重是0.52,有了權(quán)重我們能夠?qū)⑵溥\用于尋找相似用戶。

三、標(biāo)簽的權(quán)重

圖15-標(biāo)簽權(quán)重計算公式

標(biāo)簽權(quán)重的計算公式來源于趙洪田撰寫的文章《用戶標(biāo)簽之標(biāo)簽權(quán)重算法》,權(quán)重公式的解讀如下:

1. 行為類型權(quán)重

指的是對于同一類標(biāo)簽,由于其行為的輕重不同所以權(quán)重不同。

如:用戶對于某商品有過生成訂單的行為,根據(jù)訂單未支付、已支付未退款、已支付已退款三種訂單狀態(tài),制定不同的權(quán)重。

2. 時間衰減因子

時間衰減因子體現(xiàn)了標(biāo)簽的熱度隨著時間逐漸冷卻的過程,它來源于牛頓冷卻定律。

圖16-牛頓冷卻定律原始公式

定律描述的是物體的冷卻速度與其當(dāng)前溫度和室溫之間的溫差成正比。運用于新聞領(lǐng)域,一條新聞可能在今天它的“溫度”是最高的,但是隨著時間,這條新聞會逐漸的變成和普通新聞一樣的“溫度”。

經(jīng)過對牛頓冷卻定律的推導(dǎo),我們得出了以下公式:

圖17-冷卻系數(shù)計算公式

將公式翻譯成中文:當(dāng)前溫度=原始溫度 X exp(-冷卻系數(shù) X 間隔時間)

運用于標(biāo)簽的翻譯:當(dāng)前權(quán)重=原始權(quán)重 X exp(-冷卻系數(shù) X 間隔時間)

如:將用戶發(fā)生行為的當(dāng)日該偏好的權(quán)重設(shè)置為1,10天后設(shè)置為0.2,也就是經(jīng)過9天后權(quán)重會衰減是0.2,將已知變量代入到圖13的公式中,經(jīng)過指數(shù)的運算得到冷卻系數(shù),從而得到時間衰減因子。

對于不同的標(biāo)簽,時間的衰減因子系數(shù)是不同的,有的標(biāo)簽甚至是不受時間所影響,在計算時可以不必考慮衰減因子。

公式中的TF-IDF、行為頻次,前者已經(jīng)描述過,后者也比較好理解在這里也不再贅述。標(biāo)簽的權(quán)重可以用于查找相似用戶,進行個性化推薦,如果有有興趣的朋友可以閱讀我的上一篇文章《如何理解個性化推薦中的數(shù)學(xué)原理》。

寫在最后

近期恰好設(shè)計了用戶標(biāo)簽的提取工具,撰寫本文原意是想回顧項目、查漏補缺。過程中閱讀了一些人工智能的書籍,給了自己很多的啟發(fā),于是也將所了解的一些算法添加進來,如果有理解不正確的地方也請朋友們不吝指教。

這篇文章涉及的算法部分主要參考了:《產(chǎn)品經(jīng)理進階:100個案例搞懂人工智能》,這是一本很好的工具書,提供了特別好的知識框架讓我體系化的認(rèn)識人工智能,在此也為朋友們極力推薦這本書。

重點參考資料

1、林中翹—《產(chǎn)品經(jīng)理進階:100個案例搞懂人工智能》

2、吳軍—《數(shù)學(xué)之美》

3、CWS_chen—《用戶畫像原理、技術(shù)選型及架構(gòu)實現(xiàn)》 https://blog.csdn.net/SecondLieutenant/article/details/81153565

4、凌靖—《用戶畫像》 https://zhuanlan.zhihu.com/p/34385914

5、Jack Cui—機器學(xué)習(xí)實戰(zhàn)教程(八):支持向量機原理篇之手撕線性SVM https://cuijiahua.com/blog/2017/11/ml_8_svm_1.html

6、伏草唯存—邏輯回歸模型算法研究和案例分析 https://cloud.tencent.com/developer/article/1330810

7、hffzkl—基于牛頓冷卻定律的時間衰減函數(shù)模型 https://blog.51cto.com/9269309/1865554

8、趙宏田—《用戶標(biāo)簽之權(quán)重算法》

9、劉星辰—《基于文本挖掘的用戶畫像系統(tǒng)的設(shè)計與實現(xiàn)》

10、Coding Fish—《SVM原理及推導(dǎo)》 https://www.jianshu.com/p/05693f2091b7

彩蛋:

第10項,SVM的推導(dǎo)過程筆者還沒有完全推導(dǎo)成功,愿意講課的朋友請你吃飯呀~

 

本文由 @WISE 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理?,未經(jīng)許可,禁止轉(zhuǎn)載

題圖來自Unsplash,基于 CC0 協(xié)議

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 基于聚類和基于主題模型,這兩種劃分方法的原則一致嗎?基于主題模型里面又說了可以使用聚類進行標(biāo)簽生產(chǎn),這是為什么?我理解聚類(無監(jiān)督)應(yīng)該和分類(有監(jiān)督)對應(yīng)。。分類算法是否屬于基于規(guī)則定義中的一種?困惑。。。

    來自上海 回復(fù)
  2. 很棒啊 標(biāo)簽的分層曾有類似的想法

    來自山東 回復(fù)
    1. 謝謝你。

      回復(fù)