多模態(tài)技術(shù)在淘寶主搜召回場(chǎng)景的探索
搜索召回作為搜索系統(tǒng)的基礎(chǔ),決定了效果提升的上限。如何在現(xiàn)有的海量召回結(jié)果中,繼續(xù)帶來(lái)有差異化的增量?jī)r(jià)值,是我們面臨的主要挑戰(zhàn)。而多模態(tài)預(yù)訓(xùn)練與召回的結(jié)合,為我們打開(kāi)了新的視野,帶來(lái)線上效果的顯著提升。
前言
多模態(tài)預(yù)訓(xùn)練是學(xué)術(shù)界與工業(yè)界研究的重點(diǎn),通過(guò)在大規(guī)模數(shù)據(jù)上進(jìn)行預(yù)訓(xùn)練,得到不同模態(tài)之間的語(yǔ)義對(duì)應(yīng)關(guān)系,在多種下游任務(wù)如視覺(jué)問(wèn)答、視覺(jué)推理、圖文檢索上能夠提升效果。 在集團(tuán)內(nèi)部,多模態(tài)預(yù)訓(xùn)練也有一些研究與應(yīng)用。 在淘寶主搜場(chǎng)景中,用戶輸入的Query與待召回商品之間存在天然的跨模態(tài)檢索需求,只是以往對(duì)于商品更多地使用標(biāo)題和統(tǒng)計(jì)特征,忽略了圖像這樣更加直觀的信息。 但對(duì)于某些有視覺(jué)元素的Query(如白色連衣裙、碎花連衣裙),相信大家在搜索結(jié)果頁(yè)都會(huì)先被圖像所吸引。
淘寶主搜場(chǎng)景
一方面是圖像占據(jù)著更顯著的位置,另一方面則是圖像可能包含著標(biāo)題所沒(méi)有的信息,如白色、碎花這樣的視覺(jué)元素。對(duì)于后者,需要區(qū)分兩種情況:一種是標(biāo)題中有信息、但由于顯示限制無(wú)法完全展示,這種情況不影響商品在系統(tǒng)鏈路里的召回;另一種是標(biāo)題中沒(méi)有信息但圖像中有,也就是圖像相對(duì)于文本可以帶來(lái)增量。后者是我們需要重點(diǎn)關(guān)注的對(duì)象。
? 技術(shù)問(wèn)題與解決思路
在主搜召回場(chǎng)景中應(yīng)用多模態(tài)技術(shù),有兩個(gè)主要問(wèn)題需要解決:
- 多模態(tài)圖文預(yù)訓(xùn)練模型一般融合圖像、文本兩種模態(tài),主搜由于有Query的存在,在原本商品圖像、標(biāo)題的圖文模態(tài)基礎(chǔ)上,需要考慮額外的文本模態(tài)。同時(shí),Query與商品標(biāo)題之間存在語(yǔ)義Gap,Query相對(duì)短且寬泛,而商品標(biāo)題由于賣家會(huì)做SEO,往往長(zhǎng)且關(guān)鍵詞堆砌。
- 通常預(yù)訓(xùn)練任務(wù)與下游任務(wù)的關(guān)系是,預(yù)訓(xùn)練采用大規(guī)模無(wú)標(biāo)注數(shù)據(jù),下游采用少量有標(biāo)注數(shù)據(jù)。但對(duì)于主搜召回來(lái)說(shuō),下游向量召回任務(wù)的規(guī)模巨大,數(shù)據(jù)在數(shù)十億量級(jí),而受限于有限的GPU資源,預(yù)訓(xùn)練只能采用其中相對(duì)少量的數(shù)據(jù)。在這種情況下,預(yù)訓(xùn)練是否還能對(duì)下游任務(wù)帶來(lái)增益。
我們的解決思路如下:
- 文本-圖文預(yù)訓(xùn)練 :將Query和商品Item分別過(guò)Encoder,作為雙塔輸入到跨模態(tài)Encoder。如果從Query和Item雙塔來(lái)看,它們?cè)诤笃诓胚M(jìn)行交互,類似于雙流模型,不過(guò)具體看Item塔,圖像和標(biāo)題兩個(gè)模態(tài)在早期就進(jìn)行了交互,這部分是單流模型。所以,我們的模型結(jié)構(gòu)是區(qū)別于常見(jiàn)的單流或雙流結(jié)構(gòu)的。這種設(shè)計(jì)的出發(fā)點(diǎn)是:更有效地提取Query向量和Item向量,為下游的雙塔向量召回模型提供輸入,并且能夠在預(yù)訓(xùn)練階段引入雙塔內(nèi)積的建模方式。為了建模Query與標(biāo)題之間存在的語(yǔ)義聯(lián)系與Gap,我們將Query和Item雙塔的Encoder共享,再分別學(xué)習(xí)語(yǔ)言模型。
- 預(yù)訓(xùn)練與召回任務(wù)聯(lián)動(dòng) :針對(duì)下游向量召回任務(wù)的樣本構(gòu)造方式與Loss,設(shè)計(jì)了預(yù)訓(xùn)練階段的任務(wù)及建模方式。區(qū)別于常見(jiàn)的圖文匹配任務(wù),我們采用Query-Item和Query-Image匹配任務(wù),并將Query下點(diǎn)擊最多的Item作為正樣本,將Batch內(nèi)的其他樣本作為負(fù)樣本,增加采用Query和Item雙塔內(nèi)積方式建模的多分類任務(wù)。這種設(shè)計(jì)的出發(fā)點(diǎn)是:使預(yù)訓(xùn)練更靠近向量召回任務(wù),在有限的資源下,盡可能為下游任務(wù)提供有效的輸入。另外,對(duì)向量召回任務(wù)來(lái)說(shuō),如果預(yù)訓(xùn)練輸入的向量在訓(xùn)練過(guò)程中是固定不變的,就無(wú)法有效地針對(duì)大規(guī)模數(shù)據(jù)做調(diào)整,為此,我們還在向量召回任務(wù)里建模了預(yù)訓(xùn)練向量的更新。
預(yù)訓(xùn)練模型
? 建模方法
多模態(tài)預(yù)訓(xùn)練模型需要從圖像中提取特征,再與文本特征融合。從圖像中提取特征的方式主要有三種:使用CV領(lǐng)域訓(xùn)練好的模型提取圖像的RoI特征、Grid特征和Patch特征。從模型結(jié)構(gòu)來(lái)看,根據(jù)圖像特征和文本特征融合方式的不同,主要有兩類:?jiǎn)瘟髂P突螂p流模型。在單流模型中,圖像特征與文本特征在早期就拼接在一起輸入Encoder,而在雙流模型中,圖像特征和文本特征分別輸入到兩個(gè)獨(dú)立的Encoder,然后再輸入到跨模態(tài)Encoder中進(jìn)行融合。
? 初步探索
我們提取圖像特征的方式是:將圖像劃分為Patch序列,使用ResNet提取每個(gè)Patch的圖像特征。在模型結(jié)構(gòu)上,嘗試過(guò)單流結(jié)構(gòu),也就是將Query、標(biāo)題、圖像拼接在一起輸入Encoder。經(jīng)過(guò)多組實(shí)驗(yàn),我們發(fā)現(xiàn)在這種結(jié)構(gòu)下,很難提取出純粹的Query向量和Item向量作為下游雙塔向量召回任務(wù)的輸入。如果提取某一向量時(shí),Mask掉不需要的模態(tài),會(huì)使得預(yù)測(cè)與訓(xùn)練不一致。這個(gè)問(wèn)題類似于,在一個(gè)交互型的模型里直接提取出雙塔模型,根據(jù)我們的經(jīng)驗(yàn),這種模型的效果不如經(jīng)過(guò)訓(xùn)練的雙塔模型。基于此,我們提出了一種新的模型結(jié)構(gòu)。
? 模型結(jié)構(gòu)
類似雙流結(jié)構(gòu),模型下方由雙塔構(gòu)成,上方通過(guò)跨模態(tài)Encoder融合雙塔。與雙流結(jié)構(gòu)不同的是,雙塔不是分別由單一模態(tài)構(gòu)成,其中的Item塔中包含了Title和Image圖文雙模態(tài),Title和Image拼接在一起輸入Encoder,這部分類似單流模型。為了建模Query與Title之間存在的語(yǔ)義聯(lián)系與Gap,我們將Query和Item雙塔的Encoder共享,再分別學(xué)習(xí)語(yǔ)言模型。
對(duì)于預(yù)訓(xùn)練來(lái)說(shuō),設(shè)計(jì)合適的任務(wù)也是比較關(guān)鍵的。我們嘗試過(guò)常用的Title和Image的圖文匹配任務(wù),雖然能達(dá)到比較高的匹配度,但對(duì)于下游向量召回任務(wù)帶來(lái)的增益很少,這是因?yàn)橛肣uery去召回Item時(shí),Item的Title和Image是否匹配不是關(guān)鍵因素。所以,我們?cè)谠O(shè)計(jì)任務(wù)時(shí),更多地考慮了Query與Item之間的關(guān)系。目前,一共采用5種預(yù)訓(xùn)練任務(wù)。
? 預(yù)訓(xùn)練任務(wù)
- Masked Language Modeling (MLM):在文本Token中,隨機(jī)Mask掉15%,用剩下的文本和圖像預(yù)測(cè)出被Mask的文本Token。對(duì)于Query和Title,有各自的MLM任務(wù)。MLM最小化交叉熵Loss:
其中 表示剩下的文本token
- Masked Patch Modeling (MPM):在圖像的Patch Token中,隨機(jī)Mask掉25%,用剩下的圖像和文本預(yù)測(cè)出被Mask的圖像Token。MPM最小化KL散度Loss:
其中 表示剩下的圖像token
- Query Item Classification (QIC): 一個(gè)Query下點(diǎn)擊最多的Item作為正樣本,Batch內(nèi)其他樣本作為負(fù)樣本。QIC將Query塔和Item塔的[CLS] token通過(guò)線性層降維到256維,再做相似度計(jì)算得到預(yù)測(cè)概率,最小化交叉熵Loss:
其中
的計(jì)算可以采取多種方式:
其中 表示相似度計(jì)算, 表示溫度超參數(shù), 和m分別表示縮放因子和松弛因子
- Query Item Matching (QIM):一個(gè)Query下點(diǎn)擊最多的Item作為正樣本,Batch內(nèi)與當(dāng)前Query相似度最高的其他Item作為負(fù)樣本。QIM使用跨模態(tài)Encoder的[CLS] token計(jì)算預(yù)測(cè)概率,最小化交叉熵Loss:
- Query Image Matching (QIM2):在QIM的樣本中,Mask掉Title,強(qiáng)化Query與Image之間的匹配。QIM2最小化交叉熵Loss:
模型的訓(xùn)練目標(biāo)為,最小化整體Loss:
在這5種預(yù)訓(xùn)練任務(wù)中,MLM任務(wù)和MPM任務(wù)位于Item塔的上方,建模Title或Image的部分Token被Mask后,使用跨模態(tài)信息相互恢復(fù)的能力。Query塔上方有獨(dú)立的MLM任務(wù),通過(guò)共享Query塔和Item塔的Encoder,建模Query與Title之間的語(yǔ)義聯(lián)系與Gap。QIC任務(wù)使用雙塔內(nèi)積的方式,將預(yù)訓(xùn)練和下游向量召回任務(wù)做一定程度的對(duì)齊,并用AM-Softmax拉近Query的表示與Query下點(diǎn)擊最多Item的表示之間的距離,推開(kāi)Query與其他Item的距離。QIM任務(wù)位于跨模態(tài)Encoder的上方,使用跨模態(tài)信息建模Query和Item的匹配。出于計(jì)算量的考慮,采用通常NSP任務(wù)的正負(fù)樣本比1:1,為了進(jìn)一步推開(kāi)正負(fù)樣本之間的距離,基于QIC任務(wù)的相似度計(jì)算結(jié)果構(gòu)造了難負(fù)樣本。QIM2任務(wù)與QIM任務(wù)位于同樣的位置,顯式建模圖像相對(duì)于文本帶來(lái)的增量信息。
向量召回模型
? 建模方法
在大規(guī)模信息檢索系統(tǒng)中,召回模型位于最底層,需要在海量的候選集中打分。出于性能的考慮,往往采用User和Item雙塔計(jì)算向量?jī)?nèi)積的結(jié)構(gòu)。向量召回模型的一個(gè)核心問(wèn)題是:如何構(gòu)造正負(fù)樣本以及負(fù)樣本采樣的規(guī)模。我們的解決方法是:將用戶在一個(gè)頁(yè)面內(nèi)的點(diǎn)擊Item作為正樣本,在全量商品池中根據(jù)點(diǎn)擊分布采樣出萬(wàn)級(jí)別的負(fù)樣本,用Sampled Softmax Loss在采樣樣本中推導(dǎo)出Item在全量商品池中的點(diǎn)擊概率。
其中 表示相似度計(jì)算, 表示溫度超參數(shù)
? 初步探索
遵循常見(jiàn)的FineTune范式,我們嘗試過(guò)將預(yù)訓(xùn)練的向量直接輸入到雙塔MLP,結(jié)合大規(guī)模負(fù)采樣和Sampled Softmax來(lái)訓(xùn)練多模態(tài)向量召回模型。不過(guò),與通常的小規(guī)模下游任務(wù)相反,向量召回任務(wù)的訓(xùn)練樣本量巨大,在數(shù)十億量級(jí)。我們觀察到MLP的參數(shù)量無(wú)法支撐模型的訓(xùn)練,很快就會(huì)達(dá)到自身的收斂狀態(tài),但效果并不好。同時(shí),預(yù)訓(xùn)練向量在向量召回模型中作為輸入而不是參數(shù),無(wú)法隨著訓(xùn)練的進(jìn)行得到更新。這樣一來(lái),在相對(duì)小規(guī)模數(shù)據(jù)上進(jìn)行的預(yù)訓(xùn)練,與大規(guī)模數(shù)據(jù)上的下游任務(wù)有一定的沖突。
解決的思路有幾種,一種方法是將預(yù)訓(xùn)練模型融合到向量召回模型中,但預(yù)訓(xùn)練模型的參數(shù)量過(guò)大,再加上向量召回模型的樣本量,無(wú)法在有限的資源約束下,以合理的時(shí)間進(jìn)行常態(tài)化訓(xùn)練。另一種方法是在向量召回模型中構(gòu)造參數(shù)矩陣,將預(yù)訓(xùn)練向量載入到矩陣中,隨著訓(xùn)練的進(jìn)行更新矩陣的參數(shù)。經(jīng)過(guò)調(diào)研,這種方式在工程實(shí)現(xiàn)上成本比較高?;诖耍覀兲岢隽撕?jiǎn)單可行地建模預(yù)訓(xùn)練向量更新的模型結(jié)構(gòu)。
? 模型結(jié)構(gòu)
我們先將預(yù)訓(xùn)練向量通過(guò)FC降維,之所以在這里而不是在預(yù)訓(xùn)練中降維,是因?yàn)槟壳暗母呔S向量對(duì)于負(fù)樣本采樣來(lái)說(shuō)還在可接受的性能范圍內(nèi),這種情況下,在向量召回任務(wù)中降維是與訓(xùn)練目標(biāo)更一致的。同時(shí),我們引入Query和Item的ID Embedding矩陣,Embedding維度與降維后的預(yù)訓(xùn)練向量的維度保持一致,再將ID與預(yù)訓(xùn)練向量融合在一起。這個(gè)設(shè)計(jì)的出發(fā)點(diǎn)是:引入足以支撐大規(guī)模訓(xùn)練數(shù)據(jù)的參數(shù)量,同時(shí)使預(yù)訓(xùn)練向量隨著訓(xùn)練的進(jìn)行得到適應(yīng)性地更新。
在只用ID和預(yù)訓(xùn)練向量融合的情況下,模型的效果不僅超過(guò)了只用預(yù)訓(xùn)練向量的雙塔MLP的效果,也超過(guò)了包含更多特征的Baseline模型MGDSPR。更進(jìn)一步,在這個(gè)基礎(chǔ)上引入更多的特征,可以繼續(xù)提升效果。
實(shí)驗(yàn)分析
? 評(píng)測(cè)指標(biāo)
對(duì)于預(yù)訓(xùn)練模型的效果,通常是用下游任務(wù)的指標(biāo)來(lái)評(píng)測(cè),而很少用單獨(dú)的評(píng)測(cè)指標(biāo)。但這樣一來(lái),預(yù)訓(xùn)練模型的迭代成本會(huì)比較高,因?yàn)槊康粋€(gè)版本的模型都需要訓(xùn)練對(duì)應(yīng)的向量召回任務(wù),再評(píng)測(cè)向量召回任務(wù)的指標(biāo),整個(gè)流程會(huì)很長(zhǎng)。有沒(méi)有單獨(dú)評(píng)測(cè)預(yù)訓(xùn)練模型的有效指標(biāo)?我們首先嘗試了一些論文中的Rank@K,這個(gè)指標(biāo)主要是用來(lái)評(píng)測(cè)圖文匹配任務(wù):先用預(yù)訓(xùn)練模型在人工構(gòu)造的候選集中打分,再計(jì)算根據(jù)分?jǐn)?shù)排序后的Top K結(jié)果命中圖文匹配正樣本的比例。我們直接將Rank@K套用在Query-item匹配任務(wù)上,發(fā)現(xiàn)結(jié)果不符合預(yù)期,一個(gè)Rank@K更好的預(yù)訓(xùn)練模型,在下游的向量召回模型中可能會(huì)獲得更差的效果,無(wú)法指導(dǎo)預(yù)訓(xùn)練模型的迭代?;诖?,我們將預(yù)訓(xùn)練模型的評(píng)測(cè)與向量召回模型的評(píng)測(cè)統(tǒng)一起來(lái),采用相同的評(píng)測(cè)指標(biāo)及流程,可以相對(duì)有效地指導(dǎo)預(yù)訓(xùn)練模型的迭代。
Recall@K :評(píng)測(cè)數(shù)據(jù)集由訓(xùn)練集的下一天數(shù)據(jù)構(gòu)成,先將同一個(gè)Query下不同用戶的點(diǎn)擊、成交結(jié)果聚合成,再計(jì)算模型預(yù)測(cè)的Top K結(jié)果 命中 的比例:
在模型預(yù)測(cè)Top K結(jié)果的過(guò)程中,需要從預(yù)訓(xùn)練/向量召回模型中提取Query和Item向量,使用近鄰檢索得到一個(gè)Query下的Top K個(gè)Item。通過(guò)這個(gè)流程模擬線上引擎中的向量召回,來(lái)保持離線與在線的一致性。對(duì)于預(yù)訓(xùn)練模型來(lái)說(shuō),這個(gè)指標(biāo)與Rank@K的區(qū)別是:在模型中提取Query和Item向量進(jìn)行向量?jī)?nèi)積檢索,而不是直接用模態(tài)融合后的模型來(lái)打分;另外,一個(gè)Query下不僅要召回與之匹配的Item,還要召回這個(gè)Query下不同用戶的點(diǎn)擊、成交Item。
對(duì)于向量召回模型,在Recall@K提高到一定程度后,也需要關(guān)注Query和Item之間的相關(guān)性。一個(gè)相關(guān)性差的模型,即使能提高搜索效率,也會(huì)面臨Bad Case增加導(dǎo)致的用戶體驗(yàn)變差和投訴輿情增多。 我們采用與線上相關(guān)性模型一致的離線模型,評(píng)測(cè)Query和Item之間以及Query和Item類目之間的相關(guān)性。
? 預(yù)訓(xùn)練實(shí)驗(yàn)
我們選取部分類目下1億量級(jí)的商品池,構(gòu)造了預(yù)訓(xùn)練數(shù)據(jù)集。
我們的Baseline模型是經(jīng)過(guò)優(yōu)化的FashionBert,加入了QIM和QIM2任務(wù),提取Query和Item向量時(shí)采用只對(duì)非Padding Token做Mean Pooling的方式。以下實(shí)驗(yàn)探索了以雙塔方式建模,相對(duì)于單塔帶來(lái)的增益,并通過(guò)消融實(shí)驗(yàn)給出關(guān)鍵部分的作用。
從這些實(shí)驗(yàn)中,我們能得出如下結(jié)論:
- 實(shí)驗(yàn)8 vs 實(shí)驗(yàn)3:經(jīng)過(guò)調(diào)優(yōu)后的雙塔模型,在Recall@1000上顯著高于單塔Baseline。
- 實(shí)驗(yàn)3 vs 實(shí)驗(yàn)1/2:對(duì)單塔模型來(lái)說(shuō),如何提取Query和Item向量是重要的。我們嘗試過(guò)Query和Item都用[CLS] token,得到比較差的結(jié)果。實(shí)驗(yàn)1對(duì)Query和Item分別用對(duì)應(yīng)的Token做Mean Pooling,效果要好一些,但進(jìn)一步去掉Padding Token再做Mean Pooling,會(huì)帶來(lái)更大的提升。實(shí)驗(yàn)2驗(yàn)證了顯式建模Query-Image匹配來(lái)突出圖像信息的作用,會(huì)帶來(lái)提升。
- 實(shí)驗(yàn)6 vs 實(shí)驗(yàn)4/5:實(shí)驗(yàn)4將Item塔的MLM/MPM任務(wù)上移到跨模態(tài)Encoder,效果會(huì)差一些,因?yàn)閷⑦@兩個(gè)任務(wù)放在Item塔能夠增強(qiáng)Item表示的學(xué)習(xí);另外,在Item塔做基于Title和Image的跨模態(tài)恢復(fù)會(huì)有更強(qiáng)的對(duì)應(yīng)關(guān)系。實(shí)驗(yàn)5驗(yàn)證了對(duì)Query和Item向量在訓(xùn)練和預(yù)測(cè)時(shí)增加L2 Norm,會(huì)帶來(lái)提升。
- 實(shí)驗(yàn)6/7/8:改變QIC任務(wù)的Loss會(huì)帶來(lái)提升,Softmax相比于Sigmoid更接近下游的向量召回任務(wù),AM-Softmax則更進(jìn)一步推開(kāi)了正樣本與負(fù)樣本之間的距離。
? 向量召回實(shí)驗(yàn)
我們選取10億量級(jí)有點(diǎn)擊的頁(yè)面,構(gòu)造了向量召回?cái)?shù)據(jù)集。在每個(gè)頁(yè)面中包含3個(gè)點(diǎn)擊Item作為正樣本,從商品池中根據(jù)點(diǎn)擊分布采樣出1萬(wàn)量級(jí)的負(fù)樣本。在此基礎(chǔ)上,進(jìn)一步擴(kuò)大訓(xùn)練數(shù)據(jù)量或負(fù)樣本采樣量,沒(méi)有觀察到效果的明顯提升。
我們的Baseline模型是主搜的MGDSPR模型。以下實(shí)驗(yàn)探索了將多模態(tài)預(yù)訓(xùn)練與向量召回結(jié)合,相對(duì)于Baseline帶來(lái)的增益,并通過(guò)消融實(shí)驗(yàn)給出關(guān)鍵部分的作用。
從這些實(shí)驗(yàn)中,我們能得出如下結(jié)論:
- 實(shí)驗(yàn)7/8 vs 實(shí)驗(yàn)6:多模態(tài)特征與ID通過(guò)FC融合后,在3個(gè)指標(biāo)上都超過(guò)了Baseline,在提升Recall@1000的同時(shí),對(duì)商品相關(guān)性提升更多。在此基礎(chǔ)上,加入與Baseline相同的特征,能進(jìn)一步提升3個(gè)指標(biāo),并在Recall@1000上提升得更多。
- 實(shí)驗(yàn)1 vs 實(shí)驗(yàn)2:只有多模態(tài)特征相比于只有ID,Recall@1000更低,但相關(guān)性更高,且相關(guān)性接近線上可用的程度。說(shuō)明這時(shí)的多模態(tài)召回模型,從召回結(jié)果來(lái)看有更少的Bad Case,但對(duì)點(diǎn)擊、成交的效率考慮得不夠。
- 實(shí)驗(yàn)3/4/5 vs 實(shí)驗(yàn)1/2:將多模態(tài)特征與ID融合后,能夠在3個(gè)指標(biāo)上都帶來(lái)提升,其中將ID過(guò)FC再與降維后的多模態(tài)特征相加,效果更好。不過(guò),與Baseline相比,在Recall@1000上仍有差距。
- 實(shí)驗(yàn)7 vs 實(shí)驗(yàn)5:疊加預(yù)訓(xùn)練模型的優(yōu)化后,在Recall@1000、商品相關(guān)性上都有提升,類目相關(guān)性基本持平。
我們?cè)谙蛄空倩啬P偷腡op 1000結(jié)果中,過(guò)濾掉線上系統(tǒng)已經(jīng)能召回的Item,發(fā)現(xiàn)其余增量結(jié)果的相關(guān)性基本不變。在大量Query下,我們看到這些增量結(jié)果捕捉 到了商品Title之外的圖像信息,并對(duì)Query和Title之間存在的語(yǔ)義Gap起到了一定的作用。
query: 痞帥西裝
query: 女掐收腰小衫
總結(jié)和展望
針對(duì)主搜場(chǎng)景的應(yīng)用需求,我們提出了文本-圖文預(yù)訓(xùn)練模型,采用了Query和Item雙塔輸入跨模態(tài)Encoder的結(jié)構(gòu),其中Item塔是包含圖文多模態(tài)的單流模型。通過(guò)Query-Item和Query-Image匹配任務(wù),以及Query和Item雙塔內(nèi)積方式建模的Query-Item多分類任務(wù),使預(yù)訓(xùn)練更接近下游的向量召回任務(wù)。同時(shí),在向量召回中建模了預(yù)訓(xùn)練向量的更新。在資源有限的情況下,使用相對(duì)少量數(shù)據(jù)的預(yù)訓(xùn)練,對(duì)使用海量數(shù)據(jù)的下游任務(wù)仍然帶來(lái)了效果的提升。
在主搜的其他場(chǎng)景中,如商品理解、相關(guān)性、排序,也存在應(yīng)用多模態(tài)技術(shù)的需求。我們也參與到了這些場(chǎng)景的探索中,相信多模態(tài)技術(shù)在未來(lái)會(huì)給越來(lái)越多的場(chǎng)景帶來(lái)增益。
團(tuán)隊(duì)介紹
淘寶主搜召回團(tuán)隊(duì):團(tuán)隊(duì)負(fù)責(zé)主搜鏈路中的召回、粗排環(huán)節(jié),目前的主要技術(shù)方向?yàn)榛谌臻g樣本的多目標(biāo)個(gè)性化向量召回、基于大規(guī)模預(yù)訓(xùn)練的多模態(tài)召回、基于對(duì)比學(xué)習(xí)的相似Query語(yǔ)義改寫以及粗排模型等。