王克利 鄧飛其
【摘要】淘寶網(wǎng)站能夠收集到海量用戶的購(gòu)物行為日志,它使得掌握用戶的購(gòu)物偏好成為了可能。盡管用戶的購(gòu)買(mǎi)模式具有高度的多樣性和自由性,但是周期性的購(gòu)買(mǎi)是非常頻繁的現(xiàn)象。因此尋找用戶的周期行為對(duì)了解用戶對(duì)商戶的偏好非常重要。本文基于2017年阿里巴巴競(jìng)賽所獲得的數(shù)據(jù),從海量的購(gòu)物行為數(shù)據(jù)中挖掘了用戶特征、商戶特征和用戶-商戶特征,對(duì)尋常情境下新用戶未來(lái)在同一家店鋪再次購(gòu)買(mǎi)行為的預(yù)測(cè)進(jìn)行了研究。此外,針對(duì)訓(xùn)練數(shù)據(jù)中類(lèi)別及不平衡的問(wèn)題,提出隨機(jī)抽樣并賦予各類(lèi)別不同權(quán)重相結(jié)合的策略,并基于該策略將訓(xùn)練樣本劃分為6組,分別用SVM與隨機(jī)森林訓(xùn)練多個(gè)預(yù)測(cè)模型。最后,通過(guò)集成將這多個(gè)預(yù)測(cè)模型共同進(jìn)行預(yù)測(cè)。通過(guò)實(shí)驗(yàn)驗(yàn)證,所提出的組合預(yù)測(cè)方法具有很高的有效性。
【關(guān)鍵詞】組合預(yù)測(cè)方法 SVM模型 隨機(jī)森林 集成學(xué)習(xí) 客戶重復(fù)購(gòu)買(mǎi)
一、引言
隨著人類(lèi)進(jìn)入信息時(shí)代的步伐加快,電子商務(wù)網(wǎng)站也越來(lái)越流行。截至2017年6月,中國(guó)網(wǎng)民規(guī)模達(dá)7.51億,其中網(wǎng)絡(luò)購(gòu)物用戶規(guī)模達(dá)到5.14億。商家為了發(fā)展忠誠(chéng)的客戶,有時(shí)在特定日期(例如,“雙11(11月11日)”)進(jìn)行大型促銷(xiāo)以吸引大量的新買(mǎi)家,但是許多吸引的買(mǎi)家是一次性的交易獵手,這些促銷(xiāo)活動(dòng)對(duì)銷(xiāo)售可能沒(méi)有長(zhǎng)期的影響,因此為了大大降低促銷(xiāo)成本提高投資回報(bào)率(ROI),商家必須確定誰(shuí)可以轉(zhuǎn)化為重復(fù)的買(mǎi)家。本文基于424170個(gè)不同的用戶、4995個(gè)不同的商戶從某年5月11日到11月12日在天貓的約5000萬(wàn)條海量行為日志,建立用戶的商戶偏好,進(jìn)行商戶篩選并預(yù)測(cè)他們?cè)谖磥?lái)6個(gè)月內(nèi)再次在同一個(gè)商戶的購(gòu)買(mǎi)行為。
傳統(tǒng)的用戶興趣度估計(jì)方法有:王微微等結(jié)合用戶的瀏覽內(nèi)容,采用期望最大化算法實(shí)現(xiàn)用戶聚類(lèi),將用戶劃分到對(duì)應(yīng)的簇,創(chuàng)建用戶的興趣度模型。但是聚類(lèi)可能收斂到局部最小值,在大規(guī)模的數(shù)據(jù)集上收斂的較慢,而且運(yùn)用期望不能準(zhǔn)確的預(yù)測(cè)用戶的重復(fù)購(gòu)買(mǎi)行為。
本文根據(jù)用戶對(duì)商戶的行為數(shù)據(jù)進(jìn)行研究,提取了用戶對(duì)商戶的重要行為特征。根據(jù)這些特征,我們分別基于隨機(jī)森林和SVM構(gòu)造了分類(lèi)模型。對(duì)新用戶未來(lái)六個(gè)月內(nèi)是否會(huì)再購(gòu)買(mǎi)該商戶的商品進(jìn)行預(yù)測(cè),并實(shí)現(xiàn)了理想的預(yù)測(cè)結(jié)果。經(jīng)研究發(fā)現(xiàn),對(duì)于用戶海量購(gòu)物行為數(shù)據(jù),若提取重要的特征信息,對(duì)于準(zhǔn)確預(yù)測(cè)該用戶的行為取向具有重要的現(xiàn)實(shí)意義。針對(duì)訓(xùn)練數(shù)據(jù)中類(lèi)別及不平衡的問(wèn)題,我們對(duì)負(fù)樣本進(jìn)行隨機(jī)欠采樣,對(duì)正樣本進(jìn)行隨機(jī)過(guò)采樣。最后,通過(guò)集成將這多個(gè)預(yù)測(cè)模型共同進(jìn)行預(yù)測(cè)如圖1所示:
二、模型算法
(一)SVM原理介紹
支持向量機(jī)的主要理念可以概括為兩點(diǎn):第一,通過(guò)學(xué)習(xí)尋找最優(yōu)的分割超平面使得兩類(lèi)之間的分割距離最大;第二,基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化的理論去特征空間中找最優(yōu)的超平面。當(dāng)支持向量機(jī)用于解決非線性問(wèn)題時(shí),這個(gè)方法是通過(guò)非線性映射將樣本空間映射到高維空間中或是無(wú)限維度的特征空間以至線性支持向量機(jī)的方法可用于求解非線性樣本空間中的分類(lèi)問(wèn)題。從樣本空間到特征空間的非線性映射如圖2。
(二)隨機(jī)森林原理
訓(xùn)練過(guò)程是從樹(shù)根節(jié)點(diǎn)開(kāi)始,遞歸學(xué)習(xí)最優(yōu)的分裂函數(shù)來(lái)劃分該節(jié)點(diǎn)上的樣本,使得新生成的孩子節(jié)點(diǎn)上樣本純度不斷增加,直到滿足下列條件之一:(a)達(dá)到樹(shù)生成的最大深度;(b)節(jié)點(diǎn)樣本純度達(dá)到要求;(c)節(jié)點(diǎn)上樣本數(shù)目達(dá)到最小值。因此可使用該模型進(jìn)行分類(lèi)預(yù)測(cè)。
(三)集成原理
集成學(xué)習(xí)通過(guò)將多個(gè)分類(lèi)器進(jìn)行結(jié)合,獲得比單一分類(lèi)器顯著優(yōu)越的泛化性能。為了使集成的分類(lèi)器獲得盡可能好的性能,應(yīng)該使單個(gè)分類(lèi)器間盡可能呈現(xiàn)多樣性。為獲取分類(lèi)器的多樣性,我們的工作主要從三個(gè)方面進(jìn)行:
第一,使用不完全相同的訓(xùn)練樣本訓(xùn)練分類(lèi)器;
第二,使用不同的分類(lèi)器模型進(jìn)行訓(xùn)練,我們選擇SVM和隨機(jī)森林這兩類(lèi)優(yōu)秀的分類(lèi)器;
第三,設(shè)置分類(lèi)器不同的參數(shù)進(jìn)行訓(xùn)練。具體而言,我們將訓(xùn)練3個(gè)SVM模型和3個(gè)隨機(jī)森林模型,并且每一個(gè)模型所設(shè)置的參數(shù)都不一致。在預(yù)測(cè)階段,我們將每個(gè)分類(lèi)器的輸出值進(jìn)行簡(jiǎn)單評(píng)價(jià)獲得最終的預(yù)測(cè)結(jié)果。
三、實(shí)證分析
阿里巴巴大數(shù)據(jù)競(jìng)賽是阿里巴巴集團(tuán)主辦,在阿里巴巴大數(shù)據(jù)科研平臺(tái)—“天池”上開(kāi)展的基于“天貓”(購(gòu)物網(wǎng)站)海量真實(shí)用戶訪問(wèn)數(shù)據(jù)的Repeat Buyers Prediction-Challenge the Baseline大賽。阿里巴巴大數(shù)據(jù)競(jìng)賽官方提供了某年5月到11月天貓部分購(gòu)物行為數(shù)據(jù)。在競(jìng)賽官方網(wǎng)站上提供的數(shù)據(jù)有9類(lèi),分別為用戶ID、商品ID、類(lèi)別ID、商戶ID、品牌ID、用戶年齡、用戶性別、用戶對(duì)商戶的行為和操作時(shí)間。
其中,用戶對(duì)商戶行為類(lèi)型包括點(diǎn)擊、加入購(gòu)物車(chē)、購(gòu)買(mǎi)和收藏4種。操作時(shí)間隱藏了年份但精確到了天的級(jí)別。每個(gè)商品ID僅限一家商戶所用。每個(gè)用戶ID對(duì)于相應(yīng)商戶都是新用戶。
(一)數(shù)據(jù)清洗及歸一化處理
在實(shí)驗(yàn)之前,需要對(duì)數(shù)據(jù)進(jìn)行清洗,使之有效。通過(guò)分析,我們對(duì)異常值做了處理:在所給數(shù)據(jù)中,我們將空值和記錄為NULL的值記為異常值。這種情況分別出現(xiàn)在用戶的年齡和性別中,為了提高預(yù)測(cè)的準(zhǔn)確性我們分別用年齡的平均值與性別的平均值來(lái)代替年齡與性別中的異常值。
選取的特征在尺度上可能存在很大的差別。假設(shè)特征向量由兩個(gè)解釋變量構(gòu)成,第一個(gè)變量值范圍[0,1],第二個(gè)變量值范圍[0,1000000],這時(shí)就要把第二個(gè)變量的值調(diào)整為[0,1],這樣才能保證數(shù)據(jù)是單位方差。如果變量特征值的量級(jí)比其他特征值的方差還大,這個(gè)特征值就會(huì)主導(dǎo)學(xué)習(xí)算法的方向,導(dǎo)致其它變量的影響被忽略。通過(guò)對(duì)所選特征的統(tǒng)計(jì)分析,我們計(jì)算了所有訓(xùn)練集中每一維特征的均值(圖4)和標(biāo)準(zhǔn)差(圖5),因?yàn)閿?shù)量級(jí)差別較大,為方便視圖我們?nèi)×藢?duì)數(shù)來(lái)作圖。
由圖5可知,這些維度特征的數(shù)量級(jí)差別較大。為了使分類(lèi)器的訓(xùn)練更加穩(wěn)定有效,我們對(duì)每一維特征都進(jìn)行了標(biāo)準(zhǔn)化處理,將其歸一化至“0”均值和“1”方差的分布。endprint
(二)處理類(lèi)別不平衡
為解決訓(xùn)練樣本類(lèi)別不平衡的問(wèn)題,研究者們過(guò)去進(jìn)行了大量的工作,主要可以概括為四個(gè)方面:
第一,對(duì)大類(lèi)別的樣本數(shù)據(jù)采用欠采樣的策略,減少大類(lèi)別的樣本數(shù)量,使得各個(gè)類(lèi)別的樣本數(shù)量均衡。
第二,使用一些策略人工生成一些小類(lèi)別的樣本數(shù)據(jù)。
第三,為各類(lèi)樣本賦予不同的權(quán)重值,對(duì)大類(lèi)賦予較小的權(quán)重,而對(duì)于小類(lèi)則賦予較大的權(quán)重,使得類(lèi)別在分布上達(dá)到平衡。
第四,對(duì)小類(lèi)別樣本數(shù)據(jù)進(jìn)行重復(fù)采樣以增加小類(lèi)別的樣本數(shù)量。
其中第一中的方法不失為一種簡(jiǎn)潔的策略,但是會(huì)造成樣本的極大浪費(fèi)。而第二中的方法通過(guò)人工生成樣本數(shù)據(jù)在一些情況下生成的數(shù)據(jù)真實(shí)可靠性有待評(píng)估,甚至在某些情況人工生成的樣本反而導(dǎo)致系統(tǒng)最終性能的下降。為不浪費(fèi)寶貴的訓(xùn)練數(shù)據(jù),充分發(fā)揮數(shù)據(jù)本身的價(jià)值。我們結(jié)合第二與第三中的方法,先對(duì)各類(lèi)別的樣本以不同的采樣系數(shù)進(jìn)行隨機(jī)抽樣,獲得6組訓(xùn)練集,然后對(duì)每組訓(xùn)練集中不同的類(lèi)別賦予不同的權(quán)重系數(shù)。然后使用這6組訓(xùn)練集訓(xùn)練不同的分類(lèi)器。在預(yù)測(cè)階段,平均各個(gè)分類(lèi)器的預(yù)測(cè)值獲得最終的預(yù)測(cè)。使用這種策略有兩個(gè)好處:一方面可以很好解決類(lèi)別不平衡的問(wèn)題,不至于浪費(fèi)樣本;另一方面,我們將訓(xùn)練樣本分成多組不同訓(xùn)練集訓(xùn)練分類(lèi)器,可以使得各分類(lèi)器間的多樣性更加豐富,最終使集成更加有效。
(三)特征分析
為分析用戶成為某一商店忠實(shí)客戶的概率,我們所選取的特征分為如下三類(lèi):基于用戶的特征、基于商戶的特征與基于用戶-商戶之間的特征。統(tǒng)計(jì)基于用戶的特征主要目的是分析用戶自身的偏好及購(gòu)物習(xí)慣;統(tǒng)計(jì)基于商戶的特征主要目的是分析商戶在當(dāng)前市場(chǎng)的受歡迎程度及商戶自身對(duì)忠實(shí)用戶的吸引力;統(tǒng)計(jì)用戶-商戶之間的特征主要目的是分析給定用戶及商戶之間所形成的關(guān)系,以得到更好的預(yù)測(cè)效果。具體提取的特征如表1:
(四)實(shí)驗(yàn)結(jié)果分析
我們所獲取的淘寶用戶行為記錄數(shù)據(jù)由天池競(jìng)賽平臺(tái)發(fā)布,其中帶有標(biāo)簽的訓(xùn)練數(shù)據(jù)中包括20萬(wàn)的負(fù)樣本和2萬(wàn)的正樣本。我們使用其中的10萬(wàn)負(fù)樣本和1萬(wàn)正樣本用于模型的訓(xùn)練,總共分成6組訓(xùn)練集訓(xùn)練6個(gè)分類(lèi)器模型,而剩余的樣本用于評(píng)估所訓(xùn)練的分類(lèi)器的預(yù)測(cè)性能。
基于表1所列的特征,我們分別訓(xùn)練了SVM和隨機(jī)森林預(yù)測(cè)模型,將未來(lái)半年新用戶是否會(huì)再次在同一家商戶購(gòu)買(mǎi)的問(wèn)題轉(zhuǎn)化為一個(gè)樣本分類(lèi)的問(wèn)題,這樣可以運(yùn)用機(jī)器學(xué)習(xí)的分類(lèi)算法來(lái)預(yù)測(cè)未來(lái)的購(gòu)買(mǎi)行為,最后運(yùn)用集成將分類(lèi)器的效果組合起來(lái)。
我們使用AUC來(lái)作為預(yù)測(cè)精度的指標(biāo)。統(tǒng)計(jì)一下所有的 M×N(M為正類(lèi)樣本的數(shù)目,N為負(fù)類(lèi)樣本的數(shù)目)個(gè)正負(fù)樣本對(duì)中,有多少個(gè)組中的正樣本的score大于負(fù)樣本的score。當(dāng)二元組中正負(fù)樣本的score相等的時(shí)候,按照0.5計(jì)算,然后除以MN。實(shí)現(xiàn)這個(gè)方法的復(fù)雜度為O(n^2),n為樣本數(shù)(即n=M+N)。
從實(shí)驗(yàn)結(jié)果中可以觀察到,在單個(gè)分類(lèi)器的情形下,使用我們的特征基本可以獲得0.64的分?jǐn)?shù)。如果使用我們的采樣策略訓(xùn)練分類(lèi)器,結(jié)合多個(gè)分類(lèi)器的輸出,可以進(jìn)一步大幅提升預(yù)測(cè)結(jié)果的準(zhǔn)確性。
我們使用AUC作為模型的性能評(píng)價(jià)指標(biāo),各模型的AUC分?jǐn)?shù)如表2所示:
由上表可知:SVM模型的精度要高于隨機(jī)森林模型的精度,但運(yùn)用集成將兩種模型組合起來(lái)的精度更高,效果更好。根據(jù)以上信息可知,我們能夠有效的根據(jù)用戶的偏好進(jìn)行再次購(gòu)買(mǎi)行為的預(yù)測(cè)。
四、結(jié)束語(yǔ)
本文基于2017年阿里巴巴大數(shù)據(jù)競(jìng)賽,在所給數(shù)據(jù)中研究用戶及商戶的特點(diǎn),并從中提取有效特征,得出了預(yù)測(cè)用戶未來(lái)購(gòu)買(mǎi)商戶的有效辦法。正確管理和利用這部分大數(shù)據(jù)基礎(chǔ)將為企業(yè)帶來(lái)豐厚利潤(rùn)。運(yùn)用大數(shù)據(jù)營(yíng)銷(xiāo),還可以有效幫助企業(yè)進(jìn)行市場(chǎng)預(yù)測(cè),及時(shí)發(fā)現(xiàn)市場(chǎng)機(jī)會(huì)、加快業(yè)務(wù)決策。該研究有助于在海量數(shù)據(jù)交易下商戶對(duì)電子用戶行為的把握,對(duì)商家大大降低促銷(xiāo)成本,提高投資回報(bào)率(ROI)具有重要的現(xiàn)實(shí)意義。
參考文獻(xiàn)
[1]中國(guó)互聯(lián)網(wǎng)信息中心.第40次中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告[EB/OL].http://www.cnnic.net.cn/hlwfzyj/hlwxzbg/hlwtjbg/201708 /t20170803_69444.htm,2017-08-03.
[2]中國(guó)產(chǎn)業(yè)信息中心.2017年中國(guó)網(wǎng)絡(luò)購(gòu)物應(yīng)用行業(yè)用戶規(guī)模及使用率走勢(shì)分析[EB/OL].http://www.chyxx.com/industry/201708/ 549105.html,2017-08-09.
[3]王微微,夏秀峰,李曉明.一種基于用戶行為的興趣度模型[J].計(jì)算機(jī)工程與應(yīng)用,2012,(08):148-151+199.
[4]Liu Z,Lv X,Liu K,etal.Study on SVM compared with the other text classification methods[C]//Education Technology and Computer Science (ETCS),2010 Second International Workshop on.IEEE,2010:219-222.
[5]Shi J,Lee W J,Liu Y,etal.Forecasting power output of photovoltaic systems based on weather classification and support vector machines[J].IEEE Transactions on Industry Applications,2012,48(3):1064-1069.
[6]Lin J Y,Cheng C T,Chau K W.Using support vectormachines for longterm discharge prediction[J].Hydrological Sciences Journal,2006,51(4):599-612.endprint
[7]Cui W,Yan X.Adaptive weighted least square support vector machine regression integrated with outlier detection and its application in QSAR[J].Chemometrics and Intelligent Laboratory Systems,2009,98(2):130-135.
[8]Li P,Xu S.Support vector machine and kernel function characteristic analysis in pattern recognition[J].Computer Engineering and Design,2005,26(2):302-304.
[9]Yongyi Chen,Xiaoding Yu,Xuehao Gao,Hanzhong Feng.A New Method For Non-Linear Classify And Non-Linear Regression:Introduction To Support VectorMachine[J].Quarterly Journal of Applied Meteorology,2004,15(03):345-354.
[10]Xiaodan Wang,Jiqin Wang.Research and Application of Support Vector Machine[J].Journal of Air Force Engineering University(Natural Science Edition),2004,5(03):49-55.
[11]Liaw A,Wiener M.Classification and regressionby random Forest[J].R news,2002,2(3):18-22.
[12]Biau G,Devroye L.On the layered nearest neighbor estimate,the bagged nearest neighbour estimateand the random forest method in regression and classification[J].Journal of Multivariate Analysis,2010,101(10):2499-2518.
[13]Immitzer M,Atzberger C,Koukal T.Tree species classification with random forest using very high spatial resolution 8-band WorldView-2 satellite data[J].Remote Sensing,2012,4(9):2661-2693.
[14]Jiang P,Wu H,Wang W,etal.MiPred:classification of real and pseudo microRNA precursors using random forest prediction model with combined features[J].Nucleic acids research,2007,35(suppl_2):W339-W344.
[15]Shi T,Seligson D,Belldegrun A S,etal.Tumor classification by tissue microarray profiling:random forest clustering applied to renal cell carcinoma[J].Modern Pathology,2005,18(4):547.
[16]Dietterich T G.Ensemble methods in machine learning[C]//International workshop on multiple classifier systems.Springer Berlin Heidelberg,2000:1-15.
[17]Yen S J,Lee Y S.Cluster-based under-sampling approaches for imbalanced data distributions[J].Expert Systems with Applications,2009,36(3):5718-5727.
[18]Huang J,Ling C X.Using AUC and accuracy in evaluating learning algorithms[J].IEEE Transactions on knowledge and Data Engineering,2005,17(3):299-310.
作者簡(jiǎn)介:王克利(1991-),女,漢族,河南平頂山,華南理工大學(xué)碩士研究生,研究方向:數(shù)據(jù)挖掘;鄧飛其(1962-),男,教授,博士生導(dǎo)師,研究方向:隨機(jī)系統(tǒng)建模、分析與控制理論。endprint