預(yù)測性客戶分析之客戶終生價值(Part 3)
TalkingData | 2018-03-09 08:00
【數(shù)據(jù)猿導(dǎo)讀】 本篇將會介紹如何用線性回歸模型,基于老客戶歷史數(shù)據(jù)與客戶生命周期的關(guān)聯(lián)關(guān)系,建立線性回歸模型,從而預(yù)測新客戶的終生價值,進(jìn)而開展針對性的活動

在第二部分,文章介紹了如何用預(yù)測分析去獲取客戶,但由于商業(yè)的黃金定律是“從現(xiàn)有客戶獲取價值的成本比新客戶要低的多”,所以就需要了解現(xiàn)有客戶的客戶終生價值(Customer Lifetime Value,CLV),從而最大化地從現(xiàn)有客戶獲取足夠的收入。
本篇將會介紹如何用線性回歸模型,基于老客戶歷史數(shù)據(jù)與客戶生命周期的關(guān)聯(lián)關(guān)系,建立線性回歸模型,從而預(yù)測新客戶的終生價值,進(jìn)而開展針對性的活動。
客戶終生價值
在商業(yè)領(lǐng)域所有人都認(rèn)可一句話:
“我們80%的收入來自于20%的客戶。賣給現(xiàn)有客戶的成本比尋找一個新的客戶低10倍。”
不同的客戶為一個企業(yè)產(chǎn)生不同水平的銷售收入。我們需要識別和培育一些頂級客戶從而保證穩(wěn)定收入。但主要問題是:
-
過去的收入如何預(yù)示未來的收入?
-
我們過去最好的客戶在未來還會是我們最好的客戶嗎?
-
這是我們手中的結(jié)果嗎?
我們想要識別能夠給我們帶來重要業(yè)務(wù)的客戶并且培育他們,同時確保他們對我們滿意。
我們需要一個計算客戶終生價值的方法。回到用例,客戶剛剛從我們這里購買了一臺筆記本電腦。那么,我們期望從他那里得到什么樣的未來收入?他剛剛購買了一個筆記本電腦,因此他在接下來的三年可能不會再買,但是等一下,他可能每年都會不定期購買軟件版本升級。他可能會根據(jù)初始的購買情況,復(fù)購比如耗材等等。
當(dāng)他的孩子們到中學(xué)或者高中時,可能需要一個筆記本電腦。當(dāng)他們進(jìn)入大學(xué)可能需要購買更多的東西。我們需要了解他們的人口統(tǒng)計學(xué)和家庭信息才能知道這些生活事件什么時候發(fā)生。
一般來說,他可能在感恩節(jié)或者圣誕節(jié)給他人購買禮物,會送一臺筆記本電腦或者其他的,這些就是潛在的年度購買。如果我們能夠識別這些事件,我們就能夠通過這些重復(fù)性購買需求和年度需求估計出他未來總的商業(yè)價值。
構(gòu)建客戶周期分類
最早期的基本客戶管理流程是,根據(jù)他們過去的業(yè)務(wù)和觀察到的未來業(yè)務(wù)情況,將客戶歸入不同分類當(dāng)中,比如青銅客戶和黃金客戶。然后幫助業(yè)務(wù)針對性瞄準(zhǔn)這些客戶。當(dāng)一個新的或者潛在的客戶被識別出來,在業(yè)務(wù)周期中盡早對其進(jìn)行分類可幫助企業(yè)將更多資源集中在具有重大未來價值的客戶上。
根據(jù)一個客戶(稱為X)的人口統(tǒng)計特征,他可能有資格成為黃金客戶,因為他會為他和他的家庭購買高端電子產(chǎn)品。另一個客戶(稱為Y)則可能更關(guān)注預(yù)算,未來五年可能不會在電子產(chǎn)品上花費太多,因此他將成為一名銅牌客戶。鑒于此,我們希望將營銷資源專注于X,以產(chǎn)生最大回報。這個用例的目標(biāo)是建立一個預(yù)測模型,將新客戶分類為白銀、黃金或白金。
鑒于我們專注于新客戶,數(shù)據(jù)集應(yīng)該是容易從新客戶獲得的數(shù)據(jù)集。因此這個數(shù)據(jù)集就是客戶的人口統(tǒng)計學(xué)信息,其次是他們的第一次購買信息,如產(chǎn)品、金額、時間、退貨、保修等等。訓(xùn)練數(shù)據(jù)還會有一個客戶分類,用于說明老客戶屬于哪個類別。這是一個經(jīng)典的分類問題,任何以前的相關(guān)算法都可以完成這項工作,如隨機(jī)森林。
我們將建立一個模型,根據(jù)客戶屬性以及首次購買交易數(shù)據(jù)預(yù)測客戶分類,并為每個客戶提供他的類別。行動計劃是,當(dāng)客戶進(jìn)行新購買時,我們將使用此算法將他們分類為一個或多個類別。然后,這些分類可以被我們的營銷或客戶管理團(tuán)隊用來進(jìn)行差異化的處理,以便在隨后的訪問中產(chǎn)生更多收入。
我們的客戶服務(wù)團(tuán)隊還可以借助這個分類來提供高級支持。了解我們最好的收入來源可以幫助培育客戶并從客戶那里獲取更多的收入。
發(fā)現(xiàn)響應(yīng)模式
當(dāng)客戶從我們這里購買了服務(wù)或者商品,然后隨機(jī)切換到另一個企業(yè)購買同樣的服務(wù)或者商品,這對我們是一種傷害。我們希望客戶能從我們這里購買更多的產(chǎn)品和服務(wù)。因此,我們可以通過優(yōu)惠券、特殊優(yōu)惠、促銷、套餐、折扣等各種方式與客戶保持聯(lián)系。
所有客戶是否都以同樣的方式回應(yīng)這些優(yōu)惠?不。很有可能X會對圣誕節(jié)期間獲得的優(yōu)惠券更感興趣,以便他為家人購買禮物。
了解客戶如何回應(yīng)我們的優(yōu)惠有助于將營銷資金鎖定在最有可能回應(yīng)的客戶身上。這個用例的目標(biāo)是確定我們的客戶響應(yīng)優(yōu)惠的不同模式。我們將客戶分為不同聚類。然后,確定這些聚類或團(tuán)體共有的模式,制定營銷計劃,從而使得每一個集群或者團(tuán)體都產(chǎn)生更好的收入。用于此用例的數(shù)據(jù)將是客戶人口統(tǒng)計數(shù)據(jù)以及客戶的購買歷史記錄。
它還包括所提供的優(yōu)惠的數(shù)據(jù),例如提供的優(yōu)惠活動、優(yōu)惠針對的產(chǎn)品、提供的折扣、提供優(yōu)惠的渠道、客戶是否檢查了優(yōu)惠以及是否真的使用該優(yōu)惠?所使用的算法將是K-Means聚類或該算法的任何變種。我們將使用人口統(tǒng)計數(shù)據(jù)以及優(yōu)惠相關(guān)的數(shù)據(jù)來構(gòu)建聚類和群組,然后將其用于我們的分析。
我們會使用客戶人口統(tǒng)計數(shù)據(jù)來建立客戶群組。 一旦確定了群組,我們的營銷部門可以進(jìn)一步分析各個群組,了解他們的響應(yīng)模式以及他們之所以區(qū)別于其他分組的因素,它可能是人口統(tǒng)計學(xué)因素、購買的產(chǎn)品的因素、季節(jié)性因素或其他。 我們對客戶行為了解越多,就越能設(shè)計相應(yīng)的產(chǎn)品和優(yōu)惠,并從客戶那里獲得更多收入。
預(yù)測客戶終生價值
客戶終生價值是一種貨幣價值,它表示客戶在與企業(yè)關(guān)系的整個生命周期內(nèi)提供給企業(yè)的收入金額。如果我們提前知道X將在未來五年內(nèi)帶來1萬美元的收入,而Y只能產(chǎn)生500美元的收入,那么我們可以在X上花更多的營銷資金并收獲他的全部潛在預(yù)算。使用客戶終生價值標(biāo)記每個客戶有助于業(yè)務(wù)專注于那些能夠在未來帶來最高收入的客戶。
計算客戶終生價值時有幾種計算方法,但我們只能對與企業(yè)有重大購買歷史的客戶可靠地計算CLV。 但是我們?nèi)绾尾拍転樽罱目蛻暨M(jìn)行計算呢? 預(yù)測分析就在這里提供幫助。這個用例的目標(biāo)是建立一個回歸模型,該模型可以根據(jù)他或她最近的購買模式來預(yù)測新客戶或最近客戶的客戶終生價值。
隨著可用數(shù)據(jù)越來越多,它將幫助我們更準(zhǔn)確地計算CLV。 客戶終身價值取決于最近的能夠顯示購買頻率的數(shù)據(jù)。 因此,我們將創(chuàng)建一個數(shù)據(jù)集,提供所有老客戶的前六個月每個月的購買貨幣價值, 目標(biāo)屬性是整個生命周期中客戶的實際CLV。
根據(jù)我們的業(yè)務(wù)和我們所擁有的歷史數(shù)據(jù),CLV可以在有限的時間內(nèi)進(jìn)行衡量,比如兩年左右。 這里使用的算法將是線性回歸。 前六個月的數(shù)據(jù)將成為預(yù)測變量,CLV是目標(biāo)變量。 該分析將提供一個可用于為新客戶計算CLV的公式。 通過使用這些數(shù)據(jù)的子集,我們實際上可以生成這個方程的不同部分,比如只有第一個月,然后是前兩個月等。
隨著客戶生命周期的延長,更多的數(shù)據(jù)意味著更高的準(zhǔn)確性。一旦在我們的系統(tǒng)中捕獲到新客戶,我們根據(jù)第一個月的數(shù)據(jù)計算CLV,隨著越來越多的月份,我們可以通過越來越多的數(shù)據(jù)來完善CLV。我們的銷售人員、服務(wù)人員和營銷人員可以使用CLV值來識別擁有高CLV的客戶,并為他們提供差異化的服務(wù)和優(yōu)惠。
總而言之,本用例顯示了如何根據(jù)相似的老客戶的CLV預(yù)測新客戶的CLV。
預(yù)測CLV的用例
我們將看到如何根據(jù)現(xiàn)有客戶數(shù)據(jù)模型來預(yù)測新客戶的客戶終生價值。
我們有這些客戶產(chǎn)生的前六個月收入,第一個月到第六個月,他們產(chǎn)生的收入以及客戶終生價值。這或許是他們3年產(chǎn)生的總收入,這可以根據(jù)客戶留在我們業(yè)務(wù)中的時間來確定。 這即是我們要使用的數(shù)據(jù),我們將用它來構(gòu)建一個線性回歸模型,然后用它來預(yù)測客戶終生價值。
我們首先導(dǎo)入一組Python、Pandas和Skylearn庫,然后加載history.csv文件。查看文件以確保所有的數(shù)據(jù)元素都已被加載為整數(shù),因為這些元素要求它們是整數(shù)。在頂部過濾器卡上做一個表頭,以確保它們是否都已正確加載。然后,我們進(jìn)行前六個月的數(shù)據(jù)和CLV之間的相關(guān)性分析。
from pandas import Series, DataFrame
import pandas as pd
import numpy as np
import os
import matplotlib.pylab as plt
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
import sklearn.metrics
raw_data = pd.read_csv(“history.csv”)
raw_data.dtypes
CUST_ID int64
MONTH_1 int64
MONTH_2 int64
MONTH_3 int64
MONTH_4 int64
MONTH_5 int64
MONTH_6 int64
CLV int64
dtype: object
raw_data.head()
進(jìn)行相關(guān)性分析
cleaned_data = raw_data.drop(“CUST_ID”,axis=1)
cleaned_data .corr()[‘CLV’]
我們丟棄掉客戶ID列,因為我們的模型構(gòu)建不需要它??梢钥闯?,相關(guān)性分析在不同月份顯示出非常好的相關(guān)性,我們繼續(xù)前進(jìn)并建立一個模型。我們首先通過使用Skylearn類庫中可提供的訓(xùn)練測試切分能力將數(shù)據(jù)切分為90:10的比例。我們打印出大小以確保一切看起來都不錯。
predictors = cleaned_data.drop(“CLV”,axis=1)
targets = cleaned_data.CLV
pred_train, pred_test, tar_train, tar_test = train_test_split(predictors, targets, test_size=.1)
print( “Predictor?—?Training : “, pred_train.shape, “Predictor?—?Testing : “, pred_test.shape)
Predictor - Training : (90, 6) Predictor - Testing : (10, 6)
然后,我們建立一個模型,從線性回歸模型開始,通過擬合建立一個模型,打印系數(shù)和截距。這給了我們實際的方程,即線性回歸方程。然后我們可以利用測試數(shù)據(jù)對預(yù)測進(jìn)行測試。緊接著我們看看回歸模型的自動評分,它告訴我們?nèi)绾蝿?chuàng)建模型列表。這個結(jié)果的準(zhǔn)確率達(dá)到了91%,非常贊!
#Build model on training data
model = LinearRegression()
model.fit(pred_train,tar_train)
print(“Coefficients: \n”, model.coef_)
print(“Intercept:”, model.intercept_)
#Test on testing data
predictions = model.predict(pred_test)
predictions
sklearn.metrics.r2_score(tar_test, predictions)
Coefficients:
[ 34.59195048 11.53796271 15.17878598 11.72051702 8.60555913
5.44443443]
Intercept: -199.535985333
Out[7]:
0.91592106093124581
它顯示了91%的準(zhǔn)確度,這是預(yù)測CLV的一個極好的模型。
現(xiàn)在我如何預(yù)測新客戶? 假設(shè)有一位與我們在一起3個月的新客戶。我們拿出他的前三個月的收入,基于它建立所有價值的數(shù)組。我們有前3個月的價值,接下來的3個月將是零, 我們用它來打印CLV。
new_data = np.array([100,0,50,0,0,0]).reshape(1, -1)
new_pred=model.predict(new_data)
print(“The CLV for the new customer is : $”,new_pred[0])
The CLV for the new customer is : $ 4018.59836236
這就是我們?nèi)绾螢镃LV建立一個線性回歸模型,以及用它對我們的新用戶進(jìn)行CLV的預(yù)測。
作者:Ryan Aminollahi
原文:https://towardsdatascience.com/predictive-customer-analytics-part-iii-aeb996beafba
譯者:TalkingData研發(fā)副總裁 閆志濤
來源:TalkingData
刷新相關(guān)文章
我要評論
活動推薦more >
- 2018 上海國際大數(shù)據(jù)產(chǎn)業(yè)高2018-12-03
- 2018上海國際計算機(jī)網(wǎng)絡(luò)及信2018-12-03
- 中國國際信息通信展覽會將于2018-09-26
- 第五屆FEA消費金融國際峰會62018-06-21
- 第五屆FEA消費金融國際峰會2018-06-21
- “無界區(qū)塊鏈技術(shù)峰會2018”2018-06-14
不容錯過的資訊
-
1#后疫情時代的新思考#疫情之下,關(guān)于醫(yī)
-
2數(shù)據(jù)軟件產(chǎn)品和服務(wù)商DataHunter完成B輪
-
3眾盟科技獲ADMIC 2020金粲獎“年度汽車
-
4數(shù)據(jù)智能 無限未來—2020世界人工智能大
-
5#2020非凡大賞:數(shù)字化風(fēng)起云涌時,共尋
-
6#榜樣的力量#天璣數(shù)據(jù)大腦疫情風(fēng)險感知
-
7#榜樣的力量#內(nèi)蒙古自治區(qū)互聯(lián)網(wǎng)醫(yī)療服
-
8#榜樣的力量#實時新型肺炎疫情數(shù)據(jù)小程
-
9#榜樣的力量#華佗疫情防控平臺丨數(shù)據(jù)猿
-
10#后疫情時代的新思考#構(gòu)建工業(yè)互聯(lián)網(wǎng)新