日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

阿里凑单算法首次公开!打包购商品挖掘系统解析

發(fā)布時間:2024/9/3 windows 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 阿里凑单算法首次公开!打包购商品挖掘系统解析 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

阿里妹導(dǎo)讀:你是否也曾遇到類似的情況——差5塊錢就能包郵,跨店滿400減50就少20怎么辦?湊單作為購物券導(dǎo)購鏈路的一個重要環(huán)節(jié),旨在幫助你找到合適的商品。如何在湊單場景突破找相似、發(fā)現(xiàn)驚喜的同時做到成交翻倍,實(shí)現(xiàn)體驗(yàn)和數(shù)據(jù)上的雙贏?今天我們一起來破解。

一、背景
湊單作為購物券導(dǎo)購鏈路的一個重要環(huán)節(jié),旨在幫助用戶找到商品,達(dá)成某個滿減門檻(比如滿400減50),完成跨店湊單,完善購物券整個鏈路的體驗(yàn)。滿減購物券作為大促中使用最廣泛的一種營銷手段,優(yōu)勢遠(yuǎn)大于紅包、商品打折等優(yōu)惠活動,它不僅能給用戶帶來切實(shí)的優(yōu)惠,而且能讓用戶買的更多,提升客單價。湊單作為用券的重要鏈路,旨在幫助消費(fèi)者找到能使用同門檻優(yōu)惠券的商品。

近期,阿里的湊單設(shè)計相比往年,有兩個重大突破,首先是產(chǎn)品形態(tài)上的改變,往年,湊單只是一個商品推薦頁,今年,湊單能夠支持搜索、價格篩選、類目篩選、銷量排序、價格排序等搜索功能。其次,算法上做了重大突破,基于Graph Embedding的bundle mining,bundle是打包購的意思,我們認(rèn)為湊單的重要場景是當(dāng)用戶已經(jīng)加購了商品A,還想找一個能一起打包買的商品B,而不是想找跟A相似的商品C,傳統(tǒng)的u2i、相似i2i并不能滿足湊單場景的需求,為了突破找相似等經(jīng)常被人詬病的體驗(yàn),我們甚至不能有u2i、相似i2i等邏輯,所以bundle mining變成湊單算法優(yōu)化的重點(diǎn),不僅能提升豐富性的體驗(yàn),還能提升轉(zhuǎn)化效率。

二、核心算法

1、基本思路

圖是一種抽象程度高、表達(dá)能力強(qiáng)的數(shù)據(jù)結(jié)構(gòu),它通過對節(jié)點(diǎn)和邊的定義來描述實(shí)體和實(shí)體之間的關(guān)聯(lián)關(guān)系。常用的圖有社交關(guān)系網(wǎng)絡(luò)、商品網(wǎng)絡(luò)、知識圖譜等等。

用戶行為是一個天然的網(wǎng)絡(luò)圖,邊和節(jié)點(diǎn)往往有著各種豐富的信息,graph embedding是學(xué)習(xí)節(jié)點(diǎn)隱表示向量,在一個連續(xù)向量空間中對節(jié)點(diǎn)的關(guān)聯(lián)關(guān)系進(jìn)行編碼,便于計算節(jié)點(diǎn)之間的關(guān)聯(lián)關(guān)系,同時,graph具有傳播能力,通過random walk可以挖掘多度關(guān)系,能有效的提升覆蓋度,擴(kuò)大召回。

Graph Embedding是學(xué)術(shù)界一個重要研究方向,比如deep walk,是語言模型和無監(jiān)督學(xué)習(xí)從單詞序列擴(kuò)展到圖結(jié)構(gòu)上的一個典型方法,該方法將截斷游走的序列當(dāng)成句子進(jìn)行學(xué)習(xí),之后采用word2vec中Skip-Gram模型進(jìn)行訓(xùn)練,得到每個節(jié)點(diǎn)的embedding向量。Line只針對邊進(jìn)行采樣,Node2vec可以調(diào)節(jié)參數(shù)來進(jìn)行BFS或者DFS的抽樣。

所以Graph Embedding的基本思路是,對graph進(jìn)行采樣(Sampling),采出來的序構(gòu)建模型(Embedding)。

2、主要技術(shù)

結(jié)合我們的場景,要挖掘共同購買的關(guān)系,直接通過item-item的關(guān)系挖掘也可以做到,傳統(tǒng)的協(xié)同過濾,也可以做到,為什么我們還需要構(gòu)建graph?因?yàn)間raph具有傳播能力,它不僅能有效的提取出來直接關(guān)聯(lián),而且可以通過游走策略,挖掘出來二度、三度的關(guān)系。我們認(rèn)為,朋友的朋友,也是朋友,也存在一定的弱關(guān)聯(lián),有效的利用這種傳播能力,能解決購買數(shù)據(jù)的稀疏性,大大的提升覆蓋。

我們主要有三方面的工作:

一是,基于用戶購買行為構(gòu)建graph,節(jié)點(diǎn):商品,邊:商品間同時購買的行為,權(quán)重:同時購買的比重,可以是購買次數(shù)、購買時間、金額等feature;

二是,基于權(quán)重Sampling(weighted walk)作為正樣本的候選,負(fù)樣本從用戶非購買行為中隨機(jī)抽樣;

三是,embedding部分將無監(jiān)督模型升級成有監(jiān)督模型,將基于weighted walk采出來的序,構(gòu)造成item-item的pair對,送給有監(jiān)督模型(DNN)訓(xùn)練。下圖是算法框架圖。

算法框架圖

a) 構(gòu)建Graph

上文提到,我們要挖掘商品間共同購買的關(guān)系(bundle mining),類似買了又買的問題,所以,我們構(gòu)建的graph是帶權(quán)重的商品網(wǎng)絡(luò),節(jié)點(diǎn):商品,邊:商品間共同購買的關(guān)系,權(quán)重:共同購買次數(shù)、購買時間。

為什么需要帶權(quán)重的Graph?因?yàn)閞andom walk等傳統(tǒng)方法不適用商品網(wǎng)絡(luò),商品節(jié)點(diǎn)動輒上千萬,其中大部分節(jié)點(diǎn)的關(guān)聯(lián)性是很弱的,也就是冷門商品居多,只有少部分商品構(gòu)建的graph是熱點(diǎn),如果采用random walk去采樣,會采出很多冷門節(jié)點(diǎn)的序列,所以我們基于邊的權(quán)重去采樣(weighted walk),使采樣盡量往熱門節(jié)點(diǎn)方向游走,這樣采樣出來的樣本置信度才更高。

因此,我們的輸入是一個帶weight的graph ,Graph定義:G = (V,E,W),V = vertex (頂點(diǎn)或者節(jié)點(diǎn),在bundle的問題中,特指商品),E = edge(邊,在bundle的問題中,特指共同購買) ,W = weight(邊的權(quán)重,共同購買的次數(shù)、時間),如下圖,接下來就要進(jìn)行sampling。

商品graph

b)Sampling

傳統(tǒng)的方法,比如deep walk,它的Sampling本質(zhì)上是有兩部分,首先,通過random walk的方式進(jìn)行游走截斷,其次,在仍給word2vec中Skip-Gram模型進(jìn)行embedding之前,用negative sampling的方式去構(gòu)造樣本;這種隨機(jī)采樣的方法會大概率的將熱門節(jié)點(diǎn)采集為負(fù)樣本,這種方式適用于語言模型,因?yàn)樵谧匀徽Z言中,熱門的單詞均為無用單詞(比如he、she、it、is、the)。對于我們的商品網(wǎng)絡(luò),剛好相反,熱門商品往往是最重要的樣本,如果采用negative sampling的方式去構(gòu)造樣本,模型肯定是學(xué)不出來。因此,我們基于邊的權(quán)重去采樣(weighted walk),使采樣盡量往熱門節(jié)點(diǎn)方向游走,以下圖為例:

帶權(quán)重的商品graph

舉個例子來說,假設(shè)游走2步,從節(jié)點(diǎn)A出發(fā),隨機(jī)取下一個鄰居節(jié)點(diǎn)時,如果是random walk算法,它會等概率的游走到B或C節(jié)點(diǎn),但是我們的算法會以7/8的概率取節(jié)點(diǎn)C,再會以8/12的概率游走到節(jié)點(diǎn)D,最終很大概率上會采出來一條序walk=(A,C,D),對于原始graph,A和D是沒有關(guān)聯(lián)的,但是通過weighted walk,能夠有效的挖掘出A和D的關(guān)系,算法詳見:

算法實(shí)現(xiàn)是在odps graph平臺實(shí)現(xiàn)的,一個分布式的圖計算平臺,離線graph有2億條邊,3千萬節(jié)點(diǎn),10分鐘跑完所有的數(shù)據(jù),實(shí)時部分,我們實(shí)現(xiàn)了每分鐘最高可更新10w的Graph邊的結(jié)構(gòu),如何在分布式odps graph平臺實(shí)現(xiàn)這套算法詳見另一篇ata,盡請期待

c)Embedding

上一部分介紹了如何構(gòu)建了帶權(quán)重的概率圖,基于帶權(quán)重的采樣(weighted walk)作為正樣本的候選,負(fù)樣本從用戶非購買行為中隨機(jī)抽樣;這一部分主要介紹embedding的部分,將基于weighted walk采出來的序,構(gòu)造成item-item的pair對,送給embedding模型,我們構(gòu)造了一個有監(jiān)督embedding模型(DNN),規(guī)避無監(jiān)督模型無法離線評估模型效果的問題。模型結(jié)構(gòu)如下圖。

有監(jiān)督的embedding模型(DNN)

三、實(shí)現(xiàn)
1、離線

a)訓(xùn)練:離線模型在PAI平臺上用tensorflow框架實(shí)現(xiàn),抽取了歷史50天的全網(wǎng)成交數(shù)據(jù),大概抽取3000萬節(jié)點(diǎn),構(gòu)建的graph,在odps graph平臺做完weighted walk,產(chǎn)出2億條樣本,也就是item-item的pair對,訓(xùn)練至收斂需要2小時的時間?

b)預(yù)測:從全網(wǎng)所有行為中,隨機(jī)抽取幾十億條pair對,去做預(yù)測,給每對item pair預(yù)測一個score??

c)上線:對每個種子商品取topN的bundle商品,打到搜索引擎的倒排和正排字段,從qp中取出每個用戶的種子商品,基于倒排字段召回bundle商品,基于正排字段做bundle排序

2、實(shí)時

用戶購買行為,日常和大促差異很大,為了能夠?qū)崟r的捕獲用戶實(shí)時行為,我們在porsche上建了一套實(shí)時計算bundle mining的流程:

a)數(shù)據(jù)預(yù)處理:在porsche上對用戶實(shí)時日志進(jìn)行收集,按離線的數(shù)據(jù)格式處理成實(shí)時的數(shù)據(jù)流??

b)Sampling:發(fā)送給odps graph實(shí)時計算平臺,構(gòu)建graph,做weighted walk,生成序,再通過swift消息發(fā)出??

c)Embedding:在porsche上做DNN模型訓(xùn)練和實(shí)時預(yù)測?

d)數(shù)據(jù)后處理:計算item的topN的bundle item list,實(shí)時寫到dump和引擎

四、實(shí)驗(yàn)和結(jié)果
雙十一預(yù)熱期間,我們將bundle算法上線對比基準(zhǔn)桶,提升很明顯

1、點(diǎn)擊:離線版bundle算法對比基準(zhǔn)桶,ipv提升13%,實(shí)時版bundle算法在此基礎(chǔ)上又提升4%,如下圖:

2、豐富性:bundle算法對比基準(zhǔn)桶,人均曝光葉子類目提升88%,人均曝光一級類目提升43%,如下圖。

五、總結(jié)
graph的核心優(yōu)勢,具有傳播能力,朋友的朋友,也是朋友,傳統(tǒng)i2i(統(tǒng)計版i2i),只統(tǒng)計直接關(guān)系,而我們構(gòu)建的共同購買的graph,可以通過游走挖掘多度關(guān)系,彌補(bǔ)購買行為稀疏的問題,有效的提升了覆蓋率,我們離線實(shí)驗(yàn)發(fā)現(xiàn),對比統(tǒng)計版本auc提升非常明顯。

我們實(shí)現(xiàn)了實(shí)時大規(guī)模graph更新,每分鐘最高可更新10萬量級邊,雙11這么大的qps能夠平穩(wěn)運(yùn)行。

六、未來和展望
湊單在未來還要繼續(xù)努力,我們還有不完善的地方,在產(chǎn)品形態(tài)上,第一,價格preview沒有做出來,用戶不知道自己已經(jīng)加購了多少,還差多少,能用多少優(yōu)惠券,我們希望下次能在湊單頁幫用戶實(shí)時的算出湊單進(jìn)度,第二,我們這次沒有實(shí)時捕捉到入口種子商品,下次我們期望能做到,不同入口點(diǎn)進(jìn)去,湊單的商品能和入口種子商品強(qiáng)相關(guān);在算法優(yōu)化上,把新穎性做強(qiáng),嘗試用graph bandit的方法,給用戶投放一些沒看過的但又相關(guān)的品類,根據(jù)投放的收益,設(shè)計一個合理的機(jī)制去explore。

總結(jié)

以上是生活随笔為你收集整理的阿里凑单算法首次公开!打包购商品挖掘系统解析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。