最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

商品引薦系統(tǒng)淺析

2023-08-09 23:21 作者:bili_51805000088  | 我要投稿

商品引薦系統(tǒng)淺析

一、綜述

本文主要做引薦系統(tǒng)淺析,主要引見引薦系統(tǒng)的定義,引薦系統(tǒng)的根底框架,簡單引見設計引薦的相關辦法以及架構(gòu)。適用于局部對引薦系統(tǒng)感興味的同窗以及有相關根底的同窗,自己程度有限,歡送大家指正。

二、商品引薦系統(tǒng)

2.1 引薦系統(tǒng)的定義

引薦系統(tǒng)實質(zhì)上還是處理信息過載的問題,協(xié)助用戶找到他們感興味的物品,深度發(fā)掘用戶潛在的興味。

2.2 引薦架構(gòu)

其實引薦系統(tǒng)的中心流程只要召回、排序、重排。


懇求流程

當一個用戶翻開一個頁面,這個時分前端會攜帶用戶信息(pin或者uuid等)去懇求后臺接口(經(jīng)過color間接調(diào)用),當后臺收到懇求后普通會先依據(jù)用戶標識停止分流獲取相關戰(zhàn)略配置(ab戰(zhàn)略),這些戰(zhàn)略去決議接下來會調(diào)用召回模塊、排序模塊以及重排模塊的哪個接口。普通召回模塊分多路召回,每路召回擔任召回多個商品,排序和重排擔任調(diào)整這些商品的次第。最后選擇出適宜的商品并停止價錢、圖片等相關信息補充展示給用戶。用戶會依據(jù)本人能否感興味選擇點擊或者不點擊,這些觸及用戶的行為會經(jīng)過日志上報到數(shù)據(jù)平臺,為之后效果剖析和應用用戶行為引薦商品奠定根底。


其實有些問題想說一說:

為什么要采取召回、排序、重排這種漏斗分層架構(gòu)?


(1)從性能方面

終極:從百萬級的商品庫挑選出用戶感興味的個位數(shù)級別的商品。

復雜的排序模型線上推斷耗時嚴重,需求嚴厲控制進入排序模型的商品數(shù)量。需求停止拆解

(2)從目的方面

召回模塊:召回模塊的任務是快速從大量的物品中挑選出一局部候選物品,目的是不要漏掉用戶可能會喜歡的物品。召回模塊通常采用多路召回,運用一些簡化的特征或模型。

排序模塊:排序模塊的任務是精準排序,依據(jù)用戶的歷史行為、興味、偏好等信息,對召回模塊挑選出的候選物品停止排序。排序模塊通常運用一些復雜的模型。

重排模塊:重排模塊的任務是對排序模塊的結(jié)果停止二次排序或調(diào)整,以進一步進步引薦的精確性和個性化水平。重排模塊通常運用一些簡單而有效的算法。

什么是ab實驗?

參考論文:Overlapping Experiment Infrastructure: More, Better, Faster Experimentation(google2010)

只要在線實驗才干真正評價模型優(yōu)劣,ab實驗能夠快速考證實驗的效果,快速迭代模型。減少上線新功用的風險。

ab算法:Hash(uuid+實驗id+創(chuàng)立時間戳)%100

特性:分流+正交

2.3召回

召回層的存在僅僅是為用戶從寬廣的商品池子中初篩出一批還不錯的商品。為了均衡計算速度與召回率(正樣本占全部正樣本的比例)指標之間的矛盾,采用多路召回戰(zhàn)略,每路召回戰(zhàn)略只思索其中的單一特征或戰(zhàn)略。

2.3.1多路召回的優(yōu)劣

多路召回:采用不同的戰(zhàn)略、特征或者簡單模型分別召回一局部候選集,然后把候選集混合在一同供排序運用。召回率高,速度快,多路召回互相補充。

多路召回中每路召回的截斷個數(shù)K是個超參數(shù),需求人工調(diào)參,本錢高;召回通路存在重合問題,冗余。

能否存在一種召回能夠替代多路召回,向量召回應用而生,就目前而言,依然是以向量召回為主,其他召回為輔的架構(gòu)。

2.3.2召回分類

主要分為非個性化召回,個性化召回兩大類。非個性化召回主要是停止熱點推送,引薦范疇馬太效應嚴重,20%的商品奉獻80%的點擊。個性化召回主要是開掘用戶感興味的商品,著重處置每個用戶的差別點,進步商品的多樣性,堅持用戶的粘性。

非個性化召回

(1) 搶手召回

近7天高點擊、高點贊、高銷量商品召回

(2)新品召回

最新上架的商品召回

個性化召回

(1)標簽召回、地域召回

標簽召回:用戶感興味的品類、品牌、店鋪召回等

地域召回:依據(jù)用戶的地域召回地域內(nèi)的優(yōu)質(zhì)商品。

(2)cf召回

協(xié)同過濾算法是基于用戶行為數(shù)據(jù)發(fā)掘用戶的行為偏好,從而依據(jù)用戶的行為偏好為其引薦物品,其依據(jù)的是用戶和物品的行為矩陣(共現(xiàn)矩陣)。用戶行為普通包括閱讀、點贊、加購、點擊、關注、分享等等。

協(xié)同過濾分為三大類:基于用戶的協(xié)同過濾(UCF)和基于物品的協(xié)同過濾(ICF)和基于模型的協(xié)同過濾(隱語義模型)。能否為用戶引薦某個物品,首先要把用戶和物品停止關聯(lián),而停止關聯(lián)的點是另一個物品還是另一個用戶,決議了這屬于哪個類型的協(xié)同過濾。而基于隱語義模型是依據(jù)用戶行為數(shù)據(jù)停止自動聚類發(fā)掘用戶的潛在興味特征。從而經(jīng)過潛在興味特征對用戶和物品停止關聯(lián)。

基于物品的協(xié)同過濾(ICF):判別能否為用戶引薦某個物品,首先依據(jù)用戶歷史行為記載的物品和這個物品的類似關系來推斷用戶對這個物品的興味度,從而判別我們能否引薦這個物品。整個協(xié)同過濾過程主要分為以下幾步:計算物品之間的類似度,計算用戶對物品的興味度,排序截取結(jié)果。


商品類似度計算:

權(quán)衡類似度主要有以下幾種方式:夾角余弦間隔,杰卡德公式。由于用戶或物品的表示方式的多樣性,使得這些類似度的計算十分靈敏。我們能夠應用用戶和物品的行為矩陣來去計算類似度,也能夠依據(jù)用戶行為、物品屬性和上下文關系結(jié)構(gòu)用戶和物品的向量表示去計算類似性。

夾角余弦間隔公式: cos?θ=(x1*x2+y1*y2)/(√(x12+y12 )*√(x22+y22 ))

杰卡德公式J(A,B)=(|A?B|)/(|A?B|)


夾角余弦間隔公式計算商品a和b的類似度:

Wab=(1*0+0*1+1*0+1*1)/(√(1^2+0^2+1^2+1^2 )*√(0^2+1^2+0^2+1^2 ))=1/√6

spark完成ICF

問題:冷啟動問題,長尾效應。

(3)向量召回

向量化召回:經(jīng)過學慣用戶與物品低維向量化表征,將召回建模成向量空間內(nèi)的近鄰搜索問題,有效提升了召回的泛化才能與多樣性,是引薦引擎的中心召回通道。

向量:萬物皆可向量化,Embedding就是用一個低維稠密的向量表示一個對象(詞語或者商品),主要作用是將稠密向量轉(zhuǎn)換成稠密向量(降維的效果),這里的表示包含著一定的深意,使其可以表達出對象的一局部特征,同時向量之間的間隔反映對象之間的類似性。

向量召回步驟:離線鍛煉生成向量,在線向量檢索。

1.離線鍛煉生成向量

word2vec:詞向量的鼻祖,由三層神經(jīng)網(wǎng)絡:輸入層,躲藏層,輸出層,躲藏層沒有激活函數(shù),輸出層用了softmax計算概率。

目的函數(shù)

網(wǎng)絡構(gòu)造:

總的來說:輸入是詞語的序列,經(jīng)過模型鍛煉能夠得到每個詞語對應的向量。應用在引薦范疇就是輸入是用戶的點擊序列,經(jīng)過模型鍛煉得到每個商品的向量。

優(yōu)劣:簡單高效,但是只思索了行為序列,沒有思索其他特征。

雙塔模型:

網(wǎng)絡構(gòu)造:分別稱為User塔和物品塔;其中User塔接納用戶側(cè)特征作為輸入比方用戶id、性別、年齡、感興味的三級品類、用戶點擊序列、用戶地址等;Item塔承受商品側(cè)特征,比方商品id、類目id、價錢、近三天訂單量等。數(shù)據(jù)鍛煉:(正樣本數(shù)據(jù),1)(負樣本,0)正樣本:點擊的商品,負樣本:全局隨機商品樣本(或者同批次其他用戶點擊樣本)

優(yōu)劣:高效,圓滿契合召回特性,在線懇求得到用戶向量,檢索召回item向量,泛化性高;用戶塔和item塔割裂,只在最后做了交互。

2.在線向量檢索

向量檢索:是一種基于向量空間模型(Vector Space Model)的信息檢索辦法,用于在大范圍文本匯合中快速查找與查詢向量最類似的文檔向量。在信息檢索、引薦系統(tǒng)、文本分類中得到普遍應用。

向量檢索的過程是計算向量之間的類似度,最后返回類似度較高的TopK向量返回,而向量類似度計算有多種方式。計算向量類似性得方式有歐式間隔、內(nèi)積、余弦間隔。歸一化后,內(nèi)積與余弦類似度計算公式等價。

向量檢索的實質(zhì)是近似近鄰搜索(ANNS),盡可能減小查詢向量的搜索范圍,從而進步查詢速度。

目前在工業(yè)界被大范圍用到的向量檢索算法根本能夠分為以下3類:

  • 部分敏理性哈希(LSH)

  • 基于圖(HNSW)

  • 基于乘積量化

簡單引見LSH

LSH算法的中心思想是:將原始數(shù)據(jù)空間中的兩個相鄰數(shù)據(jù)點經(jīng)過相同的映射或投影變換后,這兩個數(shù)據(jù)點在新的數(shù)據(jù)空間中依然相鄰的概率很大,而不相鄰的數(shù)據(jù)點被映射到同一個桶的概率很小。

相比于暴力搜索遍歷數(shù)據(jù)集中的一切點,而運用哈希,我們首先找到查詢樣本落入在哪個桶中,假如空間的劃分是在我們想要的類似性度量下停止分割的,則查詢樣本的最近鄰將極有可能落在查詢樣本的桶中,如此我們只需求在當前的桶中遍歷比擬,而不用在一切的數(shù)據(jù)集中停止遍歷。當哈希函數(shù)數(shù)目H獲得太大,查詢樣本與其對應的最近鄰落入同一個桶中的可能性會變得很微小,針對這個問題,我們能夠反復這個過程L次(每一次都是不同得哈希函數(shù)),從而增加最近鄰的召回率。

案例:基于word2vec完成向量召回

2.4排序

引薦系統(tǒng)的掌上明珠

排序階段分為粗排和精排,粗排普通呈現(xiàn)在在召回結(jié)果的數(shù)據(jù)量級比擬大的時分。

進化進程

簡單引見Wide&Deep

背景:手動特征組合完成記憶性效果不錯但是特征工程太消耗人力,并且不曾呈現(xiàn)的特征組合無法記憶,不能停止泛化。

目的:使模型同時統(tǒng)籌泛化和記憶才能(有效的應用歷史信息并具有強大的表達才能)

(1)記憶才能 模型直接學習并應用歷史數(shù)據(jù)中物品或者特征共現(xiàn)頻率的才能,記憶歷史數(shù)據(jù)的散布特性,簡單模型容易發(fā)現(xiàn)數(shù)據(jù)中對結(jié)果影響較大的特征或者組合特征,調(diào)整其權(quán)重完成對強特征的記憶

(2)泛化才能 模型傳送特征的相關性,以及開掘稠密或者從未呈現(xiàn)過的稀有特征和最終標簽相關性的才能,即便是十分稠密的特征向量輸入也能得到穩(wěn)定平滑的引薦概率。進步泛化性的例子:矩陣合成,神經(jīng)網(wǎng)絡


統(tǒng)籌記憶和泛化才能 (結(jié)果的精確性和擴展性) wide局部專注模型記憶,快速處置大量歷史行為特征,deep局部專注模型泛化,探究新世界,模型傳送特征的相關性,開掘稠密以至從外呈現(xiàn)過的稀有特征與最終標簽的相關性的才能,具有強大的表達才能。最終將wide局部和deep局部分離起來,構(gòu)成統(tǒng)一的模型。

wide局部就是根底的線性模型,表示為y=W^T X+b X特征局部包括根底特征和穿插特征。穿插特征在wide局部很重要,能夠捕捉到特征間的交互,起到添加非線性的作用。

deep局部為embeding層+三層神經(jīng)網(wǎng)絡(relu),前饋公式

結(jié)合鍛煉

優(yōu)劣:為引薦/廣告/搜索排序算法之后的開展奠定了重要根底,從傳統(tǒng)算法逾越到深度學習算法,里程碑意義。統(tǒng)籌記憶和泛化才能但是Wide側(cè)仍需求手工組合特征。

參考論文:Wide & Deep Learning for Recommender Systems

2.5 重排

定義:對精排后的結(jié)果次第停止微調(diào),一方面完成全局最優(yōu)、一方面滿足業(yè)務訴求提升用戶體驗。比方打散戰(zhàn)略,強插戰(zhàn)略,進步曝光,敏感過濾

MMR算法

完成商品多樣性問題

目的:在引薦結(jié)果精確性的同時保證引薦結(jié)果的多樣性,為了均衡引薦結(jié)果的多樣性和相關性

算法原理,如公式


D:商品匯合,Q:用戶,S:已被選中的商品匯合, R\S:R中未被選中的商品匯合

def MMR(itemScoreDict, similarityMatrix, lambdaConstant=0.5, topN=20): ? ?#s 排序后列表 r 候選項 ? ?s, r = [], list(itemScoreDict.keys()) ? ?while len(r) > 0: ? ? ? ?score = 0 ? ? ? ?selectOne = None ? ? ? ?# 遍歷一切剩余項 ? ? ? ?for i in r: ? ? ? ? ? ?firstPart = itemScoreDict[i] ? ? ? ? ? ?# 計算候選項與"已選項目"匯合的最大類似度 ? ? ? ? ? ?secondPart = 0 ? ? ? ? ? ?for j in s: ? ? ? ? ? ? ? ?sim2 = similarityMatrix[i][j] ? ? ? ? ? ? ? ?if sim2 > second_part: ? ? ? ? ? ? ? ? ? ?secondPart = sim2 ? ? ? ? ? ?equationScore = lambdaConstant * (firstPart - (1 - lambdaConstant) * secondPart) ? ? ? ? ? ?if equationScore > score: ? ? ? ? ? ? ? ?score = equationScore ? ? ? ? ? ? ? ?selectOne = i ? ? ? ?if selectOne == None: ? ? ? ? ? ?selectOne = i ? ? ? ?# 添加新的候選項到結(jié)果集r,同時從s中刪除 ? ? ? ?r.remove(selectOne) ? ? ? ?s.append(selectOne) ? ?return (s, s[:topN])[topN > len(s)]

意義是選擇一個與用戶最相關的同時跟已選擇物品最不相關的物品。時間復雜度O(n2) 能夠經(jīng)過限制選擇的個數(shù)停止降低時間復雜度

工程完成:需求用戶和物品的相關性和物品之間的類似性作為輸入,用戶和物品的相關性能夠用排序模型的結(jié)果作為替代,物品之間的類似性能夠經(jīng)過協(xié)同過濾等算法得到商品向量,計算余弦間隔。也能夠簡單得能否同一三級類目、同一店鋪等表征

三、總結(jié)

就簡單嘮叨這么多啦,主要想讓大家理解一下引薦系統(tǒng),向大家引見一下整個引薦架構(gòu),以及整個引薦都有哪些模塊。由于自己程度有限,每個模塊也沒有講的特別細,希望之后能在工作中繼續(xù)學習這個范疇,深挖細節(jié),產(chǎn)出更好的東西呈現(xiàn)給大家。感激!??!


商品引薦系統(tǒng)淺析的評論 (共 條)

分享到微博請遵守國家法律
丰顺县| 和静县| 天等县| 华蓥市| 临沧市| 东明县| 二手房| 泰顺县| 芒康县| 沙湾县| 营山县| 东辽县| 太湖县| 桂林市| 安福县| 怀集县| 玉环县| 松阳县| 仙游县| 景德镇市| 绥芬河市| 铁岭市| 都昌县| 卢氏县| 读书| 鞍山市| 宁远县| 阳曲县| 仙游县| 边坝县| 梓潼县| 鄂伦春自治旗| 基隆市| 滕州市| 教育| 明水县| 宝应县| 芦溪县| 夏津县| 武乡县| 德令哈市|