Paper:Grounded Language-Image Pre-training
Code:https://github.com/microsoft/GLIP文章來源:http://www.zghlxwxcb.cn/news/detail-445601.html
簡介:
-
定位任務(wù)與圖像檢測任務(wù)非常類似,都是去圖中找目標(biāo)物體的位置,目標(biāo)檢測為給出一張圖片找出bounding box,定位為給出一個圖片和文本,根據(jù)文本找出物體。GLIP 模型統(tǒng)一了目標(biāo)檢測(object detection)和定位(grounding)兩個任務(wù),構(gòu)建了一個統(tǒng)一的訓(xùn)練框架,從而將兩個任務(wù)的數(shù)據(jù)集都利用起來。再配合偽標(biāo)簽的技術(shù)來擴(kuò)增數(shù)據(jù),使得訓(xùn)練的數(shù)據(jù)量達(dá)到了前所未有的規(guī)模。在訓(xùn)練完成之后,直接以 zero-shot 的方式在 COCO 數(shù)據(jù)集上進(jìn)行測試,達(dá)到了 49.8 AP。
-
GLIP 進(jìn)行 zero-shot 測試的結(jié)果如下圖所示,不管是給定幾個類別(如 person、pistol、apple等)還是給定一段話(如 ‘there are some holes on the road’)作為文本編碼器的輸入,GLIP 模型都能從圖像中找到對應(yīng)物體的位置。
?如何統(tǒng)一兩個任務(wù):
detection 和 grouding 任務(wù)的目標(biāo)函數(shù)都是由兩部分損失組成,即分類損失和定位損失。定位損失不必多說,直接去計算與標(biāo)注中的 GT 框的距離即可。
?1、而對于分類損失,則有所不同。對于 detection 任務(wù)來說,分類的標(biāo)簽是一個類別單詞,在計算分類損失時,每個區(qū)域框特征與分類頭計算得到 logits,輸出 logits 經(jīng)過 nms 篩選之后,與 GT 計算交叉熵?fù)p失即可。
?對于目標(biāo)檢測,給定一個圖片Img,通過圖像的backbone得到region embedding,O是N*d的一個region embedding,即如果有n個bounding box 每個bounding box embedding的維度就是d。之后再接一個分類頭,判斷bounding box里的物體是哪個類,分類頭W是一個矩陣,維度為c*d,c是有多少個類別,將region embedding與W相乘得最后分類的logits S,之后用mns把bounding box篩選一下再跟groundtruth算交叉熵得到最終的loss。
2、對于 vision grounding 任務(wù)來說,標(biāo)簽是一個句子,不是用分類頭,而是通過文本編碼器得到文本特征,計算文本特征與區(qū)域框特征的相似度,得到匹配分?jǐn)?shù),想看看圖像區(qū)域和句子里的單詞是怎么匹配的。
?給定一個圖片Img,通過圖像的backbone得到region embedding,接下來輸入一個句子至文本編碼器得到文本embedding,之后文本embedding與圖像的region embedding算相似性。
3、作者提出,只要判斷一下兩個任務(wù)中什么時候是 positive match,什么時候是 negative match,就能將兩個任務(wù)統(tǒng)一起來了。理論分析后,作者使用統(tǒng)一過后的框架驗(yàn)證了在 COCO 數(shù)據(jù)集上的指標(biāo),與之前的目標(biāo)檢測框架持平,因此從實(shí)驗(yàn)上也驗(yàn)證了自己的想法。
數(shù)據(jù)集:
既然統(tǒng)一了 detection 和 grounding 兩個任務(wù),最直接的一個利好就是兩邊的數(shù)據(jù)集都可以拿來訓(xùn)練這個統(tǒng)一的框架。即下圖中所示的 O365 和 GoldG 兩個數(shù)據(jù)集。這些數(shù)據(jù)集都是有標(biāo)注的,規(guī)模還不夠大。想要進(jìn)一步獲得更大量的數(shù)據(jù),必須像 CLIP 那樣借助無標(biāo)注的圖像文本對數(shù)據(jù)。但是,目標(biāo)檢測任務(wù)的訓(xùn)練必須要 GT 框,單獨(dú)的圖文對數(shù)據(jù)沒法直接用。作者這里使用了 self-training 中偽標(biāo)簽的方式,使用 O365 和 GoldG 上訓(xùn)練好的 GLIP-T(c) 去在圖文對數(shù)據(jù) Cap4M/ Cap24M 上生成偽標(biāo)簽,直接當(dāng)做 GT 框給 GLIP-T/L 進(jìn)行訓(xùn)練。生成的偽標(biāo)簽肯定有錯誤,但是實(shí)驗(yàn)表明,經(jīng)過擴(kuò)充大量偽標(biāo)簽數(shù)據(jù)訓(xùn)練得到的 GLIP-L 模型仍然會有性能提高。
?模型結(jié)構(gòu):
1、GLIP 模型結(jié)構(gòu)及訓(xùn)練目標(biāo)如下圖所示,模型是以有監(jiān)督的方式進(jìn)行訓(xùn)練,計算得到文本特征和圖像特征的相似度之后,直接與 GT 計算對齊損失(alignment loss)即可,定位損失(Localization loss)也是直接與GT 框計算。
2、模型中間的融合層(fusion)是為了增加圖像編碼器和文本編碼器之間的特征交互,使得最終的圖像-文本聯(lián)合特征空間訓(xùn)練得更好。
?定量實(shí)驗(yàn)結(jié)果:
? ??GLIP 的定量實(shí)驗(yàn)結(jié)果如下圖所示,GLIP 模型可以做 zero-shot 的目標(biāo)檢測,并且能夠達(dá)到 49.8 AP。如果再在 COCO 上進(jìn)行微調(diào),GLIP 的 AP 能夠超過當(dāng)前最好的一些有監(jiān)督方法。
?GLIPv2
Paper:GLIPv2: Unifying Localization and Vision-Language Understanding
Code:https://github.com/microsoft/GLIP
GLIP 的進(jìn)一步拓展工作 GLIPv2 融合了更多定位相關(guān)的任務(wù)(如檢測、實(shí)例分割)和更多的多模態(tài)相關(guān)的任務(wù)(如問答、字幕生成)。文章來源地址http://www.zghlxwxcb.cn/news/detail-445601.html
到了這里,關(guān)于論文閱讀-(GLIP)Grounded Language-Image Pre-training (目標(biāo)檢測+定位)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!