雷名龍
摘 要:個性化推薦系統(tǒng)能解決電子商務(wù)帶來的信息過載等問題。文章基于2014年阿里巴巴大數(shù)據(jù)競賽,從海量的購物行為數(shù)據(jù)中抽取有效特征,探究建立用戶品牌偏好的有效方法并對其進(jìn)行商品推薦。通過對購物行為數(shù)據(jù)的統(tǒng)計(jì)分析,挖掘了包括用戶特征、商品特征和用戶-商品行為特征在內(nèi)的3種有效特征。并構(gòu)造了隨機(jī)森林、邏輯回歸和SVM三種機(jī)器學(xué)習(xí)分類模型,從而有效地根據(jù)用戶品牌偏好進(jìn)行商品篩選并預(yù)測未來一個月內(nèi)用戶對商品的購物行為。
關(guān)鍵詞:電子商務(wù);大數(shù)據(jù);推薦系統(tǒng);品牌偏好;用戶行為;商品特征
中圖分類號:F724 文獻(xiàn)標(biāo)識碼:A 文章編號:2095-1302(2016)05-00-04
0 引 言
隨著人類進(jìn)入信息時代的步伐加快,我國電子商務(wù)市場近年來發(fā)展勢頭迅猛,同時保持了巨大的市場發(fā)展?jié)摿Α=刂?013年12月,中國網(wǎng)民規(guī)模達(dá)6.18億,其中網(wǎng)絡(luò)購物用戶規(guī)模達(dá)3.02億[1]。但是,面對電子商務(wù)網(wǎng)站提供的過多商品,用戶容易產(chǎn)生購物疲勞,也就是信息超載[2]。電子商務(wù)推薦系統(tǒng)是解決此問題的一種方案。該方案推薦系統(tǒng)根據(jù)用戶購物歷史數(shù)據(jù),預(yù)測用戶的商品喜好,將用戶可能喜歡的商品推薦給用戶,從而克服信息超載帶來的不利影響,促成更多的交易以增加企業(yè)的銷售額。本文基于2014年阿里巴巴大數(shù)據(jù)競賽[3],根據(jù)1 250萬用戶4個月在天貓的5.7億條海量行為日志,建立用戶的品牌偏好,進(jìn)行品牌篩選并預(yù)測他們在未來1個月內(nèi)對品牌的購買行為。用戶在未來購買的品牌分為兩種:用戶接觸過的品牌和用戶未接觸過的品牌。據(jù)統(tǒng)計(jì),在未來的1個月內(nèi)被購買的品牌中,用戶接觸過的品牌約占20%,新品牌約占80%。本文跟據(jù)用戶對品牌的行為數(shù)據(jù)進(jìn)行探究,提取了用戶對品牌的主要行為特征?;谶@些特征,我們分別基于隨機(jī)森林,邏輯回歸和SVM構(gòu)造了分類模型,對用戶未來是否會購買該品牌進(jìn)行預(yù)測,并得到了理想的預(yù)測效果。通過研究發(fā)現(xiàn),對于海量購物行為數(shù)據(jù),發(fā)現(xiàn)并提取恰當(dāng)?shù)奶卣饔兄谔嵘扑]系統(tǒng)的性能,對個性化推薦系統(tǒng)性能的完善有重要的現(xiàn)實(shí)意義。
1 相關(guān)工作
近年來,推薦系統(tǒng)成為學(xué)術(shù)界的研究熱點(diǎn)。目前被廣泛接受的推薦系統(tǒng)概念和定義是Resnick和Varian在1997[4]年給出的:推薦系統(tǒng)利用電子商務(wù)網(wǎng)站向客戶提供商品信息和建議,幫助用戶決定應(yīng)該購買什么產(chǎn)品,模擬銷售人員幫助客戶完成購買過程。按照推薦策略的不同,推薦算法一般分為基于內(nèi)容的過濾算法(Content-Based Filtering, CBF)和協(xié)作過濾算法(Collaborative Filtering, CF)。推薦系統(tǒng)的推薦質(zhì)量是推薦系統(tǒng)成功的關(guān)鍵。Karypis等人[5,6]提出根據(jù)項(xiàng)之間的相似性提供推薦服務(wù),從而有效提高了推薦質(zhì)量;文獻(xiàn)[7]提出通過對稀疏數(shù)據(jù)的關(guān)聯(lián)分析以有效提高推薦質(zhì)量。但隨著數(shù)據(jù)規(guī)模的增大,數(shù)據(jù)的稀疏性和復(fù)雜性也隨之增大。在此背景下,如何保持或進(jìn)一步提高推薦系統(tǒng)的質(zhì)量成為一個挑戰(zhàn)。本文基于2014年阿里巴巴大數(shù)據(jù)競賽提供的海量數(shù)據(jù),對用戶特征和商品特性及其分布進(jìn)行了統(tǒng)計(jì)分析,并提取了有效的行為特征對用戶品牌偏好進(jìn)行描述。
2 阿里巴巴大數(shù)據(jù)競賽及其數(shù)據(jù)
2.1 競賽和數(shù)據(jù)介紹
阿里巴巴大數(shù)據(jù)競賽是阿里巴巴集團(tuán)主辦,在阿里巴巴大數(shù)據(jù)科研平臺——“天池”上開展的基于“天貓”(購物網(wǎng)站)海量真實(shí)用戶訪問數(shù)據(jù)的推薦算法大賽。阿里巴巴大數(shù)據(jù)競賽官方提供了某年4月到7月天貓部分購物行為數(shù)據(jù),共包括1250萬個用戶和3萬個品牌,共5.7億條操作記錄。本屆賽題的任務(wù)是根據(jù)用戶4個月在天貓的行為日志,建立用戶的品牌偏好,并預(yù)測他們在將來一個月內(nèi)對品牌的購買行為。在競賽官方提供的數(shù)據(jù)格式中,每條購物行為包含4個字段,分別為用戶ID、品牌ID、用戶對品牌行為類型和行為時間。
其中,用戶ID和品牌ID進(jìn)行了抽樣和字段加密;用戶對品牌行為類型包括點(diǎn)擊、購買、加入購物車和收藏4種。在本文中,我們將點(diǎn)擊、加入購物車和收藏統(tǒng)稱為瀏覽行為,購買稱為購物行為;行為時間隱藏了年份并精確到了天的級別。為了方便處理,我們將行為時間與最大日期作差轉(zhuǎn)換為標(biāo)量。
2.2 數(shù)據(jù)去噪
在處理之前,需要對數(shù)據(jù)去噪。通過分析,我們決定去除兩類用戶:一種是操作量過高的用戶。在數(shù)據(jù)中,我們發(fā)現(xiàn)有一個用戶的操作記錄超過了2 000萬條,這顯然是不正常的。所以,我們將4個月內(nèi)操作次數(shù)大于2 000次的用戶刪除;另一種用戶是一些為了刷信譽(yù)或者出于某些目的大量操作同一件物品。我們將在4個月內(nèi)對某一件特定商品有超過1 000次操作的用戶統(tǒng)計(jì)出來,并將其刪除。在用戶過濾階段,大約刪除了5 000個用戶,約占總用戶數(shù)的0.1%。
3 用戶特點(diǎn)分析
3.1 總體用戶行為統(tǒng)計(jì)
用戶在天貓的行為類型分為點(diǎn)擊、購買、加入購物車和收藏4種行為。數(shù)據(jù)集包含了1 250萬位用戶的5.7億條購物歷史記錄。我們在數(shù)據(jù)集上分別對這4種行為數(shù)量進(jìn)行統(tǒng)計(jì),發(fā)現(xiàn)用戶點(diǎn)擊行為、購買行為和收藏行為分別占總行為記錄的96%、3%和1%,而加入購物車行為出現(xiàn)次數(shù)極少。這說明,在網(wǎng)購期間,用戶的瀏覽行為占了非常大的比例,購買、收藏和加入購物車行為只占了相當(dāng)小的一部分。收藏和加入購物車操作對購買行為有較強(qiáng)的預(yù)測能力。
3.2 用戶行為分布
我們以用戶為單位,分別統(tǒng)計(jì)并計(jì)算4個月的瀏覽行為(包括點(diǎn)擊、加入購物車和收藏)和購買行為的分布,分別得到如圖1和圖2所示的結(jié)果。由于我們對縱坐標(biāo)用戶數(shù)量進(jìn)行了對數(shù)處理且縱坐標(biāo)與橫坐標(biāo)近似呈現(xiàn)反比關(guān)系,所以兩個分布近似服從冪律分布中的長尾分布[8]。
圖1 四個月瀏覽總次數(shù)與用戶數(shù)量分布
圖2 四個月購買總次數(shù)與用戶數(shù)量分布
對于總瀏覽量,發(fā)現(xiàn)約95%的用戶瀏覽次數(shù)分布在0到800次之間。用戶平均瀏覽總次數(shù)為44.8次。隨著瀏覽次數(shù)的增加,用戶數(shù)量急劇減少,并出現(xiàn)長尾現(xiàn)象;對于總購買量,我們發(fā)現(xiàn)約94%的用戶購買次數(shù)分布在0到80區(qū)間。隨著購買次數(shù)的增加,用戶數(shù)量急劇減少,也出現(xiàn)長尾現(xiàn)象。此外,無論是總瀏覽量還是總購買量,最大值與最小值間跨度巨大。這說明用戶群體復(fù)雜多樣,購買力和購物熱情參差不同,對網(wǎng)站的訪問目的也有所差異:一部分用戶有目的的進(jìn)行購物,另一部分用戶則抱著“閑逛”的心態(tài)去瀏覽網(wǎng)店。
3.3 用戶瀏覽購買轉(zhuǎn)化率分布
我們稱用戶購買行為次數(shù)與總行為次數(shù)的比值為瀏覽購買轉(zhuǎn)化率。轉(zhuǎn)化率的不同反映出用戶購物習(xí)慣的不同,不挑剔的用戶的瀏覽購買轉(zhuǎn)換率較高,較為挑剔的用戶瀏覽購買轉(zhuǎn)化率較低。以用戶為單位,統(tǒng)計(jì)并計(jì)算出其瀏覽購買轉(zhuǎn)化率,得到的結(jié)果如圖3所示。
圖3 瀏覽購買轉(zhuǎn)化率與用戶數(shù)量分布
我們發(fā)現(xiàn),約80%的用戶瀏覽購買轉(zhuǎn)化率分布在0到0.1區(qū)間。這說明對于大多數(shù)用戶而言,購買某件商品之前對商品的點(diǎn)擊次數(shù)大約超過10次。隨著轉(zhuǎn)換率的提高,用戶數(shù)量急劇減少,隨著轉(zhuǎn)化率的增加,用戶數(shù)量急劇減少。
4 商品特點(diǎn)分析
本節(jié)根據(jù)商品品牌被用戶訪問的行為數(shù)據(jù),從行為類型、瀏覽購買轉(zhuǎn)化率、重復(fù)購買率、平均銷售周期等角度分析商品品牌的特點(diǎn)。
4.1 商品行為分布
我們以品牌為單位,分別統(tǒng)計(jì)并計(jì)算4個月被瀏覽的行為(包括被點(diǎn)擊、被加入購物車和被收藏)和被購買行為次數(shù),根據(jù)統(tǒng)計(jì)信息,商品4個月平均被瀏覽次數(shù)為6 500次,最少被瀏覽次數(shù)為0,而最大被瀏覽次數(shù)為162萬次;商品平均被購買次數(shù)為316次,最小被購買次數(shù)為0,最大被購買次數(shù)為11萬次。
同用戶相似,這兩個分布也近似服從冪律分布中的長尾分布。從而可知,熱門商品一般更容易被用戶接受,銷量越來越高;而冷門商品由于不容易被用戶發(fā)現(xiàn)和接受,所以銷量停滯不前。
4.2 品牌購買轉(zhuǎn)化率
與用戶瀏覽購買轉(zhuǎn)化率相似,我們稱品牌被購買次數(shù)與被訪問總次數(shù)的比值為品牌瀏覽購買轉(zhuǎn)化率。轉(zhuǎn)化率的不同反映出品牌的自身特性,熱門商品的瀏覽購買轉(zhuǎn)換率高,冷門商品的轉(zhuǎn)化率較低。
由統(tǒng)計(jì)信息可知,約80%的品牌瀏覽購買轉(zhuǎn)化率分布在0到0.2區(qū)間。個別熱門產(chǎn)品或促銷產(chǎn)品轉(zhuǎn)化率偏高。
4.3 品牌重復(fù)購買率
對于每一個品牌的每一次被購買行為,我們首先判定用戶對于此品牌是否有歷史購買記錄。對于有對應(yīng)歷史購買記錄的購買行為,我們稱之為一次重復(fù)購買。品牌重復(fù)購買次數(shù)與品牌總購買次數(shù)的比值稱為品牌重復(fù)購買率。以品牌為單位,計(jì)算并統(tǒng)計(jì)其重復(fù)購買率。
我們發(fā)現(xiàn)約80%的品牌重復(fù)購買率分布在0到0.1區(qū)間,少數(shù)商品重復(fù)購買率超過0.2。品牌重復(fù)購買率可以衡量一個品牌回頭客的數(shù)量,重復(fù)購買率高的品牌更能夠獲得用戶的信任和持續(xù)關(guān)注。
4.4 品牌平均銷售周期
我們稱一個品牌兩次被同一用戶購買的時間間隔的平均值為品牌平均銷售周期。它能反應(yīng)一個品牌的本質(zhì)特性,比如食品類的銷售周期短,而電子產(chǎn)品銷售周期則較長。統(tǒng)計(jì)并計(jì)算品牌的平均銷售周期。同樣發(fā)現(xiàn)約80%的品牌平均銷售周期分布在0到20區(qū)間,少數(shù)商品平均銷售周期超過30天。
5 用戶-品牌行為與未來購買行為
本節(jié)研究用戶-品牌行為對用戶未來購買行為的影響。顯然,用戶更趨向于購買自己喜歡的品牌。選取合適的數(shù)據(jù)指標(biāo),可以預(yù)測用戶未來對此商品的購買行為。
5.1 數(shù)據(jù)指標(biāo)和假設(shè)
(1) 用戶對品牌的瀏覽行為次數(shù):用戶對品牌產(chǎn)生的瀏覽行為(點(diǎn)擊,加入購物車和收藏)的總次數(shù)。
(2) 用戶對品牌的關(guān)注行為次數(shù):以天為單位,用戶X對品牌Y產(chǎn)生的瀏覽行為(點(diǎn)擊,加入購物車和收藏)稱為用戶對品牌的一次關(guān)注行為(同一天用戶X對品牌Y多次瀏覽行為只視為一次)。
(3) 用戶對品牌的購買總數(shù)量:用戶對品牌購買行為記錄的總次數(shù)。
(4) 用戶對品牌的購買行為次數(shù):以天為單位,用戶X對品牌Y產(chǎn)生的購買行為次數(shù)(同一天用戶X對品牌Y多次購買只視為一次)。
(5) 用戶對品牌最后一次操作相對日期:我們將日期量化成距離最大日期的天數(shù),操作(點(diǎn)擊,購買,購物車,收藏)日期越靠后,相對日期值越小。
假設(shè)1:用戶對品牌的瀏覽行為次數(shù)越多,即對品牌的興趣程度越高,越趨向于購買此品牌的商品。
假設(shè)2:用戶對品牌的關(guān)注行為次數(shù)越多,即對品牌的興趣程度越高,越趨向于購買此品牌的商品。
假設(shè)3:用戶對品牌的購買總數(shù)量越多,即對品牌的興趣程度越高,越趨向于購買此品牌的商品。
假設(shè)4:用戶對品牌的購買行為次數(shù)越多,即對品牌的興趣程度越高,越趨向于購買此品牌的商品。
假設(shè)5:用戶對品牌最后一次操作相對日期越小,在未來一段時間內(nèi),購買此品牌商品的可能性增大。
5.2 假設(shè)驗(yàn)證
我們首先將4個月用戶行為記錄按時間先后劃分為5份,隨后對特定的用戶X和品牌Y進(jìn)行配對。對于每一個配對,在前4份上分別統(tǒng)計(jì)以上5個數(shù)據(jù)指標(biāo),并根據(jù)在第5份中是否出現(xiàn)為其貼上標(biāo)簽,劃分出正負(fù)樣本。如果在第5份中配對出現(xiàn),也就是說如果用戶X對品牌Y進(jìn)行了購買,我們稱之為正樣本;反之,我們稱之為負(fù)樣本。通過對比以上數(shù)據(jù)指標(biāo)在正負(fù)樣本集上的均值,驗(yàn)證我們的猜想,得到了如表1所列的結(jié)果。
表1 正負(fù)樣本中的各項(xiàng)指標(biāo)
指標(biāo)名稱 正樣本 負(fù)樣本
瀏覽行為次數(shù) 7.33 2.49
關(guān)注行為次數(shù) 2.17 1.26
購買總量 0.51 0.12
購買行為次數(shù) 0.35 0.09
最后操作相對日期 25.69 48.53
在正樣本中,用戶對品牌平均瀏覽行為次數(shù)和平均關(guān)注行為次數(shù)分別為7.33和2.17,而相對應(yīng)的在負(fù)樣本中,分別為2.49和1.26;在正樣本中,用戶對品牌平均購買總量和平均購買行為次數(shù)分別為0.51和0.35,而對應(yīng)的在負(fù)樣本中,分別為0.12和0.09;在正樣本中用戶對品牌平均最后一次操作相對日期為25.69天,而對應(yīng)在負(fù)樣本中為48.53天。由此我們可以得出結(jié)論,這5個假設(shè)都是成立的。因此,這5個數(shù)據(jù)指標(biāo)可在一定程度上反映用戶的購買傾向。
6 基于特征的用戶購買行為預(yù)測
本節(jié)根據(jù)前文分析得出的結(jié)論,從原始數(shù)據(jù)中抽取用戶和品牌特征,訓(xùn)練分類器,預(yù)測未來一個月內(nèi)用戶對商品的購買行為。
6.1 問題描述
將用戶ID與用戶訪問過的品牌ID兩兩配對,構(gòu)成用戶-品牌對,同時為每一配對提取相應(yīng)的特征并合成一個多維的特征向量。構(gòu)造一個分類器,使之根據(jù)特征預(yù)測用戶-商品對是否能在未來一個月內(nèi)的購買行為記錄中出現(xiàn)。
6.2 特征選擇
通過前幾節(jié)的結(jié)論,我們將選擇3類特征構(gòu)造特征向量:用戶特征、品牌特征和用戶-品牌特征。具體特征如表2所列。
表2 特征名稱和特征分類
特征名稱 特征分類
用戶總瀏覽量 用戶特征
用戶總購買量 用戶特征
用戶瀏覽購買轉(zhuǎn)化率 用戶特征
品牌總瀏覽量 品牌特征
品牌總銷量 品牌特征
品牌瀏覽購買轉(zhuǎn)化率 品牌特征
品牌重復(fù)購買率 品牌特征
品牌平均銷售周期 品牌特征
用戶-品牌瀏覽行為次數(shù) 用戶-品牌特征
用戶-品牌關(guān)注行為次數(shù) 用戶-品牌特征
用戶-品牌購買總量 用戶-品牌特征
用戶-品牌購買行為次數(shù) 用戶-品牌特征
用戶-品牌最后操作日期 用戶-品牌特征
6.3 實(shí)驗(yàn)過程及結(jié)果評估
基于表2所列的特征,我們分別構(gòu)造和訓(xùn)練了邏輯回歸,SVM和隨機(jī)森林預(yù)測模型,將用戶未來是否會對品牌進(jìn)行購買的問題轉(zhuǎn)化為一個樣本分類問題,這樣便可以通過成熟的機(jī)器學(xué)習(xí)分類算法對未來的購買行為進(jìn)行預(yù)測。
利用競賽官方提供的“天池”平臺中的XLab工具進(jìn)行數(shù)據(jù)訓(xùn)練和預(yù)測。
我們使用準(zhǔn)確率和召回率作為預(yù)測精度的指標(biāo),最后用F1-Score來擬合準(zhǔn)確率與召回率。實(shí)驗(yàn)結(jié)果如表3所列,可以看到隨機(jī)森林預(yù)測模型的預(yù)測精度最高。由于此方法只對用戶已經(jīng)接觸過的品牌進(jìn)行了預(yù)測,且根據(jù)統(tǒng)計(jì)結(jié)果得知,用戶接觸過的品牌占用戶未來購買品牌總量的20%,所以對于用戶已接觸過的品牌,我們的預(yù)測精度能達(dá)到26.5%。
表3 實(shí)驗(yàn)結(jié)果
模型名稱 準(zhǔn)確率 召回率 F1
邏輯回歸 4.06% 4.09% 4.07%
SVM 4.38% 4.29% 4.33%
隨機(jī)森林 5.28% 5.30% 5.29%
實(shí)驗(yàn)表明,基于以上特征,我們能夠有效的根據(jù)用戶偏好進(jìn)行商品篩選和推薦,并對用戶未來的購買行為進(jìn)行理想的預(yù)測。
7 結(jié) 語
本文基于2014年阿里巴巴大數(shù)據(jù)競賽,在海量的購物行為數(shù)據(jù)中探索用戶及品牌特點(diǎn),從中抽取有效特征,提出了預(yù)測用戶未來購買行為的有效方法。該研究有助于理解海量數(shù)據(jù)下電子商務(wù)用戶以及商品之間行為分布的特點(diǎn),對個性化推薦系統(tǒng)性能的完善有重要的現(xiàn)實(shí)意義。
參考文獻(xiàn)
[1] 中國互聯(lián)網(wǎng)絡(luò)信息中心.第33次中國互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告[EB/OL].http://www.cnnic.cn/hlwfzyj/hlwxzbg/hlwtjbg/2014 03/t20140305_46240.htm, 2014.03.05.
[2] A Borchers,J Herlocker,J Konstan,et al. Ganging up on information overload[J]. Computer,1998,31(4):106-108.
[3] Tmall Recommendation Prize 2014 & TianChi Open Data Project[Z].
[4] Resinick P,Varian H R.Recommender systems[J].Communications of the ACM,1997,40(3):56-58.
[5] Sarwar, B, Karypis, G, Konstan, J, et al. Item-based Collaborative Filtering Recommendation Algorithms[Z].In Proceedings of the Tenth International World Wide Web Conference on World Wide Web,2001.
[6] Karypis,G.Evaluation of Item-based top-n Recommendation Algorithms[Z].In Proceedings of the Tenth International Conference on Information and Knowledge Management(CIKM),2001.
[7] Demiriz A.Enhancing Product Recommender Systems on Sparse Binary Data[EB/OL].http://www.rpi.edu/~demira/researeh.htm,2003.
[8] Anderson Chris.The Long Tail: Why the Future of Business is Selling Less of More[Z]. New York, NY: Hyperion. ISBN 1-4013-0237-8
[9] Wolf J.,Aggarwal C., Wu K-L.,et al. Horting Hatches an Egg: A New Graph-Theoretic Approach to Collaborative Filtering[Z].In Proceedings of ACM SIGMOD Intemational Conference on Knowledge Discovery & Data Mining,1999.
[10] Yu K.,Xu X-W.,Ester M.,et al.Feature Weighting and Instance Selection for Collaborative Filtering: An Information-Theoretic Approach[Z]. Knowledge and Information Systems,2003.
[11] Good N.,Schafer J.B.,Konstan J.A., et al. Combining Collaborative Filtering with Personal Agents for Better Recommendations[Z].Proceedings of AAAI, AAAIPress,1999.
[12] Sarwar B.M.,Karypis G.,Konstan J.A.,et al.Application of Dimensionality Reduction in Recommender System-A Case Study[Z].In ACM WebKDD 2000 Workshop, 2000.