物料冷啟的推薦實踐
來源:之家技術
1. 物料冷啟定義
推薦系統致力於解決使用者的資訊過載、內容的精準投放和公司的目標最大化問題。在汽車之家,每天有數萬至數十萬的新物料產生,新物料代表了新的內容、新的資訊、新的事件和新的趣聞。而這些新物料加入推薦池後,由於其缺乏使用者-物料的行為互動,較難發現其目標使用者從而進行有效投放,在行為資料主導的推薦場景更是如此。為了解決新物料的分發慢、效果差問題,之家進行了一系列的策略和演算法嘗試,顯著提升了新物料的分發速率和分發效果。
圖1. 物料推薦狀態變化
2. 物料冷啟最佳化
在汽車之家首頁推薦場景,新物料被定義為24小時內的部分業務線的非商業物料,為提供足夠的資料以供模型學習,新物料需要在24小時內積累產生足夠的使用者-物料互動。由於冷啟定義的時效較短,因此推薦系統的各個鏈路都需要有較強的時效性保證。新內容進入推薦池後,會先後經歷:標籤生產、索引入池、內容召回、模型排序、引擎重排、內容曝光等階段,如圖1所示。其中任何一個環節出現異常,都會影響物料的曝光,如標籤的實時性、索引的實時性、排序分、調權策略的有效性等。因此,冷啟的最佳化,很大一部分是推薦鏈路的最佳化,除此之外,還包括策略層面的最佳化和演算法層面的最佳化。
圖2. 新物料的曝光鏈路
2.1
鏈路最佳化
新物料生產後,首先會透過正排系統接入,錄入物料的基本資訊,包括推薦時間、業務標籤、物料推薦狀態等;隨後內容理解服務將進行標籤生產,包括車系、關鍵詞、分類、話題、情感等;正排系統與內容理解標籤都完成校驗後,物料將會被實時索引接入,實時索引代表了所有可推薦物料的集合,物料若不在實時索引中,則無法進行後續推薦;隨後新物料召回模型將根據物料的標籤、標題相似度、後驗表現等進行內容召回;召回的物料進入排序模型進行打分,排序打分完成後,引擎將會根據重排策略對物料進行重排;當新物料被排到使用者的可見曝光範圍內時,則被認為是一次成功的曝光。
在這個曝光鏈路中主要存在以下幾種型別的要求:
1. 各鏈路的實時性:要求標籤生產、索引入池的實時性。標籤生產的延遲將會導致內容召回的延遲和模型排序的劣勢,而索引入池的延遲將直接壓縮物料冷啟時間,導致冷啟失敗;
2. 內容的分發限制:不同業務線內容,具有不同的分發限制,如地域限制、重複限制、內容型別限制等,為保證冷啟的效率,需要提前對此類有限制物料進行過濾或降低曝光目標;
3. 排序鏈路的精簡:大多數推薦系統在排序階段同時存在粗排和精排階段,而新物料由於其部分靜態特徵、離線統計特徵的缺失,在排序階段容易被打上極低的分數,因此新物料的排序鏈路越長,則曝光的機率越低,因此需要精簡新物料的排序鏈路。在之家場景新物料不經過粗排,保證了所有新物料都會輸出一個排序分;
4. 重排方式的有效性:新物料在排序階段容易被打上極低的分數,使用簡單的乘法調權公式,容易出現過度曝光和無法精準控制的情況,因此需要設計更加有效和可控的調權方式。
2.2
演算法最佳化
當上述鏈路的要求都保證之後,物料冷啟動最佳化的工作就已經完成了一大半,或者說最佳化的工作將會變得更加順暢和有效。在演算法最佳化方面,主要的工作集中在物料召回、精排模型和引擎重排上。
為保證新物料的曝光,則首先必須保證新物料的召回。新物料由於其後驗資料的缺失,在絕大多數的行為召回中不佔優勢,其召回的機率較低,因此必須新增召回單獨對新物料進行召回。而新物料由於其內容的多樣性,需要使用多路召回進行召回。此外使用強化學習進行召回引數配置,為對於行為豐富物料進行熱度召回,對行為稀疏物料進行探索召回。在汽車之家首頁推薦場景,當前一共有7路冷啟召回,按照型別可分為標籤召回、相似度召回、補量召回。
標籤召回:包含車系、品牌、作者、概念標籤、二級分類召回,根據物料的標籤進行召回,召回的順序使用beta分佈進行隨機生成,beta分佈可根據最佳化目標進行設定,包括點選、時長、互動等,beta分佈的公式參考,以點選為例,beta分佈的公式如下:
精排模型在很大程度上決定了物料的曝光效率與曝光效果。新物料由於其統計特徵與部分靜態特徵的缺失,在精排打分上容易過低;此外在精排模型學習中由於其樣本較少,容易在學習過程中被淹沒;因此需要在模型和樣本層面上對新物料的排序進行最佳化。在樣本上,之家使用了統計特徵dropout的策略,對於物料的天級別統計特徵按照一定機率進行隨機置0,隨後輸入模型進行訓練;在模型訓練內部,使用物料的釋出時間的衰減引數對損失進行加權,讓新物料相比老物料有更高的損失。
其中item_publish_time是物料釋出至今的時長,單位為十分鐘。
新物料由於其靜態特徵、統計特徵的缺失,在排序打分中往往會比較佔劣勢,此外精排模型由於其打分範圍分佈交廣(10e-7到1.0),使用乘法公式要保證物料的曝光,則最大需要調整10e7倍。其引數範圍太廣,此外存在倍率太高曝光激增的可能。因此,為從引擎上最佳化新物料的曝光,需要在引擎重排公式上進行最佳化。當前之家使用的新物料重排公式如下:
其中,rank_score代表精排輸出的分數,weight代表調權係數,score代表重排後的得分。在這個調權公式下,調權係數的範圍將會變成0-100,保證了調權係數的有效性。
除此之外,為保證物料能夠在24小時內達成目標曝光量,之家場景按照正常的每日曝光量分佈,為每個物料設定當前時刻的目標曝光下限,目標達成則不進行調權控制,使得物料冷啟的速率儘量平滑,且儘可能自然曝光以保證新物料的分發效果。
2.3
策略最佳化
演算法是在當前策略框架下的最佳化,而策略更像是修建一條新的運河,能夠引導水流的流向,以達成最佳化目標。因此,在冷啟最佳化中,策略在很多程度是更重要的一個最佳化方式。在之家首推,冷啟側的策略最佳化主要包括以下幾個方面。
1. 量控打散:為防止使用者首頁冷啟物料曝光數量過多,控制使用者每刷曝光的新物料數量及間隔條數;
2. 特徵覆蓋:新物料由於其特徵缺失,在排序階段不佔優勢,使用業務線的平均統計特徵數值來進行覆蓋;
3. 策略輪詢:冷啟策略離線執行,5分鐘一批輪詢,同步更新召回、調權、冷啟列表以供下游使用;
4.調許可權制:若當前輪詢物料的調權係數過小,則將該物料從冷啟列表移除,使其自然曝光,若再次超過該閾值,則重新加入列表;
5. 召回限制:為提升冷啟個性化召回的召回佔比,提升冷啟分發效果,冷啟補量召回延遲啟動;
6. 人群限制:為保證新使用者和低活躍使用者的分發效果,提升冷啟物料的分發效果,新物料的冷啟動主要在活躍人群上進行;
7. 冷啟補丁:除了以上策略外,冷啟策略中還包含諸多的補丁,如修復作者等級的變化、推薦時間的變化、物料入池過晚等補丁,這些問題都會影響新物料的統計和分發。
3. 效果及展望
之家內物料冷啟最佳化自2022年中旬開始,到撰稿的時候已去一年,冷啟的成功率(達到目標曝光量的物料比例)從一開始的27%左右上升到99%+,冷啟CTR從一開始的5%上升到14%+,效果有了顯著的提升。
對於後續冷啟的最佳化,筆者認為主要集中在2個方向上:
1. 新物料的定義放寬,如進而最佳化3天內、5天內的新物料,從物料的曝光曲線上進行最佳化,讓後期熱門物料更快的達到熱門推薦狀態,加速優勝劣汰程式;
2. 從物料特徵上,當前物料特徵包含實時和離線特徵兩部分,融合實時與離線特徵,加速特徵生產;
3. 從模型演算法上,放寬新物料的定義,從模型角度上對此類物料進行最佳化,提升業務目標。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70027824/viewspace-2994621/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 推薦系統實踐學習系列(三)推薦系統冷啟動問題
- 推薦系統實踐 0x0a 冷啟動問題
- 抖音推薦系統冷啟動
- 推薦系統之冷啟動問題
- Spark推薦系統實踐Spark
- 推薦系統中的冷啟動問題和探索利用問題
- 《推薦系統實踐》筆記 01 推薦系統簡介筆記
- Embedding在騰訊應用寶的推薦實踐
- 美圖個性化推薦的實踐與探索
- iOS App冷啟動治理:來自美團外賣的實踐iOSAPP
- 京東LBS推薦演算法實踐演算法
- 推薦系統[八]演算法實踐總結V1:淘寶逛逛and阿里飛豬個性化推薦:召回演算法實踐總結【冷啟動召回、復購召回、使用者行為召回等演算法實戰】演算法阿里
- 智聯招聘基於 Nebula Graph 的推薦實踐分享
- 58同城智慧推薦系統的演進與實踐
- PyCon 2018: SVD推薦系統在Python中的實踐Python
- 推薦演算法在商城系統實踐演算法
- 愛奇藝個性化推薦排序實踐排序
- 推薦系統 embedding 技術實踐總結
- 推薦系統實踐 0x12 Embedding
- 推薦系統實踐 0x11 NeuralCF
- 19期推薦系統實踐學習(二)
- 個性化推薦系統實踐應用
- 推薦系統實踐 0x05 推薦資料集MovieLens及評測
- RecSysOps:奈飛運維大型推薦系統的最佳實踐運維
- 有贊個性化推薦能力的演進與實踐
- 推薦系統實踐 0x10 Deep CrossingROS
- 推薦系統實踐 0x0f AutoRec
- vivo 短視訊推薦去重服務的設計實踐
- 推薦系統實踐 0x09 基於圖的模型模型
- 阿里雲在HBase冷熱分離的實踐阿里
- 【冷啟動#1】實用的MySQL基礎MySql
- 博文推薦|Pulsar 客戶端編碼最佳實踐客戶端
- 推薦系統實踐 0x0c FM系列
- 《推薦系統實踐》筆記 03 評測指標筆記指標
- 實時增量學習在雲音樂直播推薦系統中的實踐
- 遊戲推薦業務中基於 sentinel 的動態限流實踐遊戲
- 淘寶個性化推薦中的多場景模型建模實踐模型
- 深度召回在飛豬旅行推薦系統中的探索和實踐