核聚變2024北京站高能開幕,ROG電競顯示器強勢助力游戲狂歡華為企業(yè)客戶支持圓桌會議成功舉辦,共筑ICT基礎(chǔ)設(shè)施維護新未來66元搶爆款AR眼鏡!京東AR眼鏡超級新品日30天無憂適用等你來攜手共進,智啟未來 —— 華為與CypressTel賽柏特成立 SD-WAN 聯(lián)合創(chuàng)新實驗合合信息成功IPO開啟新篇章全球首款第二代酷睿Ultra處理器筆記本!聯(lián)想YOGA Air 15 Aura AI元啟版開啟預售中國品牌,讓東南亞感受“消費升級”小紅書本地“坐抖望團”CrowdStrike“全球滅霸響指”事件后續(xù),德國 10% 企業(yè)更換安全供應(yīng)商導致 1TB 數(shù)據(jù)泄露后,迪士尼宣布棄用 Slack 平臺合合信息啟信產(chǎn)業(yè)大腦攜手市北新區(qū)打造“一企一畫像”平臺,加速數(shù)字化轉(zhuǎn)型重慶:力爭今年智能網(wǎng)聯(lián)新能源汽車產(chǎn)量突破 100 萬輛,到 2027 年建成萬億級產(chǎn)業(yè)集群微信iOS最新版上線:iPhone用戶可在朋友圈發(fā)實況照片了蘋果有線耳機或?qū)⑼.a(chǎn)沖上熱搜!閑魚相關(guān)搜索量暴漲384%2024 vivo開發(fā)者大會官宣:OriginOS 5/自研藍河系統(tǒng)2降臨真·AI程序員來了,阿里云「通義靈碼」全面進化,全流程開發(fā)僅用幾分鐘東方甄選烤腸全網(wǎng)銷量及銷售額領(lǐng)先鴻蒙PC要來了 界面很漂亮!余承東:目前華為PC將是最后一批搭載Windows上半年中國AR/VR出貨23.3萬臺,同比下滑了 29.1%IDC:2024 上半年中國 AR / VR 頭顯出貨 23.3 萬臺,同比下滑 29.1%
  • 首頁 > 數(shù)據(jù)存儲頻道 > 數(shù)據(jù).存儲頻道 > 半導體

    美團搜索粗排優(yōu)化的探索與實踐

    2022年08月17日 17:33:38   來源:美團技術(shù)團隊

      粗排是工業(yè)界搜廣推系統(tǒng)的重要模塊。美團搜索排序團隊在優(yōu)化粗排效果的探索和實踐中,基于業(yè)務(wù)實際場景,從精排聯(lián)動和效果性能聯(lián)合優(yōu)化兩方面優(yōu)化粗排,提升了粗排的效果。本文介紹了美團搜索粗排的迭代路線、基于知識蒸餾和自動神經(jīng)網(wǎng)絡(luò)選擇的粗排優(yōu)化工作,希望為從事相關(guān)工作的同學帶來一些啟發(fā)或者幫助。

      1. 前言

      眾所周知,在搜索、推薦、廣告等大規(guī)模工業(yè)界應(yīng)用領(lǐng)域,為了平衡性能和效果,排序系統(tǒng)普遍采用級聯(lián)架構(gòu)[1,2],如下圖 1 所示。以美團搜索排序系統(tǒng)為例,整個排序分為粗排、精排、重排和混排層;粗排位于召回和精排之間,需要從千級別候選 item 集合中篩選出百級別 item 集合送給精排層。

      圖1 排序漏斗

      從美團搜索排序全鏈路視角審視粗排模塊,目前粗排層優(yōu)化存在如下幾個挑戰(zhàn)點:

      樣本選擇偏差:級聯(lián)排序系統(tǒng)下,粗排離最后的結(jié)果展示環(huán)節(jié)較遠,導致粗排模型離線訓練樣本空間與待預測的樣本空間存在較大的差異,存在嚴重的樣本選擇偏差。

      粗排精排聯(lián)動:粗排處于召回和精排之間,粗排需要更多獲取和利用后續(xù)鏈路的信息來提升效果。

      性能約束:線上粗排預測的候選集遠遠高于精排模型,然而實際整個搜索系統(tǒng)對性能有嚴格的要求,導致粗排需要重點關(guān)注預測性能。

      本文將圍繞上述挑戰(zhàn)點來分享美團搜索粗排層優(yōu)化的相關(guān)探索與實踐,其中樣本選擇偏差問題我們放在精排聯(lián)動問題中一起解決。本文主要分成三個部分:第一部分會簡單介紹美團搜索排序粗排層的演進路線;第二部分介紹粗排優(yōu)化的相關(guān)探索與實踐,其中第一個工作是采用知識蒸餾和對比學習使精排和粗排聯(lián)動來優(yōu)化粗排效果,第二個工作是考慮粗排性能和效果 trade-off 的粗排優(yōu)化,相關(guān)工作均已全量上線,且效果顯著;最后是總結(jié)與展望部分,希望這些內(nèi)容對大家有所幫助和啟發(fā)。

      2. 粗排演進路線

      美團搜索的粗排技術(shù)演進分為以下幾個階段:

      2016 年:基于相關(guān)性、質(zhì)量度、轉(zhuǎn)化率等信息進行線性加權(quán),這種方法簡單但是特征的表達能力較弱,權(quán)重人工確定,排序效果存在很大的提升空間。

      2017 年:采用基于機器學習的簡單 LR 模型進行 Pointwise 預估排序。

      2018 年:采用基于向量內(nèi)積的雙塔模型,兩側(cè)分別輸入查詢詞、用戶以及上下文特征和商戶特征,經(jīng)過深度網(wǎng)絡(luò)計算后,分別產(chǎn)出用戶&查詢詞向量和商戶向量,再通過內(nèi)積計算得到預估分數(shù)進行排序。該方法可以提前把商戶向量計算保存好,所以在線預測快,但是兩側(cè)信息的交叉能力有限。

      2019 年:為了解決雙塔模型無法很好地建模交叉特征的問題,將雙塔模型的輸出作為特征與其他交叉特征通過 GBDT 樹模型進行融合。

      2020 年至今:由于算力的提升,開始探索 NN 端到端粗排模型并且持續(xù)迭代 NN 模型。

      現(xiàn)階段,工業(yè)界粗排模型常用的有雙塔模型,比如騰訊[3]和愛奇藝[4];交互式 NN 模型,比如阿里巴巴[1,2]。下文主要介紹美團搜索在粗排升級為 NN 模型過程中的相關(guān)優(yōu)化工作,主要包括粗排效果優(yōu)化、效果&性能聯(lián)合優(yōu)化兩個部分。

      3. 粗排優(yōu)化實踐

      隨著大量的效果優(yōu)化工作[5,6]在美團搜索精排 NN 模型落地,我們也開始探索粗排 NN 模型的優(yōu)化?紤]到粗排有嚴格的性能約束,直接將精排優(yōu)化的工作復用到粗排是不適用的。下面會介紹關(guān)于將精排的排序能力遷移到粗排的精排聯(lián)動效果優(yōu)化工作,以及基于神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)自動搜索的效果和性能 trade-off 優(yōu)化工作。

      3.1 精排聯(lián)動效果優(yōu)化

      粗排模型受限于打分性能約束,這會導致模型結(jié)構(gòu)相比精排模型更加簡單,特征數(shù)量也比精排少很多,因此排序效果要差于精排。為了彌補粗排模型結(jié)構(gòu)簡單、特征較少帶來的效果損失,我們嘗試知識蒸餾方法[7]來聯(lián)動精排對粗排進行優(yōu)化。

      知識蒸餾是目前業(yè)界簡化模型結(jié)構(gòu)并最小化效果損失的普遍方法,它采取一種 Teacher-Student 范式:結(jié)構(gòu)復雜、學習能力強的模型作為 Teacher 模型,結(jié)構(gòu)較為簡單的模型作為 Student 模型,通過 Teacher 模型來輔助 Student 模型訓練,從而將 Teacher 模型的“知識”傳遞給 Student 模型,實現(xiàn) Student 模型的效果提升。精排蒸餾粗排的示意圖如下圖 2 所示,蒸餾方案分為以下三種:精排結(jié)果蒸餾、精排預測分數(shù)蒸餾、特征表征蒸餾。下面會分別介紹這些蒸餾方案在美團搜索粗排中的實踐經(jīng)驗。

    圖片

      圖2 精排蒸餾粗排示意圖

      3.1.1 精排結(jié)果列表蒸餾

      粗排作為精排的前置模塊,它的目標是初步篩選出質(zhì)量比較好的候選集合進入精排,從訓練樣本選取來看,除了常規(guī)的用戶發(fā)生行為(點擊、下單、支付)的 item 作為正樣本,曝光未發(fā)生行為的 item 作為負樣本外,還可以引入一些通過精排模型排序結(jié)果構(gòu)造的正負樣本,這樣既能一定程度緩解粗排模型的樣本選擇偏置,也能將精排的排序能力遷移到粗排。下面會介紹在美團搜索場景下,使用精排排序結(jié)果蒸餾粗排模型的實踐經(jīng)驗。

      策略1:在用戶反饋的正負樣本基礎(chǔ)上,隨機選取少量精排排序靠后的未曝光樣本作為粗排負樣本的補充,如圖 3 所示。該項改動離線 Recall@150(指標解釋參看附錄)+5PP,線上 CTR +0.1%。

    圖片

      圖3 補充排序結(jié)果靠后負例

      策略2:直接在精排排序后的集合里面進行隨機采樣得到訓練樣本,精排排序的位置作為 label 構(gòu)造 pair 對進行訓練,如下圖 4 所示。離線效果相比策略1 Recall@150 +2PP,線上 CTR +0.06%。

    圖片

      圖4 排序靠前靠后構(gòu)成 pair 對樣本

      策略3:基于策略2的樣本集選取,采用對精排排序位置進行分檔構(gòu)造 label ,然后根據(jù)分檔 label 構(gòu)造 pair 對進行訓練。離線效果相比策略2 Recall@150 +3PP,線上 CTR +0.1%。

      3.1.2 精排預測分數(shù)蒸餾

      前面使用排序結(jié)果蒸餾是一種比較粗糙使用精排信息的方式,我們在這個基礎(chǔ)上進一步添加預測分數(shù)蒸餾[8],希望粗排模型輸出的分數(shù)與精排模型輸出的分數(shù)分布盡量對齊,如下圖 5 所示:

    圖片

      圖5 精排預測分數(shù)構(gòu)造輔助損失

      在具體實現(xiàn)上,我們采用兩階段蒸餾范式,基于預先訓練好的精排模型來蒸餾粗排模型,蒸餾 Loss 采用的是粗排模型輸出和精排模型輸出的最小平方誤差,并且添加一個參數(shù) Lambda 來控制蒸餾 Loss 對最終 Loss 的影響,如公式(1)所示。使用精排分數(shù)蒸餾的方法,離線效果 Recall@150 +5PP,線上效果 CTR +0.05%。

      3.1.3 特征表征蒸餾

      業(yè)界通過知識蒸餾實現(xiàn)精排指導粗排表征建模已經(jīng)被驗證是一種有效提升模型效果的方式[7],然而直接用傳統(tǒng)的方法蒸餾表征有以下缺陷:第一是無法蒸餾粗排和精排之間的排序關(guān)系,而前文已提到,排序結(jié)果蒸餾在我們的場景中,線下、線上均有效果提升;第二是傳統(tǒng)采用 KL 散度作為表征度量的知識蒸餾方案,把表征的每一維獨立對待,無法有效地蒸餾高度相關(guān)的、結(jié)構(gòu)化的信息[9],而在美團搜索場景下,數(shù)據(jù)是高度結(jié)構(gòu)化的,因此采用傳統(tǒng)的知識蒸餾策略來做表征蒸餾可能無法較好地捕獲這種結(jié)構(gòu)化的知識。

      我們將對比學習技術(shù)應(yīng)用到粗排建模中,使得粗排模型在蒸餾精排模型的表征時,也能蒸餾到序的關(guān)系。我們用

    來表示粗排模型,用

    來表示精排模型。假設(shè)q是數(shù)據(jù)集中的一個請求

    是該請求下的一個正樣例,而

    是該請求下對應(yīng)的k個負樣例。

     

      我們將

    分別輸入到粗排和精排網(wǎng)絡(luò)中,得到其對應(yīng)的表征

    ,與此同時,我們將

    輸入到粗排網(wǎng)絡(luò)中,得到粗排模型編碼后的表征

     。對于對比學習負例對的選取,我們采用策略 3 中的方案,對精排的順序進行分檔,同檔內(nèi)精排、粗排的表征對看成是正例,不同檔間粗排、精排的表征對看成是負例,而后用 InfoNCE Loss 來優(yōu)化這個目標:

     

      其中 表示兩個向量的點積, 是溫度系數(shù)。通過對 InfoNCE loss 的性質(zhì)進行分析,不難發(fā)現(xiàn)上式本質(zhì)上等價于最大化粗排表征和精排表征互信息的一個下界。因此,該方法本質(zhì)上是在互信息層面上最大化精排表征和粗排表征之間的一致性,能夠更有效地蒸餾結(jié)構(gòu)化知識。

    圖片

      圖6 對比學習精排信息遷移

      在上文公式 (1) 的基礎(chǔ)上,補充對比學習表征蒸餾 Loss,離線效果 Recall@150 +14PP,線上 CTR +0.15%。相關(guān)工作的詳細內(nèi)容可以參考我們的論文[10](正在投稿中)。

      3.2 效果性能聯(lián)合優(yōu)化

      前面提到線上預測的粗排候選集較大,考慮到系統(tǒng)全鏈路性能的約束,粗排需要考慮預測效率。前文提到的工作都是基于簡單 DNN + 蒸餾的范式來進行優(yōu)化,但是存在如下兩個問題:

      目前受限于線上性能而只使用了簡單特征,未引入更加豐富的交叉特征,導致模型效果還有進一步提升的空間。

      固定粗排模型結(jié)構(gòu)的蒸餾會損失蒸餾效果,從而造成次優(yōu)解[11]。

      根據(jù)我們的實踐經(jīng)驗,直接在粗排層引入交叉特征是不能滿足線上時延要求的。因此為了解決以上問題,我們探索并實踐了基于神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索的粗排建模方案,該方案同時優(yōu)化粗排模型的效果和性能,選擇出滿足粗排時延要求的最佳特征組合和模型結(jié)構(gòu),整體架構(gòu)圖如下圖7所示:

    圖片

      圖7 基于 NAS 的特征和模型結(jié)構(gòu)

      選擇下面我們對其中的神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索(NAS)以及引入效率建模這兩個關(guān)鍵技術(shù)點進行簡單介紹:

      神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索:如上圖7所示,我們采用基于 ProxylessNAS[12]的建模方式,整個模型訓練除了網(wǎng)絡(luò)參數(shù)外增加了特征 Masks 參數(shù)和網(wǎng)絡(luò)架構(gòu)參數(shù),這些參數(shù)是可微分的,隨著模型目標一起學習。在特征選擇部分,我們給每一個特征引入一個基于伯努利分布的 Mask 參數(shù) ,參見公式(4),其中伯努利分布的 θ 參數(shù)通過反向傳播進行更新,最終獲得每個特征的重要度。在結(jié)構(gòu)選擇部分,采用了 L 層 Mixop 表示,每組 Mixop 包括 N 個可供選擇的網(wǎng)絡(luò)結(jié)構(gòu)單元,在實驗中,我們采用了不同隱層神經(jīng)單元數(shù)的多層感知機,其中 N= {1024, 512, 256, 128, 64},同時我們還增加了隱藏單元數(shù)為 0 的結(jié)構(gòu)單元,用于選擇具有不同層數(shù)的神經(jīng)網(wǎng)絡(luò)。

      效率建模:為了在模型目標中建模效率指標,我們需要采用一個可微分的學習目標來表示模型耗時,粗排模型的耗時主要分為特征耗時和模型結(jié)構(gòu)耗時。

      對于特征耗時來說,每個特征 fi 的延時期望可以被建模為如公式(5)所示,其中

    是服務(wù)端打點記錄的每個特征時延。

     

      在實際情況中特征可以分為兩大類,一部分是上游透傳類特征 ,其延時主要來源于上游傳輸延時;另外一類特征 來自于本地獲取(讀取 KV 或者計算),那么每個特征組合的時延可以被建模為:

      其中

    表示對應(yīng)特征集合的個數(shù),

    建模系統(tǒng)特征拉取并發(fā)度。

     

      對于模型結(jié)構(gòu)的延時建模可參見上圖 7 右邊部分,由于這些 Mixop 的執(zhí)行是順序進行的,因此我們可以采取遞歸的方式的計算模型結(jié)構(gòu)延時,整個模型部分的耗時可以用最后一層的 Mixop 來表達,示意圖如下圖 8 所示:

    圖片

      圖8 模型延時計算圖

      圖8 左邊是裝配有網(wǎng)絡(luò)架構(gòu)選擇的粗排網(wǎng)絡(luò),其中 表示第 層的第 個神經(jīng)單元的權(quán)重。右邊是網(wǎng)絡(luò)延時計算示意圖。因此整個模型預測部分耗時可以用最后一層模型來表示,如公式(7)所示:

      最終我們把效率指標引入模型,最終模型訓練的 Loss 如下面公式(8)所示,其中,f 表示精排網(wǎng)絡(luò),

    表示平衡因子,

    分別表示粗排和精排的打分輸出。

     

      通過神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索的建模來聯(lián)合優(yōu)化粗排模型的效果和預測性能,離線 Recall@150 +11PP, 最終在線上延時不增加的情況下,線上指標 CTR +0.12%;詳細工作可參考[13],已被 KDD 2022 接收。

      4. 總結(jié)

      從 2020 年開始,我們通過大量的工程性能優(yōu)化使粗排層落地 MLP 模型,在2021 年我們繼續(xù)在 MLP 模型基礎(chǔ)上,持續(xù)迭代粗排模型來提升粗排效果。

      首先,我們借鑒業(yè)界常用的蒸餾方案來聯(lián)動精排優(yōu)化粗排,從精排結(jié)果蒸餾、精排預測分數(shù)蒸餾、特征表征蒸餾三個層面分別進行了大量實驗,在不增加線上延時的情況下,提升粗排模型效果。其次,考慮到傳統(tǒng)蒸餾方式無法很好處理排序場景中的特征結(jié)構(gòu)化信息,我們自研了一套基于對比學習的精排信息遷移粗排方案。

      最后,我們進一步考慮到粗排優(yōu)化本質(zhì)上是效果和性能的 trade-off,采用多目標建模的思路同時優(yōu)化效果和性能,落地神經(jīng)網(wǎng)絡(luò)架構(gòu)自動搜索技術(shù)來進行求解,讓模型自動選擇效率和效果最佳的特征集合和模型結(jié)構(gòu)。后續(xù)我們會從以下幾個方面繼續(xù)迭代粗排層技術(shù):

      粗排多目標建模:目前的粗排本質(zhì)上還是一個單目標模型,目前我們正在嘗試將精排層的多目標建模應(yīng)用于粗排。

      粗排聯(lián)動的全系統(tǒng)動態(tài)算力分配:粗排可以控制召回的算力以及精排的算力,針對不同場景,模型需要的算力是不一樣的,因此動態(tài)算力分配可以在不降低線上效果的情況下減小系統(tǒng)算力消耗,目前我們已經(jīng)在這個方面取得了一定的線上效果。

      文章內(nèi)容僅供閱讀,不構(gòu)成投資建議,請謹慎對待。投資者據(jù)此操作,風險自擔。

    即時

    TCL實業(yè)榮獲IFA2024多項大獎,展示全球科技創(chuàng)新力量

    近日,德國柏林國際電子消費品展覽會(IFA2024)隆重舉辦。憑借在核心技術(shù)、產(chǎn)品設(shè)計及應(yīng)用方面的創(chuàng)新變革,全球領(lǐng)先的智能終端企業(yè)TCL實業(yè)成功斬獲兩項“IFA全球產(chǎn)品設(shè)計創(chuàng)新大獎”金獎,有力證明了其在全球市場的強大影響力。

    新聞

    敢闖技術(shù)無人區(qū) TCL實業(yè)斬獲多項AWE 2024艾普蘭獎

    近日,中國家電及消費電子博覽會(AWE 2024)隆重開幕。全球領(lǐng)先的智能終端企業(yè)TCL實業(yè)攜多款創(chuàng)新技術(shù)和新品亮相,以敢為精神勇闖技術(shù)無人區(qū),斬獲四項AWE 2024艾普蘭大獎。

    企業(yè)IT

    重慶創(chuàng)新公積金應(yīng)用,“區(qū)塊鏈+政務(wù)服務(wù)”顯成效

    “以前都要去窗口辦,一套流程下來都要半個月了,現(xiàn)在方便多了!”打開“重慶公積金”微信小程序,按照提示流程提交相關(guān)材料,僅幾秒鐘,重慶市民曾某的賬戶就打進了21600元。

    3C消費

    “純臻4K 視界煥新”——愛普生4K 3LCD 激光工程投影

    2024年3月12日,由愛普生舉辦的主題為“純臻4K 視界煥新”新品發(fā)布會在上海盛大舉行。

    研究

    2024全球開發(fā)者先鋒大會即將開幕

    由世界人工智能大會組委會、上海市經(jīng)信委、徐匯區(qū)政府、臨港新片區(qū)管委會共同指導,由上海市人工智能行業(yè)協(xié)會聯(lián)合上海人工智能實驗室、上海臨港經(jīng)濟發(fā)展(集團)有限公司、開放原子開源基金會主辦的“2024全球開發(fā)者先鋒大會”,將于2024年3月23日至24日舉辦。