曹衛東,白 亮,聶笑盈
(1.中國民航大學 計算機科學與技術學院,天津300300;2.中國民航信息技術科研基地,天津300300)
隨著民航信息化程度日益加深,各航空公司的訂票系統中都積累了大量的旅客訂座記錄 (passenger name record,PNR)數據信息[1]。面對這些寶貴的數據資源,很多航空公司并沒有進行有效地數據挖掘與數據分析。目前,航空公司都推出了常旅客計劃,但是,常旅客計劃只是根據飛行里程來發展VIP客戶,并通過積分兌換來提高客戶對本公司的忠誠度。顯然,根據飛行里程這一單一的數據指標并不能準確有效地識別高價值旅客。同一旅客可能是多家航空公司的VIP會員,由此可見,常旅客計劃并不能對旅客出行形成有效的吸引力。在激烈的市場競爭中,如何運用非常旅客的PNR數據,快速準確地識別高價值旅客,并結合有限的資源,在短期內創造更大效益,是航空公司亟需解決的問題。
高價值旅客經常是因為工作需要而選擇航空旅行,對時間、飛行服務、機艙環境等要求較高,對價格方面的優惠往往并不看重。因此,高價值旅客的一個簡單定義[2]即為:經常選擇航空旅行,且訂票艙位等級較高的那部分客戶為高價值旅客。高價值旅客在一段時間內選擇的航線往往比較固定,所以,在某條具體航線上對旅客短期價值進行分析研究,將高價值旅客挖掘出來,并在他們再次在某條具體航行上出行之前,對其進行一些針對性的推送服務,以吸引他們乘坐本航空公司的航班,對航空公司來說,無疑會有很大幫助。
目前,在挖掘航空公司高價值客戶方面,國內大多數的研究都是在數據量較小的常旅客數據集進行挖掘。對于挖掘結果,往往需要航空公司進行長期投入,資源利用率很低。而航空公司寶貴的PNR數據集雖然十分具有挖掘潛力,但由于其數據量太大,使用常規方法很難處理[3]。目前較為先進的 Map/Reduce作為一個可以將計算機進行集群,并行處理計算任務的數據處理模型,處理海量數據資源快速準確。因此,本文提出一種基于 Map/Reduce的民航高價值旅客發現方法。首先,對于海量的PNR數據資源,采用Hadoop分布式處理方式,利用Map/Reduce數據處理模型[4],快速有效地進行過濾,篩選及預處理。根據改進的RFD客戶價值模型,對客戶價值指標進行變換與確定,再利用AHP層次分析法,根據專家經驗值,確定各指標權重。然后,根據客戶價值指標與權重計算客戶價值,運用優化的K-Means聚類算法對經過處理的數據集進行聚類,并將聚類結果與數據集均值進行比較,對旅客價值進行識別,從而發現高價值旅客,并對客戶群特點進行分析。最后,采用真實的PNR數據集進行實驗。實驗結果表明,本文提出的方法準確有效,能夠快速地識別出航空公司高價值旅客,從而為航空公司短期內集中有限資源做出有效決策,并對高價值客戶進行更優質的推送服務提供有利支持。
Hadoop是Apache軟件基金會開發的一個開源計算平臺,它以Map/Reduce編程框架為核心,為用戶提供了底層細節透明的分布式基礎架構。Map/Reduce作為Google公司的核心計算模型,可以對不同的計算任務進行高效地調度以及準確地計算。它將計算機集群上運行的并行計算過程高度地抽象為了兩個函數:Map函數和Reduce函數。Map函數接收一個形如<key,value>的輸入,產生一個形如<key,value-list>的中間輸出,所有具有相同key值的value值形成一個集合被傳遞給Reduce函數,Reduce函數接收一個形如<key,value>的輸入,然后將這個value值集合打開并對里面的value值進行處理。最后,Reduce函數產生一個形如<key,value>的輸出作為處理結果。由于擁有Map/Reduce這一高效的任務調度模型,所以Hadoop允許用戶在不了解分布式系統底層細節的情況下開發并行應用程序,并組織計算機資源,搭建自己的分布式計算平臺,充分利用集群的計算威力完成海量資源的處理[5,6]。
Map/Reduce運行機制如圖1所示。

圖1 Map/Reduce運行機制
在客戶關系管理中,RFM模型是衡量客戶價值的一種經典模型。它有如下3種客戶價值指標:Recency(最近消費時間),Frequency(消費頻率),Monetary(消費金額)。Goodman等提出根據RFM模型將企業有限的資源應用到高價值客戶身上,提高資源的使用效率。Hughes等通過RFM模型將客戶分為五類,并針對五類客戶采取不同的銷售策略。但是,鑒于航空公司的行業特殊性,傳統的RFM模型并不完全適合航空公司的旅客價值分析。所以,本研究對RFM這3個指標作如下改進,并利用改進的RFD模型對航空公司高價值旅客進行數據分析[7,8]。
R:旅客最近一次乘坐該航空公司某條航線的航班日期與統計日期的距離天數;
F:旅客在一段時間內乘坐該航空公司某條航線的航班累計次數;
D:旅客在一段時間內乘坐該航空公司某條航線的航班平均折扣;
層次分析法 (analytic hierarchy process,AHP)是一種將定性分析與定量分析相結合,對較為模糊或較為復雜的決策問題做出決策的方法,由匹茲堡大學的A.L.Saaty教授于1980年提出。它將專家的經驗和判斷量化為具體數值,展現了思維決策的發展過程及基本特征,具有簡單成熟、思路清晰、系統性強等優點。因此,使用AHP層次分析法確定客戶價值分析中各個指標的權重。
層次分析法計算權重的具體步驟請參見文獻 [9-11]。
不同的客戶價值指標具有不同的數量級,如果數量級相差很大會使得3個因素對目標值的影響嚴重不平衡。為了消除這種分布失衡及數量級不同產生的影響,在進行聚類分析之前,數據集需要經過數據標準化處理。在本次研究中,采用的方法是對數據集進行轉換,使數據集中的全部數據取值在0~1之間[12]。
設X為R,F或D變量,XL為數據集中R,F或D變量的最大值,XS為數據集中R,F或D變量的最小值,X′為標準化后的X變量。
對于R變量,它的值越大,旅客價值越小,所以R變量對旅客價值有負面影響,是負相關指標。因此,用式(1)對其進行標準化

對于F和D兩個變量,它們的值越大,旅客價值越大,所以F和M兩個變量對旅客價值有正面影響,是正相關指標。因此,用式 (2)對其進行標準化

K均值聚類算法是比較經典和成熟的聚類算法,該算法的最大特點就是能夠使簇內的數據具有較高的相似度,而簇間的數據則相似度較低。而且,K均值聚類算法還具有計算量小,收斂速度快等優點,在處理大數據集時,與其它聚類算法相比,占用的內存空間和計算時間較小[12,13]。K均值聚類算法的具體應用步驟如下:
(1)輸入數據個數為N的數據集,并指定簇的數目K。令I=1,選取其中的k個點作為初始聚類中心Zj(I),j=1,2,3,…,k;
(2)計算數據集中每個數據與k個初始聚類中心的距離D(xi,Zj(I)),i=1,2,3,…,n;j=1,2,3,…,k,若滿足D(xi,Zm(I))= min{D(xi,Zj(I)),j=1,2,3,…,k},則將xi歸入第m類;
(3)根據式 (3)計算誤差平方和準則函數Jc并判斷若|Jc(I)-Jc(I-1)|<ξ

則算法結束;否則令I=I+1,根據式 (4)計算k個新的聚類中心,并返回 (2)步

但是,數據集中必然會出現孤立點,即少數一些數據點遠離數據密集區的情況,由于初始聚類中心是隨機選取的,那么就有可能會將孤立點選為初始聚類中心,這樣會對聚類結果產生很大的影響。因此,這里對經典K-Means聚類算法進行改進,首先根據距離和的思想排除孤立點,然后對初始聚類中心的選擇進行優化,之后再對數據集聚類,而孤立點在聚類算法之后單獨聚類[14]。
根據距離和的思想,通過計算數據集中各個對象之間的距離,列出距離和矩陣 (見表1,其中:d(i,j)為歐式距離;D(i,j)為距離和;d=sqrt ((x2-x1)2+ (y2-y1)2+……+ (z2-z1)2);)篩選掉與其它數據距離之和最大的那些點,根據要求的準確度,篩選掉一定比例的數據對象,使孤立點不在初始聚類中心的選擇范圍之內,從而避免影響最終的聚類結果。

表1 距離和矩陣
在刪除一定比例的孤立點之后,將剩余的數據對象再次做出距離和矩陣,以找到距離最大的兩個點。本次研究所用數據集為三維數據,這里將兩點連成線段,以線段中心為球心,以線段為直徑畫球。再以線段中心為球心,以線段的一半為直徑畫內球。根據球心作三維直角坐標系,在8個象限中分別取內球每個弧面上的中心點作為初始聚類中心。選定初始聚類中心之后,根據經典K-Means聚類算法進行聚類。最后,計算各孤立點與聚類中心的距離,并進行歸類。
在本次研究過程中,采用某信息公司提供的國內旅客2010年1月1日至2011年2月28日的PNR數據集進行分析研究,該數據集大小為48.6G,利用5臺PC機進行集群處理,處理時間約為4個小時。設統計日期為2011年1月1日,則R變量所代表的距離天數為統計日期與客戶最近一次乘機的日期所相差的天數。對于實驗所采用的大數據集,首先利用 Map/Reduce數據處理模型,對具有相同旅客ID和航線的PNR數據進行計算:
(1)對起飛日期取最大值;
(2)統計具有相同客戶ID和航線的PNR數據個數;
(3)對航班折扣取平均值;
因為識別高價值旅客的3個基本條件為經常出行,選擇艙位等級較高且短期內仍有出行記錄。所以,出行次數較少,選擇低折扣出行或短期內沒有出行記錄的旅客不在研究范圍之內。因此,過濾掉不符合以下3個條件的數據:
(1)2010年內出行次數大于等于4次;
(2)平均出行折扣大于等于4折;
(3)最近60天內有過出行記錄;
經過處理的PNR數據集見表2。

表2 經過處理的PNR數據集
在確定航空公司客戶價值指標時,邀請多位民航領域內經驗豐富的專家參與,采用問卷調查的方式并運用AHP層次分析法,對客戶價值指標的相對重要性進行了分析。
首先,讓每位專家使用9級標度法兩兩比較3個客戶價值指標的相對重要性,并做出判斷矩陣。然后,對這些判斷矩陣做出一致性檢驗,有8個判斷矩陣滿足一致性要求,這8個判斷矩陣為有效判斷矩陣。最后,對每個有效判斷矩陣的權重進行計算,并對結果取算術平均值,即得到各個客戶價值指標的最終權重[15]。判斷結果為:wR=0.1036,wF=0.3705,wD=0.5259。結果顯示,D變量的權重最大??梢钥闯?,專家們一致認為影響旅客價值大小的最重要因素是旅客的航班平均折扣。
數據處理如圖2所示。

圖2 數據處理
為使實例分析更具代表性,在本次聚類分析中,選擇某航空公司的北京-上海這條黃金航線上的PNR數據集作為研究對象。
在進行聚類分析之前,需要對數據進行標準化。然后,根據判斷出的客戶價值指標的權重以及標準化后的PNR數據,利用式 (5)計算每個旅客的客戶價值

式中:VR,VF,VD——客戶價值指標R,F,D標準化后的值。
根據距離天數,出行次數,平均出行折扣這3個客戶價值指標,利用優化初始聚類中心的K-Means聚類算法進行聚類分析。該聚類算法必須事先給定聚類結果中簇的數目K,由于最后要將聚類結果中每簇的客戶價值指標均值與整個數據集的客戶價值指標均值相比較,而每個客戶價值指標的比較只能有大于 (等于)或小于這兩種情況,其中,旅客價值是由其它3個客戶價值指標經過加權計算得出的。因此,在數據分布均勻的情況下,簇的數目應為2*2*2=8個,即K=8。
得出聚類結果之后,將各簇的客戶價值分析指標均值與整個數據集的客戶價值分析指標均值作比較,以便能夠將各簇中的客戶特點更清晰地顯示出來,從而為航空公司提供更加有利的參考依據。
由表3-聚類結果及表4-各簇均值與數據集均值比較結果中可以看出,第1簇中的客戶群R↓F↑D↑V↑且客戶價值是最高的。所以,對航空公司來說,這些客戶是最具商業價值的旅客,即星級客戶。他們經常乘坐該航空公司的航班往返于兩個城市之間,且平均購票的票價很高,多集中在頭等艙,因此,這部分旅客創造的利潤相當可觀,航空公司應集中其有限資源最先服務于這部分旅客,以便留住他們,并與之建立起長期友好的客戶關系。

表3 聚類結果
第5簇中的客戶群R↑F↑D↑V↑且旅客價值相對較高。這部分旅客的R變量大于平均值,有可能是近期在這條航線上出行的時候,選擇了其它航空公司的航班。這部分客戶在出行的時候不固定選擇哪家航空公司的航班,因此,他們與哪家航空公司都有可能建立緊密客戶關系,具有很大的潛力成為航空公司的星級客戶。航空公司應特別重視與這些客戶的進一步發展,并對他們開展一些具有市場針對性的促銷活動,從而提高航空公司對他們的吸引力。

表4 各簇均值與數據集均值比較結果
第6簇和第7簇中的客戶群R↓F↑D↓V↑且旅客價值略高,這部分客戶的出行特點是這條航線上出行較為頻繁但平均出行折扣不高。針對這部分旅客,基于他們的消費行為,航空公司應多推出一些航班服務優惠活動,例如若購票折扣達到1.2即可享受購票折扣1.5以上的頭等艙服務等,以刺激其消費。
其它簇的客戶群的客戶價值指標均值均與整個數據集均值接近或小于整個數據集均值,他們對航空公司的商業價值較小,航空公司不應把有限的資源用于吸引這些旅客。
利用2011年前兩月的PNR數據對該方法挖掘出的高價值旅客在未來短時間內繼續在某條航線上出行的概率進行驗證,驗證準確率結果如圖3所示,由2010年PNR數據集挖掘出的北京-上海航線上的高價值旅客在2011年1月繼續出行的概率為51.1%,2011年1-2月繼續出行的概率為63.9%,在北京-廣州,北京-深圳這兩條航線上2011年1月和2011年1-2月繼續出行的概率分別為47.2%,59.5%和53.1%,66.4%。可見,預測結果準確率較高,該方法快速有效。
航空公司訂票系統中基于非常旅客的PNR數據是十分珍貴的數據源,從中可以挖掘出對航空公司價值很高的旅客。這些客戶大部分是某段時間內由于工作原因頻繁往返于兩個城市之間,且平均購票價格較高。他們很可能不受具體航空公司的約束,因此,哪家航空公司能夠快速準確地找到這部分高價值旅客并與之建立長期友好的客戶關系,哪家航空公司便能在激烈的市場競爭中占得先機。本文提出這種基于 Map/Reduce的民航高價值旅客分析方法,并在某航空公司真實的PNR數據集上進行了實例分析。分析結果表明,該方法即使面對具有海量數據的PNR數據集,也可以輕松處理,并且它能夠有效地識別航空公司高價值旅客,為航空公司在短期時間內集中有限資源做出有效決策提供了參考依據。

圖3 預測準確率結果
[1]Manyikaj,Chui M,Brownb Bughin J,et al.Big data:The next frontier for innovation,competition,and productivity[EB/OL].[2012-11-25].http://www.fujitsu.com/downloads/svc/Fla/03_Michael.Chui.pdf.
[2]LIU Pan.Modeling of aviation customer value based on data mining [D].Guangzhou:South China University of Technology,2010 (in Chinese).[劉攀.基于數據挖掘的航空公司客戶價值建模 [D].廣州:華南理工大學,2010.]
[3]Gantz J,Reinsel D.THE digital universe decade are you ready[EB/OL]. [2010-03-10].http://viewer.media.bitpipe.com/938044859_264/1287663101_75/Digital_Universe.pdf.
[4]DOU Meng,WEN Lijie,WANG Jianmin,et al.Parallel algorithm to convert big event log based on MapReduce [J].Computer Integrated Manufacturing Systems,2013,19 (8):1784-1793 (in Chinese).[竇蒙,聞立杰,王建民,等.基于MapReduce的海量事件日志并行轉化算法 [J].計算機集成制造系統,2013,19 (8):1784-1793.]
[5]White T.Hadoop:The definitive guide [M].O’Reilly Media,Inc,2009.
[6]LU Jiaheng.Hadoop in action [M].Beijing:China Machine Press,2011 (in Chinese).[陸家恒.Hadoop實戰 [M].北京:機械工業出版社,2011.]
[7]XU Xiangbin,WANG Jiaqiang,TU Huan,et al.Customer classification of E-commerce based on improved RFM model[J].Journal of Computer Applications,2012,32 (5):1439-1442(in Chinese).[徐翔斌,王佳強,涂歡,等.基于改進RFM模型的電子商務客戶細分 [J].計算機應用,2012,32(5):1439-1442.]
[8]LIU Chaohua,MEI Qiang,CAI Shuqin.The model of customer classification and evaluation of customer value based on RFM [J].Technoeconomics & Management Research,2012,33 (5):33-36 (in Chinese).[劉朝華,梅強,蔡淑琴.基于RFM的客戶分類及價值評價模型 [J].技術經濟與管理研究,2012,33 (5):33-36.]
[9]LUO Xiaofeng,REN Aihua,LI Meng,et al.Application of AHP and SPC in quantitative process management [J].Computer Engineering and Design,2010,31 (12):2749-2753 (in Chinese).[羅曉峰,任愛華,李萌,等.AHP和SPC技術在量化過程管理中的應用 [J].計算機工程與設計,2010,31(12):2749-2753.]
[10]LIU Dongfei.Software process performance evaluation based on AHP and cloud mode [J].Computer Engineering and Design,2013,34 (3):894-898 (in Chinese).[劉東飛.基于AHP與云模型的軟件工程績效評價方法 [J].計算機工程與設計,2013,34 (3):894-898.]
[11]WANG Feng,LIU Jingao,CHEN Yahua.Customers’value assessment model in AHP-based telecommunication [J].Computer Systems & Applications,2009,19 (1):26-28(in Chinese).[王峰,劉錦高,陳亞華.基于AHP的電信客戶價值評價模型研究 [J].計算機系統應用,2009,19(1):26-28.]
[12]ZHANG Wenxin.Research on frequent flyer segmentation of airlines [D].Nanjing:Nanjing University of Aeronautics and Astronautics,2009 (in Chinese). [張文欣.航空公司常旅客細分研究 [D].南京:南京航空航天大學,2009.]
[13]WANG Fudong,MA Yufang.Research of method for customer segment based on data mining [J].Computer Engineering and Applications,2011,47 (4):215-218 (in Chinese).[王扶東,馬玉芳.基于數據挖掘的客戶細分方法的研究[J].計算機工程與應用,2011,47 (4):215-218.]
[14]ZHOU Aiwu,YU Yafei.The research about clustering algorithm of K-Means [J].Computer Technology and Development,2011,21 (2):61-65 (in Chinese). [周愛武,于亞飛.K-Means聚類算法的研究 [J].計算機技術與發展,2011,21 (2):61-65.]
[15]LUO Liangsheng,ZHANG Wenxin.Research of method customer segment of airlines based on database of frequent flyer[J].Modernbusiness,2008 (23):54-55 (in Chinese). [羅亮生,張文欣.基于常旅客數據庫的航空公司客戶細分方法研究 [J].現代商業,2008 ( 23):54-55.]