李京文, 畢佳佳
(安徽職業(yè)技術(shù)學院,安徽 合肥 230011)
近年來,隨著生活水平的提升、手機品牌的不斷更新,用戶更換手機的頻率日益頻繁。移動用戶更換手機終端的原因通常有被動換機、常規(guī)換機以及潛在換機等。商家要及時抓住潛在換機的用戶,對這部分用戶進行精準營銷,推薦潛在換機用戶喜歡的終端類型,提升用戶的價值,提高營業(yè)收入[1]。因此,對潛在換機的用戶進行準確地識別是非常有必要的。
隨著用戶量的增加,傳統(tǒng)的統(tǒng)計分析方法已不足以分析出換機用戶的規(guī)律,越來越多的人員開始將大數(shù)據(jù)挖掘技術(shù)應用到終端換機上來,不僅能提高挖掘的效率,還能提高識別的準確率。
本文從用戶基本信息、消費信息、交友圈信息、上網(wǎng)信息等數(shù)據(jù)中進行挖掘分析,采用決策樹算法C5.0[2],建立了終端換機預測模型,為手機精準營銷提供有效的數(shù)據(jù)支撐。
終端換機預測主要是根據(jù)移動用戶的消費行為,準確預測出有潛在換機傾向的用戶,將該種用戶清單進行輸出,并進行手機終端的精準營銷。因此,預測模型首先要根據(jù)用戶的歷史數(shù)據(jù)確定目標用戶的類別,即換機用戶和非換機用戶,分別用1和0進行表示。本文將終端換機預測問題轉(zhuǎn)化成一個二分類模型,通過歷史數(shù)據(jù)建立終端換機預測模型,將即將要換機的用戶預測出來。
本文的總體思路是先對原始數(shù)據(jù)進行預處理,包括數(shù)據(jù)清洗、數(shù)據(jù)變換、特征選擇等處理,之后將數(shù)據(jù)集劃分為訓練集和測試集,訓練集采用決策樹算法C5.0建立模型,并通過測試集評估結(jié)果對不同的抽樣方法進行了對比,通過不斷迭代優(yōu)化,輸出最優(yōu)模型。終端換機預測模型流程圖請見圖1。
圖1 終端換機預測模型的流程圖
本文中所使用的數(shù)據(jù)主要提取于某運營商的真實的業(yè)務數(shù)據(jù)。主要抽取用戶的基本信息、基本消費信息、上網(wǎng)信息、手機終端信息等,并進行初步的探索。
用戶的基本信息數(shù)據(jù)中主要包含了用戶入網(wǎng)時的基本資料,如手機號碼、性別、年齡、網(wǎng)齡等。終端信息主要是指用戶當前所用手機終端的基本信息,如手機像素、內(nèi)存、歷史終端使用及變更情況、平均終端更換時長等。上網(wǎng)信息主要包含了用戶使用流量、通話次數(shù)、出賬話費等信息。數(shù)據(jù)結(jié)構(gòu)如表1所列,其中最后一個字段“if_hj”是用戶是否換機的標志,也是本文建立終端換機模型的目標列。
表1 終端換機數(shù)據(jù)信息表
續(xù)表1 終端換機數(shù)據(jù)信息表
(1)缺失值處理。缺失數(shù)據(jù)會影響模型的效果,因此在建模之前需要對數(shù)據(jù)進行探索,查詢出缺失值并進行處理。經(jīng)探索發(fā)現(xiàn),本文中的數(shù)據(jù)中只有一個字段net_age(網(wǎng)齡)具有極少量缺失值,由于缺失值比例很小,本文采取了直接刪除法,將net_age字段缺失的記錄進行刪除。
(2) 異常值處理。異常值可能由于人為在輸入系統(tǒng)的時候出現(xiàn)的錯誤,使得數(shù)據(jù)值不在正常范圍內(nèi)。在對異常值處理前,先對數(shù)據(jù)進行異常值檢測,通常使用單變量散點圖或者箱圖實現(xiàn),把遠離正常范圍的點確定為異常值。
經(jīng)過分析后,原字段中只有“age”字段具有極少量異常值,范圍為小于10歲和大于120歲的人群。由于有異常值的數(shù)據(jù)記錄條數(shù)極少,因此本文直接刪除這些異常記錄。
(1)特征構(gòu)造。在數(shù)據(jù)挖掘的過程中,為了便于提取更有用的信息,挖掘更深層次的模式,提高挖掘結(jié)果的精度,需要根據(jù)數(shù)據(jù)中已有的基礎特征構(gòu)造出延伸特征,加入到現(xiàn)有的特征集合中,組成新的特征集合。
本文根據(jù)基礎特征構(gòu)造了3個新特征,分別是“3個月使用流量均值”“3個月出賬費均值”“3個月通話次數(shù)均值”,通過平均值特征更能體現(xiàn)出用戶的行為特點。
(2)數(shù)據(jù)離散化。在分類算法中,連續(xù)屬性過多,或者連續(xù)屬性的范圍大、連續(xù)性高,在建模時容易產(chǎn)生過擬合現(xiàn)象[3]。過擬合現(xiàn)象即建立的算法模型過于擬合于訓練數(shù)據(jù)集,在訓練數(shù)據(jù)集上的準確率極高,而在測試集上的準確率卻很低,無法對未來數(shù)據(jù)進行正確預測。
本文在探索數(shù)據(jù)分布后,將所有數(shù)據(jù)進行離散化處理。離散化規(guī)則是查看每個特征字段不同范圍內(nèi)的換機比例,將換機比例相近的范圍歸為一類,類別統(tǒng)一用數(shù)字表示。以“年齡”特征離散化為例,離散化過程為:
步驟1:計算不同年齡范圍的換機占比分布。
其中,hj_percentage為在此年齡范圍內(nèi)的換機占比;hj_count為在此年齡范圍中的換機人數(shù);total_count為在此年齡范圍內(nèi)的所有人群。
步驟2:根據(jù)換機占比分類并歸類。
根據(jù)不同年齡范圍的換機占比,本文將年齡分為6類:16~20歲為第1類,20~35歲為第2類,35~45歲為第3類,45~50歲為第4類,50~60歲為第5類,60歲以上為第6類。
其他特征字段處理方式和年齡字段相同。在離散化過程中,要靈活并多次調(diào)整每次查看換機占比的當前字段的范圍,最終讓不同類別下的換機占比差別最大,這樣會大大提高模型的準確性。
在數(shù)據(jù)挖掘建模時,一般盡可能選擇完整的數(shù)據(jù)建立模型,包括特征種類和數(shù)值完整度。然而,并不是特征越多建模效果越好。特征的好壞取決于它與目標變量的相關性和與其他變量的冗余度。因此在特征選擇的時候可以“最大相關性最小冗余度”[4]為目標來進行降維。即選取的建模特征,與目標變量相關性大,特征之間相關性小、相互獨立。
本文計算了各個特征與目標變量的相關性及特征之間的冗余度,將相關性較小的一些特征字段刪除。對于冗余性較高的特征之間,保留其中一個特征。經(jīng)過計算處理之后,對于表1中的原始特征,刪除了“flow_used1”、“flow_used2”、“flow_used3”、“arpu_1”、“arpu_2”、“arpu_3”、“call_times1”、“call_times2”、“call_times3”、“MainCameraPixel”10個特征。最終利用余下的15個特征字段和1個目標變量(if_hj)建立終端換機預測模型。
在模型算法選擇上,本文選取了一種改進的決策樹算法C5.0進行模型訓練。C5.0是一種高度自動化學習過程的算法,可以實現(xiàn)對決策樹自動剪枝,可應用于大數(shù)據(jù)集中,是一種效果較好的決策樹算法。
本文提取的某月數(shù)據(jù)作為訓練集,約300萬條,用下一個月數(shù)據(jù)作為測試集,約700萬條。選擇C5.0分類算法在訓練集上建立分類模型,然后在測試集上進行預測并計算模型性能。評估參數(shù)為查準率和查全率[5]。定義如下:
在數(shù)據(jù)挖掘中,查準率和查準率的關系是此消彼長的,但是要盡量提升兩者,在其中找到一個平衡。通常采用兩者的調(diào)和平均值作為評估整個模型性能的標準。
C5.0決策樹模型性能結(jié)果如表2所列,其中正樣本代表換機標簽為1。
表2 C5.0模型驗證結(jié)果
從表2中可以看出,C5.0決策樹模型4在潛在換機用戶的查準率和査全率上整體效果比其他模型更好。因此,本文最終采用C5.0決策樹算法,訓練樣本取100萬,正樣本比例取45%建立決策樹分類模型??紤]到換機營銷推薦的廣度,傾向保障查全率高的方式分析,同時盡可能提高查準率,據(jù)此生成本次的預測結(jié)果集。
針對終端換機的精準營銷場景,將大數(shù)據(jù)算法應用在移動通信數(shù)據(jù)中,建立終端換機預測模型。本文結(jié)合數(shù)據(jù)特點對數(shù)據(jù)進行清洗、特征工程、特征選擇,采用C5.0機器學習算法建立預測模型,輸出有潛在換機傾向的用戶清單,為商家對手機終端的精準營銷提供了輔助決策。在以后的優(yōu)化中,可以添加更全的變量并通過合適的特征選擇后建模,能使模型的查準率和查全率得到很大的提高。