王湘平


【摘要】? ? 本文以中國電信某省一個本地網3個月的真實公眾客戶基本信息、語音數據短信業務信息等數據,通過數據預處理、特征工程、模型訓練、預測分析等成熟方法論,結合組合特征、word2vec生成embedding特征向量、BaggingClassifier/XGBoost/LightGBM模型堆疊融合算法等手段,重點解決了用戶流失告警模型中特征不突出、單模型訓練預測效果不明顯等問題。經過本地網生產應用評估,本文提出的基于embedding和模型堆疊融合算法的用戶流失預測模型算法,精準定位潛在的流失公眾客戶范圍,并通過市場部門“對癥下藥”,匹配合適的挽留政策,明顯提升了存量客戶經營效率,為全國各省各本地網存量用戶流失建模提供了較好的借鑒模板。
【關鍵詞】? ? 存量客戶? ? 流失預測? ? 組合特征? ? embedding? ? 模型堆疊融合
引言:
2021年是各大運營商推動高質量發展的重要一年。客戶經營擔任著規模和收入壓艙石的重任,在復雜多變的市場競爭環境下,距離企業高質量發展的要求還有一定差距,其中很重要一個待提升的方向,就是客戶流失的挽留,目前存量客戶保有率和增量客戶保有率有一定的下滑,客戶離網,帶來了規模下降和收入下降的雙重損失。
本文以中國電信某本地網3個月的客戶基本信息、語音數據短信業務信息等樣本數據,通過數據預處理、特征工程、模型訓練、預測分析等成熟方法論,并結合組合特征、word2vec生成embedding特征向量、BaggingClassifier/XGBoost/LightGBM模型堆疊融合算法等應用創新手段,重點解決了用戶流失告警模型中特征不突出、單模型訓練預測效果不明顯等問題。經過本地網市場部門的推廣評估,匹配合適的挽留政策,明顯提升了存量客戶經營效率。
一、用戶流失預測算法分析及改進
應用人工智能機器學習算法的主要思路是根據用戶存量基本信息以及語音數據短信業務信息,建立這些信息與用戶流失可能性之間的關聯模型,預測出存量客戶中哪些客戶是潛在的流失客戶,從而有效定位和挽留公眾客戶,提高客戶經營效率。
圖1? ? 6大關鍵步驟
如上圖1所示,用戶流失預測分析一般分為樣本數據選取、數據預處理、特征工程、建模、模型預測評估、模型輸出等6個主要步驟和階段。
1.1樣本數據選擇
用戶流失是一個綜合原因導致的結果,因素包括:消費能力下降、體驗不佳、被策反等,被策反是外因,體驗不佳也是一個綜合因素,兩份數據均較難獲取,消費能力或需求下降數據是現實數據,我們可以從EDA數據倉庫獲取到相關信息。本應用主要選擇用戶基礎信息、ARP信息、套餐信息、合約、訂購信息、寬帶使用行為、數據使用行為、短信使用行為等3個月共計162個字段用戶特征共計52.5萬訓練樣本集數據。
1.2數據預處理
由于數據錄入維護和采集同步過程中,均會存在異常數據、空值或缺失數據、數據分布區間大等問題,需要通過數據預處理方法進行處理,減少異常或空值數據對模型訓練的影響。本應用采用了箱線圖方法,有效分析和去除了ARPU、套餐金額等字段中的異常值。此外,本應用還采用了默認填充為-1.0的方法,一方面填充簡單,二方面可讓訓練模型可有效訓練到這些數據與樣本本身數據的不一致,提高模型的魯棒性,而模型預測的方法來填充,增加了特征之間的相關性,模型往往容易出現泛化能力不足的情況針對數據均大于0的情況,為了體現空缺默認值-1的特性,本應用針對非空數據,使用了0-1標準化。
1.3特征工程
本特征工程特指特征選擇,是機器學習算法中最為重要的一環,目的是選擇模型最優特征子集。主流的特征工程有3類方法:過濾法(Filter)、包裝法(Wrapper)、嵌入法(Embedded)。本應用了如下幾種特征工程方法:
1.皮爾森相關系數排查法,是Filter過濾法的常用方法之一,在樣本屬性很多的數據集中,一定會存在一些與標簽關系不那么強的屬性,將這些屬性drop掉,可以提高模型的準確性。通過皮爾森相關系數排查法,本應用剔除了ACCT_MONTH、IS_RED_LIST、IS_COMP等特征字段。
2.隨機森林回歸,是嵌入法(Embedded)的一種,根據訓練后的特征重要性得分來進行特征選擇。本應用通過RandomForestRegressor算法得到的前20重要的特征分布,其中融合類型(HD_COMP_TYPE)字段較為突出。通過業務分析,手機寬帶綁定的融合套餐用戶,流失的概率相對較小;單產品類型用戶流失的概率相對就較大。
1.4建模及評估優化
建模訓練及優化的過程,一般經過模型選擇、損失函數設計及計算、參數更新優化等幾個方面:1.模型選擇: 將一個或多個特征作為輸入,然后返回一個預測 (y') 作為輸出。本應用采用了目前廣泛應用的BaggingClassifier、XGBoost、LightGBM作為算法基模型。2.計算損失:通過損失函數,計算模型訓練過程中的loss,本應用使用了均方誤差(MSE)是回歸損失函數中最常用的誤差,它是預測值與目標值之間差值的平方和,平方絕對誤差對于異常值更穩健。3.計算參數更新:檢測損失函數的值,并為參數生成新值,以降低損失為最小,通過梯度能找到損失更小的方向,并迭代。
此外,本應用考慮到模型泛化能力,使用5-fold的方法,將數據集劃分為訓練集與測試集,計算每次的準確度并求取平均值,將最后的數據作為結果。考慮到各類模型的參數調優存在比較大的偶然性,因此,本應用結合了5-fold方法,并對主要的模型超參進行了GridSearch,最后選擇最優的參數作為最后的模型超參輸出。
1.5基于Embedding和模型堆疊融合算法的優化提升
針對部分特征之間的組合關系特征未體現出來的困難,例如:三個月語音、數據和短信的使用時長趨勢信息,本應用在特征工程階段新增了一些環比特征,雖最后的試驗效果有一些提升,但總體效果一般。本應用嘗試通過word2vec進行3個月連續數據的建模,針對一個維度(如:一種產品)三個月的特征,生成了10維特征,試驗結果表明,word2vec詞向量可以較好地表達不同特征之間的相似和類比關系。本應用輸入了3維向量,訓練得到了10維的embedding_matrix,最后將訓練和測試數據進行embedding編碼轉化,均生成了10維向量。
針對單模型訓練有局限性,本應用嘗試使用了Stacking集成融合模型,比如用不同特征訓練出來的三個GBDT模型進行融合時,我們會將三個GBDT作為基層模型,在其上在訓練一個次學習器(通常為線性模型LR),用于組織利用基學習器的答案,也就是將基層模型的答案作為輸入,讓次學習器學習組織給基層模型的答案分配權重。注意:進行Stacking集成同樣需要基學習器盡量保持獨立,效果相近。本應用使用了BaggingClassifier、XGBoost、LightGBM三個基礎模型,并通過SVM作為二階段的分類模型,最后得到了完整的訓練模型和預測結果,從最后的試驗效果來看,在保證模型預測結果精準度的前提下,模型泛化能力也較強。
二、模型評估及應用
AUC對正負樣本比例不敏感,可以看作隨機從正負樣本中選取一對正負樣本,其中正樣本的得分大于負樣本的概率。主要原因在于橫軸FPR只關注負樣本,與正樣本無關;縱軸TPR只關注正樣本,與負樣本無關,所以橫縱軸都不受正負樣本比例影響,AUC得分自然也不受其影響。本應用由于正負樣本嚴重失衡,從市場業務生產的角度,他們希望是在盡可能小的范圍內,把存量客戶中存在流失風險的用戶挖掘出來,目標是針對流失用戶,而非識別非流失的用戶。為此,本應用使用了AUC的評估指標,一般而言,AUC值為70就處于算法業務可用閾值。
最后通過訓練出的模型,對8月份共計529620條測試數據進行預測分析,預測結果及對比分析如下:
1.原生特征lightGBM。表1為原生特征通過特征預處理、特征工程及LightGBM模型訓練,未人為分析新增特征,使用了LightGBM進行了5折交叉驗證,最后對8月份測試數據進行了預測,可提供給市場部門的潛在用戶流失的數據范圍最小,一共12462個用戶,但有17144個用戶漏識別為了不會流失用戶,AUC最后得分為0.67。從業務生產的角度,潛在用戶流失的分析模型可用性不高,大量流失用戶未被檢測并告警,錯失了挽留機會。
2. embedding新增特征LightGBM。表2是在原生特征lightGBM的基礎上,在特征工程階段,針對部分特征之間的組合關系特征未體現出來,例如:三個月語音、數據和短信的使用時長趨勢信息,本模型一方面新增了一些環比特征,并通過word2vec進行3個月連續數據的建模,針對一個維度(如:一種產品)三個月的特征,生成了10維特征,再通過LightGBM 5折交叉驗證生成模型。8月份的測試結果,可提供39668條潛在流失的用戶清單,范圍增大較多,漏檢9021個流失用戶,AUC最后得分為0.8,生產可用性相對較好。
3. embedding新增特征stacking模型堆疊融合。表3是在embedding新增特征的特征工程基礎上,針對單模型訓練有局限性等問題,本應用使用了stacking模型堆疊融合,使用了BaggingClassifer、XGBoost、LightGBM三個基類模型,并通過SVM二階段模型訓練,綜合各模型優勢,得出最后的預測結果。訓練過程中也使用了5折交叉驗證,提高模型的魯棒性。8月份的測試結果,可提供45331條潛在流失的用戶清單,范圍比第二種方法略有提升,但漏檢流失用戶大幅下降至6858個,AUC最后得分為0.83,生產可用性三種方法中最好,模型泛化能力也最強。
三、結束語
本文使用了基于embedding和模型堆疊融合算法進行用戶流失分析預測,從最后試驗結果及市場業務的推廣使用效果來看,模型精準度和泛化能力均表現較好,支撐了市場業務口的用戶流失的精準定位。由于時間所限和業務需求緊迫,本應用還存在一些有待進一步提升的地方,后續可嘗試BERT+RNN-Attention模型,對連續特征進行多維向量表征,進一步提升模型精準度和泛化能力。
參? 考? 文? 獻
[1] 李陽,劉勝輝,趙洪松.數據挖掘在電信行業客戶流失管理中的研究與應用
[2] 劉蓉,陳曉紅.基于數據挖掘的移動通信客戶消費行為分析[J].計算機應用與軟件,2006,23(2):60-62.
[3] Alex Berson,Stephen Smith,Kurt Thearling.Building Data Mining Application for CRM[M].McGraw-Hill,2001:180~230.
[4] 連建勇.基于數據挖掘技術的電信客戶流失預測模型研究[D].中山大學,2008
[5] 賈琳,李明.基于數據挖掘的電信客戶流失模型的建立與實現[J].計算機工程與應用,2004(04).
[6] Kim H S, Yoon C H.Determinants of subscriber churn and customer loyalty in the Korean mobile telephony market [J].Telecommunications Policy,2004,28(9):751-765.
[7] Ni Jae Sik Lee,Jin Chun Lee.Customer Churn Prediction by Hybrid Model[J].Lecture Notes In Computer Science,2006:959-966.
[8] 馬飛飛. 數據挖掘競賽利器-Stacking和Blending方式
[9] 益達(知乎),Embedding之word2vec