推薦策略產品經理必讀系列—第三講推薦系統的召回(一)
編輯導語:推薦系統的7大環節中,其中非常核心的一環是召回,推薦系統中的召回策略是怎樣的呢?本文重點介紹基于規則的召回,希望對你有所啟發。
上一篇為大家介紹了推薦系統的整體架構,本篇為大家詳細介紹推薦系統里面非常核心的一環就是召回。一共分為三篇文章來為大家詳細介紹推薦系統中的召回策略。
一、主流的召回方法
目前市場上所有的召回方法都可以歸納為3大類。如下圖所示:
1.1 基于規則的召回
基于規則是最常用的召回策略,也是解釋性最強的召回策略。常見的規則召回策略有:基于內容標簽的召回,基于商品銷量或者內容熱度的召回,召回歷史高點擊率的物料,召回平臺評價&質量分比較高的物料,召回用戶經常購買的一些商品或者常看的物料; Part2將會針對這一部分詳細展開介紹。
此種策略的優缺點:
- 優點:策略邏輯清晰明了,業務意義明確,可解釋性極強;
- 缺點:個性化弱,千人一面,為每個用戶推薦的商品比較類似。同時容易引起馬太效應,頭部的物料得到越來越多的曝光機會,尾部的物料曝光機會越來越少。
1.2 協同過濾
協同過濾的召回算法可以說是推薦系統最經典的算法了,甚至可以說有了協同過濾算法才真正代表了推薦系統的誕生。協同過濾算法最經典的是以下兩個算法:
I 2 I (Item-CF):
用戶A喜歡的物料a,為用戶A推薦和物料a比較相似的物料b;該算法的核心問題是如何計算物料a和其他物料b,c,d,e……的相似度;該算法最早起源于電商巨頭亞馬遜。
U 2 U(User-CF):
用戶A和用戶B很相似,為用戶A推薦用戶B感興趣且用戶A之前沒有接觸過的物料a,因為二者是相似的,所以我們認為用戶B感興趣的物料用戶A也會感興趣;該算法的核心是如何計算用戶與用戶之間的相似度。
此種策略的優缺點:
- 優點:算法邏輯相對比較簡單容易實現,但同時又有不錯的效果,具備了一定的個性化。
- 缺點:和基于規則的召回具有同樣的問題,冷啟動的問題比較明顯,同時同樣會存在一定的馬太效應,頭部熱門商品更容易和其他商品產生更多關聯。但是整體協同過濾算法的出現已經讓推薦系統進步了一大截;協同過濾算法下一篇文章將詳細展開介紹。
1.3 基于向量的召回
其實無論是基于規則的召回,還是協同過濾算法。我們都是通過一定規則或者方法去計算物料與物料之間的相似度,用戶與用戶之間的相似度。協同過濾算法里面更多是一種基于統計維度的,而隨著算法進步我們引入一種新的思想。基于向量去計算相似度。
- FM:Factor Machine-因子分解機,是在2010年由谷歌推薦系統的大佬Steffen Rendle提出的。核心思想是通過對兩兩特征組合,引入交叉項特征;其次是通過引入隱向量(對參數矩陣進行矩陣分解),降低模型的高維災難,完成對特征的參數估計;
- DSSM:Deep Structured Semantic Models,深度語義匹配模型,微軟于2016年提出,又叫“雙塔模型”。分別構建用戶的user embedding和物料的item embedding,所以稱為雙塔。核心思想還是通過Embedding分別去表達User和Item的特征,然后再計算相似度。
此種策略的優缺點:
- 優點:特征理解更加深刻,模型效果更優。
- 缺點:模型可解釋性差。
上述模型我們會在后續專門介紹向量召回的篇章中進行詳細介紹。
二、基于規則的召回
下面重點詳細為大家介紹基于規則召回里常見的一些召回思路。
2.1 標簽召回
標簽召回:推薦算法1.0時代都是基于內容的推薦,而基于內容的推薦基本上都是通過標簽相似度來進行推薦。尤其是在電影&音樂網站上。比如你看過標簽為“武俠”、“愛情”的電影,系統會基于這個標簽給你召回相同標簽的物料。
基于標簽的召回核心是怎么給內容打標簽,標簽體系如何構建,這里面有大量的人工工作和業務經驗。
2.2 Top Sale
熱銷召回:熱銷召回在電商領域比較多,基于商品的銷量召回一些大家都比較喜歡,銷量高的商品。這種召回策略應對冷啟用戶特別好用。同時擴展到內容領域邏輯也是一樣,只是這里的“熱銷”可以換成“熱度”。把銷量的因素換成比如觀看次數等等。
這里拋一個問題比如熱銷召回里“銷量”如何定義?多長時間段的比較合適?如何既考慮長期銷量,又考慮近期爆款?如何去除大促訂單的影響?
2.3 Top CTR
高點擊率商品召回:推薦系統核心還是要不斷提升場景里面的點擊率,所以我們在召回時就需要有專門的路去召回那些歷史物料中點擊率比較高的商品。當然這一路需要和其他路進行融合,不然會造成非常強的馬太效應。這里繼續拋一個問題:點擊率的統計周期多久的比較合適?
2.4 Top Quality
高質量分的物料:此類物料是最適合用于冷啟,在電商領域當一個新的用戶訪問系統不知道為他推薦什么商品時,我們可以為他推薦歷史評價、銷量、收藏、點贊等都反響比較好的商品。我們會對商品綜合考慮上述因素計算一個商品的質量分,然后為其推薦排名Top K的商品。
2.5 Rebuy
復購的物料:這一路在生鮮電商里面經常用,很多用戶每天買的蔬菜肉類都比較相似,所以推薦系統會專門有一路召回為用戶推薦他歷史購買過的商品。但是復購這一路召回在綜合性電商里基本不用,比如淘寶&京東?大家可以思考一下為什么?
以上就是為大家整體介紹了推薦系統召回的主流思想,本篇重點介紹基于規則的召回。下面兩篇分別詳細介紹基于協同過濾的召回和基于向量的召回,敬請期待。
本文由 @King James 原創發布于人人都是產品經理。未經許可,禁止轉載。
題圖來自 Unsplash,基于 CC0 協議
此外,出于平臺收入角度,由于展位是需要商家競爭獲得,復購隊列相當于給予了商家更多的免費流量資源,即導致了馬太效應,擠壓了同品類新商家的生存空間,又降低了平臺的流量收入,于平臺商家生態、平臺收入、用戶ctr三方面都沒有收益
對于“復購這一路召回在綜合性電商里基本不用,比如淘寶&京東”這一問題,私以為是由于這一路召回已經包含在了用戶歷史偏好這一路召回中,其復購周期性特征也包含在了其中,因此不需要重復性的再開發一路復購召回
怎么進群
如果不同時段的銷量都要考慮的話,那就給時間區間加權重?大促時段的訂單銷量值給一個較低的權重系數,非大促時段的訂單銷量給一個較高的權重。
我不是做這方面的產品,不知道回答的在不在點子上,辛苦作者大佬解答哇
銷量那個統計問題:
一些節日搞的這種大促活動帶動的銷量,不能反映平常的銷量。
因此,在用作推薦使用的這個TOPN銷量計算的時候,應當將一些大促時段的訂單給去掉。
同時,可以考慮分類統計銷量,然后最后拉齊到一個戰線上才比較公平。(不同品類的銷量在客觀事實上,可能就不在一個維度上。比如電視購買頻率低于衣服購買頻率)
最后一個問題,粗淺回答下:
這是由于用戶對購買的東西的消耗程度決定的。
用戶在淘寶上多買的是衣物/鞋/電子產品,通常買完一件后,同樣的品牌顏色款式不需要再買第二件。消耗慢。
而用戶在生鮮電商平臺上買的是 肉蛋蔬菜水果,消耗很快。平臺為了提升用戶體驗,快點促成交易,很自然地可以為用戶推薦其歷史購買過的菜品。