徐一文 黎瀟陽 董啟文 錢衛(wèi)寧 周防
摘要:在聚合支付領(lǐng)域,為了減少聚合支付平臺的運營成本、提高平臺利潤率,要解決的一個關(guān)鍵問題是確保平臺中達到較低的商戶流失率。本文所關(guān)注的是聚合支付平臺的商戶流失預測問題,目標是幫助平臺及時挽回可能流失的客戶?;诮灰琢魉當?shù)據(jù)和商戶基本信息,本文提出了與商戶流失密切相關(guān)的特征,采用多種傳統(tǒng)機器學習模型進行流失預測。考慮到商戶的交易流水數(shù)據(jù)具有時序性,增加了基于LSTM的多種時間序列模型來建模。在真實數(shù)據(jù)集上的實驗結(jié)果表明手動提取的特征具有一定的預測能力,結(jié)果具有可解釋性:采用時間序列模型能夠較好地學習到數(shù)據(jù)的時序特征,從而進一步提升預測結(jié)果。
關(guān)鍵詞:流失預測:特征工程:時間序列模型
中圖分類號:TP399 文獻標志碼:A DOI:10.3969/j.issn。100~5641.202091016
0引言
隨著移動通信設(shè)備在我國的飛速普及,移動支付正逐漸取代現(xiàn)金支付成為支付的主流方式。常見的移動支付平臺有支付寶、微信、銀聯(lián)等,然而不同的用戶對支付平臺有不同的偏好,在線下消費場景中,商戶需要同時安裝多種支付軟件來滿足不同顧客的需求,這給商戶和顧客都帶來了一定程度的不便,因此聚合支付技術(shù)隨之出現(xiàn)。聚合支付技術(shù)支持收款碼一碼通用以及自動識別多種平臺的付款碼,提供聚合支付服務(wù)的公司會從每一筆交易里收取一定比例的費率??紤]到中國人口數(shù)量和移動支付的普及,這是一個巨大的市場且競爭十分激烈,目前常見的提供聚合支付服務(wù)的公司有ping++、快錢、收錢吧、美團等。
在競爭如此激烈的市場中,用戶的留存率是一個至關(guān)重要的問題。Bhattacharya的研究表明,增加一個新用戶的運營成本是保留一個老用戶的運營成本5至6倍Ⅲ;根據(jù)Reichheld和Derrick的研究,企業(yè)的客戶流失率每減少5%,平均利潤就會增加約25%。本項研究是針對聚合支付領(lǐng)域的商戶流失預測問題進行的。聚合支付平臺的業(yè)務(wù)部門每天需要對可能流失的用戶進行回訪,越早進行回訪,成功挽回的概率就越大。如果某商戶連續(xù)兩天沒有任何交易,則認為該商戶有可能會流失。在這個條件下,聚合支付平臺每天都會出現(xiàn)大量的疑似流失商戶,但是真正有流失傾向的只占一小部分。如果對每個疑似流失商戶都進行電話回訪會帶來兩個問題:一是工作量太大,需要耗費大量的人工成本和時間成本;二是如果頻繁地對本身并無流失傾向的商戶進行回訪,反而會極大地降低客戶的滿意度。因此,如何準確地預測出具有流失傾向的商戶成為一個至關(guān)重要的問題。
本文關(guān)注的是具有挽回價值的疑似流失商戶,該商戶需要達到一定的歷史交易金額和歷史交易筆數(shù)。實驗使用真實數(shù)據(jù)對疑似流失商戶進行預測。針對數(shù)據(jù)的特點,預測任務(wù)面臨如下挑戰(zhàn)。
(1)如何提取有效的特征來進行預測?實驗數(shù)據(jù)包含商戶的基本信息和一個月的歷史交易流水。針對商戶的基本信息,需要篩選出對預測有幫助的字段作為特征。例如,入網(wǎng)時長能反映商戶的忠誠度,且加入模型后能夠提高預測結(jié)果的準確性,所以將其作為特征;又如,對商戶的行業(yè)字段進行one-hot編碼后,因為太過稀疏,入模后并不能提高模型的表現(xiàn),因此不能將其作為特征。針對流水數(shù)據(jù),最直接的做法是使用交易金額和交易筆數(shù)的統(tǒng)計信息,如均值、最值、中位數(shù)、標準差等作為特征,但這樣得到的預測結(jié)果并不理想。因此我們需要設(shè)計出更加有效的特征,使其既能體現(xiàn)流水數(shù)據(jù)的動態(tài)信息,同時又具有較強的預測能力。
(2)如何解決交易記錄間的時間不規(guī)律問題?商戶不一定每天都有交易記錄,兩筆交易間有可能間隔幾天或幾個星期。本次實驗取商戶一個月時間范圍內(nèi)的流水記錄,有交易的天數(shù)無規(guī)律地分布在[1,30]區(qū)間內(nèi)。由于商戶近期的數(shù)據(jù)更能反映其流失傾向,如果交易記錄之間的時間間隔較大,應(yīng)給予近期數(shù)據(jù)更多的關(guān)注,降低早期數(shù)據(jù)的影響。因此在建模時需要將記錄之間的時間間隔考慮在內(nèi)。
針對第一個挑戰(zhàn),本文不僅提出了商戶信息方面的特征,如入網(wǎng)時長、連鎖門店數(shù)量,以及交易流水方面的特征,如平均交易金額、無交易天數(shù)占比,還提出了一系列風控特征用來反映商戶存在的刷單套現(xiàn)等異常行為,如信用卡支付筆數(shù)占比、整10金額交易筆數(shù)。本次實驗將這3類特征輸入傳統(tǒng)機器學習模型,驗證了所提出特征的有效性。
針對第二個挑戰(zhàn),常見的序列模型如RNN、LSTM(Long Short-Term Memory)沒有考慮到數(shù)據(jù)間的時間間隔。本文首次將T-LSTM(Time-aware LSTM)模型用于商戶流失預測任務(wù),T-LSTM模型能夠接收時間信息,根據(jù)輸入的時間間隔對長短期記憶進行分解,使得時間間隔越長,前序時間節(jié)點的輸入對模型的影響越小。實驗部分通過與LSTM和Bi-LSTM(Bidirectional LSTM)的對比驗證了其預測結(jié)果的有效性。
本文的主要貢獻如下。
(1)提出了有效的特征用于商戶流失預測,具有可解釋性,為業(yè)務(wù)提供指導。
(2)使用考慮了序列數(shù)據(jù)中時間間隔屬性的T-LSTM模型,使預測結(jié)果得到較大提升,驗證了商戶流失問題中數(shù)據(jù)的時間敏感性,為商戶流失預測的研究提供了新的思路。
(3)使用自編碼器來學習商戶的表征,再根據(jù)商戶的表征進行分類,進一步提升了預測結(jié)果的準確度。同時自編碼器輸出的商戶表征不僅可用于分類,也可用于聚類分析等各種任務(wù),為機器學習系統(tǒng)的構(gòu)造提供了新的思路,即可將自編碼器輸出的表征作為各種任務(wù)的共享數(shù)據(jù),提高了機器學習項目的開發(fā)效率。
本文后續(xù)結(jié)構(gòu):第1章介紹相關(guān)工作;第2章介紹實驗數(shù)據(jù)及問題描述;第3章介紹根據(jù)商戶基本信息和交易流水數(shù)據(jù)提取的3類特征;第4章簡單介紹本文所使用的各種時間序列模型;第5章為實驗部分,對各種模型的實驗結(jié)果進行對比分析;第6章總結(jié)所做的工作并展望未來的研究方向。
1相關(guān)工作
本章從兩個方面進行介紹。先介紹國內(nèi)外在用戶流失預測方向上的相關(guān)工作,包括基于特征工程和傳統(tǒng)機器學習模型的方法,以及使用深度學習模型的方法。再介紹考慮了序列數(shù)據(jù)中時間屬性的相關(guān)工作。
1.1用戶流失預測
近年來用戶流失預測問題在學術(shù)界引起了廣泛關(guān)注,范圍涉及MOOC平臺、社交平臺、電信等多個領(lǐng)域。在早期電信領(lǐng)域的研究中,研究者通過領(lǐng)域的業(yè)務(wù)知識設(shè)計各種特征,再使用隨機森林、梯度提升樹等集成模型就能獲得準確度較好且具有可解釋性的結(jié)果。例如,使用隨機森林模型可獲得特征的重要性系數(shù),系數(shù)值越高表示該特征在模型中所起的作用越大,在業(yè)務(wù)上代表這個特征跟流失的關(guān)系越密切,從而對業(yè)務(wù)流程起到指導作用。同時重要性系數(shù)可用于特征選擇,對于重要性系數(shù)值太低的特征,可認為與用戶流失相關(guān)性不大,甚至對模型結(jié)果起到反作用,所以可將其剔除。這種方法具有較好的可解釋性,但是,特征選取的好壞將直接影響最終的預測結(jié)果。隨著深度學習的興起,神經(jīng)網(wǎng)絡(luò)模型在眾多任務(wù)上的表現(xiàn)超過了大多數(shù)傳統(tǒng)模型。在MOOC平臺用戶流失預測的研究中l(wèi)引,作者通過大量的數(shù)據(jù)分析提取了有效的用戶行為特征與全局環(huán)境特征,使用Embedding、CNN和Attention機制將兩種特征進行結(jié)合,得到了較好的預測結(jié)果。另外,作者提到一種可用的模型集成方法,將神經(jīng)網(wǎng)絡(luò)第(L-1)層的輸出提取出來,與原始特征結(jié)合放入XGBoost等集成模型中,可以得到更好的預測結(jié)果。在社交應(yīng)用的用戶流失預測研究中,作者將預測任務(wù)分為了兩步,第一步對用戶進行聚類;第二步同時訓練多個LSTM網(wǎng)絡(luò),設(shè)計損失函數(shù)將分類結(jié)果與聚類結(jié)果相關(guān)聯(lián),極大提高了預測的準確性。這種方法通過聚類分析使結(jié)果擁有較好的可解釋性,同時使用原始的用戶行為數(shù)據(jù)訓練LSTM模型,避免了繁雜的特征工程。
1.2T-LSTM
傳統(tǒng)的RNN、LSTM模型并沒有考慮到序列數(shù)據(jù)中隱含的時間屬性,會導致某些場景下模型不能得到理想的預測結(jié)果。例如,在醫(yī)療診斷預測的研究中,病人的病歷記錄時間往往是不規(guī)律的,兩條記錄之間的時間間隔短則幾天,長則數(shù)年,建模時應(yīng)該考慮時間的影響。為此有研究者提出T—LSTM模型,該模型修改了LSTM的內(nèi)部結(jié)構(gòu),將序列數(shù)據(jù)中兩個相鄰輸入之間的時間間隔加入模型。同時作者將其擴展為T-LSTM自編碼器結(jié)構(gòu),用于學習病人的表征,可用于分類、聚類等任務(wù)。但是各種疾病對于時間的敏感度是不同的,流感、腸胃炎等急性病癥在短時間內(nèi)會造成很大影響,但在較長的時間跨度下其影響可忽略不計,而糖尿病等慢性疾病會持續(xù)造成影響,為此有研究者提出Timeline模型。Timeline模型的主體部分采用Bi_LSTM結(jié)構(gòu),在序列數(shù)據(jù)輸入Bi-LSTM之前對其進行處理,將時間跨度和不同疾病種類對時間跨度的敏感度同時考慮在內(nèi),并引入注意力機制為每個診斷結(jié)果分配權(quán)重,從而得到了表現(xiàn)良好并具有可解釋性的結(jié)果。
2數(shù)據(jù)及問題描述
本章正式介紹實驗數(shù)據(jù)和商戶流失預測問題。如圖1所示,本文所關(guān)注的疑似流失商戶在t1和t2兩天內(nèi)無任何交易記錄,且在t-2到to三天內(nèi)有一定的交易量,該商戶在tz時間點被系統(tǒng)檢測到并標記為疑似流失。若在未來28天內(nèi),即t3至t30時間段內(nèi),該商戶仍無交易發(fā)生,則認為該商戶已流失,否則為未流失。本文將根據(jù)t1前30天,即t-29至t0區(qū)間內(nèi)的歷史記錄數(shù)據(jù),預測t2后28天,即t3至t30區(qū)間內(nèi)商戶是否會發(fā)生交易。下文將對重要概念和數(shù)據(jù)集進行詳細介紹,并給出商戶流失預測問題的正式定義。
2.1概念定義
定義1疑似流失商戶本文考慮的是疑似流失但具有挽回價值的商戶,商戶在t1至t2兩天內(nèi)沒有交易,但是在t-2至t0三天內(nèi)有10筆以上大于2元的交易。
定義2系統(tǒng)預警時間點系統(tǒng)預警時間點是指疑似流失商戶被系統(tǒng)檢測到的日期,對應(yīng)于圖1中的t2時間點。
定義3商戶流失商戶流失是指疑似流失商戶在t2時刻被系統(tǒng)預警,且后續(xù)m天仍無任何交易發(fā)生。本文實驗設(shè)置m=28,即t3至t30時間段內(nèi)仍無交易。因此一個商戶連續(xù)30天無交易記錄,則認為該商戶已流失。
2.2數(shù)據(jù)介紹
本文采用上海市2019年8月至11月商戶的數(shù)百萬條支付數(shù)據(jù)作為實驗數(shù)據(jù),數(shù)據(jù)均以二維表結(jié)構(gòu)的形式存儲在關(guān)系型數(shù)據(jù)庫中,商戶基本信息包括商戶標識碼、門店標識碼、省份、城市、區(qū)、入網(wǎng)時間、所屬行業(yè)等字段,其中同一個商戶標識碼可以對應(yīng)多個門店標識碼;交易流水數(shù)據(jù)包括門店標識碼、交易類型、支付方式、交易金額、信用卡支付金額、創(chuàng)建時間等字段。對于一些入網(wǎng)時間非常短的商戶來說,其交易流水數(shù)據(jù)的數(shù)量較少,無法準確描述商戶行為。因此,本文剔除了入網(wǎng)時長少于30天以及數(shù)據(jù)項存在缺失值的商戶,并最終選取出83198家疑似流失商戶作為實驗數(shù)據(jù)。在模型構(gòu)建階段,將2019年8月至10月的疑似流失商戶作為訓練集(64325家疑似流失商戶),11月的疑似流失商戶作為測試集(18873家疑似流失商戶),占比接近3:1.
2.3問題定義
3特征描述
本章詳細介紹根據(jù)交易流水和商戶信息提出的特征,這些特征將用于傳統(tǒng)機器學習模型。通過對原始數(shù)據(jù)集進行數(shù)據(jù)處理和相關(guān)性分析,本文選取能夠反映商戶經(jīng)營狀況的重要特征用于商戶流失預測。特征被劃分為三組:商戶信息特征、交易流水特征、風控特征。
3.1商戶信息特征
商戶的基本信息中擁有大量描述字段,本文考慮其中能夠反映商戶規(guī)模、商戶忠誠度和經(jīng)營模式的特征,如入網(wǎng)時長反映了商戶的忠誠度,而連鎖門店數(shù)量反映了商戶的規(guī)模,詳細描述如下。
入網(wǎng)時長:入網(wǎng)日期是指商戶開始注冊使用目標產(chǎn)品的日期。入網(wǎng)時長是指商戶從入網(wǎng)日期到系統(tǒng)預警時間點的時間長度(單位:月),反映了商戶對于產(chǎn)品的忠誠度。給定入網(wǎng)日期ts,則入網(wǎng)時長表示為(t2-ts)/30.
連鎖門店數(shù)量:指該商戶旗下所有門店的總數(shù)量,反映了商戶規(guī)模。
系統(tǒng)預警次數(shù):指商戶在t-29至t0歷史時段內(nèi)被系統(tǒng)預警的總次數(shù)。對于不同類型的商戶,存在不同的經(jīng)營模式,如大多餐飲門店全周經(jīng)營,每天均存在交易,而4s店可能一周只有幾筆交易,會出現(xiàn)多次預警。
無交易天數(shù)占比由圖4可知,未流失樣本中位數(shù)顯著大于流失樣本,因此該特征具有一定的區(qū)分性。表1中無交易天數(shù)占比與流失的相關(guān)性系數(shù)為-0.11,該特征與流失呈負相關(guān),即無交易天數(shù)占比越高,越傾向于未流失。原因與系統(tǒng)預警次數(shù)中的情況相同,由于部分商戶的經(jīng)營模式不同,會經(jīng)常性地暫停營業(yè),造成一個月內(nèi)無交易天數(shù)較多。
信用卡支付金額占比由圖5可知,未流失樣本的中位數(shù)、上四分位數(shù)、上邊緣均大于流失樣本且差異較為顯著,因此該特征具有一定的區(qū)分性。表1中信用卡支付金額占比與流失的相關(guān)性系數(shù)為-0.14,該特征與流失呈現(xiàn)負相關(guān),信用卡支付金額占比越高的商戶越不傾向于流失。業(yè)務(wù)上認為,這是由于這類商戶具有比較穩(wěn)定的客源,一般經(jīng)營狀況良好,所以不容易流失。
5.3.2傳統(tǒng)機器學習模型實驗效果
為了驗證所提取的特征能夠有效地進行預測,本文選取邏輯回歸、隨機森林和XGBoost這3種傳統(tǒng)機器學習模型進行實驗。實驗在訓練集上使用5折交叉驗證對各模型進行超參數(shù)調(diào)優(yōu)。邏輯回歸模型的超參數(shù)設(shè)置為:正則化方法penalty='L2',正則項系數(shù)c=0.1,最大迭代次數(shù)ma34 iter=1 000,類別權(quán)重class weight='balanced',其余均使用默認參數(shù)。隨機森林模型的超參數(shù)設(shè)置為:決策樹數(shù)量n estimators=200,最大樹深度max depth=3,類別權(quán)重class weight='balanced',其余均使用默認參數(shù)。XGBoost模型的超參數(shù)設(shè)置為:決策樹數(shù)量n estimators=200,最大樹深度mad(depth=3,類別權(quán)重scale pos weight=2.5,其余均使用默認參數(shù)。
各模型所得結(jié)果如圖6所示。由于邏輯回歸是簡單的線性模型,因此得到3個模型中最低的AUC值0.747,隨機森林和XGBoost的AUC值分別為O。779和0.789.與隨機森林相比,XGBoost具有以下3個優(yōu)點:①在損失函數(shù)里引入了正則項控制模型復雜度;②優(yōu)化時對損失函數(shù)進行了2階泰勒展開;③使用shrinkage機制防止過擬合,因此取得了3個模型中最好的結(jié)果。XGBoost支持查看特征的重要性系數(shù),表2列舉了重要性系數(shù)最高的4個特征和對應(yīng)的相關(guān)系數(shù)。無交易天數(shù)占比獲得了最高的重要性系數(shù),其相關(guān)性和業(yè)務(wù)解釋在上文中已做了詳細分析;休息日獲得了第二高的重要性系數(shù),與類別的相關(guān)系數(shù)為0.14,呈現(xiàn)負相關(guān),這表示若商戶的系統(tǒng)預警時間點為休息日,更可能是由于假期或周末暫停營業(yè),傾向于未流失;連鎖門店數(shù)量的重要性系數(shù)排第三位,呈現(xiàn)負相關(guān)性,其特征反映的是商戶的經(jīng)營規(guī)模,值越高表示商戶規(guī)模越大,經(jīng)營狀況更加平穩(wěn),更不傾向于流失;平均交易筆數(shù)與流失呈現(xiàn)正相關(guān)性,表示該值越大,則越傾向于流失。這是由于數(shù)據(jù)集中餐飲行業(yè)的占比較大,經(jīng)過數(shù)據(jù)分析,餐飲行業(yè)的流失率遠大于其他行業(yè),而餐飲行業(yè)表現(xiàn)為高頻次的交易,所以造成該特征與流失的正相關(guān)性。
5.4基于時序數(shù)據(jù)的實驗
為了驗證交易流水數(shù)據(jù)的時序性以及對時間間隔的敏感性,本文將時序特征V輸入一系列時間序列模型進行了實驗。模型選擇LSTM、Bi-LSTM、T-LSTM及對應(yīng)的自編碼器,為公平起見,各模型使用了相同的參數(shù)設(shè)置。在LSTM、Bi-LSTM、T-LSTM中,遞歸網(wǎng)絡(luò)中隱藏層單元數(shù)units=64,激活函數(shù)activation=-relu',返回序列return sequence=False,再通過一層全連接網(wǎng)絡(luò)輸出預測結(jié)果,激活函數(shù)activation=sigmoid',模型的損失函數(shù)loss=binary crossenrtopy',優(yōu)化函數(shù)optimizer=-adam'。在自編碼器模型中,編碼單元參數(shù)與上述網(wǎng)絡(luò)一致,解碼單元參數(shù)為隱藏層單元數(shù)units=64,激活函數(shù)activation=relu',返回序列return sequence=True,通過層封裝器TimeDistributed結(jié)合全連接層Dense輸出30x2維的序列數(shù)據(jù)。模型的損失函數(shù)loss='mse'。使用自編碼器得到的表征進行分類時,模型選用一層的全連接網(wǎng)絡(luò),激活函數(shù)activation=sigmoid',損失函數(shù)loss=binary crossenrtopy',優(yōu)化函數(shù)optimizer='adam'。對所有模型,訓練的迭代次數(shù)epochs=25,塊大小batch size=128.
模型所得結(jié)果如圖7所示。根據(jù)結(jié)果可以看出,在僅使用交易金額和交易筆數(shù)這兩個特征的情況下,所有模型的表現(xiàn)均優(yōu)于使用了包含流水信息和商戶信息的邏輯回歸模型,其中LSTM自編碼器和Bi-LSTM自編碼器的預測結(jié)果均優(yōu)于XGBoost模型。結(jié)果表明僅使用時序數(shù)據(jù)就能夠產(chǎn)生較好的預測結(jié)果。在LSTM、Bi-LSTM、T-LSTM模型中,T-LSTM模型取得最高的AUC值,驗證了實驗數(shù)據(jù)中時間間隔敏感性的假設(shè),將時間間隔特征加入模型能夠有效地提升預測結(jié)果的準確性。LSTM自編碼器、Bi-LSTM自編碼器和T-LSTM自編碼器的預測結(jié)果均優(yōu)于原始的LSTM、Bi-LSTM、T-LSTM模型,這表明使用自編碼器結(jié)構(gòu)能夠更好地學習到序列數(shù)據(jù)的表征。與圖6相比,本實驗不僅提高了預測結(jié)果的準確性,同時還避免了繁雜的特征工程,為商戶流失預測的研究提供了可行的方法。
5.5基于組合特征的實驗
為了能進一步提高預測結(jié)果的準確性,本文嘗試將特征工程方法和序列模型方法相結(jié)合。本實驗將特征V與自編碼器學習的表征(記為R)拼接在一起形成新的特征矩陣[V,R],再將這個特征矩陣放入XGBoost模型中進行最終的預測,實驗結(jié)果見圖8.由圖8可知模型效果略有提升。這表示可以采用模型集成的方法,將自編碼器學習出的表征與其他特征相結(jié)合,從而進一步提升預測結(jié)果。
6總結(jié)
為了準確預測流失商戶,本文根據(jù)商戶信息和交易流水數(shù)據(jù)提出了與商戶流失相關(guān)的3類特征,實驗證明所提特征既能獲得較好的預測結(jié)果,又具有可解釋性。同時本文根據(jù)交易流水數(shù)據(jù)提取了時序特征,使用時間序列模型獲得了更好的預測結(jié)果。最后使用了模型集成的方法將兩種方案結(jié)合,進一步提升了預測結(jié)果的準確性。在未來的研究中,考慮將行業(yè)信息引入時間序列模型,使模型同時擁有時間敏感性和行業(yè)敏感性,并將考慮時間序列模型在商戶流失預測中的可解釋性。