曹澤麟 徐 君,2 董振華 文繼榮,2
1 (中國人民大學(xué)高瓴人工智能學(xué)院 北京 100872)
2 (大數(shù)據(jù)管理與分析方法研究北京市重點實驗室(中國人民大學(xué)) 北京 100071)
3 (華為技術(shù)有限公司諾亞方舟實驗室 廣東深圳 518129) (zelincao@ruc.edu.cn)
在搜索場景下,用戶與系統(tǒng)的交互信息如點擊日志將被記錄,并作為排序模型訓(xùn)練數(shù)據(jù)的重要來源.用戶點擊日志具有時效性強(qiáng)、數(shù)據(jù)量大、反映用戶真實喜好等優(yōu)勢,同時這類數(shù)據(jù)中也存在大量的位置偏置[1]問題.如何去除點擊日志中的偏置信息,使其能作為無偏排序模型的訓(xùn)練數(shù)據(jù)是提升模型排序指標(biāo)和用戶體驗的關(guān)鍵方法之一.目前業(yè)界主要是通過逆概率加權(quán)[2-4]算法去除位置偏置,其關(guān)鍵在于獲取各個位置準(zhǔn)確的觀測傾向性得分.在實際應(yīng)用場景中,系統(tǒng)構(gòu)建者往往通過融合上下文的位置模型(contextual position based model, CPBM)獲取不同場景下各個位置觀測傾向性得分[5].
雖然CPBM模型已經(jīng)取得了一定的去偏效果,但在實際應(yīng)用中不同搜索場景間的點擊數(shù)據(jù)分布存在較大差異,只通過一個CPBM模型預(yù)測多種場景位置傾向性得分的方式,會不可避免地降低模型在各個場景的預(yù)測準(zhǔn)確性.例如,用戶會根據(jù)搜索目的提交導(dǎo)航查詢[6](navigational queries)或者信息查詢[6](informational queries).在導(dǎo)航查詢中用戶更傾向于瀏覽排序靠前的文檔[7],因此其點擊行為大多發(fā)生在序列頭部;而在信息查詢中用戶傾向于瀏覽更多的搜索結(jié)果,用戶對返回的搜索結(jié)果點擊率明顯高于導(dǎo)航查詢,點擊位置也更加分散.
我們在真實的商業(yè)搜索引擎中觀察到了上述情況,圖1中的統(tǒng)計數(shù)據(jù)來源于一個主流應(yīng)用市場,該應(yīng)用市場每天服務(wù)千萬級的用戶.從圖1中可以看出,在隨機(jī)投放策略下,用戶在搜索精確詞(對應(yīng)導(dǎo)航查詢場景)時各個位置的點擊率與搜索泛詞(對應(yīng)信息查詢場景)時有明顯差異.圖1分析表明,在不同搜索場景下用戶的瀏覽行為和點擊行為會有所不同.使用混合多種場景分布的點擊數(shù)據(jù)訓(xùn)練出的CPBM模型往往會受到數(shù)據(jù)之間分布不同的影響,導(dǎo)致模型預(yù)測性能下降.為每一種場景單獨訓(xùn)練一個模型的方式,雖然解決了上述問題,但又會面臨數(shù)據(jù)稀疏、無法利用數(shù)據(jù)之間共享信息的難題[8-9].
Fig.1 Position click rate in random traffic圖1 隨機(jī)投放下的位置點擊率
針對CPBM模型受數(shù)據(jù)分布影響從而導(dǎo)致模型預(yù)測性能下降的問題,本文提出一種多任務(wù)學(xué)習(xí)的多門專家混合位置傾向性得分預(yù)測模型(multi-gate contextual position based model, MCPBM),解決了單個CPBM模型在多場景數(shù)據(jù)聯(lián)合訓(xùn)練時預(yù)測準(zhǔn)確性不佳的問題.MCPBM模型包含1個專家層(expert layer)網(wǎng)絡(luò)和1個任務(wù)層(task layer)網(wǎng)絡(luò),其中專家層網(wǎng)絡(luò)用于提取場景的上下文特征,任務(wù)層網(wǎng)絡(luò)用于預(yù)測各個位置傾向性得分.MCPBM在2層網(wǎng)絡(luò)中分別設(shè)計了門共享結(jié)構(gòu)進(jìn)行信息篩選,顯式地對場景之間的相似性和差異性建模,控制不同場景數(shù)據(jù)之間的信息共享程度,從而綜合利用不同場景中的共享信息幫助相似場景任務(wù)的學(xué)習(xí).
本文工作的主要貢獻(xiàn)包括3個方面:
1) 提出了基于多任務(wù)學(xué)習(xí)的多門專家混合位置傾向性得分預(yù)測模型MCPBM,解決多場景數(shù)據(jù)聯(lián)合訓(xùn)練帶來的模型預(yù)測性能下降問題.
2) 提出指數(shù)加權(quán)平均權(quán)重動態(tài)調(diào)整算法,該算法通過對各個任務(wù)損失函數(shù)動態(tài)分配權(quán)重,緩解不同任務(wù)收斂速度不一致的問題.
3) 實驗結(jié)果表明,MCPBM能夠更加有效地去除點擊日志數(shù)據(jù)中的位置偏置,提高排序模型的排序指標(biāo);實驗分析表明,本文提出的權(quán)重分配算法緩解了不同任務(wù)間收斂速度不一致的問題,提升模型整體預(yù)測性能.
位置偏置[1]是搜索場景中較為常見的一種偏置.其定義為:用戶傾向與搜索結(jié)果列表中排序位置較高的文檔進(jìn)行交互,并且用戶的傾向性與文檔是否滿足用戶的實際需求無關(guān).由于位置偏置的存在,文檔的點擊率會隨著展示位置的不同而不同,產(chǎn)生排在較低位置文檔的點擊率明顯低于排在較高位置文檔的點擊率的現(xiàn)象,并且會導(dǎo)致訓(xùn)練數(shù)據(jù)中部分因排序位置較低缺少用戶點擊反饋的相關(guān)文檔被當(dāng)作負(fù)例進(jìn)行訓(xùn)練.同時位置偏置的存在會使模型高估排序位置較高文檔的點擊率,低估排序位置較低文檔的點擊率,使得位置較高的文檔獲得更多的反饋,并在下一次展示中依然獲得較為靠前的排序,而排序位置較低沒有獲得用戶反饋的相關(guān)文檔在下一次的展示中依然被排在較低的位置.因此為緩解上述現(xiàn)象,需要對排序位置較低但是依然被點擊的文檔進(jìn)行適當(dāng)?shù)臋?quán)重調(diào)整,使得模型可以捕捉到這部分代表性不足但與搜索內(nèi)容相關(guān)的文檔.目前一個常用的解決方案是逆概率加權(quán)(inverse probability weighting),該算法去偏的關(guān)鍵在于獲取各個位置準(zhǔn)確的觀測傾向性得分.業(yè)界常通過隨機(jī)數(shù)據(jù)(uniform data)[10-11]、交換干預(yù)(swap intervention)[12]等數(shù)據(jù)干預(yù)方式來獲取位置傾向性得分.但現(xiàn)有干預(yù)算法在應(yīng)用時會帶來影響用戶體驗、降低產(chǎn)品業(yè)務(wù)指標(biāo)、數(shù)據(jù)時效性不強(qiáng)等問題.
為解決上述問題,Agarwal等人[4]提出干預(yù)收割的數(shù)據(jù)干預(yù)方式,利用了現(xiàn)實搜索場景中排序模型會被不斷更新、各個模型之間存在一定差異性進(jìn)行干預(yù).具體而言,干預(yù)收割使用了多個排序模型處理相同搜索內(nèi)容,從而得到有差異搜索結(jié)果列表的數(shù)據(jù)集合.此數(shù)據(jù)中存在同一個文檔d既被排在位置k又被排在位置k′的情況,k≠k′.因此該算法關(guān)注用戶與不同排序模型進(jìn)行交互時文檔排序的差異性,來獲取一個位置觀測傾向性得分.
在位置模型[13](position based model, PBM)中,文檔d在位置k被觀測到的概率僅由文檔排序位置決定.已有工作表明[5,14]不同搜索場景下文檔在各個位置的觀測概率受文檔排序位置、搜索內(nèi)容上下文環(huán)境影響,因此通過PBM模型獲取的位置傾向性得分會與真實值之間存在一定偏差.為提升PBM模型預(yù)測準(zhǔn)確性.Fang等人[5]將用戶搜索內(nèi)容、文檔特征等上下文信息加入PBM,得到的融合上下文的位置模型CPBM使其具備刻畫不同場景下用戶的點擊行為,從而提高了模型預(yù)測各個位置觀測概率的準(zhǔn)確性,達(dá)到獲取準(zhǔn)確、無偏位置傾向性得分的目的.本文對CPBM作了進(jìn)一步的改進(jìn).
近年來,多任務(wù)學(xué)習(xí)(multi-task learning, MTL)[15-17]已經(jīng)在信息檢索領(lǐng)域得到成功應(yīng)用,該學(xué)習(xí)算法通過捕捉各個任務(wù)之間共享信息和特有信息的方式來提高模型的泛化性能.Sheng等人[9]提出一種星式拓?fù)涞亩嗳蝿?wù)學(xué)習(xí)結(jié)構(gòu)以及數(shù)據(jù)分區(qū)歸一化的方式來進(jìn)行多推薦場景數(shù)據(jù)聯(lián)合學(xué)習(xí),取得了比單任務(wù)學(xué)習(xí)更好的效果.Zhao等人[18]將排序任務(wù)轉(zhuǎn)換為多目標(biāo)學(xué)習(xí)任務(wù)并在模型中加入輔助結(jié)構(gòu),緩解訓(xùn)練數(shù)據(jù)中多種偏置帶來的影響.Chen等人[19]提出一種梯度調(diào)整策略幫助模型獲得更加穩(wěn)定的收斂點.本文通過多任務(wù)學(xué)習(xí)方式捕捉多場景點擊數(shù)據(jù)中的共享信息,進(jìn)一步提升模型預(yù)測性能.
CPBM遵循了數(shù)據(jù)來自同一分布的假設(shè),然而現(xiàn)實中搜索系統(tǒng)收集的日志數(shù)據(jù)往往混合了多種用戶行為分布的信息.例如用戶在搜索不同內(nèi)容、瀏覽不同搜索結(jié)果列表時會展現(xiàn)出不同的觀測行為和點擊行為,這些行為可以看作是來自不同用戶行為分布的實例,因此“數(shù)據(jù)來自同一分布”這一假設(shè)在現(xiàn)實場景中很難保證.用包含多種分布的數(shù)據(jù)訓(xùn)練出的CPBM模型也會受到數(shù)據(jù)之間分布不同的影響,面臨模型預(yù)測性能下降等問題.而為每一種分布數(shù)據(jù)訓(xùn)練一個CPBM模型的方式,雖然消除了上述缺陷,但又會面臨訓(xùn)練數(shù)據(jù)稀疏的問題.
本 文 基于 Yahoo! Learning to Rank (簡 稱 Yahoo)數(shù)據(jù)集[20]和MQ2007數(shù)據(jù)集[21]對上述現(xiàn)象進(jìn)行了初步的驗證.遵照Fang等人[5]的實現(xiàn)方式,本文構(gòu)建了4個場景的用戶點擊數(shù)據(jù),每個場景數(shù)據(jù)特征由參數(shù)θ刻畫.不同場景的數(shù)據(jù)之間存在一定相似性和差異性,具體體現(xiàn)在參數(shù)θ取不同值時各個位置觀測概率的均值會隨位置增大而減小,但標(biāo)準(zhǔn)差會隨參數(shù)θ的增大而增大,最終體現(xiàn)在不同參數(shù)θ取值下各個位置具有不同的點擊率.
表1展示了CPBM在2個數(shù)據(jù)集、3個雙場景設(shè)定下進(jìn)行聯(lián)合訓(xùn)練和獨立訓(xùn)練時測試集錯誤率情況.由于模型在θ= 10場景計算出的錯誤率量級高于其他場景,因此在計算后取對數(shù)(lb).可以看出,在Yahoo數(shù)據(jù)集中,在雙場景1數(shù)據(jù)聯(lián)合訓(xùn)練時模型在θ= 0.1,θ= 0.3 的預(yù)測準(zhǔn)確性相對于獨立訓(xùn)練都有所提升;在雙場景2數(shù)據(jù)聯(lián)合訓(xùn)練時模型在θ= 0.1的預(yù)測準(zhǔn)確性有所提升,在θ= 0.6的預(yù)測準(zhǔn)確性有所下降;在雙場景3數(shù)據(jù)聯(lián)合訓(xùn)練時模型在θ= 0.1和θ= 10的預(yù)測準(zhǔn)確性都有所下降.在 MQ2007數(shù)據(jù)集中,在雙場景 1 數(shù)據(jù)聯(lián)合訓(xùn)練時模型在θ= 0.1 和θ=0.3的預(yù)測準(zhǔn)確性都有所提升;在雙場景2數(shù)據(jù)和雙場景3數(shù)據(jù)聯(lián)合訓(xùn)練時模型在θ= 0.1的預(yù)測準(zhǔn)確性有所提升,θ= 0.6 和θ= 10 的預(yù)測準(zhǔn)確性有所下降.以上實驗結(jié)果表明了不同場景的數(shù)據(jù)之間存在提升模型預(yù)測能力的共享信息數(shù)據(jù),也存在各個場景特有的信息數(shù)據(jù),CPBM的預(yù)測性能會受聯(lián)合訓(xùn)練時數(shù)據(jù)間分布不同的影響.因此為解決上述問題,需要在CPBM中加入具有信息篩選的結(jié)構(gòu).
Table 1 Error Rate on the Test Set During Joint Training and Independent Training Under Dual Scene Data表1 雙場景數(shù)據(jù)聯(lián)合訓(xùn)練和獨立訓(xùn)練時測試集錯誤率
首先定義多場景日志數(shù)據(jù).在多場景數(shù)據(jù)中,Ti代表其中1個場景的數(shù)據(jù),在各個場景中Xi代表上下文特征向量,Yi代表真實標(biāo)簽,該標(biāo)簽可以是人為標(biāo)注的相關(guān)性標(biāo)簽也可以是用戶實際的點擊標(biāo)簽.Ti={Xi,Yi}.{Ti}ni=1代表所有場景數(shù)據(jù)的集合,其中有n個場景的數(shù)據(jù).
本文所提出的算法基于多任務(wù)學(xué)習(xí)的多門專家混合網(wǎng)絡(luò)結(jié)構(gòu)[22](multi-gate mixture-of-experts, MMOE)進(jìn)行構(gòu)造,MMOE通過門共享結(jié)構(gòu)顯式地對任務(wù)之間的相似性和差異性建模,利用其他場景中的共享信息幫助相似場景任務(wù)的學(xué)習(xí).MMOE將硬參數(shù)共享方式中共享底層結(jié)構(gòu)[23](share bottom)改進(jìn)為多個專家層結(jié)構(gòu),避免了硬參數(shù)共享方式面臨的負(fù)遷移、難以優(yōu)化等問題.而相較于混合專家網(wǎng)絡(luò)[24](mixture-ofexperts, MOE)中不同任務(wù)只使用1個門共享結(jié)構(gòu)的方式來說,MMOE為每個任務(wù)都分配1個門共享結(jié)構(gòu),合理分配任務(wù)之間權(quán)重,提升了信息共享的靈活度.受MMOE結(jié)構(gòu)的啟發(fā),本文提出多門專家混合位置傾向性得分預(yù)測模型MCPBM.在該模型中,1個場景的位置傾向性得分預(yù)測值由參與訓(xùn)練的所有場景位置傾向性得分預(yù)測值加權(quán)得出,每個場景所占權(quán)值由場景獨享的門共享結(jié)構(gòu)給出.在該模型中,既利用各個場景特有的信息數(shù)據(jù),也利用其他場景中的共享信息數(shù)據(jù),解決CPBM受數(shù)據(jù)之間分布不同的影響導(dǎo)致預(yù)測準(zhǔn)確性下降問題.
圖2展示了本文提出的 MCPBM 模型.在圖2所示的網(wǎng)絡(luò)結(jié)構(gòu)中,下層為專家層網(wǎng)絡(luò),其中Expert1,Expert2,Expert3由 多 層 感 知 機(jī) (multi-layer perceptron,MLP)網(wǎng)絡(luò)構(gòu)成,每個專家網(wǎng)絡(luò)Experti僅接收對應(yīng)場景Ti的上下文特征信息.從式(1)可以看出,專家層門共享結(jié)構(gòu)用來捕捉特征層面的相似性,選擇部分專家層的輸出或者所有專家層的加權(quán)輸出作為上層網(wǎng)絡(luò)的輸入.當(dāng)其他場景數(shù)據(jù)與目標(biāo)場景數(shù)據(jù)相關(guān)性越大時Gi值越大,2種數(shù)據(jù)之間共享程度越高;當(dāng)其他場景數(shù)據(jù)與目標(biāo)場景數(shù)據(jù)相關(guān)性越小時Gi值越小,2種數(shù)據(jù)之間共享程度越低.這種靈活的信息共享方式具有信息選擇功能,可以將需要共享的信息傳遞到上層任務(wù)層網(wǎng)絡(luò)中.1個專家網(wǎng)絡(luò)輸入對應(yīng)Ti場景的上下文信息Xi,輸出為網(wǎng)絡(luò)提取的特征信息X′i.1個專家層門共享結(jié)構(gòu)輸入為所有場景的上下文信息(X1,X2,…,Xn),輸出為專家網(wǎng)絡(luò)Experti信息共享權(quán)重
因此專家層Experti輸出為
上層為任務(wù)層網(wǎng)絡(luò),其中Task1,Task2,…,Taskn由CPBM模型構(gòu)成,用于獲取每個位置的觀測傾向性得分.1個專家網(wǎng)絡(luò)與1個任務(wù)網(wǎng)絡(luò)相對應(yīng),且2種網(wǎng)絡(luò)的數(shù)量與場景個數(shù)n相同.Taski接收的特征信息由下層專家層和專家層門共享結(jié)構(gòu)共同決定.任務(wù)網(wǎng)絡(luò)的輸出同樣由任務(wù)層門共享結(jié)構(gòu)和每個任務(wù)網(wǎng)絡(luò)共同決定.每個任務(wù)網(wǎng)絡(luò)的輸出為Hi,1個任務(wù)層門共享結(jié)構(gòu)輸入為所有場景的上下文信息(X1,X2,…,Xn),輸出為各個任務(wù)網(wǎng)絡(luò)Taski信息共享權(quán)重Qi并且
因此任務(wù)層Taski輸出為
Fig.2 Multi-gate contextual position based model and its stucture of Block module圖2 多門專家混合位置傾向性得分預(yù)測模型及其Block模塊結(jié)構(gòu)
從式(3)可以看出,任務(wù)層門共享結(jié)構(gòu)用來捕捉標(biāo)簽層面的相似性.值的注意的是,任務(wù)層與專家層中,門共享結(jié)構(gòu)作用一致.在獲取各個任務(wù)網(wǎng)絡(luò)輸出后,采用式(5)定義的損失函數(shù):
其中, αi是各個損失函數(shù)的權(quán)重,采用3.3節(jié)的指數(shù)加權(quán)平均算法進(jìn)行權(quán)重動態(tài)調(diào)整,lossi采用式(6)定義的損失函數(shù)[5]:
由于不同場景各個位置點擊率和位置傾向性得分有所不同,因此在使用不同場景數(shù)據(jù)訓(xùn)練時MCPBM有不同的收斂速度,存在某些場景損失函數(shù)收斂快而某些場景損失函數(shù)收斂慢的情況.而在MCPBM中,參與訓(xùn)練的所有數(shù)據(jù)決定模型最終的預(yù)測準(zhǔn)確性.同時已有工作[25-27]表明多任務(wù)學(xué)習(xí)模型性能依賴于每個任務(wù)損失函數(shù)之間的相對權(quán)重.為緩解不同場景任務(wù)收斂速度不一致的問題,需要找到不同場景任務(wù)之間合適的組合方式,而通過網(wǎng)格搜索、人為調(diào)節(jié)等方式尋找最優(yōu)權(quán)重組合十分不便.因此為解決上述問題,本文提出了指數(shù)加權(quán)平均權(quán)重動態(tài)調(diào)整法,具體加權(quán)方式見式(7)~(9):
式(7)中,lossi(t),lossi(t?1)分別是任務(wù)i第t輪和第t–1輪的損失值, βi是任務(wù)i損失函數(shù)變化速率.式(8)中,S是控制任務(wù)權(quán)重平滑度的超參,當(dāng)S取值越大時各個任務(wù)權(quán)重越接近.在獲得 βi后經(jīng)過softmax運算并乘以任務(wù)數(shù)n后得到t+1輪任務(wù)權(quán)重預(yù)測值σi(t+1).為減少梯度下降和訓(xùn)練數(shù)據(jù)中的隨機(jī)性,本文采用式(9)指數(shù)平均加權(quán)的方式對預(yù)測權(quán)重αi(t+1)進(jìn)行加權(quán),其中 γ 是控制t輪之前任務(wù)權(quán)重在t+1輪中所占比例的超參,γ值越大,任務(wù)t+1輪權(quán)重αi(t+1)與t輪之前任務(wù)權(quán)重越相關(guān).
本節(jié)主要介紹實驗中數(shù)據(jù)預(yù)處理方法、實驗評估標(biāo)準(zhǔn)以及對實驗結(jié)果進(jìn)行分析,比較多任務(wù)學(xué)習(xí)模型和單任務(wù)學(xué)習(xí)模型在預(yù)測位置傾向性得分和位置去偏上的差異性,驗證本文提出的MCPBM模型的有效性.
本文采用Yahoo數(shù)據(jù)集和MQ2007數(shù)據(jù)集.由于2份公開數(shù)據(jù)集中不包含用戶點擊信息,因此需要對數(shù)據(jù)進(jìn)行改造.本文遵照Ai等人[28]以及Fang等人[5]的實現(xiàn)方式生成模擬點擊日志數(shù)據(jù).值得注意的是,本文采用的用戶點擊數(shù)據(jù)模擬生成方式可以較好地刻畫位置偏置,并且該方式在多個研究工作[2,5,28]中被廣泛使用.同時,θ取值代表的場景一定程度上與我們在真實商業(yè)搜索引擎中收集的點擊日志相符.
首先從訓(xùn)練集中隨機(jī)抽取1%的搜索內(nèi)容用于訓(xùn)練2個SVM-Rank排序模型[29],模擬1.1節(jié)提到的干預(yù)收割數(shù)據(jù)干預(yù)方式中的多個排序算法,同時為了保證排序算法之間的相似性1%的訓(xùn)練數(shù)據(jù)中有20%搜索內(nèi)容一致,其余的80%搜索內(nèi)容不同.之后使用訓(xùn)練好的2個排序模型對剩余的訓(xùn)練數(shù)據(jù)進(jìn)行排序,得到文檔排序位置,模擬用戶搜索內(nèi)容之后得到的結(jié)果列表.考慮到上下文信息對于觀測概率的影響,本文使用數(shù)據(jù)集中的特征模擬現(xiàn)實場景中搜索內(nèi)容的上下文信息.在該實驗中,只關(guān)注前10個位置的偏置情況,因此每條搜索內(nèi)容都會對應(yīng)1個10維特征向量x.向量x由2部分組成:一部分(x1,x2,···,xj)是從文檔與搜索內(nèi)容的特征中抽?。涣硪徊糠?xj+1,xj+2,···,x10)是從期望為0、方差為0.35的正態(tài)分布生成.通過參數(shù) δ =j/10來控制這2部分在10維特征向量中所占比重.
通過式(10)獲取用戶對于每個位置的觀測概率并將生成的概率分布作為模型評估時的真實標(biāo)簽.
其中,k是文檔排序的位置,x是抽取的上下文信息,w是從 [? θ,θ)的均勻分布中生成的向量.不同 θ取值代表不同場景數(shù)據(jù).當(dāng) θ取較大值時,各個位置觀測概率標(biāo)準(zhǔn)差較大,同時各個位置觀測概率均值會隨著排序位置的增大而減小.
在獲取搜索內(nèi)容上下文特征、各個位置的觀測概率分布后,通過CPBM模型生成點擊日志數(shù)據(jù).本文采用Fang等人[5]使用的模擬點擊方式并引入點擊噪聲來模擬現(xiàn)實場景中用戶誤點行為.用戶點擊相關(guān)文檔的概率為1,點擊不相關(guān)文檔的概率為0.1.之后采用1.1節(jié)中介紹的干預(yù)收割數(shù)據(jù)干預(yù)方式獲取干預(yù)數(shù)據(jù).
衡量模型預(yù)測各個位置觀測傾向性得分的錯誤情況,采用式(11)的計算方式:
其中k=10,該實驗中只關(guān)注前10個位置的偏置情況,D是測試集,p?m(xi)是m位置觀測傾向性得分預(yù)測值,pm(xi)是m位置觀測傾向性得分真實值.模型預(yù)測位置觀測傾向性得分越準(zhǔn)確,計算出的error值越小.
在獲得位置傾向性得分后,需要去除點擊日志數(shù)據(jù)中的位置偏置并衡量使用去偏數(shù)據(jù)訓(xùn)練的排序模型的排序質(zhì)量.因此在衡量排序質(zhì)量時,首先使用訓(xùn)練好的位置傾向性得分預(yù)測模型對訓(xùn)練集數(shù)據(jù)進(jìn)行去除位置偏置的處理,之后使用去偏數(shù)據(jù)訓(xùn)練基于傾向性得分的排序模型[2](propensity SVM-Rank,PSR)并在測試集上進(jìn)行評估,采用式(12)[2]來衡量排序模型的排序質(zhì)量:
其中,f(xi)是訓(xùn)練得到的排序模型,rank(d|f(xi))是文檔d排序的位置,rel(d,xi)是d與搜索內(nèi)容xi的相關(guān)度,?(xi)是候選集文檔集合.
PyTorch是一款開源的機(jī)器學(xué)習(xí)框架.本文所有實驗使用PyTorch框架對模型進(jìn)行實現(xiàn).
4.3.1 單任務(wù)學(xué)習(xí)模型
本文選取CPBM、PBM、局部傾向性得分估計(local estimators, LE)算法[4]、位置偏差感知學(xué)習(xí)框架(position bias aware learning framework, PAL)[30]作為單任務(wù)學(xué)習(xí)的基線模型,該類模型使用單個θ場景數(shù)據(jù)進(jìn)行訓(xùn)練.其中CPBM,PBM,LE模型先通過預(yù)測位置傾向性得分再使用逆概率加權(quán)的方式去除偏置.CPBM模型包括位置傾向性得分網(wǎng)絡(luò)和相對相關(guān)性網(wǎng)絡(luò),這2種網(wǎng)絡(luò)由4層MLP結(jié)構(gòu)組成.表2展示了CPBM模型訓(xùn)練過程中選取的相關(guān)超參數(shù).由于PBM模型未考慮上下文信息對于位置觀測傾向性得分的影響,因此在獲取干預(yù)數(shù)據(jù)后直接最大化式(6).LE通過干預(yù)數(shù)據(jù)中各個位置點擊率來獲取位置傾向性得分.PAL框架采用位置偏置與點擊率預(yù)測分開建模的方式,線上階段僅使用去偏后的點擊率預(yù)測模型進(jìn)行預(yù)測.
Table 2 Hyperparameter Settings of Single-Task Learning Model表2 單任務(wù)學(xué)習(xí)模型的超參數(shù)設(shè)置
4.3.2 多任務(wù)學(xué)習(xí)模型
多任務(wù)學(xué)習(xí)模型為MCPBM模型,該模型使用多個θ場景數(shù)據(jù)進(jìn)行聯(lián)合訓(xùn)練.其中任務(wù)網(wǎng)絡(luò)與單任務(wù)學(xué)習(xí)中CPBM模型網(wǎng)絡(luò)結(jié)構(gòu)、參數(shù)一致.專家網(wǎng)絡(luò)由4層MLP結(jié)構(gòu)組成,采用激活函數(shù)ReLU;門共享結(jié)構(gòu)由2層MLP結(jié)構(gòu)組成并且最后一層采用 so ftmax激活函數(shù).表3展示了MCPBM訓(xùn)練過程中選取的相關(guān)超參數(shù).
Table 3 Hyperparameter Settings of Multi-Task Learning Model表3 多任務(wù)學(xué)習(xí)模型的超參數(shù)設(shè)置
本節(jié)主要是對 CPBM, PBM, LE, PAL, MCPBM 模型的預(yù)測位置傾向性得分以及去除位置偏置結(jié)果進(jìn)行對比分析.
4.4.1 位置傾向性得分預(yù)測結(jié)果分析
表4 展示的實驗結(jié)果是在θ= 0.1,θ= 0.3,θ= 0.6以及θ= 0.1,θ= 0.6,θ= 10 的 3 場景數(shù)據(jù)下,MCPBM模型和3種基線模型在測試集上預(yù)測位置觀測傾向性得分的錯誤情況,采用式(11)的計算方式.由于模型在θ= 10場景計算出的error量級高于其他場景,因此在計算后取對數(shù)(lb).
Table 4 Error Rate on the Test Set Under Three Scene Data表4 3場景數(shù)據(jù)下模型測試集錯誤率
實驗結(jié)果表明,MCPBM模型在各個場景的預(yù)測準(zhǔn)確性都優(yōu)于 3 種基線模型,僅在θ= 0.1,θ= 0.6,θ=10 的 3 場景數(shù)據(jù)聯(lián)合訓(xùn)練中,θ= 0.1 場景測試集錯誤率高于PBM模型.同時沒有出現(xiàn)表1中CPBM模型在2種場景測試集上預(yù)測準(zhǔn)確性都下降的情況.該實驗結(jié)果表明了MCPBM模型具有一定的信息過濾能力,可以利用相似場景中的共享信息提升模型整體預(yù)測性能.
4.4.2 指數(shù)加權(quán)平均權(quán)重動態(tài)調(diào)整結(jié)果分析
圖3~7展示的實驗結(jié)果是在Yahoo數(shù)據(jù)集中,MCPBM模型采用指數(shù)加權(quán)平均權(quán)重動態(tài)調(diào)整算法、損失函數(shù)分配相等權(quán)重方式,以及本文參考的基線基于不確定性的權(quán)重調(diào)整算法(uncertainty to weigh losses, Uncert)[27]的情況下,分別在 4 場景數(shù)據(jù)和 3 場景數(shù)據(jù)聯(lián)合訓(xùn)練時訓(xùn)練集的錯誤率變化曲線.由于4場景數(shù)據(jù)聯(lián)合訓(xùn)練時增加了1種場景的數(shù)據(jù),因此模型在相同參數(shù)場景下錯誤率曲線會發(fā)生變化.例如,圖3 和圖4 中 MCPBM 在θ= 0.1,θ= 0.3,θ= 0.6 的 3場景訓(xùn)練集錯誤變化曲線有所不同.
Fig.3 Error rate curve of exponential weighted average in 4 scene data training圖3 指數(shù)加權(quán)平均在4場景數(shù)據(jù)訓(xùn)練時錯誤變化曲線
Fig.4 Error rate curve of exponential weighted average in 3 scene data training圖4 指數(shù)加權(quán)平均在3場景數(shù)據(jù)訓(xùn)練時錯誤變化曲線
Fig.5 Error rate curve of equal weight in 4 scene data training圖5 權(quán)重相等在4場景數(shù)據(jù)訓(xùn)練時錯誤變化曲線
Fig.6 Error rate curve of Uncert in 3 scene data training圖6 Uncert在3場景數(shù)據(jù)訓(xùn)練時錯誤變化曲線
Fig.7 Error rate curve of Uncert in 4 scene data training圖7 Uncert在4場景數(shù)據(jù)訓(xùn)練時錯誤變化曲線
實驗結(jié)果表明本文提出的權(quán)重分配算法一定程度上緩解不同場景任務(wù)收斂速度不一致的問題,提升模型整體預(yù)測性能.在θ= 0.1,θ= 0.3,θ= 0.6,θ=10的4場景下使用指數(shù)加權(quán)平均權(quán)重動態(tài)調(diào)整的模型相較于分配相等權(quán)重的模型在訓(xùn)練集的error值上有4.1%的下降.同時文本提出的權(quán)重分配算法明顯優(yōu)于基線Uncert的權(quán)重調(diào)整算法.
4.4.3 模型去偏結(jié)果分析
為驗證 PBM,CPBM,LE,PAL,MCPBM模型去除位置偏置的效果,本文使用PBM,CPBM,LE,MCPBM模型去偏后的數(shù)據(jù)和Click未去偏點擊數(shù)據(jù)訓(xùn)練PSR模型并在測試集上采用AvgRank指標(biāo)評估排序模型的排序質(zhì)量.
從表5可以看出,MCPBM去偏效果優(yōu)于4種位置傾向性得分預(yù)測去偏模型,在AvgRank指標(biāo)上均有1%~5%的提升.實驗結(jié)果驗證了MCPBM模型能較好地去除點擊日志數(shù)據(jù)中的位置偏置問題.從直接使用Click數(shù)據(jù)訓(xùn)練得到排序模型的排序指標(biāo)來看,位置偏置會嚴(yán)重影響排序模型的排序質(zhì)量.同時表4的實驗結(jié)果表明在使用逆概率加權(quán)算法時獲得一個準(zhǔn)確的位置傾向性得分是去除位置偏置的關(guān)鍵所在.
Table 5 AvgRank on the Test Set Under Three Scene Data表5 3場景數(shù)據(jù)下測試集的AvgRank情況
本文提出一種基于多任務(wù)學(xué)習(xí)的MCPBM位置傾向性得分預(yù)測模型和指數(shù)加權(quán)平均權(quán)重動態(tài)調(diào)整算法,解決了已有的CPBM模型在多場景數(shù)據(jù)聯(lián)合訓(xùn)練時,因數(shù)據(jù)之間分布不同而導(dǎo)致模型預(yù)測性能下降的問題,從而更準(zhǔn)確地估計了不同場景下位置觀測傾向性得分.實驗結(jié)果表明,與CPBM相比,MCPBM模型在多場景搜索中具有更優(yōu)的去偏效果,有效緩解了點擊日志中的位置偏置,提升了排序模型的排序質(zhì)量.
在下一步工作中,我們將嘗試改進(jìn)更多去除位置偏置的算法以及設(shè)計去偏任務(wù)和排序任務(wù)聯(lián)合訓(xùn)練的框架.
致謝感謝中國人民大學(xué)公共政策實驗室的支持.
作者貢獻(xiàn)聲明曹澤麟負(fù)責(zé)所有實驗、數(shù)據(jù)分析,以及文章的撰寫;徐君對本文選題、組織結(jié)構(gòu)和文章寫作提供了關(guān)鍵性的指導(dǎo)意見;董振華對本文組織結(jié)構(gòu)和部分內(nèi)容提供了重要的指導(dǎo)意見;文繼榮對本文的選題提供了重要的指導(dǎo)意見.