• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于XGBoost的用戶定位與商鋪推薦

      2019-05-24 14:20杜成喜郭瑞祥左彬靖肖明王杰
      無線互聯(lián)科技 2019年1期
      關(guān)鍵詞:分布式

      杜成喜 郭瑞祥 左彬靖 肖明 王杰

      摘 要:隨著互聯(lián)網(wǎng)的高速發(fā)展,期間衍生出了一系列改變?nèi)藗兩畹募夹g(shù)產(chǎn)物?;ヂ?lián)網(wǎng)移動支付的迅速普及,我們享受到越來越多的生活便利。其中推薦系統(tǒng)最具代表性,它的出現(xiàn)使得人們不再像過去那樣通過搜索引擎從海量的數(shù)據(jù)中查找自己所需要的信息,而是根據(jù)推薦系統(tǒng)主動提供的物品信息進(jìn)行選擇。這一局面的改變,得益于人們不斷地在推薦算法上進(jìn)行研究而取得的成果。在真實生活中,當(dāng)用戶在商場環(huán)境中打開手機的時候,存在定位信號不準(zhǔn)、環(huán)境信息不全、店鋪信息缺失、不同店鋪空間距離太近等挑戰(zhàn),因此,如何精確地判斷用戶所在商鋪是一個難題,這也是這一方面推薦系統(tǒng)的難題之一。文章研究了基于XGBoost的用戶定位與商鋪推薦。

      關(guān)鍵詞:商鋪推薦;用戶定位;分布式

      隨著“互聯(lián)網(wǎng)+”的發(fā)展與興起,傳統(tǒng)的各行各業(yè)正在深受其影響,飛速發(fā)展,這些也深刻影響著人們的生活,有一些生活中的典型案例,如:當(dāng)你走進(jìn)某家商場的某家餐廳時,手機會自動彈出附近商家的優(yōu)惠券;當(dāng)你走進(jìn)某家衣服店時,手機可以自動推薦你所喜歡的衣服;當(dāng)你經(jīng)過一些地方時,手機會提醒你附近是否有自己喜歡的東西,在我們?nèi)粘I暇W(wǎng)購物時,每個人的購物軟件所推薦的物品也是根據(jù)個人的日常愛好和生活習(xí)慣來進(jìn)行推薦,從而在一定程度上實現(xiàn)“千人千面”,以上種種,都是推薦系統(tǒng)在人們?nèi)粘I钪械囊恍w現(xiàn)。在上述所列舉的例子中可以看出,要想根據(jù)用戶的消費信息實現(xiàn)精準(zhǔn)推薦,在商場中精確地定位用戶當(dāng)前所在店鋪或者位置非常關(guān)鍵,而在本文中就是希望能夠通過用戶的手機WiFi等信號信息,精準(zhǔn)定位用戶的位置,從而實現(xiàn)對不同位置的用戶進(jìn)行精準(zhǔn)推薦。

      根據(jù)如何抽取參考特征,我們可以將推薦引擎分為以下四大類。

      (1)基于內(nèi)容的推薦引擎:它將計算得到并推薦給用戶一些與該用戶已選擇過的項目相似的內(nèi)容。例如,當(dāng)你在網(wǎng)上購書時,你總是購買與歷史相關(guān)的書籍,那么基于內(nèi)容的推薦引擎就會給你推薦一些熱門的歷史方面的書籍。

      (2)基于協(xié)同過濾的推薦引擎:它將推薦給用戶一些與該用戶品味相似的其他用戶喜歡的內(nèi)容。例如,當(dāng)你在網(wǎng)上買衣服時,基于協(xié)同過濾的推薦引擎會根據(jù)你的歷史購買記錄或是瀏覽記錄,分析出你的穿衣品位,并找到與你品味相似的一些用戶,將他們?yōu)g覽和購買的衣服推薦給你。

      (3)基于關(guān)聯(lián)規(guī)則的推薦引擎:它將推薦給用戶一些采用關(guān)聯(lián)規(guī)則發(fā)現(xiàn)算法計算出的內(nèi)容。關(guān)聯(lián)規(guī)則的發(fā)現(xiàn)算法有很多,如Apriori,AprioriTid,DHP,F(xiàn)P-tree等。

      (4)混合推薦引擎:結(jié)合以上各種,得到一個更加全面的推薦效果。

      1 數(shù)據(jù)描述

      本文所使用的數(shù)據(jù)主要包含三大部分。

      第一部分?jǐn)?shù)據(jù)是店鋪和商場信息數(shù)據(jù)(數(shù)據(jù)示例見表1)[1],主要包含6個有用字段,分別是店鋪ID(shop_id),店鋪類型ID(catehory_id,共有40種左右類型),店鋪位置—經(jīng)度(longitude),店鋪位置—緯度(latitude),人均消費指數(shù)(price),店鋪所在商場ID(mall_id),這一部分?jǐn)?shù)據(jù)總共包含97個mall的信息,涉及8 477間shop[1]。

      第二部分?jǐn)?shù)據(jù)是用戶在店鋪內(nèi)的交易數(shù)據(jù)(數(shù)據(jù)示例見表2)[1],數(shù)據(jù)是在2017年8月份的交易數(shù)據(jù),主要包含6個字段,分別是用戶ID(user_id),用戶所在商鋪的ID(shop_id),行為時間戳(time_stamp),行為發(fā)生時的位置—經(jīng)度(longitude),行為發(fā)生時的位置—緯度(latitude),行為發(fā)生時的WiFi環(huán)境(WiFi_info,包括bssid:WiFi唯一識別碼,signal:強度,flag:是否連接)[1]。

      第三部分則是測試數(shù)據(jù)[1],測試數(shù)據(jù)主要使用是時用戶交易時刻環(huán)境的相關(guān)數(shù)據(jù)(數(shù)據(jù)示例見表3),數(shù)據(jù)是2017年9月前兩周的交易數(shù)據(jù),包含測試數(shù)據(jù)ID,用戶ID,商場ID,行為時間戳,行為發(fā)生時位置—經(jīng)度,行為發(fā)生時位置-緯度,行為發(fā)生時WiFi環(huán)境[1]。

      在使用算法進(jìn)行模型建設(shè)之前,對數(shù)據(jù)的處理是不可避免而且必要的環(huán)節(jié),例如對用戶在店鋪內(nèi)的交易數(shù)據(jù)中的WiFi_info進(jìn)行切分解析,還有運用mapreduce分布式計算方式從用戶維度對數(shù)據(jù)進(jìn)行清洗處理,獲取到用戶的消費店鋪和消費次數(shù)等信息,以便后續(xù)模型的建設(shè),還有對缺失值的填補,以及去除重復(fù)的垃圾數(shù)據(jù)。在算法方便本文主要采用兩種算法進(jìn)行對比,分別是XGBoost算法和Logistic Regression算法。下面對這兩種算法進(jìn)行簡要介紹與分析。

      2 算法介紹

      2.1 XGBoost

      GB算法中最典型的基學(xué)習(xí)器是決策樹,尤其是CART,GBDT是GB和DT的結(jié)合,需要注意的是這里的決策樹是回歸樹,首先,XGBoost是Gradient Boosting的一種高效系統(tǒng)實現(xiàn),并不是一種單一算法。XGBoost里面的基學(xué)習(xí)器除了用tree(gbtree),也可用線性分類器(gblinear)[2]。而GBDT則特指梯度提升決策樹算法[3]。

      XGBoost相對于普通gbm的實現(xiàn),可能具有以下的一些優(yōu)勢:(1)顯式地將樹模型的復(fù)雜度作為正則項加在優(yōu)化目標(biāo)。(2)公式推導(dǎo)里用到了二階導(dǎo)數(shù)信息,而普通的GBDT只用到一階。(3)允許使用column(feature) sampling來防止過擬合,借鑒了Random Forest的思想,sklearn里的gbm好像也有類似實現(xiàn)。(4)實現(xiàn)了一種分裂節(jié)點尋找的近似算法,用于加速和減小內(nèi)存消耗。(5)節(jié)點分裂算法能自動利用特征的稀疏性。(6)data事先排好序并以block的形式存儲,利于并行計算。(7)支持分布式計算可以運行在MPI,YARN上,得益于底層支持容錯的分布式通信框架rabit。

      2.2 Logistic Regression算法

      Logistic Regression(邏輯回歸)是當(dāng)前業(yè)界比較常用的機器學(xué)習(xí)方法,用于估計某種事物的可能性。類似某用戶購買某商品的可能性,某病人患有某種疾病的可能性等。這個世界是隨機的(當(dāng)然了,人為的確定性系統(tǒng)除外,但也有可能有噪聲或產(chǎn)生錯誤的結(jié)果,只是這個錯誤發(fā)生的可能性太小了,小到千萬年不遇,小到忽略不計而已),所以萬物的發(fā)生都可以用可能性或者幾率(Odds)來表達(dá)[4]?!皫茁省敝傅氖悄呈挛锇l(fā)生的可能性與不發(fā)生的可能性的比值。Logistic regression可以用來回歸,也可以用來分類,主要是二分類。它給我們提供的就是樣本屬于正類的可能性是多少。

      3 實驗過程及結(jié)果

      3.1 實驗過程

      3.1.1 訓(xùn)練集劃分

      在訓(xùn)練集劃分上,筆者簡單地將訓(xùn)練數(shù)據(jù)的最后7天劃分為訓(xùn)練區(qū)間,此前的作為特征提取區(qū)間。線上預(yù)測時使用全部數(shù)據(jù)作為特征提取區(qū)間。本地驗證時,直接從訓(xùn)練集中拿出最后3天作為驗證集。本地驗證時不更新特征提取區(qū)間(即仍然使用7.1—8.24作為特征提取區(qū)間),降低了實現(xiàn)上的復(fù)雜性。

      3.1.2 特征構(gòu)造

      (1)標(biāo)記特征。

      記錄中是否有連接的WiFi。

      記錄中是含否有null。

      記錄中WiFi與候選shop出現(xiàn)過的WiFi重合的個數(shù)。

      (2)“總量—比例”特征。

      該mall的總歷史記錄數(shù)、候選shop在其中的占比。

      該user的總歷史記錄數(shù)、候選shop在其中的占比。

      WiFi歷史上出現(xiàn)過的總次數(shù)、候選shop在其中的占比。

      在當(dāng)前排序位置(如最強、第二強、第三強…)上WiFi歷史上出現(xiàn)過的總次數(shù)、候選shop在其中的占比。

      連接的WiFi出現(xiàn)的總次數(shù)、候選shop在其中的占比。

      經(jīng)緯度網(wǎng)格(將經(jīng)緯度按不同精度劃分成網(wǎng)格)中的總記錄數(shù)、候選shop在其中的占比。

      對于特征3、4,每條記錄中的10個WiFi由強到弱排列,可生成10個特征。

      (3)差值特征。

      WiFi強度—候選shop的歷史記錄中該WiFi的平均強度。

      WiFi強度—候選shop的歷史記錄中該WiFi的最小強度。

      WiFi強度—候選shop的歷史記錄中該WiFi的最大強度。

      3個WiFi強度差值特征,按照信號強度由強到弱排列,可生成10個特征[3]。

      (4)距離特征。

      與候選shop位置的GPS距離(L2)。

      與候選shop歷史記錄中心位置的GPS距離(L2)。

      與候選shop對應(yīng)WiFi信號強度歷史均值的距離(L1,L2)[3]。

      (5)其他特征。

      特征中還包括多分類的輸出概率。另外,還有一些利用規(guī)則定義的距離特征,這里不再詳述。

      3.2 實驗結(jié)果

      通過對上述數(shù)據(jù)進(jìn)行清洗處理,構(gòu)造特征,然后分別訓(xùn)練了XGBoost和Logistic Regression兩個模型,其中評價標(biāo)準(zhǔn)為預(yù)測出的shop_id和標(biāo)準(zhǔn)答案中的shop_id相同,也就是評價標(biāo)準(zhǔn)為準(zhǔn)確率ACC=預(yù)測正確樣本總數(shù)/總樣本數(shù),得出結(jié)果如表4所示。

      由此結(jié)果可以看出,在此種業(yè)務(wù)背景之下,通過對數(shù)據(jù)的處理,特征的提取構(gòu)造等一系列處理方法,分別選用XGBoost算法和傳統(tǒng)的Logistic Regression算法進(jìn)行了對比,得出了在指標(biāo)為ACC的情況下的預(yù)測結(jié)果。

      4 結(jié)語

      本文提出了一種基于XGBoost的用戶定位與商鋪推薦方法,通過對用戶信息和商鋪數(shù)據(jù)的挖掘與探索,構(gòu)造出合適的特征,然后通過與傳統(tǒng)的Logistic Regression在評價標(biāo)準(zhǔn)為ACC的情況下進(jìn)行了對比,發(fā)現(xiàn)此種方法準(zhǔn)確率明顯高于傳統(tǒng)的方法,后續(xù)希望能夠通過這種方法結(jié)合現(xiàn)有的推薦系統(tǒng)實現(xiàn)對用戶的精準(zhǔn)推薦,實現(xiàn)算法的實際效益。

      [參考文獻(xiàn)]

      [1]阿里云.商場中精確定位用戶所在店鋪[EB/OL].(2018-05-26)[2018-11-05].https://tianchi.aliyun.com/competition/information.htm?spm=5176.11165261.5678.2.7d5148aesPuqnG&raceId=231620.

      [2]邱耀,楊國為.基于XGBoost算法的用戶行為預(yù)測與風(fēng)險分析[J].工業(yè)控制計算機,2018(9):44-45.

      [3]倪巍,王宗欣.基于接收信號強度測量的室內(nèi)定位算法[J].復(fù)旦學(xué)報(自然科學(xué)版),2004(1):72-76.

      [4]張昊,紀(jì)宏超,張紅宇.XGBoost算法在電子商務(wù)商品推薦中的應(yīng)用[J].物聯(lián)網(wǎng)技術(shù),2017(2):108-110.

      猜你喜歡
      分布式
      基于RTDS的分布式光伏并網(wǎng)建模研究
      基于預(yù)處理MUSIC算法的分布式陣列DOA估計
      基于點估計法的分布式電源的配置優(yōu)化
      一種用于微電網(wǎng)分布式發(fā)電的新型Buck-Boost逆變器
      基于DDS的分布式三維協(xié)同仿真研究
      西門子 分布式I/O Simatic ET 200AL
      家庭分布式儲能的發(fā)展前景
      第26屆IEEE并行及分布式處理國際會議
      凉城县| 黔西县| 中江县| 宜宾县| 无棣县| 四川省| 德化县| 宝应县| 志丹县| 乌审旗| 盈江县| 宁远县| 甘洛县| 儋州市| 西青区| 盘锦市| 紫金县| 永兴县| 抚顺县| 随州市| 墨江| 普安县| 龙陵县| 望城县| 大洼县| 石景山区| 屏南县| 滦平县| 会昌县| 石城县| 安庆市| 黄龙县| 兴化市| 宿松县| 庆城县| 武强县| 枞阳县| 尖扎县| 乐亭县| 永定县| 平阴县|