當(dāng)前熱文:QQ瀏覽器是如何提升搜索相關(guān)性的?
2023-01-15 13:01:37 來源:程序員客棧
(資料圖片)
導(dǎo)言 | 搜索相關(guān)性主要指衡量Query和Doc的匹配程度,是信息檢索的核心基礎(chǔ)任務(wù)之一,也是商業(yè)搜索引擎的體驗(yàn)優(yōu)劣最樸素的評價維度之一。本文作者劉杰主要介紹QQ瀏覽器搜索相關(guān)性團(tuán)隊(duì)在相關(guān)性系統(tǒng)及算法方面的實(shí)踐經(jīng)歷。值得一提的是,本文會特別分享在QQ瀏覽器搜索、搜狗搜索兩個大型系統(tǒng)融合過程中,在系統(tǒng)融合、算法融合、算法突破方面的實(shí)踐經(jīng)驗(yàn)。希望對搜索算法以及相關(guān)領(lǐng)域內(nèi)的同學(xué)有幫助。業(yè)務(wù)介紹
搜索業(yè)務(wù)是QQ瀏覽器的核心功能之一,每天服務(wù)于億萬網(wǎng)民的查詢檢索,為用戶提供信息查詢服務(wù),區(qū)別于一些垂直領(lǐng)域的站內(nèi)搜索,從索引規(guī)模、索引豐富度來看,QQ瀏覽器的搜索業(yè)務(wù)可以定位成綜合型的全網(wǎng)搜索引擎。具體來說,檢索結(jié)果的類型,不僅包含傳統(tǒng)Web網(wǎng)頁、Web圖片,也包含新型富媒體形態(tài),例如小程序、微信公眾號文章、視頻四宮格卡片、智能問答等移動互聯(lián)網(wǎng)生態(tài)下的新型富媒體資源。從相關(guān)性的視角看,QQ瀏覽器的業(yè)務(wù)場景,既包含傳統(tǒng)綜合搜索引擎的基本特點(diǎn),即承接不同群體、不同興趣、不同地域的海量用戶的查詢Query。從需求角度來看,QQ瀏覽器的搜索業(yè)務(wù)有著大量的用戶主動查詢,其需求種類、表達(dá)形式、結(jié)果偏好,存在非常大的差異性,對系統(tǒng)的檢索、Query理解、相關(guān)性判別有著巨大的挑戰(zhàn);同時,從資源類型角度看,依托集團(tuán)自有的生態(tài)優(yōu)勢,QQ瀏覽器的搜索場景包含海量的新形態(tài)的內(nèi)容搜索,例如微信公眾號文章、企鵝號圖文、企鵝號視頻,這些資源與傳統(tǒng)網(wǎng)頁在內(nèi)容表述、內(nèi)容形式上與傳統(tǒng)網(wǎng)頁有著較大的區(qū)別,也對相關(guān)性算法提出了新的要求。搜索相關(guān)性介紹
1)搜索主體框架在介紹相關(guān)性實(shí)踐前,首先介紹下系統(tǒng)當(dāng)前的現(xiàn)狀。我們于2021年完成了看點(diǎn)、搜狗兩套系統(tǒng)的系統(tǒng)級融合,經(jīng)過不斷地思考、討論、推演、演化后,整體系統(tǒng)的整體最終演化為如圖所示的樣子(示意圖)。在整個系統(tǒng)融合的過程中,整個團(tuán)隊(duì)進(jìn)行了充分的人員、技術(shù)融合,同時也進(jìn)行了相當(dāng)長時間的系統(tǒng)改造。系統(tǒng)從邏輯上分為了兩大搜索子系統(tǒng),即主搜子系統(tǒng)和通用垂搜子系統(tǒng),分別由搜狗系統(tǒng)、看點(diǎn)系統(tǒng)演化而來,同時在系統(tǒng)頂層將兩個子系統(tǒng)結(jié)果進(jìn)行進(jìn)一步融合排序,最終輸出檢索結(jié)果。具體來說分位,分為三個邏輯層次:第一,融合系統(tǒng):對自然結(jié)果、垂搜特型結(jié)果(卡片)進(jìn)行整頁異構(gòu)排序,包含點(diǎn)擊預(yù)估、異構(gòu)多目標(biāo)排序等階段,同時也會進(jìn)行一些業(yè)務(wù)頂層的輕量重排序或微調(diào)。第二,通用垂搜子系統(tǒng):垂搜檢索系統(tǒng)由看點(diǎn)搜索系統(tǒng)演化而來,主要用于對接入對高速迭代、快速部署有很高要求,與通用檢索邏輯有較大差別的業(yè)務(wù)。整體系統(tǒng)的特點(diǎn)是部署便捷、快速,這套系統(tǒng)從設(shè)計(jì)之初就充分考慮了多業(yè)務(wù)快速接入的場景,目前承接的主要是特型形態(tài)的結(jié)果。第三,主搜子系統(tǒng):對十億級規(guī)模的索引庫中,對用戶的Query進(jìn)行檢索,一般會經(jīng)歷召回、精排兩個重要階段。主要的Doc形態(tài)是傳統(tǒng)Web網(wǎng)頁、Web圖片、H5形態(tài)網(wǎng)頁等,這套系統(tǒng)的特點(diǎn)為,業(yè)務(wù)形態(tài)、效果相對穩(wěn)定、持續(xù),問題類型有相對的共性,適合算法處于穩(wěn)定器的業(yè)務(wù),主要的難點(diǎn)在于滿足用戶的中長尾需求。2)算法架構(gòu)搜索算法的計(jì)算流程,大致可以分為召回和排序兩大邏輯部分。從算法處理的Doc規(guī)模來看,在工業(yè)界的一般算法架構(gòu),都是類似金字塔型的漏斗結(jié)構(gòu)(QQ瀏覽器目前的主搜子系統(tǒng)、垂搜子系統(tǒng),雖然定位不同,但都遵照了上述模式):單個Query會從海量的索引中,檢索出一個初始Doc集合,然后經(jīng)過系統(tǒng)的幾個重要的Ranking階段,逐步對上一個階段的Doc集合進(jìn)行篩選,最終篩序出系統(tǒng)認(rèn)為最好的N條結(jié)果。具體來說,如圖所示可以分為:第一,召回層:包含文本檢索和向量檢索兩部分,文本檢索會按照Query的核心詞進(jìn)行語法樹構(gòu)建,由倒排系統(tǒng)進(jìn)行Doc歸并、截?cái)喈a(chǎn)出文本召回集合。向量檢索部分利用深度模型將Query、Doc映射到隱空間,在線利用向量檢索引擎召回與Query相似的N條結(jié)果,相比倒排檢索能夠充分利用PLM對Query和Doc的表示進(jìn)行學(xué)習(xí),實(shí)現(xiàn)近似一段式檢索,相比傳統(tǒng)的召回+粗排的二段式檢索有更好的效果。第二,粗排層:粗排層使用計(jì)算復(fù)雜度相對低的方式進(jìn)行特征捕捉,基本上分為三類:第一類為相關(guān)性類特征,文本相關(guān)性、語義相關(guān)性,其中語義相關(guān)性受限于這個位置的算力,主要采用雙塔結(jié)構(gòu),將Query、Doc表示為向量,用點(diǎn)積或者半交互得到。第二類為Query、Doc的靜態(tài)特征,例如Query的一些長度、頻次、Doc質(zhì)量、Doc發(fā)布時間等。第三類特征為統(tǒng)計(jì)類特征,例如歷史窗口下的用戶行為數(shù)據(jù)。第三,精排層:對粗排層輸入的Doc集合進(jìn)行更精細(xì)化的區(qū)分,按照搜索多目標(biāo)來,精排層要對Doc以下幾個維度進(jìn)行綜合判斷,例如相關(guān)性、時效性、質(zhì)量權(quán)威性、點(diǎn)擊預(yù)估等幾個維度進(jìn)行綜合考量。相關(guān)性計(jì)算的位置:按照上述介紹的算法架構(gòu),QQ瀏覽器的搜索相關(guān)性計(jì)算主要分為粗排相關(guān)性、精排相關(guān)性兩部分,其中粗排相關(guān)性用于在萬級別->百級別這個篩選階段,算法大部分使用基于倒排的文本匹配特征,同時加上雙塔結(jié)構(gòu)的語義特征,在計(jì)算復(fù)雜度相比精排更輕量;精排相關(guān)性,主要用于百級別->個級別的篩選,算法相比粗排,利用了Doc的正排數(shù)據(jù),建模方式更精細(xì)和計(jì)算復(fù)雜度也相對更高,本文在算法實(shí)踐方面,會偏向于介紹團(tuán)隊(duì)在精算階段的經(jīng)驗(yàn)。3)評估體系搜索相關(guān)性的評估,主要分為離線和在線評估。離線評估主要看重PNR以及DCG的指標(biāo)變化,在線評估上主要看重interleaving實(shí)驗(yàn)以及人工的GSB評估。下面將詳介紹幾種評估指標(biāo)的計(jì)算方式:第一種,PNR:Positive-Negative Ratio是一種pairwise的評估手段,用來評估搜索相關(guān)性效果。它的物理含義是在一個排序列表中的結(jié)果按照query劃分,對每個query下的結(jié)果進(jìn)行兩兩組pair,計(jì)算正序pair的數(shù)量/逆序pair的數(shù)量。值越大說明整個排序列表中正序的比例越多。第二種,DCG:Discounted Cumulative Gain是一種listwise的評估手段。它的物理含義是整個排序相關(guān)性,并且越靠前的item收益越高。其中r(i)代表相關(guān)性label。一般而言K選擇1或者3。第三種,interleaving:Interleaving是一種在線評估用戶點(diǎn)擊偏好的實(shí)驗(yàn)。它是將兩個排序列表的結(jié)果交織在一起曝光給用戶,并記錄用戶最總的點(diǎn)擊偏好。整體的感知增益計(jì)算邏輯:其中wins代表用戶最總點(diǎn)擊了A列表結(jié)果,ties代表持平,loss則代表落敗。則代表感知增益勝出,反之則代表落敗。第四種,GSB:Good vs Same vs Bad 是一種采用專家評估的手段。標(biāo)注專家會對左右兩邊的排序列表進(jìn)行評估,一邊是來自基線線上,一邊是來自試驗(yàn)組線上。對于標(biāo)注專家而言,他不清楚那邊的結(jié)果是試驗(yàn)組產(chǎn)生的,然后對這兩個排序列表進(jìn)行打分,Good or Same or Bad。最后統(tǒng)計(jì)統(tǒng)計(jì)整體的GSB指標(biāo):(Good-Bad)/(Good + Same +Bad)。相關(guān)性精算的系統(tǒng)演進(jìn)
搜狗搜索作為一款歷經(jīng)迭代18年的搜索產(chǎn)品,在數(shù)據(jù)積累、技術(shù)打磨、系統(tǒng)成熟度方面有很強(qiáng)的先天優(yōu)勢。QQ瀏覽器·搜索是搜索行業(yè)較為年輕的新人,在架構(gòu)選型、技術(shù)代際、歷史債務(wù)方面有很強(qiáng)的后發(fā)優(yōu)勢。為了兼顧兩家之長,在系統(tǒng)融合的過程中,團(tuán)隊(duì)的首要目標(biāo)就是充分融合兩套系統(tǒng)的特有優(yōu)勢。以相關(guān)性視角來看,我們大致經(jīng)歷了以下幾個改造時期1)1.0時代,群雄割據(jù)->三國爭霸從相關(guān)性的視角看,面臨最大的難題是兩套系統(tǒng)相關(guān)性得分不可比的問題。具體來說:標(biāo)準(zhǔn)差異:兩套系統(tǒng)的相關(guān)性判定標(biāo)準(zhǔn)、標(biāo)注方法不同,從根本上不可比。建模差異:兩個系統(tǒng)對于多目標(biāo)(相關(guān)性、時效性、點(diǎn)擊、權(quán)威性)的建模方式存在較大差異:主搜系統(tǒng)以End-To-End思路解決搜索多目標(biāo)的問題,具體來說使用GBDT作為融合模型,所有子特征一并送入融合模型,我們后繼稱之為「大一統(tǒng)」模型。垂搜系統(tǒng)對多目標(biāo)進(jìn)行了進(jìn)一步的拆解,盡量將同一個維度的特征系列匯聚形成高級特征,以相關(guān)性為例,垂搜的會存在一個單獨(dú)的基礎(chǔ)相關(guān)性精算階段,輸出相關(guān)性高級特征,再將高級特征替換所有的子特征的方式進(jìn)入融合排序,我們后繼稱之為「抽象高級特征」。對比思考:從系統(tǒng)設(shè)計(jì)上看,「大一統(tǒng)」VS「抽象高級特征」,是兩種完全不同的思路,前者更符合機(jī)器學(xué)習(xí)的理念,暴露更多的子特征細(xì)節(jié)能夠提供更多的信息;后者的思路,對目標(biāo)進(jìn)行了高度抽象,具有更好的可解釋性。從表面看似乎沒有明顯的優(yōu)劣可言,但從工業(yè)實(shí)踐經(jīng)驗(yàn)看,這里還是有較強(qiáng)的實(shí)踐結(jié)論的。下面揭曉一下結(jié)論,從工業(yè)系統(tǒng)設(shè)計(jì)的角度看,更傾向于「抽象高級特征」這種方案,而非「大一統(tǒng)」的方式。理由有以下幾點(diǎn):第一點(diǎn),可解釋性:工業(yè)算法系統(tǒng)的首要考慮就是如何支撐算法持續(xù)、高效迭代。在多目標(biāo)導(dǎo)向下,「大一統(tǒng)」方式下子特征規(guī)模已經(jīng)達(dá)到了100維以上,逆序的問題歸因相比「高級特征」來講,歸因難度大、問題會更分。這個模式也間接鼓勵算法同學(xué)去新增能夠帶來指標(biāo)提升的新特征,而不是去迭代已有的特征。第二點(diǎn),業(yè)務(wù)需求:「大一統(tǒng)」方式下,一旦脫離該階段的多目標(biāo)排序后,后繼的更High-Level的融合場景即失去判斷相關(guān)性的載體,無法對相關(guān)性維度進(jìn)行比較。更High-Level的融合不得不將必要的子特征繼續(xù)向上傳遞,往往看到某些子特征從最底層一路透傳到最頂層,對子特征的可比性、覆蓋率、迭代維護(hù)成本都要很大的要求第三點(diǎn),特征管理:High-Level的業(yè)務(wù)同學(xué)大量使用子特征也會造成管理混亂,一旦某些子特征在后繼的業(yè)務(wù)中使用,該特征迭代就與其在后繼業(yè)務(wù)中的形成了耦合,例如比較常見的通過某個特征MagicNumber進(jìn)行過濾,很有可能的情況是,特征迭代時也要去調(diào)整該MagicNumber。所以,以相關(guān)性為例,使用具有物理含義的統(tǒng)一「高級特征」會大大減少子特征的管理問題。改進(jìn)方式:我們在垂搜子系統(tǒng)、主搜系統(tǒng)按照同樣的設(shè)計(jì)思路,抽象了一個基礎(chǔ)相關(guān)性計(jì)算階段,這個階段的目標(biāo)是單目標(biāo)的相關(guān)性,即不考察Doc的質(zhì)量、時效性等。這一階段會接管所有刻化相關(guān)性目標(biāo)的特征,通過相關(guān)性模型,輸出相關(guān)性高級特征。同時,相關(guān)性高級特征,會經(jīng)過Probility Calibration算法將score轉(zhuǎn)化為是否相關(guān)的概率(對齊標(biāo)準(zhǔn)、檔位,跨系統(tǒng)可比),同時具有較好的分布穩(wěn)定性、跨Query可比性,即具有物理含義的相關(guān)性得分。應(yīng)用視角上看,分為兩部分,即交給融合排序模型,替換一批刻化相關(guān)性的子特征,另外一部分是直接用于High-Level的場景,例如某些業(yè)務(wù)會將相關(guān)性大于某個閾值的Doc進(jìn)行過濾或者提權(quán)。演進(jìn)總結(jié):首先,我們明確了標(biāo)準(zhǔn)。主要的業(yè)務(wù)場景對齊了相關(guān)性標(biāo)準(zhǔn),特別是每個檔位物理含義。其次,具有物理含義的相關(guān)性得分:對相關(guān)性特征進(jìn)行歸納和融合,通過Probility Calibration算法對得分進(jìn)行相關(guān)概率校準(zhǔn),在ranking任務(wù)能力尚可的情況下,能夠保證跨Query、跨業(yè)務(wù)可比,同時從特征管理的角度看,也從特征割據(jù)的時代進(jìn)入了三足鼎立的時代。2)2.0時代,統(tǒng)一復(fù)用1.0階段我們通過校準(zhǔn)算法、相關(guān)性標(biāo)準(zhǔn)統(tǒng)一,輸出了具有一定的物理含義相關(guān)性得分,可以基本做到子特征保持差異的情況下,基本實(shí)現(xiàn)跨業(yè)務(wù)可比的問題。此時,雖然校準(zhǔn)可以解決系統(tǒng)內(nèi)部的實(shí)現(xiàn)上的差異問題,但團(tuán)隊(duì)面臨更核心問題是系統(tǒng)的近一步融合問題,具體來說:第一,算法融合:如果說「大一統(tǒng)」「高級特征」兩種模式的統(tǒng)一是系統(tǒng)級方法論的對齊,那么「相關(guān)性算法融合」角度,則需要進(jìn)一步將執(zhí)行細(xì)節(jié)對齊。如何最大化算法能力,兼兩家之長,是最基本的融合初衷。第二,人效問題:系統(tǒng)細(xì)節(jié)的差異,算法角度看,在內(nèi)部的模型、特征體系、數(shù)據(jù)結(jié)構(gòu)、代碼庫,全部是完全不同的。維護(hù)兩套大型復(fù)雜系統(tǒng),分別投入則必須要面對人力折半的問題,背后的壓力是可想而知的。在上述背景下,22年重新對兩套系統(tǒng)進(jìn)行了整合,力圖用統(tǒng)一的一套相關(guān)性服務(wù),服務(wù)于主搜索系統(tǒng)和垂搜系統(tǒng)。這里介紹下我們其中一項(xiàng)重要的重構(gòu),重新設(shè)計(jì)構(gòu)建了相關(guān)性精算服務(wù),統(tǒng)一了主搜系統(tǒng)和垂搜系統(tǒng)的相關(guān)性能力,做到90%代碼級別的復(fù)用。相關(guān)性精算服務(wù):新的相關(guān)性精算服務(wù),定位于精算旁路系統(tǒng),為搜索精排階段提供高級相關(guān)性得分,服務(wù)內(nèi)部可以高速并行獲取Doc正排,進(jìn)行精細(xì)化的相關(guān)性特征計(jì)算、GPU計(jì)算、模型預(yù)測等。算法統(tǒng)一,一套代碼,90%的特征屬于通用基礎(chǔ)匹配,10%特征根據(jù)場景差異,對該業(yè)務(wù)的獨(dú)有問題進(jìn)行獨(dú)立刻化。具體來看,新的服務(wù)相比之前提供的能力包括:調(diào)研實(shí)驗(yàn)效率:新的相關(guān)性精算服務(wù),調(diào)研實(shí)驗(yàn)周期由周級下降為天級,背后的效率提升,主要是由于模塊位置帶來的調(diào)研環(huán)境搭建成本上的區(qū)別。在以前的系統(tǒng),相關(guān)性大部分非GPU類的特征,均在召回層實(shí)現(xiàn),這樣帶來的問題是,由于召回層的架構(gòu)大部分都是分布式系統(tǒng),調(diào)研成本相比精算模塊需要更多的機(jī)器成本,這也造成了該階段的調(diào)研需要團(tuán)隊(duì)共用1-2套調(diào)研環(huán)境,調(diào)研&實(shí)驗(yàn)成本將會大大增加。算力能力:相關(guān)性分布式計(jì)算,最重要的貢獻(xiàn)是能夠讓系統(tǒng)的計(jì)算條數(shù)變的更多,這種思路在GPU并行技術(shù)出現(xiàn)以前是非常有效的設(shè)計(jì),將相關(guān)性計(jì)算放到召回層不僅能夠最大限度的利用分布式架構(gòu),同時也節(jié)省了Doc正排在HighLevel獲取的存儲和帶寬,這部分正排數(shù)據(jù)往往是召回層必須的可以兼顧復(fù)用。但最近幾年隨著深度學(xué)習(xí)、GPU并行加速技術(shù)在搜索系統(tǒng)重越來越多的應(yīng)用,業(yè)務(wù)越來越需要重型計(jì)算,這樣的重型計(jì)算是召回層的算力遠(yuǎn)遠(yuǎn)無法滿足的,召回層的相關(guān)性計(jì)算只有基于倒排的特征,更關(guān)心是否命中、命中距離,缺少對未命中詞與query的關(guān)系刻化。算法獨(dú)立性:相比之前最大的區(qū)別是,新的相關(guān)性精算服務(wù),與召回層解耦。從基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)、特包括Query信息、Doc正排,進(jìn)行重構(gòu)對齊,傳導(dǎo)至特征設(shè)計(jì)、實(shí)現(xiàn),也能夠相應(yīng)的進(jìn)行統(tǒng)一。最終做到算法統(tǒng)一,一套代碼,90%的特征屬于通用基礎(chǔ)匹配,10%特征根據(jù)場景差異,對該業(yè)務(wù)的獨(dú)有問題進(jìn)行獨(dú)立刻化。搜索相關(guān)性技術(shù)實(shí)踐
1)相關(guān)性標(biāo)準(zhǔn)QQ瀏覽器搜索下的相關(guān)性標(biāo)準(zhǔn),主要用于基礎(chǔ)相關(guān)性樣本的標(biāo)注,為了能精細(xì)化的表達(dá)是否相關(guān)這一概率,我們將相關(guān)、不相關(guān)這個二分類任務(wù),拓展到了五檔分類,能夠提供更多的監(jiān)督信息。同時,每一檔的物理含義,在不同的業(yè)務(wù)下,盡量保持對等。例如,搜用搜索場景、視頻搜索場景下,同一檔位的Doc需要具有對等的相關(guān)程度,即應(yīng)具備同一等級的相關(guān)性。這樣做的好處是,在High-Level場景下,當(dāng)分類能力尚可的情況下,通過Probility Calibration可以對不同的業(yè)務(wù)下的doc進(jìn)行得分的比較,但仍可以對相關(guān)性內(nèi)部特征的實(shí)現(xiàn)保留一定的差異性,對系統(tǒng)非常友好。2)相關(guān)性的技術(shù)架構(gòu)3)深度語義匹配實(shí)踐QQ瀏覽器搜索相關(guān)性的困難與挑戰(zhàn)QQ瀏覽器的搜索業(yè)務(wù)每天服務(wù)于億萬網(wǎng)民的查詢檢索,因?yàn)闃I(yè)務(wù)場景偏向于綜合搜索業(yè)務(wù),每天的用戶的查詢表達(dá)都呈現(xiàn)海量量級,在這個場景下的用戶Query天然的具備很強(qiáng)的長尾效應(yīng),對搜索相關(guān)性的匹配能力提出了巨大的挑戰(zhàn)。深度語義的現(xiàn)狀為了解決一詞多義等模糊表達(dá)的問題,QQ瀏覽器的搜索相關(guān)性場景,進(jìn)行了大量的語義匹配工作實(shí)踐。隨著深度學(xué)習(xí)技術(shù)的興起,基于預(yù)訓(xùn)練語言模型的方法,特別是基于BERT模型的語義匹配,目前是我們工作的主要研究方向。當(dāng)前系統(tǒng)按照表達(dá)方式來看,主要包括基于表示的匹配方法(Representation-based)和基于交互的匹配方法(Interaction-based)?;诒硎镜钠ヅ浞椒ǎ菏褂蒙疃饶P头謩e學(xué)習(xí)Query和Doc的Embbeding,在線通過cosine計(jì)算Query和Doc相似度來作為語義匹配分?jǐn)?shù)。計(jì)算框架上,借鑒百度的SimNet雙塔結(jié)構(gòu),由于在線計(jì)算相對交互式模型更友好,目前普遍應(yīng)用于粗排語義相關(guān)性的計(jì)算?;诮换サ钠ヅ浞椒ǎ簩uery和Doc(Title)拼接后輸入給BERT模型,經(jīng)過N層Transformer Block后,將CLS Token的Embbeding接入下游相關(guān)性任務(wù),由于交互式普遍需要比較高的計(jì)算復(fù)雜度,一般用于QQ瀏覽器的精排階段。QQ瀏覽器搜索相關(guān)性深度語義實(shí)踐相關(guān)性Ranking Loss:目前我們的相關(guān)性標(biāo)注標(biāo)準(zhǔn)共分為五個檔位,最直接的建模方式,其實(shí)是進(jìn)行N=5的N分類任務(wù),即使用Pointwise的方式建模。搜索場景下,我們其實(shí)并不關(guān)心分類能力的好壞,而更關(guān)心不同樣本之前的偏序關(guān)系,例如對于同一個Query的兩個相關(guān)結(jié)果DocA和DocB,Pointwise模型只能判斷出兩者都與Query相關(guān),無法區(qū)分DocA和DocB相關(guān)性程度。因此搜索領(lǐng)域的任務(wù),更多更廣泛的建模思路是將其視為一個文檔排序場景,廣泛使用Leaning To Rank思想進(jìn)行業(yè)務(wù)場景建模。Pairwise 方法通過考慮兩兩文檔之間的相關(guān)對順序來進(jìn)行排序,相比 Pointwise 方法有明顯改善,因此我們對BERT模型的Fine-tuning任務(wù),也進(jìn)行了RankingLoss的針對性改進(jìn)。Pairwise Loss下的訓(xùn)練框架,任務(wù)輸入的單條樣本為三元組的形式,在多檔標(biāo)注下,我們對于同一Query的多個候選Doc,選擇任意一個高檔位Doc和一個低檔位Doc組合成三元組作為輸入樣本。深度語義特征的校準(zhǔn)問題——Ranking Loss的問題:相關(guān)性是搜索排序的基礎(chǔ)能力,在整個計(jì)算流程的視角看,相關(guān)性計(jì)算不是最后一個階段,所以當(dāng)相關(guān)性內(nèi)部子特征的目標(biāo)如果直接使用RankingLoss,要特別注意與上下游的配合應(yīng)用,特別要關(guān)注單特征的RankingLoss持續(xù)減少,是否與整體任務(wù)的提升一致。同時,RankLoss由于不具有全局的物理含義,即不同Query下的DocA和DocB的得分是不具有可比性,這直接導(dǎo)致了其作為特征值應(yīng)用到下游模型時,如果我們使用例如決策樹這種基于全局分裂增益來劃分閾值的模型,會有一定的損失。搜索系統(tǒng)一般為了追求可解釋性,往往會將高級特征通過一些解釋性較強(qiáng)的模型進(jìn)行融合。以相關(guān)性高級特征的產(chǎn)出過程為例,我們在產(chǎn)出整體的相關(guān)性得分時,會使用例如XGB模型對相關(guān)性N維子特征進(jìn)行最終的打分預(yù)測,如果此時放大這個打分過程,即當(dāng)訓(xùn)練好的決策樹進(jìn)行最終模型預(yù)測時,當(dāng)執(zhí)行到某一個決策樹時,會按照特征分裂值判斷走左子樹還是右子樹,這個分裂值就要求該特征在全部Query下都按照此分裂點(diǎn)判斷,這里如果當(dāng)前的特征值域在不同Query下差異很大,在個別Query下的打分準(zhǔn)確率一定會大打折扣。實(shí)踐中我們對語義特征的ranking loss,也同時進(jìn)行了一部分pointwise loss結(jié)合,目的是希望單特征得分的分布盡量在全局有一定的可比性,即對其進(jìn)行一定Calibration能夠幫助相關(guān)性模型整體的PNR提升。由圖所示,當(dāng)單特征持續(xù)以PairwiseLoss訓(xùn)練,隨著訓(xùn)練步數(shù)的增加,單特征PNR是持續(xù)上升的,但其放入相關(guān)性模型后,整體的PNR并不是線性上升的,此時觀察單特征ECE(Expected Calibration Error 期望標(biāo)定誤差)有較大波動。如果將單特征變成Pairwise+PointwiseLoss,發(fā)現(xiàn)隨著訓(xùn)練過程的進(jìn)行,模型ECE持續(xù)下降,單特征PNR微弱上升,且相關(guān)性整體的PNR能夠上升,且最終高于單純使用Pairwise的方式。領(lǐng)域自適應(yīng):最近幾年的NLP領(lǐng)域,預(yù)訓(xùn)練方向可以稱得上AI方向的掌上明珠,從模型的參數(shù)規(guī)模、預(yù)訓(xùn)練的方法、多語言多模態(tài)等幾個方向持續(xù)發(fā)展,不斷地刷新著領(lǐng)域Benchmark。預(yù)訓(xùn)練通過自監(jiān)督學(xué)習(xí),從大規(guī)模數(shù)據(jù)中獲得與具體任務(wù)無關(guān)的預(yù)訓(xùn)練模型。那么,在搜索領(lǐng)域下,如何將預(yù)訓(xùn)練語言模型,與搜索語料更好的結(jié)合,是我們團(tuán)隊(duì)一直在探索的方向。在實(shí)踐過程中,我們發(fā)現(xiàn)通用預(yù)訓(xùn)練的語料,與搜索場景的任務(wù),依然存在不小的gap,所以一個比較樸素的思想是,是否可以將搜索領(lǐng)域的自有數(shù)據(jù)進(jìn)行預(yù)訓(xùn)練任務(wù)。在實(shí)際的實(shí)驗(yàn)中,我們發(fā)現(xiàn)將搜索領(lǐng)域的語料,在基礎(chǔ)預(yù)訓(xùn)練模型后,繼續(xù)進(jìn)行post-pretrain,能夠有效的提升業(yè)務(wù)效果,對下游任務(wù)的提升,最大可以大致9%。4)相關(guān)性語義匹配增強(qiáng)實(shí)踐深度語義匹配的魯棒性問題在NLP領(lǐng)域,預(yù)訓(xùn)練語言模型(Pretrained Language Model)已經(jīng)在很多任務(wù)上取得了顯著的成績,PLM搭配領(lǐng)域Finetune也同時在工業(yè)界成為解決搜索、推薦等領(lǐng)域的標(biāo)準(zhǔn)范式。在搜索相關(guān)性業(yè)務(wù)中,行業(yè)內(nèi)在2019年開始,就已將神經(jīng)網(wǎng)絡(luò)模型全面轉(zhuǎn)為基于Transformer結(jié)構(gòu)的模型結(jié)構(gòu)上來。區(qū)別于傳統(tǒng)的字面匹配,語言模型能夠有效解決Term模糊匹配的問題,但大力出奇跡的同時,也引入了很多核心詞缺失等問題。例如,基于預(yù)訓(xùn)練語言模型,“二手車”和“二手摩托車”會判定為比較匹配,但實(shí)際上二者明顯不同。如何解決此類魯棒性問題,是預(yù)訓(xùn)練語言模型下的語義匹配要解決的核心問題。什么是相關(guān)性匹配(RelevanceMatching)搜索業(yè)務(wù)下的核心詞缺失問題,我們認(rèn)為傳統(tǒng)的預(yù)訓(xùn)練方向并不能提供一個統(tǒng)一的解決方案,因?yàn)樵搯栴}屬于搜索領(lǐng)域的特型問題,我們在實(shí)際工作中發(fā)現(xiàn),搜索場景下很多形態(tài)的問題,與NLP的SemanticMatching任務(wù)的差異還是比較明顯的,例如短Query和長Title的匹配。對此,我們更傾向于通過對特型問題獨(dú)立建模和處理,為了強(qiáng)化搜索相關(guān)性的魯棒性,提出了Relevance Matching的概念和對應(yīng)的建模方式,二者的區(qū)別,具體來說:Relevance Matching:注重關(guān)鍵詞的精確匹配,相應(yīng)的需要考慮核心詞的識別、多種維度的要求。(一般需要關(guān)注query的重要性以及提取匹配信號,同時形態(tài)上Q比較短)Semantic Matching:注重Term間的相似關(guān)系,建模Term、Phrase、Sentence間的相似關(guān)系。(偏向query,title表達(dá)是不是相似,同時認(rèn)為query和title的重要性一樣)相似度匹配信號 Similarity matching signals:和準(zhǔn)確的單詞匹配相比,捕獲單詞、短語和句子的語義相關(guān)性/相似性更重要。語義結(jié)構(gòu) Compositional meanings:語義匹配的文本通過是具有一定語法結(jié)構(gòu)的,使用語義結(jié)構(gòu)的含義會非常有效。全局匹配 Global matching requirement:語義匹配通常將文本的兩個片段作為一個整體來推理它們之間的語義關(guān)系。相關(guān)性匹配的相關(guān)工作早期的做法:行業(yè)內(nèi)其實(shí)很早就有提出Relevance Matching的概念,在Transformer結(jié)構(gòu)以前的主要工作,大多通過對Query和Doc的文本建立匹配矩陣,矩陣中的每一個元素是對應(yīng)位置的Term相似度,然后再通過對匹配矩陣的命中Pattern進(jìn)行提取,具體來說:MatchPyramid(中科院 2016 AAAI),構(gòu)建了基于字面匹配或Embedding匹配,構(gòu)建query-document匹配矩陣,命中提取使用CNN + Dynamic Pooling + MLP完成。DRMM (2016 中科院 CIKM),提出了一個交互得模型結(jié)構(gòu)。Query中的每一個Term分別與Doc中的所有的Term交互,將相似度離散到直方圖上,通過MLP,以及Q中的Term Gating Network產(chǎn)出得分;其中Term Gating嘗試了兩種方式,分別是單層FeedForward+softmax和無監(jiān)督的IDF,實(shí)驗(yàn)效果是后者更好。由于Embedding是直接使用的300d word2vec,因此參數(shù)量非常小 —— Matching部分有155個參數(shù),Term Gating部分有300個參數(shù)。K-NRM (2017 SIGIR) ,主要貢獻(xiàn)在于提出了RBF Kernel的Pooling方式,與前作最大的不同是,Embedding使用隨機(jī)初始化并端到端訓(xùn)練的方式,總參數(shù)量達(dá)到了約5000w(絕大部分來自Embedding層)實(shí)驗(yàn)效果顯著優(yōu)于DRMM,其中端到端訓(xùn)練Embedding帶來了最大幅度的提升,Kernel Pooling相比基線的pooling方式能帶來小幅提升。PACRR (2017 EMNLP),主要創(chuàng)新點(diǎn):在對每一個query term完成pooling后,使用LSTM建模整體的query coverage。LSTM每個timestep的輸入是concat(pooling后的query term representation,normalized_IDF)。LSTM的輸出維度是1,LSTM的輸出直接作為最終的score。Bert以后的做法:大部分從預(yù)訓(xùn)練語言模型的角度,在MASK機(jī)制、外部知識引入、參數(shù)規(guī)模等角度進(jìn)行研究,也取得了顯著的效果提升。但在搜索相關(guān)性業(yè)務(wù)上,大部分交互式的應(yīng)用方式,是將Query和Title完全拼接后輸入Bert,最后在輸出層基于CLS這個特殊Token的Embbeding做領(lǐng)域任務(wù)。目前我們了解到的是,除了CEDR這個工作外,很少有直接使用非CLS以外的Token的模型架構(gòu)。這里可能對Transformer比較熟悉的同學(xué)會覺得,每一個Transformer Block內(nèi)部架構(gòu)其實(shí)會天然的對兩兩Term進(jìn)行Attention計(jì)算,形成多頭AttentionMap,與Relevance Matching中的Matrix的設(shè)計(jì)思路幾乎一致,是否還有必要繼續(xù)再手動進(jìn)行一次Matri Matching的計(jì)算。對此我們在22年通過一系列實(shí)踐,證明Relevance Matching的重要意義。相關(guān)性匹配增強(qiáng)為了兼顧SemanticMatching和RelevanceMatching兩者的能力,我們提出了HybridMratrixMatching(HMM)模型,提升模型在核心成分精確匹配和語義泛化匹配兩方面的綜合能力。具體優(yōu)化點(diǎn)為:第一,Query-Title匹配矩陣建模。隱式匹配矩陣構(gòu)造:基于BERT產(chǎn)出的最后一層的token embedding,通過dense + cosine similarity的方式構(gòu)造Q-T語義匹配矩陣;顯式文本匹配矩陣構(gòu)造:基于query與title分詞后的詞粒度命中信息,構(gòu)造Q-T精確匹配矩陣,并進(jìn)一步打平映射到與BERT輸入信息相同的token粒度。第二,語義匹配與文本匹配信息融合。CNN匯聚兩種匹配矩陣信息:在模型輸出層,對隱式和顯式匹配矩陣拼接產(chǎn)出N個|Q|x|T|匹配矩陣,通過3D-CNN + Weighted Sum Pooling的方式來捕捉語義匹配和Term顯式匹配相結(jié)合的命中pattern,產(chǎn)出匹配矩陣特征向量;最終得分融合:將匹配矩陣側(cè)產(chǎn)出的特征向量與BERT CLS特征向量拼接,融合產(chǎn)出最終的模型得分。實(shí)驗(yàn)&效果為了能夠驗(yàn)證Hybrid MratrixMatching(HMM)模型在搜索場景下的匹配能力,我們對模型進(jìn)行了離線和在線兩方面的效果驗(yàn)證。離線實(shí)驗(yàn):我們對新模型進(jìn)行了消融實(shí)驗(yàn)分析,其中幾個比較重要的實(shí)驗(yàn)結(jié)論為:隱式MatchingMatrix結(jié)構(gòu),單獨(dú)進(jìn)行下游任務(wù)預(yù)測時,測試集的PNR、NDCG等指標(biāo)幾乎與只用CLS進(jìn)行下游任務(wù)相同;(2)隱式Matrix+CNN后與CLS拼接融合后,整體去做相關(guān)性任務(wù),在PNR、NDCG指標(biāo)上看,相對只用CLS進(jìn)行下游任務(wù),相對提升大約1.8%;外部Matrix的引入,包括多層顯示匹配矩陣,能夠繼續(xù)為HMM模型整體的提升帶來2.3%的提升。外部匹配Matrix帶來的額外信息能夠帶來效果提升,也證明了精確匹配能力在搜索這個任務(wù)中的考核占比是比較高的,將外部精確匹配信號的引入,能夠幫助模型強(qiáng)化這部分能力。在線實(shí)驗(yàn):HMM模型目前已在搜索相關(guān)性場景下全量部署,實(shí)驗(yàn)期間我們通過ABTest系統(tǒng)和Interleaving系統(tǒng)對實(shí)驗(yàn)組效果進(jìn)行觀察,其中Interleaving感知相關(guān)性指標(biāo)在實(shí)驗(yàn)期間顯著正向,這也與模型升級對精確匹配、核心詞命中能力提升等預(yù)期比較吻合。同時,我們每次項(xiàng)目實(shí)驗(yàn)評估,需要將實(shí)驗(yàn)效果送第三方評估團(tuán)隊(duì)進(jìn)行SideBySide評估,由專家標(biāo)注員對實(shí)驗(yàn)組和對照組進(jìn)行Good、Same、Bad打分,最終隨機(jī)Query下的送評結(jié)果顯示,有比較顯著的變好趨勢。小結(jié)
搜索相關(guān)是一個充滿了技術(shù)挑戰(zhàn)的硬核方向。無數(shù)網(wǎng)民的檢索需求、五花八門的查詢表達(dá)、越來越新穎的內(nèi)容模態(tài),全部對系統(tǒng)的效果提出了極其艱巨的挑戰(zhàn)。目前QQ瀏覽器搜索相關(guān)性團(tuán)隊(duì)的開發(fā)者,在搜狗并入騰訊的大背景下,逐步將兩套系統(tǒng)的優(yōu)勢合并,完成大量的技術(shù)重構(gòu)、?技術(shù)債務(wù)清理,逐步形成了一個高可用、高性能的業(yè)界頭部大型搜索系統(tǒng)。接下來,我們將繼續(xù)在搜索相關(guān)性領(lǐng)域持續(xù)投入,結(jié)合工業(yè)界、學(xué)術(shù)界在NLP領(lǐng)域、AI領(lǐng)域等最前沿的技術(shù)突破,為提升業(yè)務(wù)效果不斷努力。希望這些實(shí)踐經(jīng)驗(yàn)分享對你有幫助。你可能感興趣的騰訊工程師作品|由淺入深讀透vue源碼:diff算法|優(yōu)雅應(yīng)對故障:QQ音樂怎么做高可用架構(gòu)體系?|詳解全網(wǎng)最快Go泛型跳表【內(nèi)附源碼】?|十億人都在用的健康碼,運(yùn)維體系是怎么設(shè)計(jì)的?技術(shù)盲盒:前端|后端|AI與算法|運(yùn)維|工程師文化關(guān)注我并點(diǎn)亮星標(biāo)工作日晚8點(diǎn)看騰訊技術(shù)、學(xué)專家經(jīng)驗(yàn)
點(diǎn)贊|分享|在看 傳遞好技術(shù)???關(guān)鍵詞: 語言模型 語義相關(guān)性
相關(guān)閱讀
-
當(dāng)前熱文:QQ瀏覽器是如何提升搜索相關(guān)...
導(dǎo)言|搜索相關(guān)性主要指衡量Query和Doc的匹配程度,是信息檢索的核心... -
當(dāng)前關(guān)注:煩瑣的拼音和解釋(煩瑣的拼音)
1、“蕩寇”的漢語拼音為:dàngkòu。2、“煩瑣”的漢語拼音為:f... -
每日信息:Sonos闡明了如何處理不支持的設(shè)備
智能揚(yáng)聲器制造商Sonos澄清了它的立場,當(dāng)涉及到舊設(shè)備,不再支持。... -
【世界新視野】鄭眼看盤|A股強(qiáng)勢明顯 ...
鄭眼看盤|A股強(qiáng)勢明顯宜增倉 -
當(dāng)前簡訊:雷丁汽車被逼虛報(bào)累計(jì)近50億元...
1月14日晚,雷丁汽車集團(tuán)微信公眾號消息,雷丁汽車創(chuàng)始人李國欣實(shí)名... -
埃爾法或?qū)l(fā)布“純電版!網(wǎng)傳將由豐田...
1月15日據(jù)愛迪fans,全新一代的“純電版”埃爾法即將發(fā)布,更值得關(guān)... -
森泊蘭眼霜(森泊蘭)
1、國內(nèi)三個比較知名網(wǎng)絡(luò)紅人,是三個唱吧網(wǎng)紅創(chuàng)辦的,唱歌特別好聽... -
快報(bào):千億軍工巨頭要來A股,基民如何布...
千億軍工巨頭要來A股,基民如何布局? -
當(dāng)前快看:被控有間諜活動,伊朗前國防...
當(dāng)?shù)貢r間1月14日,據(jù)環(huán)球網(wǎng)援引英國廣播公司(BBC)援引伊朗司法機(jī)構(gòu)... -
山東濰坊回應(yīng)“縣委書記被企業(yè)家實(shí)名舉...
1月14日雷丁汽車創(chuàng)始人李國欣實(shí)名舉報(bào)濰坊市昌樂縣委書記王驍“一把... -
前沿資訊!上海迎來今年第一場雪,最高氣...
今天上午9時許,上海迎來2023年的初雪。記者在上海南京路步行街看到... -
天天熱點(diǎn)評!尋人啟事徐佳瑩(尋人啟事...
1、可以登錄中國尋人啟事發(fā)布網(wǎng),專門是找尋丟失人的平臺。2、或者... -
世界今頭條!農(nóng)業(yè)農(nóng)村部:2022年國家產(chǎn)...
人民網(wǎng)北京1月15日電(記者李棟)日前,農(nóng)業(yè)農(nóng)村部發(fā)布2022年國家產(chǎn)... -
冬季如何做好生產(chǎn)安全工作?一圖帶您了解
(責(zé)編:王連香、呂騫) tjewm{width:100%;text-align:center;margin: -
視焦點(diǎn)訊!Spotify正在使用Hey Spotify...
Spotify擁有應(yīng)用內(nèi)語音助手已有一段時間了,它使您可以使用語音直接... -
全球新動態(tài):諾基亞首款5G手機(jī)將于本月發(fā)布
諾基亞的首款5G手機(jī)將于3月19日在倫敦揭幕。諾基亞手機(jī)制造商HMDGlo... -
佳能a420有沒有日期(佳能a420)
1、在乎外觀買BenQC530在乎品牌和品質(zhì),推薦買A420,可是A420的CCD不... -
一周熱點(diǎn) | 2023款比亞迪秦PLUS DM-i...
2023款比亞迪秦PLUSDM-i曝光;五菱繽果官圖發(fā)布預(yù)計(jì)3月份上市 -
環(huán)球滾動:iCloud和iMessage當(dāng)前存在性能問題
你需要知道的:蘋果的iCloud和iMessage服務(wù)當(dāng)前遇到問題。幾種iClou... -
世界上最受歡迎的聊天應(yīng)用程序終于迎來黑暗
經(jīng)過數(shù)月的謠言和Beta測試,您最喜歡的聊天應(yīng)用程序最想要的功能終...