趙 凱,蔣朝惠
(1.貴州大學 大數(shù)據(jù)與信息工程學院,貴州 貴陽 550025;2.貴州大學 計算機科學與技術學院,貴州 貴陽 550025)
隨著移動通信技術的發(fā)展,移動手機用戶大量普及,通信行業(yè)中的競爭力日益激烈。各大通信企業(yè)用戶資源是企業(yè)主要的資產,所以工作重心應放在如何保留現(xiàn)有用戶和擴展新用戶。營銷策略發(fā)生了變化,逐步從大眾化轉變?yōu)橥ㄟ^差異化,精確的營銷方式來滿足各類用戶的需求。針對差異化營銷的方式,關鍵點在于對有效的用戶群體細分。用戶對產品或服務的需求存在不同差別,用戶細分能夠客觀反映用戶分類中對產品需求存在的特性,綜合反映用戶多方面的特征,有利于深入細致地了解用戶需求特征。
K-Means 算法為工程應用中最常用的數(shù)據(jù)挖掘算法之一,對大數(shù)據(jù)量處理方面有相對的優(yōu)勢,有較好的效果。K-Means[1]聚類在用戶劃分中,通過常用數(shù)據(jù)挖掘方法,有效性地將K-Means 算法使用在用戶數(shù)據(jù)建模分析,所以K-Means 算法對分析和實證用戶聚類方面的問題進行理論的研究,具有一定的現(xiàn)實意義。
聚類(Clustering)是最經常用的數(shù)據(jù)挖掘[2]算法之一,有著廣泛的應用范圍,其主要對根據(jù)用戶特征進行分群分類。使有相似、相同特征的用戶劃分到一起,于此同時在不同組類的用戶差異顯現(xiàn)最大化。聚類分析[3]是一種在用戶細分中有著廣泛的應用的統(tǒng)計學方法,它屬于統(tǒng)計學科的一個分支。目前在開發(fā)統(tǒng)計軟件、分析工具、系統(tǒng)都已經集成了常用的聚類算法,有K-means 算法、K-medios 算法等。
聚類概念定義如下,在數(shù)據(jù)空間A 中存在數(shù)據(jù)集X,其含N 個對象,χi=(χi1,…,χid)∈A 表示數(shù)據(jù)X 中的相應數(shù)據(jù)點,χij表示χi(i=1,…,N)的數(shù)據(jù)特征、數(shù)據(jù)維度等相關屬性。其數(shù)據(jù)既能是數(shù)據(jù)類型也能是枚舉類型,存在多樣性。聚類的工作就是需要將數(shù)據(jù)集X 細化成k 個簇Cm(其中m=1,…,k),某種情況下使用聚類算法進行聚類劃分以后,會出現(xiàn)某些聚類數(shù)據(jù)有可能找不到任何一個簇的現(xiàn)象,這些數(shù)據(jù)對象會被一起劃分在同一個簇中,通常稱之為噪聲Cn。聚類后結果應滿足X=C1∪…∪Ck∪Cn,與此同時所有劃分CiCj之間不會存在交集,Cm就是根據(jù)要求所得到的聚類結果。
K-means 算法[4]是實踐應用中最為常用的聚類算法之一,它是一種以最小化某個目標函數(shù)為優(yōu)化準則,不斷進行迭代的優(yōu)化聚類算法(Optimization Clustering)。其迭代后結果除非選擇的K 個初始凝聚點恰到滿足,否則通常情況下不是全局最優(yōu)(Global Minima),而是局部最優(yōu)(Local Minima)。根據(jù)不同的初始凝聚點的選定組合可能結果將會大相徑庭,因此在實踐應用中,使用K-means 算法聚類用戶時候,需要多次選擇不同初始凝聚點組合依次進行聚類運算,盡力優(yōu)化局部最優(yōu)的狀況選取最優(yōu)的作為最后聚類方法。使用K-means 算法聚類前,數(shù)據(jù)需要進行預處理,如:處理異常值、標準化變量、降維數(shù)據(jù)等等,對處理大數(shù)據(jù)量方面有絕對優(yōu)勢,能夠取得較好的效果。
K-means 聚類算法的基本步驟:
第一步:首先要確定K 值和初始化聚類的中心點,選取K 個初始凝聚點,作為將要形成類的中心;第二步:算出每個所觀測到的K 個初始凝聚點[5]相距的距離,把所觀測的點與最近的凝聚點劃分到一起,得到K 個初始分類;第三步:算出初始分類的質點,以此作為新凝聚點,再次算出各個觀測點與初始分類質心相距距離,把每個觀測點與最短距離凝聚點分在一起;第四步:迭代以上第二步和第三步,直到初始分類重心或者均值不會出現(xiàn)明顯變化為止。
為了簡化說明,可將上述K-means 聚類算法的核心步驟,用數(shù)學表達方式直觀表述如下:
第二步:計算出新的聚合類,其內部中心點,即
根據(jù)聚類數(shù)據(jù)對象不停循環(huán)迭代計算,直到聚類結果不再繼續(xù)發(fā)生變化為止。
在第二步和第三步的迭代中,有兩種方法可以更改初始凝聚點:第一種是批量更改,第二種是逐個更改。批量更改法是讓所有觀測點歸集為類后才修改凝聚點,逐個更改法是逐一將每個觀測點更改后再進行分類,同時計算相關聯(lián)兩個類的平均值,并將其設為新的凝聚點。由于批量更改的方法相對計算速度快,計算量也比較小,可是聚類后相應結果同樣依附于初始凝聚點。逐個更改法聚類結果通常和觀測的次序相關,所以應該選擇最具有代表性的觀測點為初始凝聚點。逐個更改法中類的個數(shù)K、各類之間的距離最小值、類內距離最大值都會影響最終分類結果,根據(jù)不同情況通??梢孕薷倪@三個值,多次計算后抉擇最優(yōu)的結果。
電信用戶具有明顯特征,有一定價值的用戶,例如:高端商務人群,具有相應的特征:通話較為頻繁,月平均話費高,出差頻率高,機場出現(xiàn)率高。異地情侶:有固定聯(lián)系人,且該聯(lián)系人通訊次數(shù)頻繁,通話平均時間長,通話時間段在晚上的頻數(shù)多。廣告用戶(電話推銷、垃圾短信等),呼出次數(shù)遠遠大于呼入次數(shù),平均通話時間短、平均呼叫間隔短,固定聯(lián)系人很少。還有其他用戶群體:快遞員用戶,乘機用戶,網購用戶,文藝用戶等等。
文中簡要介紹了數(shù)據(jù)挖掘的相關基本概念與常用聚類算法,在其用戶聚類算法基礎上進行相關分析。首先使用數(shù)據(jù)挖掘中常用聚類算法對電信用戶進行用戶細分,其次根據(jù)統(tǒng)計分析方法[6]思想方法分析電信用戶通話行為等的特性,最后根據(jù)通話,行為特征分析了用戶相應行為模式,同時對類內與類外的用戶相似性進行分析。
電信數(shù)據(jù)源包括三種:CDR-1x,CDR-do,CDRdo stream。CDR-1x 包含語言通話記錄、短信記錄和少部分上網數(shù)據(jù),是通信用戶最常有的數(shù)據(jù)。CDR-do 主要是上網時產生的數(shù)據(jù)。CDR-do stream 是一種流數(shù)據(jù),主要檢測網絡狀況是否正常,平時用得較少。主要字段的基本描述見表1。
表1 用戶通話表主要字段表
針對用戶數(shù)據(jù)劃分,首先對用戶數(shù)據(jù)應用清洗、過濾、離散化等方法預處理,然后再進行以下處理。
(1)使用K-means 聚類算法,根據(jù)用戶撥打的通信時間、通信對象、通信頻次、通話時長、上網流量、通信業(yè)務(手機號碼、通話時長、通話時間、通話次數(shù))等為主要聚類特征,以此實現(xiàn)電信用戶劃分。用戶劃分給企業(yè)實施用戶差異化需求的銷售手段提供了便利,為企業(yè)帶來更大的經濟效率,并運用關聯(lián)規(guī)則算法發(fā)現(xiàn)用戶通話行為與上網行為之間關聯(lián)性。
(2)從用戶數(shù)據(jù)中發(fā)現(xiàn)以基站為基礎電信用戶在通話上時間,空間上的分布情況,然后利用統(tǒng)計分析方法的思想來挖掘用戶的通話時空特性。
K-means 聚類算法特征:有利于發(fā)現(xiàn)球形或圓形簇,其復雜度低,為O(NKt),N 是對象點的個數(shù),t 是迭代次數(shù),K 值不易確定。K-means 聚類算法具有劃分快速、準確的優(yōu)點,非常適合用于電信用戶的細分。本文利用K-means 算法對用戶進行細分的過程如圖1 所示。
圖1 電信客服細分過程
本文基于K-means 細分方法,首先選擇K 個對象做為初始聚類中心,余下的對象分別計算與這K個初始中心之間的距離,以實現(xiàn)聚類;然后再重新選取聚類中心,重復上述過程,直到中心不再變化。在K-means 算法的基礎上,抽取主要特征作為指標:號碼、通話時間、通話次數(shù)、平均通話時長、忙時通話次數(shù)、閑時通話次數(shù)等。K-means 算法實現(xiàn)的流程如圖2 所示。
以某市電信通話及網絡數(shù)據(jù)為基礎,由于數(shù)據(jù)量過于龐大,應用時首先要依據(jù)研究需求,預先對數(shù)據(jù)進行分析整合以達到預期目的,可有效縮減分析時間,加快效率。本實驗從真實快遞人群中隨機選取50 個快遞員,并在其2014 年一月份通訊數(shù)據(jù)中提取六個字段IMIS、主(被)叫號碼(DIALED_DIGITS)、呼叫標志主叫或被叫(CALL_FLAG)、業(yè)務類型(FINAL_OPTION)、接入時間(ACCESS_TIME)、呼叫持續(xù)時間(DURING_TIME),真實快遞員部分通訊數(shù)據(jù)見表2。A、B為真實快遞員,對其數(shù)據(jù)進行相關的預處理統(tǒng)計分析,結果見表3。
圖2 電信客服細分流程圖
表2 真實快遞員數(shù)據(jù)表
表3 快遞員特征表
表中:Call_in為呼入次數(shù);Call_out為呼出次數(shù);In_out為呼入次數(shù)與呼出次數(shù)之比;voice為語音次數(shù);ms為短信次數(shù);durtime為呼叫持續(xù)時間,單位為ms;call_sum為呼叫的總次數(shù);in_sum為呼入占總次數(shù)的比值;voice_sum為語音占總次數(shù)的比值;time=durtime/(80×1000)。
將50 個快遞用戶數(shù)據(jù)(呼入呼出次數(shù)、語音短信次數(shù)、平均呼叫持續(xù)時長、呼入/呼出)進行多維度篩選后,得出呼出次數(shù)>400 次,語音次數(shù)>500 次,平均持續(xù)時間(10 s,80 s),呼入/呼出<0.8。
從400 多萬大眾用戶中,根據(jù)上述真實快遞人群的數(shù)據(jù)特點篩選后得到2.45 萬用戶,可能是快遞人群也可能不是快遞人群,所以需要進行更進一步的分析。
該類人群的平均呼叫時長集中在40 s 與80 s中間,分布在(0.5,1)的區(qū)間內。相關分析結果如圖3、4、5 所示。
圖3 呼出比重分布圖
圖4 平均呼叫時長圖
根據(jù)分布圖得出,該類人群的呼出比重(呼出次數(shù)/總的呼叫次數(shù))均大于0.55,且平均呼叫時長隨著比例的增大,對應人群數(shù)量近似線性遞減。語音比重(語音次數(shù)/總的呼叫次數(shù))集中在0.8到1,相差不大。
圖5 語音比重分布圖
將統(tǒng)計的50 位真實快遞人員設為b。根據(jù)用戶的呼叫持續(xù)時間、呼出所占比重對b 用戶在2.45 萬用戶中的分布情況做K-means 聚類分析,其聚類結果如圖6、7、8 所示。
圖6 當K=3 時K-means 聚類圖
圖7 當K=4 時K-means 聚類圖
圖8 當K=6 時K-means 聚類圖
初步篩選后,2.45 萬用戶人群,從語音比總分析沒有良好效果,最后根據(jù)用戶呼叫持續(xù)時間、呼出所占比重進行聚類后,得到如下結果:當K=3時(圖6),擬合效果不好;當K=4 時(圖7),b 基本屬于同一個區(qū)域,該區(qū)域內的用戶更接近真實快遞員用戶,僅存在幾個離群點;當K=6 時(圖8),b在圖中的分布區(qū)域也不是很明顯。相對而言,K=4 時的效果最好,上方區(qū)域呼叫時間較短,次數(shù)多,很可能是廣告和推銷人員。右下角呼出比重是中等的,呼叫時間比較長,很可能是采購和業(yè)務人員。
本文將技術實現(xiàn)思路和業(yè)務數(shù)據(jù)分析相結合,使用K-Means 算法統(tǒng)計分析實際數(shù)據(jù)特征來進行用戶細分的數(shù)據(jù)挖掘相關研究。數(shù)據(jù)分析以通話次數(shù)、平均通話時長、忙時通話次數(shù)和閑時通話次數(shù)等特征作為主要指標,完成聚類分析。由于本文側重于研究理論分析,以應用為導向,主要工作以K-Means 算法進行用戶細分、實驗操作和結果分析,更多關注了技術層面上的問題,而關于數(shù)據(jù)挖掘方法,對其業(yè)務營銷的分析內容較少,以及實驗結果原因等沒有更深入的討論,今后將繼續(xù)研究,并且由于通信用戶數(shù)據(jù)信息量較大,改進的Kmeans 算法,面向大數(shù)據(jù)的處理時,可考慮加入用戶反饋機制,優(yōu)化用戶群體聚類效果。
[1]薛明.聚類算法在入侵檢測系統(tǒng)中的應用研究[D].江蘇:南京郵電大學,2009.
[2]方媛,車啟鳳.數(shù)據(jù)挖掘之聚類算法綜述[J].河西學院學報,2012,28(5):72-76.
[3]趙愛琴.數(shù)據(jù)挖掘在電信行業(yè)精確營銷中的研究與應用[D].成都:西南財經大學,2008.
[4]任家東,孟麗麗,張冬梅.一種基于網格的改進的K-Means 聚類算法[J].計算機研究與發(fā)展,2009,46(Suppl.):453-458.
[5]楊康.基于DNS 訪問記錄挖掘的用戶群劃分[D]江蘇:南京郵電大學,2013.
[6]肖彥花.統(tǒng)計學理論與方法[M].北京:國防科技大學出版社,2005.