孫克雷, 鄧仙榮(安徽理工大學 計算機科學與工程學院, 安徽淮南 232001)
?
一種改進的基于梯度提升回歸算法的O2O電子商務推薦模型
孫克雷, 鄧仙榮
(安徽理工大學 計算機科學與工程學院, 安徽淮南 232001)
摘要:位置屬性對于線下消費的用戶具有重要影響。為了有效提高個性化推薦精度,在對O2O電子商務特點進行用戶特征分析的基礎上,在推薦算法中引入當前時間參數(shù)和位置參數(shù),提出了一種改進的基于梯度提升回歸算法的O2O電子商務推薦模型。實驗結(jié)果表明,改進的基于梯度提升回歸算法的O2O電子商務推薦模型在實時性和準確性方面明顯優(yōu)于傳統(tǒng)的推薦算法。
關(guān)鍵詞:梯度提升回歸樹,位置服務,個性化推薦,行為日志分析
互聯(lián)網(wǎng)的快速發(fā)展將人類帶進了信息化時代,從根本上改變了個人生活和企業(yè)發(fā)展。對于個人而言,足不出戶就可以買到所需要的商品或服務,讓消費者享受到電子商務模式的便利;對于企業(yè)而言,互聯(lián)網(wǎng)在企業(yè)和消費者之間建立了直接聯(lián)系,為企業(yè)帶來更大的商機。貝恩公司與阿里巴巴研究院聯(lián)合開展的2015年度中國電商報告顯示,2014年中國線上銷售額已經(jīng)達到2.9萬億,其中一線城市人均支出超過10萬元,由此可見,O2O電子商務改變了消費者的消費模式。推薦系統(tǒng)是利用數(shù)據(jù)挖掘等技術(shù),分析消費者在電子商務網(wǎng)站的訪問行為,產(chǎn)生消費者感興趣產(chǎn)品信息的推薦結(jié)果。
O2O電子商務是基于大數(shù)據(jù)平臺架構(gòu)下的典型案例,關(guān)鍵問題是依據(jù)海量的商品數(shù)據(jù)和用戶數(shù)據(jù)建立一個有效的推薦模型,目前流行的推薦模型主要有以下三種:
1)基于協(xié)同過濾的推薦:分為基于物品的協(xié)同過濾和基于用戶的協(xié)同過濾[1,2]。協(xié)同過濾通過對用戶偏好信息進行分析,根據(jù)偏好數(shù)據(jù)計算相似用戶和相似物品,然后基于相似物品或相似用戶進行推薦[3]。協(xié)同過濾的主要優(yōu)點是集合了他人的經(jīng)驗,有利于推薦新信息,實現(xiàn)個性化推薦;缺點主要是稀疏性問題和冷啟動問題。
2)基于關(guān)聯(lián)規(guī)則的推薦:關(guān)聯(lián)規(guī)則挖掘已經(jīng)是數(shù)據(jù)挖掘中的一個經(jīng)典的問題,主要是挖掘不同商品在銷售過程中的相關(guān)性,由此預判消費者在購買了一些商品后的下一次購物行為,當關(guān)聯(lián)規(guī)則得到驗證后,就可以建立基于關(guān)聯(lián)規(guī)則的推薦模型,Agrawal等在1993年最早提出了Aprior的關(guān)聯(lián)規(guī)則推薦算法[4]。
3)基于模型的推薦:本質(zhì)上是應用機器學習方法解決推薦問題,將已有用戶行為數(shù)據(jù)和商品屬性數(shù)據(jù)進行預處理后,分析特征向量,獲取訓練樣本[5],再找到一個可行的訓練算法驗證預測結(jié)果。其關(guān)鍵在于如何分析和約簡特征向量,將用戶實時偏好信息反饋給已建立模型,從而提高推薦準確率。
本文采用基于模型的推薦,通過深入挖掘移動O2O電子商務中的用戶行為日志,抽取出能辨別用戶對商品服務購買行為的基本特征,然后將其融入梯度提升回歸算法,建立用戶興趣偏好模型來預測用戶的購物行為。梯度提升回歸算法(Gradient Boost Decision Tree)是一種組合決策樹機器學習算法[6],通過組合多個弱決策樹形成一個強決策樹預測模型。梯度提升回歸算法具有評價特征重要性的能力,和SVM一起被認為是泛化能力較強的算法。
O2O是典型的基于位置服務的一種電子商務模式,提供的商品以本地服務類為主,如飲食,住宿,娛樂等,要求用戶線下實地體驗,其主要特點是位置信息對于用戶行為特征有重大影響[7]。上述位置信息是個廣義概念,同時包含了時間和地理位置兩個維度的數(shù)據(jù)。
1)在時間維度上,如果用戶剛剛消費一個項目,那短期內(nèi)再次消費的可能性很低,例如理發(fā)服務。設用戶消費某一商品或服務項目的平均周期為T,消費時間周期T對用戶的相關(guān)性函數(shù)定義為:
其中,λ是時間衰減參數(shù)。顯然,當t=T時,n(T)取得最大值。
2)在地理位置維度上,移動位置不同對用戶消費需求也有重大影響。在熱門消費場景區(qū)域比如商場街區(qū)等,用戶會有一定的隨眾傾向,在一些偏遠、冷門的場景,用戶平均消費傾向又所降低。根據(jù)長尾理論,雖然場景活躍度高的地方集中了大多數(shù)的用戶需求,但是冷門的地方往往代表了用戶個性化需求[8]。因此,需綜合考慮場景活躍度和用戶活躍度以計算位置信息影響因子[9,10]。假定場景活躍度是N(s),用戶活躍度是N(u),假定位置信息影響因子定義W為:
實驗時,N(s)以場景所在地的品牌轉(zhuǎn)化率表示,N(u)以用戶在此場景所在地的品牌轉(zhuǎn)化率表示,其中0 3.1原理及方法 Gradient Boost Decision Tree(GBDT)是Fridedman在1999年提出的一種組合模型,它的基本思想是通過構(gòu)建M個弱分類器,經(jīng)過多次迭代最終組合而成一個強分類器。每一次迭代是為了改進上一次結(jié)果,減少上一次模型的殘差。并且在殘差減少的梯度方向上建立新的組合模型[11]。為了描述模型的精確程度,引入損失函數(shù)。假定為訓練樣本,代表參數(shù)集合,β是每個分類器的權(quán)值,α是分類器內(nèi)的參數(shù),則以P為參數(shù)的x函數(shù): 將式(2)寫成梯度下降的形式為式(3),表示Fm(x)是之前所得模型Fm-1(x)的損失函數(shù)下降最快的方向: 對每個候選都計算偏導數(shù)gm(xi): 最終得到一個N維梯度下降方向向量: 使用最小二乘法得αm: 進而得到βm: 如此迭代M次最終得到參數(shù)集合P。 3.2改進梯度提升回歸算法AGBDT: 梯度提升回歸算法是一種組合決策樹,通過對一系列的弱分類器累加,同時迭代逼近找出各分類器最佳權(quán)值,即損失函數(shù)在梯度下降方向時的參數(shù),得出預測結(jié)果。原則上,各個分類器的初始權(quán)值一般設置相等,但本文研究O2O實際場景中,當前位置和時間對位置特征分類器有明顯影響。通過多次實驗將初始權(quán)值優(yōu)化設置如下: 最終改進公式為: 其中,W是位置信息影響因子,n(T)是用戶商品服務消費時間周期相關(guān)性函數(shù)。 4.1實驗數(shù)據(jù) 實驗數(shù)據(jù)為阿里巴巴公司在真實O2O電子商務業(yè)務場景下,一個月的移動端行為數(shù)據(jù)和下一天用于準確度計算的移動端行為數(shù)據(jù)。數(shù)據(jù)項包含了脫敏處理的用戶ID、用戶行為、行為觸發(fā)時間、用戶位置信息數(shù)據(jù)和商品ID、商品類別、商品位置信息。在真實的業(yè)務場景下,需要對所有商品的一個子集構(gòu)建個性化推薦模型。在完成任務的過程中,不僅需要利用用戶在這個商品子集上的行為數(shù)據(jù),還需要利用更豐富的用戶行為數(shù)據(jù)。定義符號如下:U——用戶集合;I——商品全集;P——商品子集,P∩_I;D——用戶對商品全集的行為數(shù)據(jù)集合。本文目標是利用D來構(gòu)造U中用戶對P中商品的推薦模型。 1)數(shù)據(jù)說明: 數(shù)據(jù)包含兩個部分,如表1、2所示。第一部分是用戶在商品全集上的移動端行為數(shù)據(jù)(D): 表1 用戶行為日志字段說明 表2 商品數(shù)據(jù)字段說明 訓練數(shù)據(jù)包含了抽樣出來的一定量用戶在一個月時間(11.18~12.18)內(nèi)的移動端行為數(shù)據(jù)(D),測試數(shù)據(jù)是這些用戶此后一天(12.19)對商品子集(P)的購買數(shù)據(jù)。實驗將使用訓練數(shù)據(jù)建立推薦模型,并輸出用戶在此后一天對商品子集購買行為的預測結(jié)果。 2)評估指標: 采用經(jīng)典的精確度(precision)、召回率(recall)和F1值作為評估指標[8]。計算公式如下: 其中PredictionSet為算法預測的購買數(shù)據(jù)集合,ReferenceSet為真實的答案購買數(shù)據(jù)集合。我們以F1值作為最終的唯一評測標準。 4.2實驗設計 4.2.1特征提取 原始數(shù)據(jù)包含字段:用戶ID、商品ID、商品類別ID、時間(精確到小時)、地理位置、用戶行為。首先劃分特征類別,比如分為用戶—商品類特征,用戶—商品類別類特征,商品—商品類別特征,商品類特征,用戶類特征,商品類別類特征,交叉特征等幾個方面。劃分粒度分為月,周,天,小時,初步數(shù)據(jù)統(tǒng)計之后會發(fā)現(xiàn)購買時間熱段和冷段,來適當調(diào)整時間片長度。主要特征有:直接特征,按時間維度劃分點擊次數(shù),購買次數(shù),收藏次數(shù),加入購物車次數(shù);位置特征,劃分基于位置信息的各種用戶行為;轉(zhuǎn)化率特征,品牌被點擊,收藏,加入購物車到成功購買的轉(zhuǎn)化率;時間特征:最后一次購買,點擊,收藏,加入購物車的時間差,同類商品平均購買時間間隔,歷史至今點擊,購買的天數(shù)。為了獲取基于位置信息的用戶活躍度N(u)和場景活躍度N(s),需要提取用戶-位置-轉(zhuǎn)化率三維特征,位置-轉(zhuǎn)化率二維特征。 4.2.2實驗結(jié)果與分析 本文在構(gòu)建完成的訓練集中,正負樣本的比例采取大約為1:300,首先為了評估特征個數(shù)對實驗結(jié)果的影響,固定迭代次數(shù)k=300,得到圖1特征個數(shù)m與F1之間的曲線關(guān)系。由圖1可知,當m在[10, 20]上升趨勢明顯,m>30,F(xiàn)1分數(shù)平緩增長,m=80時,取得最大值。m>80后,曲線有下降趨勢。綜合考慮F1分數(shù)和算法復雜度,m=80效果最好。 圖1 特征個數(shù)與F1分數(shù)相關(guān)曲線 在取特征個數(shù)m=80,評估在算法GBDT和改進算法AGBDT下,迭代次數(shù)和F1分數(shù)的關(guān)系,訓練結(jié)果如圖2所示,迭代次數(shù)相同的情況下,改進算法AGBDT取得更高F1分數(shù),說明合理預判決策樹權(quán)值有助于降低迭代次數(shù)。迭代次數(shù)k在[50, 100]時,兩種算法的F1值趨勢明顯上升,k>100,增速放緩,k>400有明顯下降趨勢。綜合考慮,迭代次數(shù)選擇k=350。 圖2 迭代次數(shù)和F1分數(shù)相關(guān)曲線 最終,在正負樣本比例取1:300,特征個數(shù)m=80,迭代次數(shù)k=350,取得實驗結(jié)果如表3: 表3 實驗最終結(jié)果 綜上所述,GBDT算法由多個弱分類器組成的強分類器具有較強的泛化能力,可以綜合考慮多個特征組合的不同情形,在本文中,為了在推薦模型中考慮當前位置信息對用戶購物行為的影響,在相對應的特征分類器上添加了相關(guān)位置信息相關(guān)因子,和時間消費周期函數(shù)。實驗結(jié)果表明,改進算法取得了良好的準確率和召回率。 本文在應用GBDT算法實現(xiàn)基于用戶購物行為歷史數(shù)據(jù)預測下一步購物行為的基礎上,進行了隨著位置改變引起的推薦內(nèi)容變化的算法改進。不過由于條件限制,并未做線上實時推薦測試,因此關(guān)于算法推薦模型的實際運行情況將成為下一個研究重點。 參考文獻 [1]許海玲,吳瀟,李曉東,等.互聯(lián)網(wǎng)推薦系統(tǒng)比較研究[J]. 軟件學報,2009,20(2):350-262. [2]Leungcw, Chansc, Chungf, et al. An empirical study of a cross-level association rule mining approach to cold-start recommendations[J]. Knowledge-Based Systems, 2008, 21(7): 515-529. [3]馬宏偉,張光衛(wèi),李鵬.協(xié)同過濾推薦算法綜述[J].小型微型計算機系統(tǒng),2009,30(7):1282-1288. [4]Agrawal R, Imuekubsju R, Swami A. Mining association rules between sets of items in large databases[C].//.Proc. of ACM SIGMOD International Conference on Management of Data. New York: ACM Press,1993;207-216. [5]閆友彪,陳元琰.機器學習的主要策略綜述[J]. 計算機應用研究,2004,(7):4-11. [6]Friedman JH. Greedy function approximation:a gardient boosting machine[J]. Annal of Statistics, 2000, 29(5): 1189-1232. [7]孟祥武,胡勛,王立才,等. 移動推薦系統(tǒng)及其應用[J]. 軟件學報,2013,24(1):91-108. [8]項亮.推薦系統(tǒng)實踐[M].北京:人民郵電出版社,2012. [9]張新猛,蔣盛益,張倩生,等.基于用戶偏好加權(quán)的混合網(wǎng)絡推薦算法[J].山東大學學報(理學版),2015(50):30-34. [10]王興茂,張興明.基于貢獻因子的協(xié)同過濾推薦算法[J].計算機應用研究,2015, 32(12): 3351- 3354. [11]Friedman JH. Stochastic gradient boosting[J]. Computatianal Statistics & Data Analysis, 2002,38(4): 367-378 基金支持:安徽省自然科學基金(1408085QE94) A Recommendation Model for O2O E-commercebased on Improved Gradient Boosting Regression Trees SUN Kelei,DENG Xianrong Abstract:Location attribute exerts important infuences on offine consuers. In order to improve the accuracy of personalized recommendation, basing on the analysis of the O2O e-commerce with user characteristics, this paper introduces the current time and location parameters to the basis of the recommendation algorithm, and it proposes O2O e-commerce recommendation model on improved gradient boosting regression tree The results show this model is apparently superior to the traditional recommendation algorithm both in real-time and accuracy. Keywords:GBDT, LBS, Personalized recommendations, behavior log analysis 作者簡介:孫克雷(1980-),男,博士,副教授,主要研究方向為信息融合。 收稿日期:2015-12-08 DOI:10.11921/j.issn.2095-8382.20160217 中圖分類號:TP391 文獻標識碼:A 文章編號:2095-8382(2016)02-087-053 梯度提升回歸算法(Gradient Boost Decision Tree)
4 實驗結(jié)果與分析
5 總結(jié)與展望
(School of Computer Science and Engineering, Anhui University of Science and Technology, Huainan 232001, China)