本文是對某線上酒店用戶流失預測分析項目的一個總結。
目錄/分析思路:
01:? 項目介紹
02:問題分析
03:數(shù)據(jù)探索
04:數(shù)據(jù)預處理
05:建模分析
06:用戶畫像分析
一、項目介紹
? ? ? 該項目是對某酒店預訂網(wǎng)在一段時間內的客戶預定信息數(shù)據(jù)進行分析,通過算法預測客戶訪問的轉化結果,挖掘出影響用戶流失的關鍵因素,并深入了解用戶畫像及行為偏好,從而更好地完善產(chǎn)品設計,進行個性化營銷服務,以減少用戶流失,提升用戶體驗。
二、問題分析
? ? ? ?這個項目是問題診斷型,要解決的問題是關于用戶流失的。在官方提供的字段和解釋中,有一個label字段,這個是目標變量,也就是我們需要進行預測的值。label=1代表客戶流失,label=0代表客戶未流失,很顯然這是個分類的預測問題。
? ? ? ?我們的目標就是在預測準確率高的同時最大化召回率,從業(yè)務角度出發(fā),也就是將更多原本可能會流失的客戶最大概率地預測出來,以針對性進行挽留。因為通常來講,獲取新用戶的成本比挽留老用戶流失的成本要多得多。
三、數(shù)據(jù)探索
1、數(shù)據(jù)總體情況
本數(shù)據(jù)集合userlostprob_data.txt,為某酒店預訂網(wǎng)2016年5月16至21日期間一周的訪問數(shù)據(jù)。
本數(shù)據(jù)集總的數(shù)據(jù)共有689945行,51列,包含樣本id,label以及49個變量特征。
考慮到保護用戶隱私,該數(shù)據(jù)經(jīng)過了數(shù)據(jù)脫敏處理,和實際的訂單、瀏覽量、轉化率有一些差距,但是并不影響問題的可解性。
2、數(shù)據(jù)指標梳理
觀察數(shù)據(jù)集,里面的變量比較多。所以首先將數(shù)據(jù)字典中中文解釋替換對應變量名,增強可讀性,然后最好將指標進行梳理分類,然后逐個字段進行解析。
經(jīng)過研究發(fā)現(xiàn),指標大概可以分為三類:一類是訂單相關的指標,如入住日期、訂單數(shù)、取消率等;一類是與客戶行為相關的指標,如星級偏好、用戶偏好價格等;還有一類是與酒店相關的指標,如酒店評分均值、酒店評分人數(shù)、平均價格等。
3、相關特征描述性分析
3.1? 訪問日期和入住時間
入住人數(shù)和訪問人數(shù)都在5月20日達到峰值,大概是“520”情人節(jié)的原因;5月21日之后入住人數(shù)大幅減少,后面的兩個小波峰,表明周末會比平日人多一些。
3.2? 訪問時間段
可以觀察到,凌晨3-5點是訪問人數(shù)最少的時間段,因為大多數(shù)人這個時間都在睡覺;在晚上9-10點左右訪問人數(shù)是最多的。
3.3? 客戶價值
“客戶近1年價值”和“客戶價值”兩個特征非常相關,都可以用來表示客戶的價值;可以看到,大部分客戶的價值在0-100范圍;有些客戶價值高達600,后期需重點關注分析這類高價值客戶。
3.4??消費能力指數(shù)
基本呈現(xiàn)正態(tài)分布,大部分人的消費能力在30附近。消費能力達到近100的人數(shù)也很多,說明在我們酒店的訪問和入住客戶中,存在不少高消費水平群體。
3.5? 價格敏感指數(shù)
去掉極值,數(shù)據(jù)呈右偏分布,大部分客戶對價格不是很敏感,不用太費心定價;針對價格敏感指數(shù)100的客戶群體,可以采用打折的方式進行吸引。
3.6? 入住酒店平均價格
大部分人選擇酒店價格在1000以下,價格2000以上的酒店選擇的人非常少;排除“土豪”,可以看到,消費者對酒店價格的選擇,基本是一個正偏態(tài)的分布,大部分人會選擇的平均價格在300元左右(大概是快捷酒店一類)。
3.7??用戶年訂單數(shù)
大部分用戶的年訂單數(shù)在40以下,同時,也存在部分頻繁入住酒店的用戶,需要重點維護;
3.8??訂單取消率
用戶一年內取消訂單率最多的是100%和0,對于百分百取消訂單的客戶可以結合訂單數(shù)了解一下原因。
3.9??一年內距離上次下單時長
可以觀察出,預定間隔時間越長的人數(shù)是遞減的,說明相當多的人訂酒店還是比較頻繁的;側面反映出“熟客”會經(jīng)常性地選擇預定酒店,回頭客較多。
3.10?會話ID
服務器分配給訪問者的一個id,1為新的訪客。
訪問客戶中老客戶占大多數(shù);老客的預定概率比新客的預定概率稍微高一點。
四、數(shù)據(jù)預處理
4.1 重復值處理
數(shù)據(jù)維度沒有發(fā)生 變化,說明該數(shù)據(jù)集沒有重復值。
4.2? 生成衍生字段
基于對業(yè)務的理解,考慮到用戶提前預定酒店時間這一特征可能會比較重要,將兩個日期型特征轉化生成一個新的特征,提高模型準確度和可解釋性。
4.3 缺失值處理
查看缺失值情況
共51個字段,缺失字段:44個
缺失值處理思路及過程
查看特征分布情況:
查看所有數(shù)值型特征的分布情況,根據(jù)數(shù)據(jù)分布合理選用處理方法,包括異常值、缺失值處理,同時有助于深入了解用戶行為。
共51個字段,缺失字段:44個,選擇合適的方法進行缺失值處理:
缺失比例80%以上:1個,“近7天用戶歷史訂單數(shù)”缺失88%,直接刪除該字段。
趨于正態(tài)分布的字段,使用均值填充;右偏分布的字段,使用中位數(shù)填充。
檢查缺失值填充情況
查看可知,缺失值數(shù)據(jù)已填充完畢。
4.4? 異常值處理
極值處理:
(后面基于實際業(yè)務思考,蓋帽法存在部分不合理,可能會過濾高價值用戶,需要調整)
負值處理:
4.5??標準化處理
距離類模型需要提前進行數(shù)據(jù)標準化。
五、建模分析
首先拆分訓練集和測試集
5.1? 邏輯回歸
[0.7366529216096935, 0.7016048745527705]
5.2? 決策樹
[0.8728884186420657, 0.8448881691422343]
5.3? 隨機森林
[0.8936581901455913, 0.9399374165108152]
5.4? 樸素貝葉斯
[0.6224554131126394, 0.6610756921767458]
5.5??XGBOOST
[0.8886143098362913, 0.9383456626294802]
5.6? 模型比較
畫出ROC曲線
可以看到,樸素貝葉斯表現(xiàn)最差,邏輯回歸的表現(xiàn)也不是很好,說明該數(shù)據(jù)不是線性可分的;隨機森林和xgboost模型的表現(xiàn)差不多,二者的AUC得分都在0.9以上,分類效果很好,隨機森林AUC值為0.94更高一點,固采用隨機森林進行用戶流失預測。
5.7? 隨機森林模型優(yōu)化
交叉驗證
學習曲線——取分類器為80
[0.9333570067179268, 0.97816699979759]
即根據(jù)這個隨機森林模型召回率可以達到97.8%,流失客戶預測準確率可以達到93.3%。
該模型可以直接上線用于用戶流失預測。
5.8 影響客戶流失的關鍵因素
用隨機森林分析影響客戶流失的因素:使用feature_importance方法,可以得到特征的重要性排序。
最重要的前10個特征:? ? ??
年訪問次數(shù)、一年內距上次訪問時長、昨日訪問當前城市同入住日期的app uv數(shù)、一年內距離上次下單時長、昨日提交當前城市同入住日期的app訂單數(shù)、24小時內已訪問酒店可訂最低價均值、24小時內已訪問酒店商務屬性指數(shù)均值、24小時內已訪問次數(shù)最多酒店可訂最低價、24小時歷史瀏覽次數(shù)最多酒店評分人數(shù)、客戶價值 。
六、用戶畫像分析
接下來用K-Means聚類的方法將用戶分為3類,觀察不同類別客戶的特征。
K-means聚類
?
可以看到,聚出來的3類用戶有各自非常明顯的特征,針對不對類用戶的個性化營銷建議:
0類為中等群體:消費水平和客戶價值都偏低,訪問和預定頻率較高,提前預定的時間是三類中最長的;花費非常多的時間進行瀏覽才能做出選擇,比較謹慎,推測可能為出門旅行的用戶。
建議:盡可能多地進行推送,因為此類客戶通常比較喜歡瀏覽;多推薦價格相對實惠的酒店;推送當?shù)芈糜钨Y訊,因為這類客戶旅游出行的概率較大。
1類為低價值客戶:消費水平和客戶價值極低,偏好價格較低,訪問和預定頻率很低; sid值很低,說明新客戶居多。
建議:按照流失客戶處理,不建議花費過多營銷成本,不做特定渠道運營;推薦促銷活動,價格折扣大的的低價酒店;新用戶占比較大,潛在客戶居多,可以維持服務推送。
2類為高價值客戶:消費水平高,客戶價值大,追求高品質,價格敏感度高;登陸時間長,訪問次數(shù)多,提前預定時間短,但退單次數(shù)較多。
建議:為客戶提供更多差旅地酒店信息;? 推薦口碑好、性價比高的商務連鎖酒店房源吸引用戶; 在非工作日的11點、17點等日間流量小高峰時段進行消息推送。
一些備注:
1、數(shù)據(jù)特征篩選時可以做相關性分析,因為可能某些特征之間存在高度相關,可以用相關性分析去掉和目標變量相關性小于0.01的變量,其他變量之間相關性高于0.9的可以刪除,再利用主成份分析對指標進行降維整合,可能會使模型效果達到最好。
2、如果想對用戶分類更加精細,可以使用RFM模型進行用戶價值分析。但本項目特征包含信息較多,用RFM可能損失信息量比較大。