借助Canvas黑魔法,實(shí)現(xiàn)營(yíng)銷增益模型Uplift Model
編輯導(dǎo)語(yǔ):運(yùn)營(yíng)人員要如何結(jié)合數(shù)據(jù)分析,找到營(yíng)銷敏感人群,提升觸達(dá)和轉(zhuǎn)化效果,降低營(yíng)銷成本?不妨看看本文作者的案例剖析吧。在本篇文章里,作者結(jié)合Amazon SageMaker Canvas產(chǎn)品進(jìn)行了營(yíng)銷場(chǎng)景建模實(shí)踐,一起來(lái)看。
在后互聯(lián)網(wǎng)時(shí)代,隨著營(yíng)銷成本的高漲,如何從存量人群中精準(zhǔn)找到營(yíng)銷敏感人群進(jìn)行觸達(dá),進(jìn)而提高ROI一直是業(yè)務(wù)中重要的課題。
這樣的業(yè)務(wù)場(chǎng)景需求也同樣延伸到對(duì)數(shù)據(jù)分析師能力的考察上,例如有這樣一個(gè)高頻業(yè)務(wù)面試題:如果餓了么打算給用戶精準(zhǔn)發(fā)券,如何預(yù)測(cè)哪些用戶會(huì)使用?
到業(yè)務(wù)層面討論問(wèn)題,之所以要預(yù)測(cè)會(huì)使用優(yōu)惠券的人群,目的是在成本有限的前提下,使?fàn)I銷產(chǎn)出最大化,而這關(guān)鍵的一點(diǎn)就是要找出真正被營(yíng)銷打動(dòng)的人,即營(yíng)銷敏感型人群。
一、營(yíng)銷增益模型理論
在數(shù)字營(yíng)銷領(lǐng)域,有一個(gè)經(jīng)典的營(yíng)銷增益模型uplift modeling,可以幫助我們達(dá)成該目標(biāo)。
uplift模型根據(jù)營(yíng)銷干預(yù)(比如優(yōu)惠券)和干預(yù)結(jié)果(是否購(gòu)買)兩個(gè)維度把用戶分為四類:
- 營(yíng)銷敏感人群 Persuadables:不發(fā)送優(yōu)惠券則不買,發(fā)送優(yōu)惠券則購(gòu)買;
- 自然轉(zhuǎn)化人群 Sure things:不論是否發(fā)送優(yōu)惠券均會(huì)購(gòu)買;
- 流失人群 Lost causes:不論是否發(fā)送優(yōu)惠券均不會(huì)購(gòu)買;
- 反廣告人群 Sleeping Dogs:不發(fā)送優(yōu)惠券會(huì)購(gòu)買,發(fā)送優(yōu)惠券反而不買。
為達(dá)到營(yíng)銷轉(zhuǎn)化效率最大化,我們的思路就是識(shí)別出營(yíng)銷敏感人群(Persuadables)群體,對(duì)他們發(fā)放優(yōu)惠券。
在討論如何找到營(yíng)銷敏感人群之前,先來(lái)看看如何從數(shù)據(jù)層面定義這群人?因?yàn)閿?shù)據(jù)預(yù)測(cè)是基于概率思維,所以可以把前面對(duì)人群的定義用概率替換:發(fā)券時(shí),購(gòu)買的概率大;不發(fā)券,購(gòu)買概率小。進(jìn)一步可以分別在發(fā)券以及不發(fā)券時(shí)計(jì)算期望收益,得到收益差。
這個(gè)收益差就是“增益”,增益越大,那就可以認(rèn)為這個(gè)人受優(yōu)惠券的影響越大,也就是說(shuō)該人是營(yíng)銷敏感型的概率也就越大。
所以,以終為始來(lái)看最終要得到的模型是怎么樣的:
- 輸入用戶、以及是否給券的信息,輸出期望收益(消費(fèi)金額);
- 把給券和不給券時(shí)的金額做差,就得到優(yōu)惠券對(duì)這個(gè)人的增益。
至此,我們就知道了模型的原理,現(xiàn)在需要去收集數(shù)據(jù)進(jìn)行建模。但是又有一個(gè)問(wèn)題:在同一場(chǎng)景下,我們是無(wú)法同時(shí)得到一個(gè)人給券時(shí)的消費(fèi)金額和不給券時(shí)的消費(fèi)金額。這是因果推斷中典型的反事實(shí)問(wèn)題,該如何解決呢?
此時(shí),我們要回歸到建模思維,這里的“人” 不是獨(dú)立的個(gè)體,而是一組特征集:比如都是25歲、男性、月均收入1w、居住在一線城市、未婚的小明和小亮,從營(yíng)銷的角度,認(rèn)為他們具有相同的畫像。從建模思維來(lái)說(shuō)它們都是同樣的“人”。這樣我們就能得到同一個(gè)特征集的人,同時(shí)給券和不給券的期望收益。
OK,現(xiàn)在就可以從落地角度來(lái)看如何找到營(yíng)銷敏感人群:
- 對(duì)人群進(jìn)行分組,進(jìn)行營(yíng)銷干預(yù)測(cè)試,獲得樣本數(shù)據(jù)。
- 從業(yè)務(wù)層面出發(fā),對(duì)用戶特征進(jìn)行討論。
- 基于1.中回收的數(shù)據(jù)及2.中特征,進(jìn)行uplift Modeling。
- 預(yù)測(cè)用戶營(yíng)銷屬性(屬于哪類人群)。
接下來(lái)結(jié)合業(yè)務(wù)數(shù)據(jù)集做落地實(shí)踐。
二、建模實(shí)踐 Uplift Modeling
1. 營(yíng)銷干預(yù)測(cè)試獲得數(shù)據(jù)
從人群中抽取樣本(64000人)進(jìn)行測(cè)試:對(duì)一半會(huì)員32040人發(fā)券,剩余31960人不發(fā)券。
一段時(shí)間后,回收數(shù)據(jù),結(jié)合現(xiàn)有會(huì)員標(biāo)簽看看有什么數(shù)據(jù)可用:
具體對(duì)每個(gè)字段的解釋如圖所示。
2. 特征工程
使用pd.get_dummies()就能把數(shù)據(jù)中字符類型的分類數(shù)據(jù)進(jìn)行獨(dú)熱編碼(one-hot encoding),形成如圖中的稀疏矩陣。
在理論部分, 我們說(shuō)可以根據(jù)營(yíng)銷干預(yù)(Treament)和干預(yù)結(jié)果(Response)兩個(gè)維度把用戶分為四類,但是在實(shí)際業(yè)務(wù)落地過(guò)程中,“反廣告人群”其實(shí)是很難檢測(cè)的,因此在給會(huì)員標(biāo)記人群分類標(biāo)簽時(shí),根據(jù)反饋結(jié)果把人群分成以下四類:
- 營(yíng)銷敏感人群 Persuadables | TR(Treament and Response),命名為0。
- 自然轉(zhuǎn)化人群 Sure things | CR(Control and Response),命名為1。
- 流失人群 Lost causes | TN(Treament and No-response),命名為2。
- 空白人群 | CN(Control and No-response),命名為3。
至此,我們就完成了特征工程,接下來(lái)進(jìn)入建模階段。
3. Amazon SageMaker Canvas——機(jī)器學(xué)習(xí)建模
在理論階段,我們定義的營(yíng)銷增益模型是用于預(yù)測(cè)給券后每個(gè)會(huì)員的增益,再圈選出增益最大的那部分人群定義為營(yíng)銷敏感人群。
在實(shí)際落地時(shí),有一種更簡(jiǎn)單的邏輯,就是直接針對(duì)每個(gè)會(huì)員的特征,判斷該會(huì)員是屬于哪個(gè)人群,一步到位,然后對(duì)營(yíng)銷敏感人群進(jìn)行營(yíng)銷即可。
在機(jī)器學(xué)習(xí)模型中,這屬于多分類模型(Multi-class classification),也就是說(shuō),建模的邏輯是輸入會(huì)員特征(features),輸出分類標(biāo)簽(人群分類:TR | CR | TN | CN)即可。
features = [‘消費(fèi)休眠天數(shù)’,? ‘累計(jì)消費(fèi)金額’,? ‘曾使用優(yōu)惠券’,? ‘曾使用買一送一券’,? ‘人群分類’,? ‘所在區(qū)域_農(nóng)村’,? ‘所在區(qū)域_城市’,? ‘所在區(qū)域_郊區(qū)’,? ‘注冊(cè)渠道_手機(jī)端’,? ‘注冊(cè)渠道_線下門店’,? ‘注冊(cè)渠道_網(wǎng)頁(yè)端’]
基于標(biāo)準(zhǔn)的機(jī)器學(xué)習(xí)流程,到這一步,我們需要進(jìn)行模型選擇、調(diào)參:
- 模型選擇:可以實(shí)現(xiàn)多分類的模型有很多,例如邏輯回歸、決策樹(shù)、隨機(jī)森林、XGBoost等,需要對(duì)不同模型的預(yù)測(cè)效果作評(píng)價(jià)對(duì)比,選擇最終落地部署使用的模型;
- 調(diào)參:可以借助GridSearchCV工具幫助調(diào)參,但是這個(gè)過(guò)程往往也是最消耗時(shí)間、精力的流程。
其實(shí)這兩個(gè)步驟在實(shí)操中屬于較為機(jī)械、重復(fù)的步驟,為了提高效率,這里我使用亞馬遜云科技的黑魔法:Amazon Sagemaker Canvas來(lái)實(shí)現(xiàn)。
① 上傳數(shù)據(jù)
將在特征工程階段形成的數(shù)據(jù)集拆成建模數(shù)據(jù)集(train)和驗(yàn)證數(shù)據(jù)集(valid)。把建模數(shù)據(jù)集上傳到Canvas后,它可以自動(dòng)呈現(xiàn)出各字段的描述,幫助判斷數(shù)據(jù)的有效性。
在Target Column中選擇輸出的標(biāo)簽:人群分類,Canvas能自動(dòng)識(shí)別輸入與輸出之間的關(guān)系,例如在這個(gè)案例中,Model type部分就自動(dòng)選擇了多分類模型。不必再擔(dān)心模型選擇恐懼癥。
② 建模分析
完成數(shù)據(jù)設(shè)置后,就可以進(jìn)行建模(Standard build),因?yàn)镃anvas會(huì)自動(dòng)對(duì)模型參數(shù)進(jìn)行調(diào)優(yōu)(終于擺脫了被調(diào)參支配的恐懼),所以整個(gè)建模的過(guò)程耗時(shí)比較久。
本案例中,建模數(shù)據(jù)集一共是7.7萬(wàn)行,11個(gè)特征,建模+調(diào)參的過(guò)程花費(fèi)了3個(gè)小時(shí)。不過(guò)這個(gè)過(guò)程完全是在云端進(jìn)行,絲毫不影響本地電腦進(jìn)行其他任務(wù)(擺脫了以往在本地建模時(shí)不敢亂動(dòng)的苦惱)。
最后生成的模型效果也很好,準(zhǔn)確率達(dá)到了85%,Canvas會(huì)把不同特征在模型中的重要性列出來(lái)。在我看來(lái),業(yè)務(wù)實(shí)戰(zhàn)中機(jī)器學(xué)習(xí)建模的重點(diǎn)除了在模型本身之外,還在于“可解釋性”,而這里呈現(xiàn)的特征重要性(Column impact)能幫助分析師在業(yè)務(wù)層面得到共識(shí)認(rèn)可。
③ 預(yù)測(cè)
完成建模后,把驗(yàn)證數(shù)據(jù)集上傳到Canvas,檢驗(yàn)?zāi)P蛯?duì)新數(shù)據(jù)的預(yù)測(cè)準(zhǔn)確性與泛化能力。
得到的預(yù)測(cè)結(jié)果如圖,自動(dòng)把每個(gè)會(huì)員歸類到不同的人群標(biāo)簽,及給出對(duì)應(yīng)的概率值。
4. 模型評(píng)價(jià)
對(duì)落地而言,評(píng)價(jià)營(yíng)銷增益模型的好壞在于是否能幫助業(yè)務(wù)增長(zhǎng)。
從這個(gè)角度,可以借助IRR和NIR指標(biāo)進(jìn)行評(píng)價(jià):
- IRR (Incremental Response Rate, 營(yíng)銷增益響應(yīng)率) :用于衡量營(yíng)銷活動(dòng)帶來(lái)的購(gòu)買率,也就是假設(shè)我們營(yíng)銷活躍嚴(yán)格按照模型給出的人群建議進(jìn)行營(yíng)銷,最終目標(biāo)人群中購(gòu)買人數(shù)的比例 減去 非目標(biāo)人群中購(gòu)買人數(shù)的比例(即自然購(gòu)買率),就認(rèn)為是營(yíng)銷增益模型帶來(lái)的增益。
- NIR (Net Increment Revenue 凈增量收入) :計(jì)算營(yíng)銷活動(dòng)帶來(lái)的收益(假設(shè)商品利潤(rùn)是10元,邊際營(yíng)銷成本是0.15元)。
計(jì)算結(jié)果如圖,表示如果嚴(yán)格按照模型給出的目標(biāo)人群進(jìn)行營(yíng)銷,最終能帶來(lái)的增益是 +18.98%,即2357.65元。
但是這個(gè)模型的結(jié)果是好是壞還需要有一個(gè)標(biāo)準(zhǔn)來(lái)做衡量,在實(shí)際業(yè)務(wù)中采用“通發(fā)”的策略作為基本策略(Baseline),計(jì)算結(jié)果如圖,通發(fā)策略只帶來(lái)了+3%的增益,與1771元。
明顯,此次通過(guò)Amazon Sagemaker Canvas黑魔法進(jìn)行開(kāi)發(fā)的營(yíng)銷增益模型效果顯著。
三、產(chǎn)品體驗(yàn)
在機(jī)器學(xué)習(xí)建模流程中,重業(yè)務(wù)邏輯的部分主要集中在數(shù)據(jù)清洗、特征工程環(huán)節(jié),真正建模、調(diào)優(yōu)的過(guò)程大部分情況下是比較機(jī)械、但難度高、耗時(shí)長(zhǎng),亞馬遜云科技把這部分繁瑣的工作單獨(dú)提出來(lái)打造成Canvas數(shù)據(jù)產(chǎn)品,能極大提高數(shù)據(jù)分析師建模效率的同時(shí),能讓分析師把更多精力放在重要的業(yè)務(wù)邏輯構(gòu)建上。
餅干哥哥用過(guò)同類型的國(guó)內(nèi)某電商平臺(tái)的A產(chǎn)品。對(duì)于測(cè)試樣本比例、模型選擇、模型參數(shù)等,A產(chǎn)品需要使用者需要耗費(fèi)較多精力進(jìn)行測(cè)試,但是它卻無(wú)法提供線上的Gridsearch CV能力,所以使用起來(lái)成本較高,非常依賴經(jīng)驗(yàn)。
A產(chǎn)品界面
對(duì)比而言,Amazon SageMaker Canvas的使用及界面都是極簡(jiǎn)風(fēng)格,它把復(fù)雜的模型選擇、調(diào)參等過(guò)程自動(dòng)化處理,使用者只需關(guān)注輸入前的特征工程,以及模型的預(yù)測(cè)落地即可。不僅是數(shù)據(jù)分析師,連運(yùn)營(yíng)業(yè)務(wù)、產(chǎn)品經(jīng)理等人群不需要掌握復(fù)雜的算法原理、甚至是無(wú)需代碼都能輕松完成精準(zhǔn)的模型開(kāi)發(fā),極大降低了機(jī)器學(xué)習(xí)的門檻。
最后,雖然Amazon SageMaker Canvas有提供諸如混淆矩陣及準(zhǔn)確率、召回率、F1值、AUC值等評(píng)價(jià)指標(biāo),但例如在此次實(shí)操案例中,需要的評(píng)價(jià)指標(biāo)是更靠近業(yè)務(wù)的計(jì)算邏輯,因此,如果Amazon SageMaker Canvas可以開(kāi)放自定義驗(yàn)證/評(píng)價(jià)邏輯的能力,能或許可以更好地幫助完成模型在業(yè)務(wù)落地的“最后一公里”。
本文由 @餅干哥哥 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)作者許可,禁止轉(zhuǎn)載。
題圖來(lái)自Unsplash,基于CC0協(xié)議。
還沒(méi)有試過(guò)用可畫做ppt欸,下次可以試試,感覺(jué)非常的方便和現(xiàn)代化。
餅干分析的很詳細(xì)專業(yè)性很強(qiáng),就是代碼不太明白看不懂!