AIRec个性化推荐召回模型调参实战
一、典型推薦場景
(一)場景概念的引入
場景,它是智能推薦里面設定的一個概念。場景不論是在上傳數據的表上,還是在控制臺上都會有相關的概念,場景可以理解為,是一個用戶流量的入口,一個流量入口代表一定的訪問心智。比如,一個用戶他進入到了一個大促的頁面,他的心智就是去看一看當前有沒有感興趣的商品、有購買欲望的商品在參與大促活動,如果有就去下單,而如果是非大促時期,正常的打開APP進入一個頁面,瀏覽最近是否有新鮮好玩的商品,這時候會帶著不同的心智,這里就是在用戶流量入口上做了區分。
用戶流量入口一旦確定之后,一個頁面要打造的用戶訪問邏輯,實現目標基本確定,也就意味著從用戶的流量入口到用戶的訪問邏輯,決定了我們在這個頁面的選品邏輯。選品邏輯是我們能夠直觀體驗到的,包括投放上的一些策略,到最終我們會把它綁定到一系列的算法邏輯上,那也就意味著一個場景它代表了唯一的選品邏輯和唯一的算法邏輯的結合。
如果有多個推薦場景,但其中多個推薦場景本質是一套算法策略,這個時候我們可以把它合并為一個場景;但如果存在差異,就可以把它拆分成不同的場景。
(二)新建推薦場景的過程
在不采用云服務的條件下,新建一個場景,一般的做法是首先圈選物品,從數據庫中圈選出當前場景需要哪些物品用作推薦,接下來要做鏈路打通,比如平臺里所有的用戶的行為數據,分析出我們給用戶做推薦的時候,如何能夠讓這樣一個新場景頁面它能夠盡量避免從零起步做訓練和預測,而是進行一些數據的復用。
整體過程中,首先是數據對接,然后做數據驗證,如果是基于自建的模式,還需要準備特征工程,包括去組裝召回排序的鏈路,以及業務編排上所涉及的策略,如此相對來說它的時間線會拉得很長,包括想要去設置一套推薦系統,還要考慮離線近線和在線的這樣的鏈路設計。
(三)快速搭建個性化推薦頁面
我們通過使用智能推薦產品,可以快速搭建個性化推薦頁面。從對接服務開始,完成數據對接,接口調試之后,將自動拉起行業定制算法模板,啟動各種計算邏輯,包括表回流邏輯任務等。服務拉起后,就可以快速定制場景、發布場景。
在落地上線之后,需要做場景定制與業務調優,主要通過兩種方法,第一種是通過算法的維度來解決業務上適配的問題。第二種是通過運營策略的維度去解決這個問題,比如說去定制一些選品的規則,投放的規則,比如在扶持策略上做傾斜,以及根據物品的推薦時效性去做整體策略的調整。
場景的調優的路徑,也就是在我們優先完成服務后,再單獨對場景作算法、運營策略的定制和優化。
二、經典算法模型簡介
(一)協同過濾
算法邏輯
智能推薦應用的協同過濾為 itemCF,算法邏輯為,根據輸入的平臺行為數據,結合點擊與否的判斷,產出一個類似PPT中的表格,計算出每個item之間的打分表,點了ID等于1的item之后,點ID為2的概率值,這個概率值代表了這兩個item之間相似程度。
運作方式
首先要先找到左邊的item,找左邊item時需要結合實時的用戶行為,比如說采集到用戶點擊口紅商品,命中唯一的口紅商品ID。在下一刷時,知曉用戶對當前口紅感興趣的狀態下,去推薦更類似的一些口紅,容易得到更多的點擊,隨后進一步轉化為訂單數據,按照圖中的打分情況,ID為2的 item推薦給這個用戶,這就是整個協同過濾,從用戶產生行為到調取這一張我們計算出來的表格,最終給用戶補充到召回鏈路的這樣的一個過程。
優化算子
父類目和子類目的收斂優化:相比于啤酒尿不濕的item關聯,它能夠幫助學習到本質上確實比較相似的物品,因為他們同屬于一個父類目或子類目。邏輯即,將優先看,如果說這兩個比如說這里面的1和2,它兩個是同屬于一個父類目或者同屬于一個子類目的時候,可認為它的相似度是比較高的,可以在鏈路里面讓它出現的概率更大一些。
swing:系統會考慮一些用戶的pair,用戶行為對整體計算item相似度過程中的重要程度增加了判斷邏輯,比如說兩個用戶他們的行為,他們點擊的點擊序列里,發現沒有什么太大的相似度,但相反如果兩個用戶雖然不相似,但是他們確實有那么兩個物品是一起點擊過的,就發現這兩個物品它可能本身就是有比較大的這樣的相似度。如果說一個用戶對他的行為都是比較類似的,兩個用戶的比較像,在這個過程中他們兩個共同點擊共同命中的這些item,我可能在計算的時候就會給它降權,隨便的這種方法,它其實是很大程度的利用了用戶協同這樣的一種能力去發現item之間的關聯度。
?
(二)用戶歷史偏好召回
算法邏輯
我們刻畫一個用戶的偏好,主要是通過用戶的發生的行為,比如從過去30天的行為,以及實時行為進行計算和分析,會發現在電商行業內影響我們消費決策的一些特征,例如商品的品牌,店鋪標簽以及商品類目。這些可能是影響消費行為比較重要的特征,所以去看這些重要特征,映射到用戶的身上有什么樣的偏好。那么根據用戶歷史的行為去分析當前的用戶,他可能在現在或者在過去對哪些類目是有偏好,對哪些品牌是有偏好的,基于他實時的興趣,我們也可以預測它未來可能對哪些品牌哪些內容是有偏好的,將這兩者融合也就構成了我們大家可以常說的用戶畫像。
構成了用戶畫像之后,我們再結合畫像去映射到item表上的這些特征,從而進行一個組合和展示。在電商行業里面,大家也可以看到在這條鏈路里面我們可以定制的也是它的關閉和啟用的狀態,以及我們最大召回的數量,包括說在我們內部的一個優先級,里面會涉及很多的特征,比如說類目、品牌、店鋪和標簽。
那么在選擇這些特征的時候,我們一個方面要考慮在我們行業里,在我們的商業模式下,這些特征是不是用戶主要消費決策的特征。
但另一個方面就是在這些特征的維護上,比如我們可能標簽打得非常好,我可以把連衣裙的風格都打好,那標簽對于我來說,我可以很大程度去利用它的優勢,那我就可以把標簽的優先級去往上調一調,這個就是我們可以結合這樣的召回鏈路去做優化的一個策略和方式。
?
(三)向量召回
算法邏輯
向量召回embedding是特征維度較高的情況下,常用的算法。通過將多維度特征映射為向量的表達方式,進行向量距離的計算,產出相似度的打分。比如基于標題的向量召回,我們首先會將item的標題通過NLP的方式進行分析分詞,得到一個個詞向量之后,我們以word2vector的方式,計算出詞向量之間的相似相關度,所以當有2個item我們想要分析他們是否相似時,就可以先找出item的向量表達,去比對向量之間的距離,距離越短也就意味著相似度越高。基于標簽的向量召回也是相似的思路,基于用戶行為序列,可以理解為在一次會話中,用戶會產出一系列點擊序列,這些點擊序列就像一個興趣流轉的sectence,利用同樣的思路,就像商品表達的連貫的一個標題 ,我們也可以通過類似的方式計算出item之間的相似度。
如果說大家不太清楚向量召回能夠給我們的效果帶來多大的提升的話,我們也可以進行一些平臺化的實驗,然后去通過查看實驗報表的這樣的一種形式,去看這一路召回是不是起到了比較重要的作用。
?
(四)新品算法策略
新品算法策略比較容易理解,就是我們新發布的這樣的一些商品或者內容的推廣的策略。在推廣的過程中,首先我們要讓整個系統去知道哪些商品,哪些內容是新品,這就要求對于我們字段上,比如說pub_time、字段要進行實時更新,或者說是更加準確的更新。
在這個過程中,我們其實都知道新品它是一個冷啟動的問題,在我們沒有任何行為的條件,也不知道新品質量的條件下去做一個分發,有可能會打擊到我們的效果數據,因為有一些新品它的質量并不是很好,我們去推薦出來了就會損失一些點擊損失一些購買量。
在這個過程中我們可以提供基于策略的方案,上文提到我們在基于用戶的歷史偏好的時候,就已經計算出來了用戶的一些興趣標簽,這時我們也可以利用到新品的算法策略里,比如我們可以基于用戶的偏好類目去做扶持,偏好品牌去做扶持,以及我們基于標簽去做扶持。除了有一些行業我們對新品的要求維度會更高一點,我不一定要求他是有個性化的,可能就要求他是要基于我們新品它發布之后整個的熱度分進行排序,我就想發現一個最潛力的新品,然后也有可能是,我就要優先新發布的內容要先上,我們就去調整策略,比如第6個點的優先級去進行一個調整,其實我們如何去選擇一個適配的算法模型,也是根據我們本質的業務訴求來的,比如像內容行業,尤其是我們需要激勵創作的點上來看的話,我們對新品這塊,不管是它的流量,它的口徑都要給它開更大的一個口子,讓新品能夠更加有效的得到曝光。
?
(五)其他典型召回算法模型
除了前文提到的算法,我們也有一些其他的典型召回的算法和排序的算法,智能推薦標準版給大家歸檔了一些,比如說協同過濾、用戶偏好召回、新品召回以及向量召回這樣的一些召回鏈路,并且這些召回鏈路里面可以讓大家進行一些參數的優化。如果大家有更高階的需求,比如想要去使用高階的算法模型,可能需要我們自己去處理數據,去進行一些特征工程處理,產出打分表,然后再注冊到我們線上的模型一起組合使用,這個是產品高級版會提供的功能。
三、電商行業優化最佳實踐
電商行業的優化最佳實踐主要圍繞三個維度
第一個是如何結合c端用戶的刷新過程中,提供實時反饋的體驗。
第二個就是在我們做這個模板,標準化的產品到嵌入到我們業務系統里面的個性化推薦,怎么去做好特征傾斜和效果的提升。
第三個就是個性化推薦,它其實屬于一個流量的入口,我們如何讓用戶在流量的入口里面得到我們平臺營銷觸達的價值的最大化,我們可能會有一些曝光過濾、點擊過濾的策略可以來組合進行配置和使用。
(一)實時反饋體驗提升
首先實時反饋怎么來理解?就是當我們的用戶實時地發生一些行為的時候,我們給他下次的推薦結果中就進行了進一步的跟進和反饋。比如這里面給到大家的一張淘寶頁面的截圖,首先我們看到它曝光了很多商品,當然后面這兩個商品露出不全,我們就認為它是無效曝光,曝光了4個商品之后,用戶可能對張云雷代言的彩妝禮盒是比較感興趣的,他就會點擊到這個商品去查看詳情,這就是一次點擊行為,如果他更感興趣,他可能還會把它去進行一個加購行為。
在這個過程中,我們會發現用戶對化妝品和護膚相關的內容是比較感興趣的,而且近期他加購行為表示有購買意圖。我們可以首先采集到這一條點擊的行為,實時的回傳給推薦系統,另外我們希望在二刷三刷n刷的時候,也會結合它的興趣做反饋,這個時候我們就可以使用剛剛在系統過濾算法中跟大家講到,我們結合于類目的這樣的一個收斂優化,比如我們基于商品的類目,當前的商品的類目是屬于國產品牌的彩妝或者彩妝套裝的類目。在這些類目下我們是可以優先召回出來,跟當前商品比較相似的去推薦給用戶,這也就是我們在配置算法優先級的時候,可以把類目收斂的優先級給提高。
?
(二)特征傾斜與效果提升
比如右邊我們給到的一些商品的特征,首先它是美妝套裝,然后品牌是稚優泉,店鋪是稚優泉天貓旗艦店,然后標簽是明星聯名禮盒,化妝品。可能有一些商城是強調店鋪的概念的,有一些可能一家店會賣很多品牌,我們就需要先考慮店鋪和品牌對于我們這個行業來說哪個是更重要的,我們會加上一些店鋪和品牌的一個特征,另外我們認為消費決策上我們這個標簽是很重要的,我們是可以去調整標簽的優先級。
判斷的邏輯就是我們認為消費決策或者興趣決策,它的首要特征是什么?次要特征是什么?我們的維護是否是相對來說比較優質的,來調整這一路召回的一個優先級,去提升我們的推薦效果。
?
(三)營銷觸達策略應用
購買一件商品,尤其是女生在做購買決策的時候,可能會加購很多,過一段時間一直沒有下單,但是如果重復地給她推薦出來的話,她會認為她還是很想買,就把它下單了。這其實是消費者的心理邏輯,就是在發生一個曝光點擊收藏加購行為之后,不一定會很快的購買,可能在某個時間段意圖被觸達了之后,就下單,在這個過程中我們可以考慮在平臺里去嘗試使用一些營銷觸達的策略,去幫助用戶去做消費決策。
例如這里我們配置了曝光過濾的時間是3天,點擊過濾的時間是1天,這意味著我們第一次看到這些商品,比如這4件商品里面對太陽帽和服裝進行了曝光和點擊,而其他就只有曝光。在一天之后它不一定是這樣的排序,在我們的頁面里面,它可能又出現了我之前點擊過的一個商品,系統給了他一次重復曝光的機會,如果這一次用戶又發生點擊行為,系統還可以再給他一次重復曝光的機會。如果說這次重復曝光機會觸發了用戶的購買,也到了這樣的一個曝光過濾的時間,系統就不會再推薦了。
如果系統給了一次重復推薦的機會,但是用戶沒有點擊它,表示暫時用戶對它已經沒有了,系統也不會再對它進行一個二次推薦,理想的狀態就是在我們重復推薦的過程中去促進用戶消費的決策和下單,這個也是我們電商行業里面比較常見的一種策略。
像一些長視頻、長內容,會涉及到我們的停留時長的優化的時候,我們也可能會使用到類似的策略。
四、內容行業最佳實踐
(一)多地域/多Feature劃分頁面搭建
如果內容社區里面,涉及到多個地域,或者多個feature的一個劃分,它也可能涉及到一些用戶的邏輯,比如有些用戶我們需要對它做一些特殊的過濾,青少年模式,比如特殊的 VIP用戶,就不給他展示某類標簽。在這個過程中,我們如果選擇以往的場景搭建的形式,可能會滋生出來很多個場景,上百上千個場景對于運維來說是非常難以去維護的。這個時候我們內部是有一套推薦功能叫在線屬性過濾,大家可以利用地理位置的特征,細分品類的特征,給視頻打上的特殊的標簽的特征,去對它進行一些交集并集,最終拿到一個推薦過濾的結果,然后綁定在一個場景上,我們可以在這一個場景上去進行多個這樣屬性過濾的邏輯拼裝,從而產出多個推薦的落地頁面,這樣去提升我們的運維效率,方便我們更快的進行調優。
(二)推薦內容時效性調整
時效性指的是在我們推薦的結果中,我們希望內容的時間分布大概是一個什么樣的維度?比如我們的一些對時效要求很強的行業,尤其是新聞的行業,我們會希望推薦的內容如果它超過5天了,發布時間超過5天,就不再進行推薦了,在從它發布到它失效的過程中,我們也可能會發生一些上下架這樣的操作。在這個過程中我們可以結合我們的時效性去設置物品過濾規則,并且在我們急需發布的內容,我們可以給它進行加權的操作,然后我也可以去進行上下架的調控來保證它在失效時間之內能夠得到一個有效的分發。
(三)優質作者激勵
最后一個點是優質作者的激勵,尤其在新內容的扶持上,以新品來說,比如我會要求最近20天內發布的,最近7天發布的能夠得到一個有效的推廣,因為這也是內容社區的生命力之一,我們希望新發布的內容能夠有效的得到曝光,首先可以去設置一個新品的口徑,我們認為幾天內發布的是新品,然后就是給它的流量,流量是從一個統計維度來說的,比如我們整個平臺分發出去多少商品和分發出去多少內容,這些內容有多少是屬于口徑內的整體的流量分布,而不是具體到每一個用戶的流量分布,以及剛剛提到的新品的分發策略是按照興趣做分發,還是按照發布時間做分發,還是按照熱度做分發,這個也是可以結合我們的業務需求去進行一定的策略調整的。
五、結語
以上就是這次跟大家分享的內容,如果大家對這個產品是比較感興趣的,可以去試用我們首月首購100元的活動,試用完成之后,也可以提升配套標準版去解鎖我們更高階的召回模型的干預優化以及實驗平臺的功能。
感謝大家的閱讀。
原文鏈接:https://developer.aliyun.com/article/785369?
版權聲明:本文內容由阿里云實名注冊用戶自發貢獻,版權歸原作者所有,阿里云開發者社區不擁有其著作權,亦不承擔相應法律責任。具體規則請查看《阿里云開發者社區用戶服務協議》和《阿里云開發者社區知識產權保護指引》。如果您發現本社區中有涉嫌抄襲的內容,填寫侵權投訴表單進行舉報,一經查實,本社區將立刻刪除涉嫌侵權內容。總結
以上是生活随笔為你收集整理的AIRec个性化推荐召回模型调参实战的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SAE 助力「海底小纵队学英语」全面拥抱
- 下一篇: 《2021 年中国视频云场景应用洞察白皮