李冰,王悅,劉永祥
(1.中國煙草總公司北京市公司,北京100122;2.浪潮軟件股份有限公司,濟南 250000)
大數據環境下基于K-means的用戶畫像與智能推薦的應用
李冰1,王悅1,劉永祥2
(1.中國煙草總公司北京市公司,北京100122;2.浪潮軟件股份有限公司,濟南250000)
2015年以來,中國煙草行業逐步開始進行市場化取向改革。卷煙營銷市場化取向改革是以滿足消費者需求為核心,以改革卷煙訂單采集方式為抓手,以營銷流程再造為重點,保障零售客戶自主經營權,層層傳導市場力量,優化營銷資源配置,促進品牌優勝劣汰,充分發揮改革乘數效應,全面增強行業整體競爭實力。
截至2015年12月31日,煙草行業市場化已經初見成效,基本實現了訂單采集集中化、業務流程標準化、營銷過程可視化,完成市場化改革的單位覆蓋卷煙市場容量1764萬箱,占全國卷煙銷量的35.4%,實現批發銷售收入5010億元,占全國卷煙銷售收入的35.2%,涉及零售客戶165萬戶,占全國正常經營零售客戶總數的34%。
隨著市場化改革范圍的擴大和深入,原來計劃體制下的卷煙營銷方式逐漸難以滿足快速變化的市場需求。與此同時,隨著中國經濟進入“新常態”以及北京市人口疏解工作的不斷推進,北京市場的卷煙銷售壓力日益增加。因此北京煙草對如何準確洞悉市場信息、把握卷煙消費者和零售戶的需求從而實現精準營銷提出了更高的要求。
北京煙草經過十數年信息化建設,系統中存儲著接近十年的海量交易數據。如何充分利用這些海量數據資源、把大數據技術及互聯網企業的成功實踐經驗引入到北京煙草的信息化建設當中并成為市場化取向改革的強大助力,已成為北京煙草當前亟待解決的課題。本文實現了一種大數據技術的應用,即通過采集歷史數據樣本,建立聚類模型對卷煙零售戶的特征進行畫像,測算出零售戶屬性和卷煙屬性中的相關性,并基于這些結果在卷煙零售客戶訂貨時根據其特征推薦相關的卷煙產品。該方式一方面可以把市場中成熟的銷售經驗傳遞給新入網的零售戶,另一方面可以促進北京煙草合理組織貨源,主動為零售戶提供了適銷對路的商品,提高市場營銷的準確度。
1.1大數據技術簡介
學界與工業界對于所謂的“大數據”并沒有一個統一的定義。如2011年McKinsey的研究報告[1]中將大數據定義為“超過了典型數據庫軟件工具捕獲、存儲、管理和分析數據能力的數據集”,而美國國家標準和技術研究院NIST認為“大數據是指數據的容量、數據的獲取速度或者數據的表示限制了使用傳統關系方法對數據的分析處理能力,需要使用水平擴展的機制以提高處理效率”[2]。隨著大數據技術的持續演進,其內涵與外延也不斷得到發展,現在通常認為“大數據”包含海量結構化、半結構化以及無結構化數據,因此大數據相關技術與傳統關系型數據庫相比在處理非結構化數據和無結構化數據方面無論是在處理速度還是存儲容量上均有較大優勢。
大數據價值鏈可以分為四個階段:數據生成、數據獲取、數據存儲和數據分析[3]。其中“數據生成”的工作主要是由相關業務系統或設備來完成,因此目前主流大數據技術主要負責后三個階段的工作。其中Apache Software Foundation于2005年啟動的Hadoop項目最為引人關注[4]。Hadoop源自于對Google Map/Reduce和Google File System的開源模擬,也正是由于其開源特性,吸引了各國優秀計算機專家與工程師投身其中,不斷對其豐富完善,現已發展為包含Spark和Storm等多個模塊在內的既能實現離線大數據分析也能完成流式計算的主流大數據解決方案[5],并在各行業中均有落地。
1.2聚類算法
聚類分析是數據挖掘中的一種重要算法。聚類的目標是在沒有任何先驗知識的前提下,根據數據的相似性將數據聚合成不同的類(或簇),使得相同類中的元素盡可能相似,而不同類中的元素差別盡可能的大,因此又稱為非監督分類(Unsupervised Classification)[6]。早在20世紀70年代,學界就對聚類算法有了比較深入的研究[7-8],聚類的方法包括統計學方法和機器學習方法。
目前存在著多種聚類算法,其可以分為如下幾類:基于劃分的方法(Partitioning Method)、基于層次的方法 (Hierarchical Method)、基于密度的方法 (Density-Based)、基于網格的方法(Grid-Based)和基于模型的方法(Model-Based)等[9]。
K-means算法由Mac Queen于1967年首先提出,該算法是目前為止在工業界和科學應用中一種極有影響的聚類算法[10]。K-means是基于劃分的方法中的一種,是典型的基于原型的目標函數聚類方法的代表[11]。K-means聚類的目標就是在給定分類組數k(k≤n)值的條件下,通過聚類把樣本點按聚集程度分成若干個簇,在同一個簇內具有較高的相似度,而在簇間的相似度較低。即對簇集合S={S1,S2,…,Sk},在數值模型上,對以下表達式求最小值,其中μi表示分類Si的平均值:

具體算法流程如下:
(1)從 n個數據對象任意選擇 k個對象作為初始聚類中心;
(2)根據每個聚類對象的均值(中心對象),計算每個對象與這些中心對象的相異度,將這些元素分別劃歸到相異度最低的簇;
(3)重新計算每個(有變化)聚類的均值(中心對象);
(4)循環(2)到(3)直到每個聚類不再發生變化為止;
(5)輸出結果。
通過每天的銷售記錄中的客戶編碼和卷煙編碼把客戶屬性和卷煙屬性關聯在一起組成一條記錄,獲取到擁有n條數據記錄的集合(x1,x2,…,xn),并且每個xi為d維的向量,即xi(xi1,xi2,…,xid),其中xi1~xid為客戶屬性和卷煙屬性。
2.1大數據平臺技術架構
由于北京煙草現有信息系統中存儲了大量歷史交易數據,因此使用傳統關系型數據庫難以在可接受時間內完成對海量數據的分析與處理。北京煙草與浪潮軟件股份有限公司共同搭建了基于Hadoop的大數據處理平臺,將原有數據中心的歷史數據保存到HDFS之中,并通過MapReduce/SPARK實現海量數據計算。
2.2數據挖掘工具的選取
本文中所采用的數據挖掘工具為WEKA。WEKA的全名是懷卡托智能分析環境 (Waikato Environment for Knowledge Analysis),WEKA作為一個公開的數據挖掘工作平臺,集成了大量能承擔數據挖掘任務的機器學習算法,包括對數據進行預處理、分類、回歸、聚類、關聯規則以及在新的交互式界面上的可視化。WEKA可以與基于Hadoop的大數據平臺相結合,實現較為完整的大數據分析解決方案。
2.3基于K-means的用戶畫像
整個畫像過程分為六個步驟,包括:
(1)確定業務場景

圖1 北京煙草大數據平臺技術架構
確定三個業務場景進行試驗,三個業務場景分別為:場景1.挖掘特征客戶群對于卷煙品類的傾向性;場景2.挖掘特征客戶群對于產品類型的傾向性;場景3.挖掘特征客戶群對于產地類型的傾向性。
(2)數據樣本獲取
從數據中心系統數據庫中關聯客戶商品日銷售表、客戶表(通過客戶編碼關聯)和卷煙表(通過卷煙編碼關聯),選取一個銷售周期的數據,共獲得樣本數據690177條,把數據存為WEKA挖掘工具可用的csv格式,每條樣本數據的字段列如下:

表1 銷售數據字段列表
(3)數據預處理
數據預處理分為兩步,第一步把樣本中數字編碼處理成字符編碼,因為挖掘工具會把這些數字分類編碼當成數值來處理,從而影響挖掘結果。需要處理的字段列包括:區域類型、經營規模、結算方式、訂貨方式、是否終端、價類、產地類別、品類、包裝類型。第二步需要在WEKA預處理界面中打開樣本數據集,剔出掉CUST_CODE列。
(4)算法選擇
選擇聚類算法K-means,依據Within cluster sum of squared errors值的大小 (越小越好)經過多次調試,把算法參數seed(隨機種子數)設為100。
(5)調試
依次進行業務場景調試,初始時選擇所有客戶屬性和與場景對應的卷煙屬性進行挖掘,依據Within cluster sum of squared errors值的大小以及生成的簇間關系進行調整,調整內容包括忽略掉某個客戶屬性(去掉無效列)、調整預生成簇的個數和調整seed。
(6)結果分析
經過調試,最終確認的各個場景的結果如下:
場景1:挖掘特征客戶群對于卷煙品類的傾向性。
零售客戶特征選擇:業態 (對應BASE_TYPE_ CODE)、經營規模(對應SALE_SCALE_CODE)、月均訂貨量檔次(對應SALE_SCALE_KIND_CODE);
卷煙屬性設定為卷煙品類 (對應CATEGORY_ CODE)。
聚類后,生成特征客戶群,簇0和簇1。其中簇0的特征為:業態為食雜店(標識為:‘Z')的、經營規模為中的(標識為:‘2')、月均訂貨量在251-500條的(標識為:‘A3')零售客戶傾向于訂購卷煙零售價在65(含)-105之間的(標識為:‘C08')卷煙;簇1的特征為:業態為便利店(標識為:‘B')的、經營規模為中的(標識為:‘2')月均訂貨量在101-250條的(標識為:‘A2')零售客戶傾向于訂購卷煙零售價在200(含)-260元的(標識為:‘C05')卷煙。
場景2:挖掘特征客戶群對于產品類型的傾向性。
零售客戶特征選擇:業態 (對應BASE_TYPE_ CODE)、市場類型(對應MARKET_TYPE_CODE)、區域類型 (對應AREA_TYPE_CODE)、經營規模 (對應SALE_SCALE_CODE);
卷煙屬性設定為產品類型(對應 ITEM_ TYPE_CODE)。
聚類后,生成特征客戶群,簇0、簇1和簇2。其中簇0的特征為:業態為食雜店(標識為:‘Z')的、市場類型為城市的(標識為:‘C')、區域類型為學區的(標識為:‘A03')、經營規模為中的(標識為:‘S2')零售客戶傾向于訂購烤煙型(標識為:‘IT1')卷煙;簇1的特征為:業態為便利店(標識為:‘B')的、市場類型為城市的(標識為:‘C')、區域類型為工業區的(標識為:‘A02')、經營規模為中的(標識為:‘S2')零售客戶傾向于訂購混合型(標識為:‘IT2')卷煙;簇2的特征為:業態為食雜店(標識為:‘Z')的、市場類型為鄉村的(標識為:‘'X')、區域類型為學區的(標識為:‘A03')經營規模為大的(標識為:‘S1')零售客戶傾向于訂購烤煙型(標識為:‘IT1')卷煙。
場景3:挖掘特征客戶群對于產地類型的傾向性。
零售客戶特征選擇:業態 (對應BASE_TYPE_ CODE)、市場類型(對應MARKET_TYPE_CODE)、月均訂貨量檔次(對應SALE_SCALE_KIND_CODE);
卷煙屬性設定為產地類別(對應MFR_TYPE)。
聚類后,生成特征客戶群,簇0、簇1和簇2。其中簇0的特征為:業態為食雜店(標識為:‘Z')的、市場類型為城市的(標識為:‘C')、月均訂貨量在251-500條的(標識為:‘A3')零售客戶傾向于訂購省外(標識為:‘M1')卷煙;簇1的特征為:業態為食雜店(標識為:‘Z')的、市場類型為城市的(標識為:‘'X')、月均訂貨量在101-250條的(標識為:‘A2')零售客戶傾向于訂購省外(標識為:‘M1')卷煙;簇2的特征為:業態為便利店(標識為:‘B')的、市場類型為城市的(標識為:‘'C')、月均訂貨量在101-250條的(標識為:‘A2')零售客戶傾向于訂購省內(標識為:‘M0')卷煙。
2.4商品智能推薦模型
在完成零售戶畫像的基礎之上,在零售客戶網上訂煙平臺新商盟網站應用數據挖掘的結果,對符合特征的客戶推薦對應特征的卷煙商品。例如向業態為食雜店的、市場類型為城市的、區域類型為學區的、經營規模為中的零售客戶推薦烤煙型卷煙。
本文基于大數據技術采用K-means實現了用戶畫像與智能推薦,為北京煙草市場化取向改革的進一步推進提供了新的思路和方法。但由于本方案是基于零售客戶的歷史訂貨數據而不是從周邊區域消費者角度分析各類特征,如區域人口分布、性別比、消費能力等,因此零售戶畫像以及在此基礎上實現的智能推薦在準確度上尚有不足,需要進一步改進。
[1]Manyika J,Chui M,Brown B,et al.Big Data:the Next Frontier for Innovation,Competition,and Productivity.McKinsey Global Institute,2011
[2]Cooper M,Mell P.Tackling Big Data.NIST,2012
[3]李學龍,龔海剛.大數據系統綜述[J].中國科學:信息科學,2015,第45卷 第一期:1-44
[4]http://hadoop.apache.org/
[5]趙晟,姜進磊.典型大數據計算框架分析[J].中興通訊技術.2016.4
[6]陳麗.數據挖掘中聚類算法研究[D].2007
[7]Bijne ET.Cluster analysis[M].Netherlands:Tiberg University Press,1973
[8]Everitt B.Cluster analysis[M].London:Heinemann Educational Books Ltd.,1974
[9]Jiawei Han,Micheline Kamber.數據挖掘概念與技術[M].范明,孟小峰等譯.北京:機械工業出版社,2001
[10]J.B.MacQueen.Some Methods for classification and Analysis of Multivariate Observations.Proceedings of 5-th Berkeley Symposium on Mathematical Statistics and Probability.Berkeley,University of California Press,1:281-297
Big Data;Intelligent Recommendation;Clustering
Application of User Portrait and Intelligent Recommendation Based on Big Data Technology and K-means
LI Bing1,WANG Yue1,LIU Yong-xiang2
(1.China National Tobacco Corp.Beijing Corp.,Beijing 100122;2.INSPUR Co.,Ltd.,Jinan250000)
1007-1423(2016)24-0011-05DOI:10.3969/j.issn.1007-1423.2016.24.03
李冰(1984-),男,北京市人,博士,工程師,研究方向為云計算與大數據
王悅(1986-),男,北京人,本科,工程師,研究方向為系統集成與大規模分布式系統
劉永祥(1974-),男,湖南人,本科,高級工程師,研究方向為煙草數據分析
2016-08-15
2016-08-20
隨著中國煙草行業市場化取向改革日益深入以及計算機技術的快速發展,如何利用新技術更準確地洞察市場、了解卷煙零售客戶銷售特征、針對性的為零售戶提供適銷對路的卷煙商品成為行業內所共同關注的問題。探索一種基于大數據技術及K-means算法的卷煙零售戶特征畫像,并在此基礎上實現對零售戶訂貨的智能推薦。
大數據;智能推薦;聚類
With the proceeding of China tobacco industry market oriented reform and the development of computing technology,departments of tobacco sales and marketing pay more and more attention to how to use new techniques to obtain accurate information of the market,understanding the sales characteristics of tobacco retailer and provide marketable tobacco goods for the retailer.Explores a kind of tobacco retailer user portrait based on Big Data technology and K-means clustering algorithm,and provides the application of intelligent recommendation for tobacco ordering.