
美團(tuán)推薦算法實(shí)踐_數(shù)據(jù)分析師
推薦系統(tǒng)并不是新鮮的事物,在很久之前就存在,但是推薦系統(tǒng)真正進(jìn)入人們的視野,并且作為一個(gè)重要的模塊存在于各個(gè)互聯(lián)網(wǎng)公司,還是近幾年的事情。
隨著互聯(lián)網(wǎng)的深入發(fā)展,越來越多的信息在互聯(lián)網(wǎng)上傳播,產(chǎn)生了嚴(yán)重的信息過載。如果不采用一定的手段,用戶很難從如此多的信息流中找到對自己有價(jià)值的信息。
解決信息過載有幾種手段:一種是搜索,當(dāng)用戶有了明確的信息需求意圖后,將意圖轉(zhuǎn)換為幾個(gè)簡短的詞或者短語的組合(即query),然后將這些詞或短語組合提交到相應(yīng)的搜索引擎,再由搜索引擎在海量的信息庫中檢索出與query相關(guān)的信息返回給用戶;另外一種是推薦,很多時(shí)候用戶的意圖并不是很明確,或者很難用清晰的語義表達(dá),有時(shí)甚至連用戶自己都不清楚自己的需求,這種情況下搜索就顯得捉襟見肘了。尤其是近些年來,隨著電子商務(wù)的興起,用戶并非一定是帶著明確的購買意圖去瀏覽,很多時(shí)候是去“逛”的,這種情景下解決信息過載,理解用戶意圖,為用戶推送個(gè)性化的結(jié)果,推薦系統(tǒng)便是一種比較好的選擇。
美團(tuán)作為國內(nèi)發(fā)展較快的o2o網(wǎng)站,有著大量的用戶和豐富的用戶行為,這些為推薦系統(tǒng)的應(yīng)用和優(yōu)化提供了不可或缺的條件,接下來介紹我們在推薦系統(tǒng)的構(gòu)建和優(yōu)化過程中的一些做法,與大家共享。
從框架的角度看,推薦系統(tǒng)基本可以分為數(shù)據(jù)層、觸發(fā)層、融合過濾層和排序?qū)?。?shù)據(jù)層包括數(shù)據(jù)生成和數(shù)據(jù)存儲,主要是利用各種數(shù)據(jù)處理工具對原始日志進(jìn)行清洗,處理成格式化的數(shù)據(jù),落地到不同類型的存儲系統(tǒng)中,供下游的算法和模型使用。候選集觸發(fā)層主要是從用戶的歷史行為、實(shí)時(shí)行為、地理位置等角度利用各種觸發(fā)策略產(chǎn)生推薦的候選集。候選集融合和過濾層有兩個(gè)功能,一是對出發(fā)層產(chǎn)生的不同候選集進(jìn)行融合,提高推薦策略的覆蓋度和精度;另外還要承擔(dān)一定的過濾職責(zé),從產(chǎn)品、運(yùn)營的角度確定一些人工規(guī)則,過濾掉不符合條件的item。排序?qū)又饕抢?a href='/map/jiqixuexi/' style='color:#000;font-size:inherit;'>機(jī)器學(xué)習(xí)的模型對觸發(fā)層篩選出來的候選集進(jìn)行重排序。
同時(shí),對與候選集觸發(fā)和重排序兩層而言,為了效果迭代是需要頻繁修改的兩層,因此需要支持ABtest。為了支持高效率的迭代,我們對候選集觸發(fā)和重排序兩層進(jìn)行了解耦,這兩層的結(jié)果是正交的,因此可以分別進(jìn)行對比試驗(yàn),不會相互影響。同時(shí)在每一層的內(nèi)部,我們會根據(jù)用戶將流量劃分為多份,支持多個(gè)策略同時(shí)在線對比。
數(shù)據(jù)乃算法、模型之本。美團(tuán)作為一個(gè)交易平臺,同時(shí)具有快速增長的用戶量,因此產(chǎn)生了海量豐富的用戶行為數(shù)據(jù)。當(dāng)然,不同類型的數(shù)據(jù)的價(jià)值和反映的用戶意圖的強(qiáng)弱也有所不同。
用戶主動行為數(shù)據(jù)記錄了用戶在美團(tuán)平臺上不同的環(huán)節(jié)的各種行為,這些行為一方面用于候選集觸發(fā)算法(在下一部分介紹)中的離線計(jì)算(主要是瀏覽、下單),另外一方面,這些行為代表的意圖的強(qiáng)弱不同,因此在訓(xùn)練重排序模型時(shí)可以針對不同的行為設(shè)定不同的回歸目標(biāo)值,以更細(xì)地刻畫用戶的行為強(qiáng)弱程度。此外,用戶對deal的這些行為還可以作為重排序模型的交叉特征,用于模型的離線訓(xùn)練和在線預(yù)測。
上文中我們提到了數(shù)據(jù)的重要性,但是數(shù)據(jù)的落腳點(diǎn)還是算法和模型。單純的數(shù)據(jù)只是一些字節(jié)的堆積,我們必須通過對數(shù)據(jù)的清洗去除數(shù)據(jù)中的噪聲,然后通過算法和模型學(xué)習(xí)其中的規(guī)律,才能將數(shù)據(jù)的價(jià)值最大化。在本節(jié)中,將介紹推薦候選集觸發(fā)過程中用到的相關(guān)算法。
提到推薦,就不得不說協(xié)同過濾,它幾乎在每一個(gè)推薦系統(tǒng)中都會用到?;镜乃惴ǚ浅:唵?,但是要獲得更好的效果,往往需要根據(jù)具體的業(yè)務(wù)做一些差異化的處理。
則logLikelihoodRatio=2 * (matrixEntropy – rowEntropy – columnEntropy)
其中
rowEntropy = entropy(k11, k12) + entropy(k21, k22)
columnEntropy = entropy(k11, k21) + entropy(k12, k22)
matrixEntropy = entropy(k11, k12, k21, k22)
(entropy為幾個(gè)元素組成的系統(tǒng)的香農(nóng)熵)
對于移動設(shè)備而言,與PC端最大的區(qū)別之一是移動設(shè)備的位置是經(jīng)常發(fā)生變化的。不同的地理位置反映了不同的用戶場景,在具體的業(yè)務(wù)中可以充分利用用戶所處的地理位置。在推薦的候選集觸發(fā)中,我們也會根據(jù)用戶的實(shí)時(shí)地理位置、工作地、居住地等地理位置觸發(fā)相應(yīng)的策略。
區(qū)域消費(fèi)熱單
區(qū)域購買熱單
搜索是一種強(qiáng)用戶意圖,比較明確的反應(yīng)了用戶的意愿,但是在很多情況下,因?yàn)楦鞣N各樣的原因,沒有形成最終的轉(zhuǎn)換。盡管如此,我們認(rèn)為,這種情景還是代表了一定的用戶意愿,可以加以利用。具體做法如下:
對于協(xié)同過濾而言,user之間或者deal之間的圖距離是兩跳,對于更遠(yuǎn)距離的關(guān)系則不能考慮在內(nèi)。而圖算法可以打破這一限制,將user與deal的關(guān)系視作一個(gè)二部圖,相互間的關(guān)系可以在圖上傳播。Simrank[2]是一種衡量對等實(shí)體相似度的圖算法。它的基本思想是,如果兩個(gè)實(shí)體與另外的相似實(shí)體有相關(guān)關(guān)系,那它們也是相似的,即相似性是可以傳播的。
Let s(c,d) denote the similarity between items c and d, for c != d
O(A),O(B): the set of out-neighbors for node A or node B
I(c),I(d): the set of in-neighbors for node c or node d
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
LSTM 模型輸入長度選擇技巧:提升序列建模效能的關(guān)鍵? 在循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)家族中,長短期記憶網(wǎng)絡(luò)(LSTM)憑借其解決長序列 ...
2025-07-11CDA 數(shù)據(jù)分析師報(bào)考條件詳解與準(zhǔn)備指南? ? 在數(shù)據(jù)驅(qū)動決策的時(shí)代浪潮下,CDA 數(shù)據(jù)分析師認(rèn)證愈發(fā)受到矚目,成為眾多有志投身數(shù) ...
2025-07-11數(shù)據(jù)透視表中兩列相乘合計(jì)的實(shí)用指南? 在數(shù)據(jù)分析的日常工作中,數(shù)據(jù)透視表憑借其強(qiáng)大的數(shù)據(jù)匯總和分析功能,成為了 Excel 用戶 ...
2025-07-11尊敬的考生: 您好! 我們誠摯通知您,CDA Level I和 Level II考試大綱將于 2025年7月25日 實(shí)施重大更新。 此次更新旨在確保認(rèn) ...
2025-07-10BI 大數(shù)據(jù)分析師:連接數(shù)據(jù)與業(yè)務(wù)的價(jià)值轉(zhuǎn)化者? ? 在大數(shù)據(jù)與商業(yè)智能(Business Intelligence,簡稱 BI)深度融合的時(shí)代,BI ...
2025-07-10SQL 在預(yù)測分析中的應(yīng)用:從數(shù)據(jù)查詢到趨勢預(yù)判? ? 在數(shù)據(jù)驅(qū)動決策的時(shí)代,預(yù)測分析作為挖掘數(shù)據(jù)潛在價(jià)值的核心手段,正被廣泛 ...
2025-07-10數(shù)據(jù)查詢結(jié)束后:分析師的收尾工作與價(jià)值深化? ? 在數(shù)據(jù)分析的全流程中,“query end”(查詢結(jié)束)并非工作的終點(diǎn),而是將數(shù) ...
2025-07-10CDA 數(shù)據(jù)分析師考試:從報(bào)考到取證的全攻略? 在數(shù)字經(jīng)濟(jì)蓬勃發(fā)展的今天,數(shù)據(jù)分析師已成為各行業(yè)爭搶的核心人才,而 CDA(Certi ...
2025-07-09【CDA干貨】單樣本趨勢性檢驗(yàn):捕捉數(shù)據(jù)背后的時(shí)間軌跡? 在數(shù)據(jù)分析的版圖中,單樣本趨勢性檢驗(yàn)如同一位耐心的偵探,專注于從單 ...
2025-07-09year_month數(shù)據(jù)類型:時(shí)間維度的精準(zhǔn)切片? ? 在數(shù)據(jù)的世界里,時(shí)間是最不可或缺的維度之一,而year_month數(shù)據(jù)類型就像一把精準(zhǔn) ...
2025-07-09CDA 備考干貨:Python 在數(shù)據(jù)分析中的核心應(yīng)用與實(shí)戰(zhàn)技巧? ? 在 CDA 數(shù)據(jù)分析師認(rèn)證考試中,Python 作為數(shù)據(jù)處理與分析的核心 ...
2025-07-08SPSS 中的 Mann-Kendall 檢驗(yàn):數(shù)據(jù)趨勢與突變分析的有力工具? ? ? 在數(shù)據(jù)分析的廣袤領(lǐng)域中,準(zhǔn)確捕捉數(shù)據(jù)的趨勢變化以及識別 ...
2025-07-08備戰(zhàn) CDA 數(shù)據(jù)分析師考試:需要多久?如何規(guī)劃? CDA(Certified Data Analyst)數(shù)據(jù)分析師認(rèn)證作為國內(nèi)權(quán)威的數(shù)據(jù)分析能力認(rèn)證 ...
2025-07-08LSTM 輸出不確定的成因、影響與應(yīng)對策略? 長短期記憶網(wǎng)絡(luò)(LSTM)作為循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的一種變體,憑借獨(dú)特的門控機(jī)制,在 ...
2025-07-07統(tǒng)計(jì)學(xué)方法在市場調(diào)研數(shù)據(jù)中的深度應(yīng)用? 市場調(diào)研是企業(yè)洞察市場動態(tài)、了解消費(fèi)者需求的重要途徑,而統(tǒng)計(jì)學(xué)方法則是市場調(diào)研數(shù) ...
2025-07-07CDA數(shù)據(jù)分析師證書考試全攻略? 在數(shù)字化浪潮席卷全球的當(dāng)下,數(shù)據(jù)已成為企業(yè)決策、行業(yè)發(fā)展的核心驅(qū)動力,數(shù)據(jù)分析師也因此成為 ...
2025-07-07剖析 CDA 數(shù)據(jù)分析師考試題型:解鎖高效備考與答題策略? CDA(Certified Data Analyst)數(shù)據(jù)分析師考試作為衡量數(shù)據(jù)專業(yè)能力的 ...
2025-07-04SQL Server 字符串截取轉(zhuǎn)日期:解鎖數(shù)據(jù)處理的關(guān)鍵技能? 在數(shù)據(jù)處理與分析工作中,數(shù)據(jù)格式的規(guī)范性是保證后續(xù)分析準(zhǔn)確性的基礎(chǔ) ...
2025-07-04CDA 數(shù)據(jù)分析師視角:從數(shù)據(jù)迷霧中探尋商業(yè)真相? 在數(shù)字化浪潮席卷全球的今天,數(shù)據(jù)已成為企業(yè)決策的核心驅(qū)動力,CDA(Certifie ...
2025-07-04CDA 數(shù)據(jù)分析師:開啟數(shù)據(jù)職業(yè)發(fā)展新征程? ? 在數(shù)據(jù)成為核心生產(chǎn)要素的今天,數(shù)據(jù)分析師的職業(yè)價(jià)值愈發(fā)凸顯。CDA(Certified D ...
2025-07-03