創(chuàng)澤機(jī)器人 |
CHUANGZE ROBOT |
多模態(tài)匹配研究簡(jiǎn)史
跨模態(tài)研究核心重點(diǎn)在于如何將多模態(tài)數(shù)據(jù)匹配上,即如何將多模態(tài)信息映射到統(tǒng)一的表征空間。早期研究主要分成兩條主線:Canonical Correlation Analysis (CCA) 和Visual Semantic Embedding (VSE)。
CCA 系列方法
主要是通過(guò)分析圖像和文本的 correlation,然后將圖像和文本到同一空間。這一系列的問(wèn)題論文完美,但是效果相對(duì)深度學(xué)習(xí)方法還是有待提高的。雖然后期也有基于深度學(xué)習(xí)的方案 (DCCA),但是對(duì)比后面的 VSE 方法還有一定差距。
VSE 系統(tǒng)方法
將圖像和文本分別表示成 Latent Embedding,然后將多模態(tài) Latent Embedding 擬合到同一空間。VSE 方法又延伸出來(lái)非常多的方法例如 SCAN,PFAN。這些方法在通用圖文匹配上已經(jīng)拿到不錯(cuò)效果。
隨著 pre-training 和 self-supervised 技術(shù)在 CV 和 NLP 領(lǐng)域的應(yīng)用。2019 年開(kāi)始,有學(xué)者開(kāi)始嘗試基于大規(guī)模數(shù)據(jù),使用預(yù)訓(xùn)練的 BERT 模型將圖文信息擬合同一空間。這些方法在通用領(lǐng)域取得很好的效果,這一系列的方法可以參看 VLBERT 這篇 Paper。
基于 BERT 的預(yù)訓(xùn)練圖文模型的主要流程:
1)利用圖像目標(biāo)檢測(cè)技術(shù)先識(shí)別圖像中的 Region of Interests(RoIs)。
2)把 ROI 當(dāng)做圖像的 token,和文本 token 做 BERT 多模態(tài)融合,這里面有兩個(gè)方案:
Single-stream:以 VLBERT 為代表,直接將圖像 token 和文本 token 放入到 BERT 做多模態(tài)融合。
Cross-stream:以 ViLBERT 為代表,將圖像 token 和文本 token 先做初步的交互,然后在放入到 BERT。
我們嘗試了 ViLBERT 方法,發(fā)現(xiàn)在通用領(lǐng)域效果確實(shí)不錯(cuò)。但是在電商領(lǐng)域,由于提取的 ROI 并不理想,導(dǎo)致效果低于預(yù)期。主要原因在于:
1)電商圖像 ROI 太少
電商圖像產(chǎn)品單一,背景簡(jiǎn)單提取 ROI 很少,如圖 1(c)。統(tǒng)計(jì)來(lái)看,通用領(lǐng)域 MsCoCo 數(shù)據(jù),每張圖像可以提取 19.8 個(gè) ROI,但是電商只能提取 6.4 個(gè) ROI。當(dāng)然我們可以強(qiáng)制提取最小的 ROI,比如 ViLBERT 要求在 10~36 個(gè),VLBERT 要求 100 個(gè)。但是當(dāng)設(shè)定最小提取的 ROI 后,又提取了太多了重復(fù)的 ROI,可以看圖 1(e)。
2)電商 ROI 不夠 fine-grained
電商圖像單一,提取的 RoIs 主要是 object-level 的產(chǎn)品 (例如,整體連衣裙,T-shirt 等) 。相對(duì)文本來(lái)說(shuō),不夠細(xì)粒度 fine-grain,比如文本里面可以描述主體非常細(xì)節(jié)屬性 (如,圓領(lǐng),九分褲,七分褲等等)。這就導(dǎo)致圖像 ROI 不足以和文本 token 匹配,大家可以對(duì)比一下電商領(lǐng)域的圖 1(c) 和圖 1(d)。再看下通用領(lǐng)域的圖 1(a) 和圖 1(b),你會(huì)發(fā)現(xiàn)通用領(lǐng)域簡(jiǎn)單一些,只要能將圖像中的主體和文本 token alignment 到一起,基本不會(huì)太差。
3)電商圖像 ROI 噪音太大
如圖 1(f) 中提取的模特頭,頭發(fā),手指,對(duì)于商品匹配來(lái)說(shuō)用處不大。
這也就解釋了,電商領(lǐng)域也采用現(xiàn)有的 ROI 方式,并不能得到非常理想的結(jié)果。如果說(shuō),針對(duì)電商領(lǐng)域重新訓(xùn)練一個(gè)電商領(lǐng)域的 ROI 提取模型,需要大量的數(shù)據(jù)標(biāo)注工作。那么有沒(méi)有簡(jiǎn)單易行的方法做圖文匹配擬合。
FashionBERT 圖文匹配模型
本文我們提出了 FashionBERT 圖文匹配模型,核心問(wèn)題是如何解決電商領(lǐng)域圖像特征的提取或者表達(dá)。Google 在 2019 年年中發(fā)表了一篇文章圖像自監(jiān)督學(xué)習(xí)模型 selfie,主要思路是將圖像分割成子圖,然后預(yù)測(cè)子圖位置信息。從而使模型達(dá)到理解圖像特征的目的,這個(gè)工作對(duì)我們啟發(fā)很大。我們直接將圖像 split 相同大小的 Patch,然后將 Patch 作為圖像的 token,和文本進(jìn)行擬合,如圖二所示。使用 Patch 的好處:
圖像 Patch 包含了所有圖像的細(xì)節(jié)信息。
圖像 Patch 不會(huì)出現(xiàn)重復(fù)的 ROI 或者太多無(wú)用的 ROI。
圖像 Patch 是天然包含順序的,所以解決 BERT 的 sequence 問(wèn)題。
FashionBERT 整體結(jié)構(gòu)如圖 2,主要包括 Text Embedding, Patch Embedding, Cross-modality FashionBERT,以及 Pretrain Tasks。
Text Embedding
和原始 BERT 一樣,先將句子分成 Token,然后我們采用 Whole Word Masking 技術(shù)將整個(gè) Token 進(jìn)行 masking。Masking 的策略和原始的 BERT 保持一致。
Patch Embedding
和 Text Embedding 類(lèi)似,這里我們將圖片平均分成 8*8 個(gè) patch。每個(gè) Patch 經(jīng)過(guò) ResNet 提取 patch 的圖像特征,我們提取 2048 維圖像特征。Patch mask 策略,我們隨機(jī) masked 10% 的 patch,masked 的 patch 用 0 代替。同時(shí)在 Segment 字段我們分別用 "T" 和 "I" 區(qū)分文 本token 輸入和圖像 patch 輸入。
Cross-modality FashionBERT
采用預(yù)訓(xùn)練的 BERT 為網(wǎng)絡(luò),這樣語(yǔ)言模型天然包含在 FashionBERT 中。模型可以更加關(guān)注圖文匹配融合。
FashionBERT 模型在 pretrain 階段,總共包含了三個(gè)任務(wù):
1 Masked Language Modeling (MLM)
預(yù)測(cè) Masked Text Token,這個(gè)任務(wù)訓(xùn)練和參數(shù)我們保持和原始的 BERT 一致。
2 Masked Patch Modeling (MPM)
預(yù)測(cè) Masked Patch,這個(gè)任務(wù)和 MLM 類(lèi)似。但是由于圖像中沒(méi)有 id 化的 token。這里我們用 patch 作為目標(biāo),希望 BERT 可以重構(gòu) patch 信息,這里我們選用了 KLD 作為 loss 函數(shù)。
3 Text and Image Alignment
和 Next Sentence Prediction 任務(wù)類(lèi)似,預(yù)測(cè)圖文是否匹配。正樣本是產(chǎn)品標(biāo)題和圖片,負(fù)樣本我們隨機(jī)采樣同類(lèi)目下其他產(chǎn)品的圖片作為負(fù)樣本。
這是一個(gè)多任務(wù)學(xué)習(xí)問(wèn)題,如何平衡這些任務(wù)的學(xué)習(xí)權(quán)重呢?另外,還有一個(gè)問(wèn)題,目前很多實(shí)驗(yàn)指出 BERT 中 NSP 的效果并不一定非常有效,對(duì)最終的結(jié)果的影響不是特別明朗。但是對(duì)于圖文匹配來(lái)說(shuō),Text and Image Alignment 這個(gè) loss 是至關(guān)重要的。那么如何平衡這幾個(gè)任務(wù)的學(xué)習(xí)呢?這里我們提出 adaptive loss 算法,我們將學(xué)習(xí)任務(wù)的權(quán)重看做是一個(gè)新的優(yōu)化問(wèn)題,如圖 3 所示。FashionBERT 的 loss 是整體 loss 的加和,由于只有三個(gè)任務(wù),其實(shí)我們可以直接得到任務(wù)權(quán)重 W 的解析解(具體的求解過(guò)程可以參考我們論文,這里不再贅述)。
整個(gè) w 的學(xué)習(xí)過(guò)程可以看做是一個(gè)學(xué)生想學(xué)習(xí)三門(mén)功課,w 的作用是控制學(xué)習(xí)的關(guān)注度,一方面控制別偏科,一方面總成績(jī)要達(dá)到最高。具體 adaptive loss 算法,可以參看論文。從實(shí)際的效果來(lái)看 w,隨著訓(xùn)練的迭代關(guān)注不同的任務(wù),達(dá)到對(duì)任務(wù)做平衡的目的。
業(yè)務(wù)應(yīng)用
目前 FashionBERT 已經(jīng)開(kāi)始在 Alibaba 搜索多模態(tài)向量檢索上應(yīng)用,對(duì)于搜索多模態(tài)向量檢索來(lái)說(shuō),匹配任務(wù)可以看成是一個(gè)文文圖匹配任務(wù),即 User Query (Text)-Product Title (Text) - Product Image (Image) 三元匹配關(guān)系。FashionBERT 從上面的模型可以看到是一個(gè)基礎(chǔ)的圖文匹配模型,因此我們做了 Continue Pretrain 工作,同時(shí)加入 Query,Title,Image Segment 區(qū)分,如圖四所示。和 FashionBERT 最大的區(qū)別在于我們引入三個(gè) segment 類(lèi)型,“Q”,“T”,“I” 分別代表 Query,Title,Image。
機(jī)器人招商 Disinfection Robot 機(jī)器人公司 機(jī)器人應(yīng)用 智能醫(yī)療 物聯(lián)網(wǎng) 機(jī)器人排名 機(jī)器人企業(yè) 機(jī)器人政策 教育機(jī)器人 迎賓機(jī)器人 機(jī)器人開(kāi)發(fā) 獨(dú)角獸 消毒機(jī)器人品牌 消毒機(jī)器人 合理用藥 地圖 |