陳浩陽 曾誠
摘 要:為了建立更加完善的特征體系和優(yōu)化預(yù)測模型,提出優(yōu)化特征工程體系,增加特征值數(shù)量,并改進(jìn)傳統(tǒng)邏輯回歸預(yù)測模型,使用GBDT+邏輯回歸的組合模型及XGBoost+邏輯回歸的組合模型達(dá)到提高預(yù)測精度、提升模型預(yù)測能力的目的。實(shí)驗(yàn)結(jié)果證明,通過優(yōu)化特征工程體系和改進(jìn)預(yù)測模型解決O2O優(yōu)惠券發(fā)放這種預(yù)測方式可以更準(zhǔn)確地預(yù)測消費(fèi)者的消費(fèi)行為,為優(yōu)惠券的個(gè)性化投放提供可靠的決策支持。
關(guān)鍵詞:O2O;特征工程;邏輯回歸;GBDT;XGBoost;預(yù)測模型
中圖分類號(hào):TP39文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2095-1302(2019)12-00-04
0 引 言
本課題基于商業(yè)O2O優(yōu)惠券發(fā)放問題與機(jī)器學(xué)習(xí)相結(jié)合,使用經(jīng)過特征提取的往期數(shù)據(jù)訓(xùn)練數(shù)學(xué)模型,通過訓(xùn)練好的數(shù)學(xué)模型對(duì)優(yōu)惠券核銷二分類問題進(jìn)行精準(zhǔn)預(yù)測。隨機(jī)投放優(yōu)惠券這種行為方式不僅會(huì)對(duì)無需求的用戶造成無意義的干擾,還可能致使商家品牌聲譽(yù)降低、營銷成本增高。個(gè)性化投放是提高優(yōu)惠券核銷率的重要技術(shù)[1],利用該技術(shù)不僅可以讓具有一定偏好的消費(fèi)者從中獲利,同時(shí)還可以使商家獲得更好的營銷效果。數(shù)據(jù)來源于天池大數(shù)據(jù)比賽《生活大實(shí)惠:O2O優(yōu)惠券使用預(yù)測》,比賽提供O2O相關(guān)場景的豐富數(shù)據(jù),通過分析建模,精準(zhǔn)預(yù)測用戶是否會(huì)在規(guī)定時(shí)間內(nèi)使用相應(yīng)優(yōu)惠券。
1 研究背景及意義
O2O是Online To Offline(在線離線/線上線下)的簡稱,是將線下商業(yè)機(jī)會(huì)與線上平臺(tái)相結(jié)合的一種電商發(fā)展方式[2],將線上平臺(tái)作為線下消費(fèi)的前站。為了吸引互聯(lián)網(wǎng)用戶在線上瀏覽商業(yè)信息,商家采取發(fā)送優(yōu)惠券(團(tuán)購,如GroupOn)、提供優(yōu)惠信息、服務(wù)(預(yù)定,如Opentable)等方式吸引顧客[3]。線下商店推送的消息會(huì)被互聯(lián)網(wǎng)用戶收到,從而增大網(wǎng)民轉(zhuǎn)化為自家店鋪線下消費(fèi)者的幾率。同時(shí)店鋪的線下服務(wù)可以用于線上攬客,消費(fèi)者又可以從線上平臺(tái)篩選線下服務(wù),并在線結(jié)算,店鋪能夠很快達(dá)到規(guī)模[4]。
該模式最重要的特點(diǎn)是推廣效果可觀,交易流水可跟蹤。O2O作為下一代新興電子商務(wù)模式,其使命是把電子商務(wù)的效力引入目前消費(fèi)中占比90%以上的本地消費(fèi)中去[5-6]。除此之外,線上與線下的對(duì)接將打破電商、店商擠兌份額的競爭格局,兩者將化敵為友,相互彌補(bǔ)、相互促進(jìn),并且使整體消費(fèi)市場迎來一個(gè)全新發(fā)展的局面。
2 研究現(xiàn)狀
很多學(xué)者對(duì)消費(fèi)預(yù)測問題進(jìn)行了研究,例如Zhu Zhenfeng等(2018)基于傳統(tǒng)GBDT(Gradient Boosting Decision Tree)算法,提出了一種具有層次化集成的改進(jìn)預(yù)測模型(HGBDT)。該模型通過分析往期商品數(shù)據(jù)來預(yù)測商品未來的銷售趨勢[7]。Jain(2017)等通過使用XGBoost(eXtreme Gradient Boosting)模型來預(yù)測和估計(jì)歐洲主要藥店的零售額。與傳統(tǒng)的回歸算法相比,XGBoost模型算法性能優(yōu)于傳統(tǒng)的建模方法[8]。國內(nèi)學(xué)者郭倩(2018)對(duì)農(nóng)村人均生活消費(fèi)進(jìn)行預(yù)測,運(yùn)用BP神經(jīng)網(wǎng)絡(luò)對(duì)農(nóng)村居民的人均消費(fèi)支出進(jìn)行分析,結(jié)合數(shù)據(jù)擬合和精度檢驗(yàn),對(duì)農(nóng)村居民未來三年的生活消費(fèi)支出進(jìn)行預(yù)測[9]。學(xué)者魏艷華(2015)通過對(duì)甘肅省農(nóng)村居民在1978~2011年中支出與收入的數(shù)據(jù)進(jìn)行分析,建立以ARIMAX模型為基礎(chǔ)的消費(fèi)支出預(yù)測模型,通過此模型對(duì)甘肅省農(nóng)村居民未來一年的消費(fèi)支出進(jìn)行了預(yù)測研究[10]。Qiumei Pu使用XGBoost模型對(duì)陜西省氣象干旱情況進(jìn)行預(yù)測,分別以人工神經(jīng)網(wǎng)絡(luò)算法和XGBoost算法構(gòu)建數(shù)學(xué)模型,預(yù)測結(jié)果表明XGBoost模型比DLNM和人工神經(jīng)網(wǎng)絡(luò)能更精確地預(yù)測SPEI[11]。Junqi Guo等學(xué)者在研究青少年身體體質(zhì)情況時(shí),使用XGBoost算法對(duì)每個(gè)青少年的身體健康水平進(jìn)行分類,并通過貝葉斯優(yōu)化自適應(yīng)調(diào)整參數(shù)。實(shí)驗(yàn)結(jié)果表明,該模型不僅比現(xiàn)有參考模型具有更高的評(píng)估精度,相較于傳統(tǒng)的經(jīng)驗(yàn)?zāi)P?,通過XGBoost模型可以更好地為未來青少年的體質(zhì)評(píng)估提供有效的解決方案[12]。
由上述論述可知,邏輯回歸、GBDT及XGBoost模型早已被用于實(shí)際應(yīng)用中,很多學(xué)者在各領(lǐng)域中的研究均使用了這幾種模型和兩兩融合后的模型,預(yù)測效果得到顯著提升。在商品預(yù)測領(lǐng)域,這些模型在顧客行為和數(shù)據(jù)挖掘競賽中得到了深度使用[13]。將數(shù)學(xué)模型引入實(shí)際問題進(jìn)行分析研究已成為預(yù)測產(chǎn)業(yè)發(fā)展走向的一種新的研究方式,并且在實(shí)際預(yù)測中得到了驗(yàn)證[14]。
3 研究路線
本文利用天池大數(shù)據(jù)眾智平臺(tái)賽題《生活大實(shí)惠:O2O優(yōu)惠券使用預(yù)測》中的真實(shí)消費(fèi)者行為數(shù)據(jù)進(jìn)行研究的步驟如下:
(1)對(duì)原始數(shù)據(jù)集中的字段進(jìn)行解釋、數(shù)據(jù)探查、數(shù)據(jù)處理等操作。
(2)利用特征工程對(duì)線下消費(fèi)和優(yōu)惠券領(lǐng)取行為數(shù)據(jù)集構(gòu)造提取出用戶(User)、商家(Merchan)、優(yōu)惠券(Coupon)、用戶-商家(User-Merchan)、其他特征(Other)等五大特征群,共96個(gè)特征值的線下特征集,再利用特征工程對(duì)用戶線上點(diǎn)擊/消費(fèi)和優(yōu)惠券領(lǐng)取行為數(shù)據(jù)集構(gòu)造提取出13個(gè)用戶(User)特征值的線上特征集。
(3)通過線下特征集共96個(gè)特征值及線上和線下特征集共109個(gè)特征值,構(gòu)建兩組不同的預(yù)測模型。
研究流程如圖1所示。
4 數(shù)據(jù)處理
4.1 數(shù)據(jù)介紹
根據(jù)天池大數(shù)據(jù)眾智平臺(tái)賽題《生活大實(shí)惠:O2O優(yōu)惠券使用預(yù)測》提供的相關(guān)真實(shí)消費(fèi)數(shù)據(jù):2016年1月1日至2016年6月30日,O2O場景相關(guān)的消費(fèi)者線上和線下發(fā)生行為數(shù)據(jù),通過訓(xùn)練模型預(yù)測2016年7月1日至2016年7月31日消費(fèi)者領(lǐng)取優(yōu)惠券后15天內(nèi)優(yōu)惠券的核銷情況。
模型預(yù)測結(jié)果的評(píng)判標(biāo)準(zhǔn):使用數(shù)學(xué)模型對(duì)優(yōu)惠券預(yù)測的概率值取平均AUC值。
賽題共提供4個(gè)數(shù)據(jù)集,分別對(duì)4個(gè)數(shù)據(jù)集進(jìn)行數(shù)據(jù)分析。
用戶線下消費(fèi)和優(yōu)惠券領(lǐng)取行為數(shù)據(jù)集(后面稱為線下數(shù)據(jù)集)中共有1 754 884條消費(fèi)者行為數(shù)據(jù),其中1 053 282條數(shù)據(jù)對(duì)優(yōu)惠券有操作行為,包含539 438個(gè)用戶,8 415個(gè)商家,9 738種優(yōu)惠券,消費(fèi)者領(lǐng)取優(yōu)惠券的日期為2016年1月1日至2016年6月15日,消費(fèi)者的消費(fèi)日期為2016年1月1日至2016年6月30日。
用戶線上點(diǎn)擊/消費(fèi)和優(yōu)惠券領(lǐng)取行為數(shù)據(jù)集(后面稱為線上數(shù)據(jù)集)中共有11 429 826條數(shù)據(jù),其中872 357條數(shù)據(jù)有優(yōu)惠券ID,表明消費(fèi)者對(duì)優(yōu)惠券有操作行為,線上數(shù)據(jù)集中含762 858個(gè)用戶(其中267 448用戶在線下集)。
用戶O2O線下優(yōu)惠券使用預(yù)測集(后面稱為預(yù)測集)中包含2 050種優(yōu)惠券,領(lǐng)取日期為2016年7月1日至2016年7月31日,有76 309個(gè)用戶(其中76 307個(gè)在線下數(shù)據(jù)集,35 965個(gè)在線上數(shù)據(jù)集,線上與線下數(shù)據(jù)集中存在用戶交叉),1 559家商鋪(其中1 558家在用戶線下數(shù)據(jù)集)。
預(yù)測集提交字段和字段說明,選手提交文件字段。其中use_id,coupon_id與date_received均來自數(shù)據(jù)集,Probability字段為通過機(jī)器學(xué)習(xí)建立數(shù)學(xué)模型預(yù)測得到的預(yù)測值。
4.2 特征工程
“數(shù)據(jù)決定了機(jī)器學(xué)習(xí)的上限,而算法只是盡可能逼近這個(gè)上限”[15],這句話中數(shù)據(jù)的含義是對(duì)原始數(shù)據(jù)經(jīng)特征工程轉(zhuǎn)換和處理等一系列操作而得到的數(shù)據(jù)。特征工程流程如圖2所示。
圖3所示為特征群分布情況。
5 算法介紹
本文所使用的算法為邏輯規(guī)模,GBDT,XGBoost。
5.1 邏輯回歸
Logistic回歸是一種廣義線性回歸(Generalized Linear Model),它是一個(gè)分類算法而不是回歸算法[16]。其核心思想是:線性回歸的輸出結(jié)果是一個(gè)連續(xù)且范圍無法確定的值,如果出現(xiàn)需要利用結(jié)果值映射為判斷結(jié)果的情況,并且輸出結(jié)果是一個(gè)概率值,則可通過Sigmoid函數(shù)確定,所以Logistic函數(shù)又稱Sigmoid函數(shù)。Sigmoid函數(shù)曲線如圖4所示。
通常情況下,將一個(gè)已知的自變量預(yù)測成一個(gè)離散型因變量的值(如二進(jìn)制值0/1,對(duì)/錯(cuò),男/女)??煽紤]利用邏輯函數(shù)(logit fuction)建立的數(shù)學(xué)模型對(duì)事件發(fā)生的概率進(jìn)行計(jì)算,得到一個(gè)預(yù)估值。而該預(yù)估值一般為概率值,因此輸出結(jié)果值在0~1范圍內(nèi)。
5.2 GBDT
GBDT(Gradient Boosting Decision Tree)是一種基于迭代構(gòu)造的決策樹算法,該算法是將決策樹賦予集成算法思想得到的一種數(shù)學(xué)模型?;貧w決策樹、Gradient Boosting與縮減共同組成了GBDT模型[1]。
5.2.1 回歸決策樹
GBDT模型中的決策樹為回歸決策樹,而非分類決策樹?;貧w決策樹可預(yù)測數(shù)值,如員工薪金、大樹高度等,對(duì)回歸樹得到的數(shù)值進(jìn)行加減計(jì)算是有意義的,例如12歲+4歲-4歲=12歲,而這也是回歸樹區(qū)別于分類樹的一個(gè)顯著特征。GBDT正是利用回歸樹得到數(shù)值的性質(zhì),匯總所有樹的結(jié)果,從而輸出最終結(jié)果。
5.2.2 梯度上升
“Boosting”意為迭代,迭代多棵樹對(duì)結(jié)果值進(jìn)行共同決策[17]。采用弱學(xué)習(xí)器的結(jié)論進(jìn)行綜合評(píng)判,進(jìn)而得到GBDT模型。整個(gè)過程采用增量思想對(duì)每個(gè)弱學(xué)習(xí)器進(jìn)行累加。
5.2.3 縮減
縮減(Shrinkage)的思想:逐漸逼近實(shí)際結(jié)果值,該操作方式比快速逼近結(jié)果值的方式更容易降低出現(xiàn)過擬合的概率。因?yàn)槊恳粋€(gè)殘差弱學(xué)習(xí)器只學(xué)到了真理的一小部分,并且都有可能出現(xiàn)過擬合現(xiàn)象,但在這個(gè)學(xué)習(xí)過程中增加弱學(xué)習(xí)器的數(shù)量,使用多個(gè)弱學(xué)習(xí)器進(jìn)行學(xué)習(xí)可以彌補(bǔ)上述不足。
5.3 XGBoost
GBDT算法的運(yùn)行往往要生成一定數(shù)量的樹才能達(dá)到令人滿意的準(zhǔn)確率。當(dāng)面對(duì)的數(shù)據(jù)集結(jié)果較為龐大且復(fù)雜時(shí),可能需要進(jìn)行上千次迭代運(yùn)算,還會(huì)造成一定的計(jì)算瓶頸,并增加計(jì)算空間的消耗。華盛頓大學(xué)的陳天奇博士研發(fā)出的XGBoost(eXtreme Gradient Boosting)解決了這一技術(shù)難點(diǎn),此算法基于Gradient Boosting Machine框架,并使用c++實(shí)現(xiàn),從而極大地提升了模型訓(xùn)練速度和預(yù)測精度[18]。
XGBoost是一個(gè)優(yōu)化的分布式梯度增強(qiáng)庫,作為GBDT模型的升級(jí)版,集高效性、靈活性和便攜性等特點(diǎn)于一身。利用XGBoost模型可以在較短周期內(nèi)解決數(shù)據(jù)科學(xué)問題,得到較高精度的實(shí)驗(yàn)結(jié)果。利用XGBoost算法構(gòu)建的數(shù)學(xué)模型單臺(tái)機(jī)運(yùn)行速度比當(dāng)下使用的數(shù)學(xué)模型訓(xùn)練速度快十倍以上,并且當(dāng)分布式模式或內(nèi)存設(shè)置需要限制時(shí)仍可獲得較為準(zhǔn)確的實(shí)驗(yàn)結(jié)果。
6 實(shí)驗(yàn)結(jié)果
6.1 評(píng)判標(biāo)準(zhǔn)
在一些二分類問題中給出預(yù)測結(jié)果的同時(shí)也會(huì)給出相應(yīng)的預(yù)測概率,例如假定0.6為正確的判定閾值,那么若預(yù)測概率大于0.7,則判定為正確值,否則為錯(cuò)誤值;若閾值降低到0.5,則可以判斷出更多的正確值。數(shù)據(jù)中正確數(shù)占比提高的同時(shí),也導(dǎo)致實(shí)際為真實(shí)值但判定為錯(cuò)誤值的數(shù)量的升高。為了直觀表示該變化,引入ROC(Receiver Operating Characteristic Curve)。ROC曲線的橫坐標(biāo)為FPR,縱坐標(biāo)為TPR,ROC曲線下的面積即為AUC[19]。
6.2 實(shí)驗(yàn)結(jié)果分析
通過提取特征數(shù)量和不同模型兩個(gè)角度總結(jié)實(shí)驗(yàn)。
6.2.1 從特征數(shù)量分析實(shí)驗(yàn)結(jié)果
通過圖5可以看到,邏輯回歸、GBDT+邏輯回歸融合模型、XGBoost單模型僅含受線下特征集訓(xùn)練后的預(yù)測效果,沒有經(jīng)線下和線上特征訓(xùn)練后模型的預(yù)測效果好。說明特征數(shù)量適量增加可以提升數(shù)學(xué)模型的預(yù)測能力和實(shí)驗(yàn)效果。
6.2.2 從模型的角度分析實(shí)驗(yàn)結(jié)果
經(jīng)過線上和線下特征模型訓(xùn)練,XGBoost模型的預(yù)測效果最好,GBDT+邏輯回歸模型的效果次之,邏輯回歸模型的預(yù)測效果相對(duì)較差。在經(jīng)線下模型的特征模型訓(xùn)練后,GBDT+邏輯回歸模型的預(yù)測效果最好,XGBoost模型的預(yù)測效果次之,邏輯回歸模型的預(yù)測效果相比較差。說明先利用訓(xùn)練完成的GBDT模型輸出邏輯回歸模型訓(xùn)練所需要的實(shí)驗(yàn)結(jié)果和實(shí)驗(yàn)結(jié)果值,再將這些實(shí)驗(yàn)結(jié)果和實(shí)驗(yàn)結(jié)果值作為訓(xùn)練邏輯回歸模型的特征值輸入到邏輯回歸模型中進(jìn)行學(xué)習(xí)后,預(yù)測效率得到明顯提高。但總體來說,GBDT+邏輯回歸,XGBoost模型對(duì)此課題的預(yù)測有較好的準(zhǔn)確性和穩(wěn)定性。并且使用GBDT+邏輯回歸模型比傳統(tǒng)邏輯回歸模型有更好的預(yù)測效果、更高的預(yù)測精度。GBDT+邏輯回歸,XGBoost模型是比較理想的消費(fèi)預(yù)測研究模型。圖6所示為不同模型對(duì)比預(yù)測集提交測試AUC值。
7 結(jié) 語
本論文研究基于簡單的集成模型,以O(shè)2O優(yōu)惠券為數(shù)據(jù)載體對(duì)消費(fèi)者領(lǐng)取優(yōu)惠券(15天內(nèi))后對(duì)優(yōu)惠券是否核銷進(jìn)行了精確預(yù)測。采用簡單的集成學(xué)習(xí)模型預(yù)測用戶在領(lǐng)取優(yōu)惠券后15天內(nèi)的使用情況。
除此之外,對(duì)于大量往期數(shù)據(jù),實(shí)際數(shù)據(jù)中無實(shí)際特征可直接使用,但這些數(shù)據(jù)中含有大量可以提取的特征,所以如何科學(xué)合理地利用應(yīng)用特征工程是一個(gè)重點(diǎn)問題。如果沒有合理的特征工程,將極大地限制數(shù)學(xué)模型預(yù)測精度的提高。
在科技越來越發(fā)達(dá)的今天,數(shù)學(xué)模型已被大量用于醫(yī)療、餐飲、工業(yè)等領(lǐng)域,比如在醫(yī)學(xué)中使用數(shù)學(xué)模型對(duì)人體檢測數(shù)據(jù)進(jìn)行掃描,使用數(shù)學(xué)模型預(yù)測餐飲店中的消費(fèi)人數(shù)等。通過這種方式,精確預(yù)測行業(yè)運(yùn)營及行業(yè)日常的管理對(duì)于后期事物的良性發(fā)展具有重要意義。
參 考 文 獻(xiàn)
[1] Keepreder. GBDT(MART) 迭代決策樹入門教程 | 簡介[OL]. https: //blog.csdn.net/keepreder/article/details/47259241
[2]朱妮.大數(shù)據(jù)時(shí)代下O2O營銷模式創(chuàng)新研究[J].電子商務(wù),2019(3):42-43.
[3]劉赟.我國實(shí)體零售業(yè)O2O模式轉(zhuǎn)型發(fā)展分析[J].商業(yè)經(jīng)濟(jì)研究,2017(2):17-20.
[4]林曉丹,宋驍.O2O團(tuán)購商業(yè)模式發(fā)展現(xiàn)狀及對(duì)策淺析[J].中國管理信息化,2015,18(11):181-182.
[5]劉欣梅.O2O:本地生活服務(wù)業(yè)電子商務(wù)發(fā)展之路探究[J].經(jīng)濟(jì)研究導(dǎo)刊,2014(1):103-104.
[6]吳鵬飛.基于大數(shù)據(jù)的O2O營銷模型研究[J].財(cái)訊,2017(5):91-92.
[7] ZHU Z F,TANG J Y,CHANG D X,et al. GBDT based hierarchical model for commodity distribution prediction [J]. Journal of Beijing Jiaotong University,2018,42(2):9.
[8] JAIN A,MENON MN,CHANDRA S.Sales Forecasting for Retail Chains [Z]. 2017.
[9]郭倩,王效俐.基于BP神經(jīng)網(wǎng)絡(luò)的農(nóng)村人均生活消費(fèi)預(yù)測[J].商業(yè)經(jīng)濟(jì),2018(2):80-83.
[10]魏艷華,王丙參.基于ARIMAX模型的甘肅農(nóng)村居民消費(fèi)預(yù)測與決策[J].天水師范學(xué)院學(xué)報(bào),2015,35(2):3-7.
[11] ZHANG R,CHEN Z Y ,XU L J,et al.Meteorological drought forecasting based on a statistical model with machine learning techniques in Shaanxi province [J]. Science of the total environment,2019:338-346.
[12] GUO J Q, DAI Y Z, WANG C X,et al.A data-driven framework for learners cognitive load detection using ECG-PPG physiological feature fusion and XGBoost classification [Z].
[13]葉倩怡.基于XGBoost方法的實(shí)體零售業(yè)銷售額預(yù)測研究[D].南昌:南昌大學(xué),2016.
[14]中國信息化編輯部.2018實(shí)體經(jīng)濟(jì)與數(shù)字經(jīng)濟(jì)在融合中發(fā)展[J].中國信息化,2019(1):16-37.
[15]佚名.自動(dòng)化技術(shù)、計(jì)算機(jī)技術(shù)[J].中國無線電電子學(xué)文摘,2011,27(2):166-241.
[16]單麗莉,林磊,孫承杰.基于異構(gòu)信息融合的廣告響應(yīng)預(yù)測方法[J].中國科學(xué):信息科學(xué),2019,49(1):17-41.
[17]劉高軍,李越洋.基于借閱信息的圖書個(gè)性化推薦算法研究[J].數(shù)字技術(shù)與應(yīng)用,2017(3):156-158.
[18] CHEN T,GUESTRIN C.XGBoost:A scalable tree boosting system [Z]. 2016.
[19]雷一鳴,趙希梅,王國棟,等.基于一種改進(jìn)的LBP算法和超限學(xué)習(xí)機(jī)的肝硬化識(shí)別[J].計(jì)算機(jī)科學(xué),2017,44(10):45-50.